Страница 1 из 2

Собственное ПО для работы с купюроприемником

СообщениеДобавлено: 20 дек 2006, 15:09
Felan
Проблема достаточно срочная. Может кто имел дело или знает как ее решить.

Нужно написать собственный софт для купюроприемника DBV=301-US-USA2-3111-D3.

Столкнулся с тем, что он тербует контролькную суммму, в формате CRC-CCITT 16, с полиномом x^16+x^12+x^5+1.

Программа JCM003HostSimulator с ним работает, и чтение статуса в ней представлено как FC 05 11 27 56.

Но все алгоритмы, контрольных сумм, которые я смог найти, в том числе собственная реализация алгоритма, описание котого было найдено в разных уголках сети, так же дает другую контрольную сумму:
FC 05 11 6B D6.

В рассчете контрльной суммы учавствуют байты FC 05 11.

Как правильно считать это CRC-CCITT 16, что бы дейвайс понимал ее???

Re: Собственное ПО для работы с купюроприемником

СообщениеДобавлено: 20 дек 2006, 15:37
AR_Favorit
мож вот это поможет? ???

http://www.joegeluso.com/software/articles/ccitt.htm

Re: Собственное ПО для работы с купюроприемником

СообщениеДобавлено: 20 дек 2006, 16:26
Felan
Я и считаю ее в соответствии с тем, что на писано по твоей ссылке. Результат тот же... но у прибора - другой! :( :( :(

Re: Собственное ПО для работы с купюроприемником

СообщениеДобавлено: 21 дек 2006, 09:34
Felan
Вопрос решен благодаря Jinek.

Еще раз ему спасибо!

Re: Собственное ПО для работы с купюроприемником

СообщениеДобавлено: 21 дек 2006, 17:25
Felan
Теперь возник следующий вопрос.

Как вывести купюрник в режим IDLE?
После включения и команды RESET очевидно ему надо еще что-то сказать.

Кто нибудь может поделиться документом, где прописаны последовательности и времена между ними?

Вроде описание команд есть, но нифига не понятно, что и как должно посылаться. В описании написано, For details refer to [DATA setting specifications] for each model.

Весь инет облазил, нет нигде!!! Может у кого есть?

Re: Собственное ПО для работы с купюроприемником

СообщениеДобавлено: 21 дек 2006, 17:31
AR_Favorit
У него ID003?

Постоянно слать статус реквест, постоянно получать ответ... В зависимости от ответа либо говорить ему что делать дальше, либо слать статус реквест снова, либо сообщать ПО о событиях и проблемах... продолжая слать статус реквест по-прежнему... В этом весь принцип поллинга.

Описание протокола есть? Там должно быть, с какой частотой надо слать запросы статуса...

Re: Собственное ПО для работы с купюроприемником

СообщениеДобавлено: 21 дек 2006, 18:30
toweroff
Инхибит ноль и делов

Re: Собственное ПО для работы с купюроприемником

СообщениеДобавлено: 22 дек 2006, 10:27
Felan
AR_Favorit писал(а):У него ID003?

Описание протокола есть? Там должно быть, с какой частотой надо слать запросы статуса...


Есть. Весь вопрос в параметрах.
Непойму, что за параметры что означают в командах, у которых передаются дополнительные данные. Какие биты за что отвечают. В описании как-то не понятно (ну по крайней мере мне, как человеку 4 дня назад даже не подозревавшего, что во вселенной существуют такие аппараты, как купюроприемники). Например, есть таблица:

ENABLE\DISABLE DATA
CONTROLLER -> ACCEPTOR                          ACCEPTOR->CONTROLLER
C0h+DATA1+DATA2                                  C0h+DATA1+DATA2            [echo back]
80h                                              80h+DATA1+DATA2

                      bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0
DATA1                  08  07  06  05  04  03  02  01                                                                  POWER SUPPLY CUT
02 [STATUS REQUEST] ->                                                        -------------------------------
03 [STATUS REQUEST] ->                                                        POWER SUPPLY ON
04                                         
06                                         
08                                                                                                INITIALIZING
10                                         
12                                         
14                                         
16                                         
18                                                                                               
20                                                                                                -----------------------------
22                                          <- [ENABLE](IDLING)              ON STANDBY


Обязательно ли посылать [VERSION REQUEST], и обязательно ли она должна быть именно во время включения питания, до инициализации?

Обязательно ли посылать [ENABLE\DISABLE], [SECURITY] и [OPTIONAL FUNCTION] для того, что бы потом послать [INHIBIT]?

Что вообще за функция такая [OPTIONAL FUNCTION] и что за данные ей требуются? (про это вобще ни слова нет!!!)

Что делает команда [SECURITY]? Чем режимы защиты отличаются? И вообще, это режимы защиты чего?

Re: Собственное ПО для работы с купюроприемником

СообщениеДобавлено: 22 дек 2006, 10:58
AR_Favorit
В Enable/Disable второй байт данных нефункциональный, а вот первый - каждым битом означает одну из купюр, которые знает купюроприемник. 01-08 - это номера купюр в его таблице: скорее всего 00 - 10 руб, 01 - 50 руб, 02 - 100 руб, 03-500 руб, 04 - 1000 руб

Это должно быть написано в документации на конкретный купюроприемник.

Так что если послать ему команду с DATA1 b11100011, то при попытке засунуть купюру 10 или 50 руб, он просто не станет ее брать (не пытаясь передать контроллеру информацию о ней)...


Ни версион инфо, ни опшинал фанкшн слать необязательно. Версион инфо нужна не купюрнику, а контроллеру, чтоб знать, с каким купюрником он общается.

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

Инхибит- команда, отключающая/включающая прием всех разрешенных купюр сразу, ни секьюрити н опшинал перед ней не нужны, она может быть послана в любой момент... Данные посланные с ней определяют, разрешен ли прием или запрещен...

Секьюрити - устанавливает режим секретности. Определяет, насколько строго купюрник проверяет купюру и/или пытается отследить, нет ли попытки фишинга (вытягивания купюры). тоже можно не слать, если устраивает тот режим, который включен по умолчанию...

Re: Собственное ПО для работы с купюроприемником

СообщениеДобавлено: 22 дек 2006, 12:17
Felan
Спасибо за разяснение...
Блин, где бы еще взять это описание конкретной модели.
В инете ничего не нашел. В доках, которые переслал продавец, есть только как его разобрать, и общее описание протокола. :(

Re: Собственное ПО для работы с купюроприемником

https://forum.rarib.xyz/viewtopic.php?f=39&t=37143