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

Обсуждение продукции JCM

Модератор: Guzel

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

Сообщение Felan » 20 дек 2006, 15:09

Проблема достаточно срочная. Может кто имел дело или знает как ее решить.

Нужно написать собственный софт для купюроприемника 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, что бы дейвайс понимал ее???
Felan
 
Сообщений: 9
Зарегистрирован: 20 дек 2006, 14:38


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

Сообщение AR_Favorit » 20 дек 2006, 15:37

мож вот это поможет? ???

http://www.joegeluso.com/software/articles/ccitt.htm
С уважением, AR
AR_Favorit
Гуру
Гуру
 
Сообщений: 8984
Зарегистрирован: 04 ноя 2005, 20:31
Откуда: г. Тула

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

Сообщение Felan » 20 дек 2006, 16:26

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

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

Сообщение Felan » 21 дек 2006, 09:34

Вопрос решен благодаря Jinek.

Еще раз ему спасибо!
Felan
 
Сообщений: 9
Зарегистрирован: 20 дек 2006, 14:38

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

Сообщение Felan » 21 дек 2006, 17:25

Теперь возник следующий вопрос.

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

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

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

Весь инет облазил, нет нигде!!! Может у кого есть?
Felan
 
Сообщений: 9
Зарегистрирован: 20 дек 2006, 14:38

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

Сообщение AR_Favorit » 21 дек 2006, 17:31

У него ID003?

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

Описание протокола есть? Там должно быть, с какой частотой надо слать запросы статуса...
С уважением, AR
AR_Favorit
Гуру
Гуру
 
Сообщений: 8984
Зарегистрирован: 04 ноя 2005, 20:31
Откуда: г. Тула

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

Сообщение toweroff » 21 дек 2006, 18:30

Инхибит ноль и делов
http://www.toweroff.ru
Аватар пользователя
toweroff
Гуру
Гуру
 
Сообщений: 1566
Зарегистрирован: 03 авг 2004, 16:17
Откуда: Moscow

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

Сообщение Felan » 22 дек 2006, 10:27

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]? Чем режимы защиты отличаются? И вообще, это режимы защиты чего?
Felan
 
Сообщений: 9
Зарегистрирован: 20 дек 2006, 14:38

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

Сообщение AR_Favorit » 22 дек 2006, 10:58

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

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

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


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

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

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

Секьюрити - устанавливает режим секретности. Определяет, насколько строго купюрник проверяет купюру и/или пытается отследить, нет ли попытки фишинга (вытягивания купюры). тоже можно не слать, если устраивает тот режим, который включен по умолчанию...
С уважением, AR
AR_Favorit
Гуру
Гуру
 
Сообщений: 8984
Зарегистрирован: 04 ноя 2005, 20:31
Откуда: г. Тула

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

Сообщение Felan » 22 дек 2006, 12:17

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

След.

Вернуться в JCM

Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 34

cron