Maikl82
Junior Member / Новичок
Участник № / Member № 5675
отправлено / posted
Добрый день! Проблема в следующем: пытаюсь связать Trace Mode c электросчетчиком СС-301 (производство Гран-Электро, г.Гродно, РБ)
По вашим примерам создаю канал типа CALL к нему привязываю источник. Источник пробовал создавать двумя способами: Modbus->R_FIFO_Queue и Пользовательские драйверы->TYPE11->UniversalPLC_type4.
Согласно применяемого протокола обмена посылаю запрос к счетчику через com-порт.
Ответа не получаю. Подключаю порт-монитор и вижу, что байты CRC меняются местами. Ниже привожу скрины обращения к счетчику: 1-ый вариант обращаюсь через программу порт-монитор к счетчику и получаю ответ
2-ой вариант обращаюсь через профайлер TraceMode, ответа не получаю, запрос уходит в цикл.
отправлено / posted
Видимо, речь идет о канале CALL.Vector.
Согласно стандарту Modbus CRC передается младшим байтом вперед, что и делает Trace Mode 6.
Видимо, в счетчике СС-301 предусмотрена передача CRC старшим байтом вперед.
В таком случае Вам придется отказаться от стандартного формирования контрольной суммы, вычислять ее заранее для каждой команды и вставлять в текст команды. Отказаться от посылки стандартной CRC можно, введя после команды ключ CRCNO (через разделитель ";").
Сообщения / Posts 17336 | Из / From: Россия
| IP / IP: IP адрес / IP address |
Maikl82
Junior Member / Новичок
Участник № / Member № 5675
отправлено / posted
На форуме я нашел несколько сообщений с описанием подобной проблемы. Может всё же стоит в следующих версиях предусмотреть, возможность выбора как будет передоваться код CRC, младшим или старшим байтом вперед.
Сообщения / Posts 2 | Из / From: Беларусь
| IP / IP: IP адрес / IP address |
отправлено / posted
Вариантов отступления от стандарта может быть очень много. Учесть их все не представляется возможным.
Сообщения / Posts 17336 | Из / From: Россия
| IP / IP: IP адрес / IP address |