Протокол обмена с ПЭВМ
ПРОТОКОЛ ОБМЕНА С ПЭВМ
Обмен с прибором:
Прибор поддерживает независимый от режима работы обмен с системой управления. Обмен ведется на указанной скорости с длиной посылки в 8 бит, без бита паритета, 1 стоп-бит.
ВНИМАНИЕ! Если прибор работает в режиме адресации (адрес не равен нулю), то перед командой должен идти адрес устройства. В ответе прибор вначале также выдает адрес устройства, затем ответ. Адрес устройства с разделительным пробелом не входит в подсчет контрольной суммы.
Например: команда в адресном режиме: 5 VER\r
Команда в безадресном режиме: VER\r
Поддерживаемые команды:
VER - дать версию ПО устройства;
Ответ:
Что-то там/r
ALL - Получить пакет значений прибора;
Ответ: ALL 1 2 3 5 6 7 8 9 1011 12 13 14 15 CS:x\r,
1 – текущий суммарный нормализованный вес;
2…5 – текущий нормализованный вес канала 1…4;
6 – продольное смещение в кг;
7 – поперечное смещение в кг;
8 – продольное смещение в мм;
9 – поперечное смещение в мм;
10…13 – признак аварии ДВ канала 1…4 (1 – авария);
14 – признак превышения НПВ (1 – перегруз);
15 – признак «вес установился», «1»-да, «0» - нет;
16 – условный номер состава, в который включен данный вагон;
CS – контрольная сумма.
BAZA d - Получить/установить значение продольной базы в мм. Если параметр d не установлен, то прибор возвращает значение продольной базы в мм. Если параметр d установлен, то прибор возвращает строку «BAZA OK\r»;
GETREC - дать запись из базы данных прибора;
Ответ: GETREC ID=x DATE=DD.MM.YYYY TIME=HH:mm:SS PACKET=pckt CS:x\r
где:
ID – числовое ID записи;
DATE – дата формирования записи; лидирующий ноль присутствует;
TIME – время формирования записи; лидирующий ноль присутствует;
PACKET – запись о весе вида 1 2 3 5 6 7 8 9 1011 12 13 14 15 16, где
1 – текущий суммарный нормализованный вес;
2…5 – текущий нормализованный вес канала 1…4;
6 – продольное смещение в кг;
7 – поперечное смещение в кг;
8 – продольное смещение в мм;
9 – поперечное смещение в мм;
10…13 – признак аварии ДВ канала 1…4 (1 – авария);
14 – признак превышения НПВ (1 – перегруз);
15 – признак «вес установился», «1»-да, «0» - нет;
16 – условный номер состава, в который включен данный вагон;
CS – контрольная сумма.
Ответ может быть и таким: GETREC EMPTY CS:x\r – в случае отсутствия новых записей.
DELREC ID=x - удалить запись с указанным числовым ID из базы данных прибора;
Ответ: DELREC OK\r – в случае успеха, и DELREC ERROR\r – в противном случае.
ВНИМАНИЕ! Все числовые поля переменной длины.
ВНИМАНИЕ! Контрольная сумма во всех случаях считается одинаково; полином 0x31 (x^8 + x^5 + x^4 + 1), стартовое значение = 0xFF, считается от первого символа ответа (адрес с разделителем НЕ входит в подсчет) и до пробела включительно перед «CS».