LINUX.ORG.RU

купюроприёмник


0

0

Доброго времени суток уважаемые. Суть вопроса: есть купюроприёмник, подключается к com порту, нужно заставить это чудо работать под линукс, debian в данном случае. Просто принимать купюры и выдавать простому приложению сумму которую он принял. Сам с такого рода устройствами ранее не работал, посему и вопрос: где что и как с ним работать, может подскажите какие ресурсы, где почитать, в сторону каких программ/библиотек смотреть.

Найди описание протокола для этого девайса. Если есть виндовые драйвера, имеет смысл посмотреть текстовые файлы, входящие в их состав.

mv ★★★★★
()

У меня коллега работал с купюроприемниками какими-то, протокол там тупой до безобразия, до УЖАСА. (Сделано для совместимости с механическими автоматами, куда можно пристроить такое-же купюроприемник).

Получив скажем куплю в 50 р, купюроприемник шлет в порт последовательность из 50-ти едениц, 10 - из 10-ти, 500 - из 500-сот, все тупо, очень. Есть вероятность что некоторые еденички затеряются, так что нужно иметь некий разброс полезно, что-бы задетектить корректно :)

Не факт что вам достался такой-же, однако стоит просто попробовать тупо почитать, что лезет в порт, когда вставляется денежка.

armag
()
Ответ на: комментарий от mv

А есть может где глянуть какую литературу о том как оно вообще работет? как распознаёт купюры? как настраивать на валюту и т.д.

>Найди описание протокола для этого девайса. Если есть виндовые драйвера, имеет смысл посмотреть текстовые файлы, входящие в их состав.

Тут я так понимаю надо смотреть в первую очередь на ресурсах производителей, однако может уже можно взять какое-то типовое описание всего этого дела? p.s. тему с нуля поднимаю.

zed-chaos
() автор топика

С такими железяками обычно поставляется документация по его протоколу. Искать на носителях информации, что были в комплекте с девайсом и/или на сайте производителя.

Ну, а дальше -- /dev/ttyS<X> в руки и вперёд. Как один из вариантов можно реализовать "драйвер" в виде демона, к которому приложение(ия) обращаются через какой-то IPC-механизм, скажем dbus.

Sectoid ★★★★★
()
Ответ на: комментарий от zed-chaos

>А есть может где глянуть какую литературу о том как оно вообще работет? как распознаёт купюры?

Для того, чтобы просто общаться с устройством эти знания не являются необходимыми. Хватит только описания протокола.

>как настраивать на валюту и т.д.

Если устройство держит несколько валют -- описание этих команд будет в документации к протоколу.

Sectoid ★★★★★
()

Документация на sensis.ru по протоколу вроде нормальная.

Советую для начала почитать что-нибудь по работе с com-портами (RS232), чтобы понимать про скорость передачи, биты данных, четности и т.п. (электронная часть тебя не интересует, именно передача данных). По началу с этим могут быть грабли, особенно если устройство не знакомое (скорость передачи, бит какой-нибудь производитель по-своему ставит и т.п.). В первую очередь смотри на скорость передачи, обычно на этом настройка заканчивается.

Просто посмотреть, что передает устройство можно с помощью minicom (там настраивается скорость, биты и т.п.), направишь его на /dev/ttyNNN. Если данные совпадают с тем, что обещают в протоколе, то все ок.

Я лет 9 назад писал драйвера в супермаркете для торгового оборудования под SCO, все делал с нуля. Были шедевры в протоколе на манер единички на единицу валюты :) Я думаю сейчас уже можно найти библиотеку, которая максимально упростит работу с протоколом, может даже и демонов соответствующих реализует. Поищи на форжах всяких по tty, com, rs232.

dr_jumba
()
Ответ на: комментарий от zed-chaos

>А есть может где глянуть какую литературу о том как оно вообще работет? как распознаёт купюры? как настраивать на валюту и т.д.

это делает не драйвер, так что тебе это нафиг не нужно

xydo ★★
()
Ответ на: комментарий от xydo

я имел в виду "как распознаёт купюры".

настройка на валюту - это либо разные модели, либо разные прошивки.

хотя и не исключаю, что сейчас есть особо умные модели, которые распознают валюты сразу нескольких стран...

xydo ★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.