Технический форум

Технический форум (http://www.tehnari.ru/)
-   Форум по электронике (http://www.tehnari.ru/f39/)
-   -   Автобусное табло, неведомый протокол по RS485 (http://www.tehnari.ru/f39/t255262/)

djdance 19.08.2017 12:47

Автобусное табло, неведомый протокол по RS485
 
Вложений: 1
Знатоки, кто сталкивался с таким вот протоколом, который опишу ниже. Сильно не пинайте, я прикладник, такое вижу впервые, документация проприетарная и её не дают.

Есть автомобильное табло на автобус Luminator TwinVision Smart Series и к нему пульт OCU. Я подключился между пультом и знаком, могу видеть данные на ПК через Rs485 конвертер. Скорость 115200, настройки порта 8N1. И вижу я к примеру, вот такое:

Команда, видимо, очистки строки:

40 50 00 08 00 84 24 00 00 30 11

Команда отправки строки текста RED ROUTE 10

40 05 00 38 00 82 00 00 00 24 14 FF FF 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 52 45 44 20 52 4F 55 54 45 20 31 30 20 20 20 20 20 20 20 20 20 20 30 11


Несложно было догадаться, что 0x40 это заголовок, второй байт это CRC (0x100 минус сумма), 0x38 вроде как получатель(?), 0x82 тип команды, 0x24 тип строки, 0x14 начало строки, два байта 0xFF это типа маска NN (номера маршрута), далее простая тексотвая строка, а 0x30 и 0x11 - конец. Расположение контрольной суммы в начале - это уже фантастика для меня, ну ладно.

Однако если попытаться с ПК отправить такую же команду в обход пульта, знак ругается строкой 40 04 00 08 00 F3 01 00 00, которую он повторяет на любую посылку количеством over 100 раз(!) без какой-либо реакции.

Вопросов два.

1. Что за протокол такой чудной, где CRC в начале? Может кто узнал? Почему в конце зачастую 30 11, но иногда нет?

2. Что за ответ такой от табло, чего он от меня хочет таким многочисленным повтором? Это типа хендшейк что ли?

Николай_С 19.08.2017 16:28

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

djdance 19.08.2017 16:35

Николай_С, замечательно, а как называется спецификация?

Abell 19.08.2017 17:09

Цитата:

Сообщение от djdance (Сообщение 2510374)
если попытаться с ПК отправить такую же команду в обход пульта

Похоже, что-то на аппаратном уровне. Неплохо бы запоминающим осциллоскопом посмотреть разницу непосредственно по RS485. Может, конвертер чудит - например, передача инвертируется tehno015

djdance 19.08.2017 23:27

Abell, да, по уровням там чёрте что может быть запросто. Но!
Ответ от табло - осмысленный, в том же формате, с валидным CRC. А значит, он явно что-то просит в этом протоколе, назовём его так. У меня идей нет, я такое впервые вижу, так что вся надежда, если тут кто-то припомнит похожие реализации.

Abell 19.08.2017 23:57

Цитата:

Сообщение от djdance (Сообщение 2510561)
Ответ от табло - осмысленный

я имел в виду, что конвертер может отправлять неправильные данные, на которые и ругается табло.
Кстати, насчет ругается. Вы наблюдаете линию rs485, а она двунаправленная. Что, если некоторые байты в команде - ответ, а не команда пульта? Есть возможность открыть пульт и посмотреть отдельно, что он передает, а что - принимает? tehno015

djdance 20.08.2017 00:04

На это я Николаю С ответил. CRC в 95% совпадает, а где вплетается ответ - оно видно и легко исключаемо. Скажем так, да, это всегда проблема, но здесь удалось увидеть и убедиться в единообразии формата.

Формата, где CRC идёт вторым байтом. Ну вот что это за причуда? Я не нашел ни в одной стандартной спецификации такого :-(

Abell 20.08.2017 09:48

Цитата:

Сообщение от djdance (Сообщение 2510569)
не нашел ни в одной стандартной спецификации такого

"а зачем нам стандартная спецификация? не, нам стандартная спецификация не нужна!" - сказали разработчики этого девайса, придумали свою и ни с кем не поделились, "Ы!" - чтоб никто не догадался и искал тайный смысл, а его нет tehno013
На электрониксе, где Вы этот же вопрос задавали, посмотрите темы и сообщения, сколько "разработчиков" озабочены в первую очередь задачей - защитить свое устройство от вскрытия и копирования, пусть даже в ущерб функционалу - так и здесь :fase:

Николай_С 20.08.2017 10:36

Цитата:

Сообщение от djdance (Сообщение 2510420)
Николай_С, замечательно, а как называется спецификация?

Да так и называется. Спросите у Вики, узнаете много интересного.
И еще:
Цитата:

2. Стандарт RS-485 не оговаривает:
...
- протокол обмена.
В самом конце перечислены основные протоколы с их описанием.

djdance 20.08.2017 12:20

Цитата:

Сообщение от Николай_С (Сообщение 2510603)
Да так и называется

вы RS485, что ли, мне сватаете? так я ж в нем и читаю уже. Эх, а я надеялся :-)

Цитата:

Сообщение от Abell (Сообщение 2510594)
не, нам стандартная спецификация не нужна!

Оно понятно. Надежда, что кто-то подобное встречал.


Часовой пояс GMT +4, время: 06:57.

Powered by vBulletin® Version 4.5.3
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.