Акцептант векселей ИКТ
У меня есть ICT a6-15scp-usd4-ii. У меня есть все провода для этого. У меня нет игорного автомата, из которого он вышел и который валялся где попало. Можно ли сделать так, чтобы свет загорался, когда туда кладут счет? Может ли он быть подключен к arduino, чтобы действовать в качестве переключателя, скажем? Если вам понадобится дополнительная информация, дайте мне знать. Я сделаю учебник для этого, если это сработает.
3 ответа
Перейдите на веб-сайт ICT, чтобы загрузить руководство по установке (которое используется для многих различных моделей), там есть информация о выводе для каждого вывода на вашей модели, а также рекомендуемая схема интерфейса ввода-вывода.
Я использую другую модель, но из того, что я знаю, если ваша модель является "импульсной" моделью, это означает, что при приеме счета вы можете регистрировать импульсы (ширина импульса предварительно устанавливается переключателями, а количество импульсов зависит от стоимости счета).
Что бы я сделал, так это использовал прерывание для прослушивания этих импульсов. Когда сработает прерывание, загорелся светодиодный индикатор.
Поэтому я знаю, что это старая почта, но я взаимодействовал с BV20 и заметил, что у большинства валидаторов ИКТ есть "занятая" линия, которая утверждается всякий раз, когда устройство перевозит, проверяет или хранит/складывает счет. Если вы хотите осветить что-то, когда обрабатывается счет, но не обязательно подтвержденный, это может быть то, что вы ищете.
ICT a6-15scp-usd4-ii-импульсный/параллельный акцептор купюр. Вот схемаданных , ссылка в комментариях сломана. Версия A6 использует импульсный/параллельный протокол (версия V6-MDB). Версия 110 В, которую вы используете, имеет только импульсный протокол.
Будьте осторожны с проводкой, акцептор использует опасное напряжение 110 В переменного тока.
Я понимаю, что вы хотите сделать такую же плату за устройство времени, как те, которые используются в детских аттракционах.
В Интернете есть много примеров подключения импульсного акцептора купюр к Arduino. Теория проста купюроприемник имеет импульсный выход, обычно в отрицательной логике, высокий в холостом ходу, который посылает низкий импульс для каждой денежной единицы, 1 за 1$, 5 за 5$ и так далее.
Иногда, как в вашем случае, акцептор векселя имеет вход включения, через который вы можете включить или отключить акцепт. Но в A6 110V этот вход должен быть подключен к горячим линиям 110v, поэтому его сложнее обрабатывать через Arduino, поэтому вам нужно будет использовать реле или оставить его активным все время, установив dip SW 8 в положение ON, см. стр. 6 и стр. 9 в руководстве.
Электрические соединения.
См. Раздел распиновка разъема , стр. 5
Кредит (импульсный) выход используется оптопара поэтому он имеет две линии CREDIT_RELAY_COM (Контакт 1) по вышеуказанному разъему, который должен быть подключен к Arduino GND и CREDIT_RELAY(Н. О.) (16-контактный), который должен быть подключен к цифровому входу Arduino, который читают импульсов, этот цифровой вход должен быть резистор на 5В, это могут быть встроенные подтягивающие активируется с помощью pinMode(PIN, INPUT_PULLUP), но лучше внешний резистор 1K до 4,5 тысяч.
И, конечно же, основной источник питания , вывод 4 и вывод 20 к основному напряжению 110 в и не забудьте заземление, вывод 21 для безопасности.
Настройки dip-переключателя купюроприемника
См. страницу 6 руководства. На данный момент просто поставьте SW8 в положение ON (акцептор включен), а все остальные-в положение OFF (все купюры включены, один импульс-один доллар, импульсы 50 мс/50 мс).
Исходный код Arduino
Чтобы подсчитать импульсы от импульсного купюроприемника или монетоприемника, в Интернете есть много примеров, но я сам сделал один , очень простой в использовании, найдите здесь исходный код, который подсчитывает импульсы в фоновом режиме с помощью прерывания timer1. Таким образом, основной цикл свободен для других необходимых вам задач. Вы можете лишить жидкокристаллическую часть кода, если вы ею не пользуетесь.
Для работы с ICT A6 вам нужно изменить некоторые определения в коде: PULSE_WIDTH до 50 от 100 и PULSE_DELTA как минимум до 4 от 2 (потому что это мало).
Подключите вход Arduino A0 к контакту 16 (КРЕДИТНОЕ РЕЛЕ) и к подтягивающему резистору до 5 В, как я указывал выше, а Arduino GND-к контакту 1 (CREDIT_RELAY_COM) и запитайте Arduino от какого-нибудь другого источника или через USB, и пример теперь должен работать. Очевидно, что макросы BILL_ACCEPTOR_ENABLE и BILL_ACCEPTOR_DISABLE не будут работать акцептор всегда включен.
Чтобы на самом деле заставить его работать как машина с оплатой за время, предложение кода будет выглядеть следующим образом:
unsigned long finish_time = 0;
#define MS_PER_DOLLAR 600000 //10 минут
//add to setup
turn_off_the_light();// Переключить pin или что-то еще
void loop(){
unsigned long temp_millis;
unsigned long temp_credits;
temp_millis = millis()
temp_credits = read_and_clear_pulses();
if (finish_time < temp_millis) finish_time = temp_millis;
finish_time += tempcredits * MS_PER_DOLLAR;
if (finish_time > temp_millis)
turn_on_the_light();
else
turn_off_the_light();
// Сделай что-нибудь еще
}
Если вы используете устройство непрерывно в течение более чем 49 дней, у вас возникнет проблема опрокидывания миллиса, но вы можете найти примеры в Интернете, как справиться с этой проблемой.
- Как изменить переменную при нажатии кнопки, подключенной к контакту 2
- Как заставить Arduino реагировать на последовательную информацию?
- Возникла проблема с входом Dreading, он должен воспроизводить зуммер, но не
- Светодиоды: разница между общим анодом и общим катодом
- Почему эта программа на C++ не может прочитать Serial.write() моего arduino?
- Команда strtok() с Serial связью
- Отображение двоичных данных на светодиодах
- Реализовать связь Visible Light с помощью Arduino
С купюроприемниками, как известно, трудно работать, потому что обычно спецификация и / или руководство доступны только в NDA. Вам, вероятно, просто придется перепроектировать его., @Jake C
я попробую, но это не выглядит хорошо., @The Arduino Master
Глядя на единственного доктора, которого я могу найти, http://www.ict-america.com/docs/a6v6/A6.V6-MXP4.pdf похоже, что если у вас есть версия A6, где-то есть порт RS232, что означает, что самое большее, что вам нужно сделать, - это перевод уровня. Если у вас есть V6, он будет использовать MDB, который обычно является 9-битным UART. Существует реализация MDB, найденная здесь: https://github.com/MarginallyClever/MDB-Sniffer, @Jake C
Какой интерфейс имеет ваша модель? Потому что, когда у вас есть RS232, должно быть довольно просто увидеть, что он распечатает, когда вы введете в него счета., @Avamander
во-первых, вам нужно будет отправить команду акцептору векселей, чтобы сказать ему принять векселя, вам просто нужно найти провод, который пульсирует при вставке векселя., @Jasen