Синхронизироваться можно по байту с взведенным девятым битом.
Синхронизироваться можно по байту с взведенным девятым битом.
да еще в modbus RTU нет рукопожатий и подтверждений от центра выдачи времных ключей в том чтобы убедиться что ответил нам именно вот тот частотник а не злоумышленник (Петька с modbus slave софтом) У всех все работает - это протокол мастер слейв ... 1 мастер много слейвов ... и да 1 сломанный слейв может повесить всю шину.
Dmitriy Murashov
SPS Software Engineer Automation Engineering RUS
так и Вы хвастались что что то делали и где этот код? Почему мы должны показывать первые
Bad programmers worry about the code. Good programmers worry about data structures and their relationships
среди успешных людей я не встречала нытиков
Барбара Коркоран
берешь твинкат ставишь, бибку ModbusRTU.lib там есть слейв... для ПК в том числе который работает через обычный UART (те через SysComLib)... если не разберешься готов помочь (стучи в личку)
Dmitriy Murashov
SPS Software Engineer Automation Engineering RUS
Ну понятно, берешь... ставишь...
Тож хочу предложить домашнее задание из разряда сказок. Составить такой пакет, легальный ответ какого нибудь слейва, который будучи принятым другим слейвом не сначала (в виду того, что он включился на несколько миллисекунд позже чем другие участники обмена) будет расценен им как команду на запись какого-либо числа (например ноля) в какойнить свой регистр. Для того чтобы главной новостью утренних газет стало: "Деление на ноль убило человека"
Например библиотеки Modbus от ABB запаролены, возможно тоже и с TwinCat. Нету под рукой чтобы ставить и смотреть, да и не надо.
В 3-м CDS есть библиотеки Modbus как мастер так и слейв.
обычно ловится в принимаемом потоке адрес (за ним все по протоколу и проверяем контрольную сумму, если не совпало ищем следующий адрес как у устройств (в потоке и тд) и все работает.. (в некоторых протоколах есть и разделитель фреймов каконить заданный символ, но тут такая же ситуация что и с адресом в самих данных может быть и символ разделитель фреймов )
а если надо бьютефул пользуй Profibus - там все вплоть до коннекторов и проводов стандартизировано и все всегда работает. (и на вопрос я взял штекер не стандартный а самодельный и у меня не чего не работает - тебе даже отвечать не кто не будет)
Dmitriy Murashov
SPS Software Engineer Automation Engineering RUS