Як з’єднати arduino і монетоприймач nv-9

Всім привіт! Повідаю, як я поєднав купюроприймач NV-9 фірми ITL і Arduino. Вірніше як отримувати номінали прийнятих купюропріємником купюр, на екрані ноутбука.

Позначення скорочень, що використовуються в статті, будуть вказані в кінці статті.

Тоді ще я задумав спорудити свій вендінговий автомат, вірніше автомати за доступною ціною і з зрозумілим управлінням. Як наприклад, Італійський піццемат «LETS PIZZA» вартістю 25 000 євро. У нас за такою ціною 2-х кімнатну квартиру можна купити, не далеко від центру. Адже такий автомат буде дуже затребуваний, наприклад, в навчальному закладі, і здешевити його можна як мінімум в 3 рази.

Знання мої в схемотехніці і програмуванні досить примітивні, як мені здається в порівнянні з виробниками автоматів і взагалі промисловцями. Українські кавники, правда навчили дещо чого. Деякі, я перебирав до гаечки, в тому числі і купюрник і монетнік.

Але повернемося до наших Ардуіно.

Для початку, я вирішив спорудити не великий снекових автомат на 4 або 6 позицій. Потім докрутити його до нормальної швидкості роботи і переходити до більш складних проектів. По початку, я хотів взяти звичайний кондомат і на його основі зробити снек. Але кондомати йдуть тільки з купюрник, і без видачі здачі, а не розуміючи, його електроніку, буде складно додати йому монетнік або хопер.

І ось я зважився. Вибирати довелося між UNO і Mega. Але в підсумку зупинився на Уне, так як це базова модель і підтримує найбільшу кількість бібліотек і скетчів.

Саме в книзі Віктора Петіна я натрапив на тему: «Як з'єднати arduino і купюроприймач ICT A7». Такий купюрник швидко і за прийнятною ціною знайти не вдалося, зате у мене був купюрник NV-9 фірми ITL. Обидва вони підтримують протокол MDB. Підключення у купюрник ICT A7 з допомогою фішки 3 на 3, а у NV-9 16ті пинового підключення. Ось його розшифровка:

Як з'єднати arduino і монетоприймач nv-9

Я підключив харчування на 15 і 16 ноги, від комп'ютерного БП (12V) це жовтий провід і чорний - земля. Далі підключив 1 ногу купюрник до Ардуіно в пін D2, взагалі можна до будь-якого D піну. Так само землю комп'ютерного БП поєднав з землею Ардуіно, і перший пін купюрник підтягнув через резистор 4,7kOm до + 5V Ардуіно.

Як з'єднати arduino і монетоприймач nv-9

Скетч, взяв з книги Петіна В.А .: з деякими доробками для купюрник NV9

const int moneyPin = 2;
const int zapretaPin = 5;
const int zapretbPin = 6;
const int zapretcPin = 7;
const int zapretdPin = 8;
const int ledPin = 12;
int money = 0;

unsigned long timeAllPulse = 3000; // макс. час прийому купюри
unsigned long timeCount = 0;

void setup ()
pinMode (zapretaPin, OUTPUT);
pinMode (zapretbPin, OUTPUT);
pinMode (zapretcPin, OUTPUT);
pinMode (zapretdPin, OUTPUT);
pinMode (ledPin, OUTPUT);
Serial.begin (9600);
pinMode (moneyPin, INPUT);
attachInterrupt (0, count_pulse, FALLING);
Serial.println ( «ready»);
>

void loop ()
digitalWrite (zapretaPin, LOW);
digitalWrite (zapretbPin, LOW);
digitalWrite (zapretcPin, LOW);
digitalWrite (zapretdPin, LOW);
// пройшло максимальний час прийому купюри?
if (money> 0 (Millis () - timeCount)> timeAllPulse)
Serial.print ( «Money =«);
Serial.println (money);
money = 0;
>
>
// обробка переривання - отримати кількість імпульсів
//
void count_pulse ()
detachInterrupt (0);
money ++;
if (money == 1)
timeCount = millis ();
attachInterrupt (0, count_pulse, FALLING);
>

Завантаживши стоковий варіант скетчу, купюрник не запрацював одразу. Виявилося, що 5,6,7,8 ноги купюрник відповідають за заборону купюр по одному з 4 каналів. Кожен канал відповідає за один з номіналів купюр. Приєднавши, спочатку 5 ногу купюрник до Ардуіно і подавши на неї логічний 0 або LOW, купюроприймач заробив, але приймав тільки одну з можливих купюр. Отже, я підключив все з 5 по 8 ногу і подав на них сигнал LOW. Назвав їх як zapretA, zapretB, zapretC, zapretD

digitalWrite (zapretaPin, LOW);
digitalWrite (zapretbPin, LOW);
digitalWrite (zapretcPin, LOW);
digitalWrite (zapretdPin, LOW);

Після цього купюроприймач став приймати всі купюри, які були в його файлі номіналів (1,2,5,10 грн.)

При відкритті Вікна терміналу в Ардуіно (поєднання клавіш Ctrl + Shift + M) спочатку Ардуіно віддає сигнал готовності (ready) і далі після прийому кожної купюри вказує її номінал в вікні терміналу, як, наприклад, money = 5, що означає прийнята купюра 5 гривень . У кожній новій рядку вказується нова купюра

Як з'єднати arduino і монетоприймач nv-9
Далі, потрібно їх підсумовувати. Для цього була введена змінна (sum), яка підсумувала номінали і виводила результат у вікно терміналу.

Як з'єднати arduino і монетоприймач nv-9

Money замінив на Kredit щоб ну взагалі, як в торговому автоматі =) Скетч додається:

const int moneyPin = 2;
const int zapretaPin = 5;
const int zapretbPin = 6;
const int zapretcPin = 7;
const int zapretdPin = 8;
const int ledPin = 12;
int money = 0;
int sum = 0;

unsigned long timeAllPulse1 = 3000; // макс. час прийому купюри
unsigned long timeCount1 = 0;

void setup ()
pinMode (zapretaPin, OUTPUT);
pinMode (zapretbPin, OUTPUT);
pinMode (zapretcPin, OUTPUT);
pinMode (zapretdPin, OUTPUT);
pinMode (moneyPin, INPUT);
Serial.begin (9600);
Serial.println ( «ready»);
attachInterrupt (0, count_pulse1, FALLING);

void loop ()
digitalWrite (zapretaPin, LOW);
digitalWrite (zapretbPin, LOW);
digitalWrite (zapretcPin, LOW);
digitalWrite (zapretdPin, LOW);
// пройшло максимальний час прийому купюри?
if (money> 0 (Millis () - timeCount1)> timeAllPulse1)
sum + = money;
money = 0;
Serial.print ( «Kredit =«);
Serial.println (sum);
>
>
// обробка переривання - отримати кількість імпульсів
//
void count_pulse1 ()
detachInterrupt (0);
money ++;
if (money == 1)
timeCount1 = millis ();
attachInterrupt (0, count_pulse1, FALLING);
>

Зараз під'єднують хопер для видачі здачі одним номіналом монет. До речі робити збирати його збираюся на основі схеми, яку побачив на YouTube за запитом «Homemade coin hopper on Arduino (for Mame)»

Як обіцяв - скорочення:

ноут - ноутбук,

купюрник - купюроприймач,

монетнік - використовують монети,

Ардуіно - Arduino Uno,

Скетч - програма на мові Processing для Ардуіно,

Кавник - кавовий автомат

БП - блок живлення

Хоппер - пристрій видачі здачі монетами одного або 2 номіналів.

PS У скетчах миготить (ledPin), спочатку прописивал команду, якщо сума внесеного кредиту більше 5, - моргнути світлодіодом, але потім вирізав, виявляється не все))

PS Сильно не штовхайте - я тільки вчуся!

Як з'єднати arduino і монетоприймач nv-9

Чим ти до комп'ютера NV-9 чіпляв? у мене є сама залізяка (з невідомої прошивкою) і є кабель 16pin-16pin
більше нічого. Спробував по твоїй схемі підключити - моргає жовтий світлодіод і все на тому.
спасибі за відповідь

Від компа до Ардуіно йде ардуіновскій ЮСБ кабель (синій на фото).
16 піновий кабель не піде. Потрібно попіново підключати.
Перший пін на купюрник це сигнальний провід, підключається в D2 Ардуіно, він же через резистор підтягується до +5 вольт Ардуіно.
15 і 16 Піни на купюрник (позначені там цифрами) це харчування 12 вольт.
5,6,7,8 Піни, які відповідають за заборону прийому за певним каналу, можна скрутити разом і підключити в один пін Ардуіно, наприклад D5. І тільки для D5 і писати const int zapretaPin = 5; а решта стерти.

PS жовтий LED-індикатор вказує на невідповідність заданої специфікації подачі або джерела живлення. Простіше кажучи, харчування купюрник відрізняється від 12 вольт. А повинно бути рівно 12 + - 0,2 вольта.

Величезне спасибі за статтю! Все вийшло. Купюроприймач NV-10 USB. Попередньо купюрник перевів в імпульсний режим (Pulse, PL1) за допомогою утиліти ITL Validator Manager. Тепер буду намагатися змінити код, щоб додатково вивести суму на зовнішній однорядковий або дворядовий екран.

Доброго дня, випадково натрапив на вашу статтю, дуже зацікавився, чи можемо списатися по скайпу або поштою?

Привіт, хочу повернути щось подібне) чи можливо підключити Ардуіно до bv20?) Просто для мене nv9 дорогий)

Добрий день. Думаю можливо. Потрібно знайти терморегулятори виходів. 2 Піна харчування, 1 дата і піни заборони прийому (якщо є). Підключити за вищевказаною схемою (до пульсовом протоколі).

Добрий день. Підключив по Вашій схемі купюроприймач NV7 чомусь купюри не приймає, а точніше както нестабільно працює місце прийому грошей, тобто воно не горить червоним а іноді моргає і в момент моргання починає затягувати купюру але потім практично відразу випльовує. Не підкажете в чому може бути справа? Заздалегідь вдячний. Блок живлення на 2А у мене якщо що.

На купюрник зверху, де світлодіоди 3 шт. кутом стоять. Там поруч 4 Піна перемикання протоколів. поставте пульсовий

Поставив як написано в документації і на купюрник 1-3 вниз 4 вгору. Може справа в самому купюрник?

Можливо. Може залежати від прошивки.
Або на крайняк купюрник просто несправний.
У мене такі симптоми були, коли протокол неправильно встановлений був. Блимає і в момент світіння Леда тягне купюру і відразу ж викидає

а де можна взяти прошивку для NV7 під рублі і калибровочную папір (не знаю як правильно називається)