Характеристики протокол Modbus TCP - блог дома програмист
ModbusRTUcherez TCP връзка
Най-лесният начин да Modbus съобщения чрез мрежата - просто преминават пакети чрез контакта на Modbus RTU TCP (връзка). В този случай, формат на пакета е същата като за протокол Modbus RTU. По принцип това е възможно и да завършат на типа протокол.
Modbsu за обмен на съобщения по мрежата бяха решили да използват модифициран протокол. Взехме стандартен Modbus RTU и малко се промени. Първо извадени от нея последните 2 байта CRC16. Тъй като всеки TCP / IP пакет съдържа надзорната си чанта, ние решим какво да правим, не е необходимо да се провери отново. Също отстранява първия байт подчинен ID. По принцип, както ще стане ясно по-късно, той е бил не се отстраняват, а просто се преименува. Тези байтове без Slave ID и CRC16 наречени PDU - Единица протокол.
Да вземем например Modbus RTU заявка. който гласи няколко регистри фиксиращото устройство # 17 (подчинен, J = 17)
Сега махнете първата и последните 2 байта. Получаваме PDU!
С този вид ясно. Сега, за да получите пълен пакет Modbus TCP трябва да добавим пред MBAP Header - Modbus Application Header. Т.е. ние трябва да добавите заглавие. Тази позиция съдържа идентификационния номер на транзакцията. Протокол за самоличност. Дължина и блок ID.
Идентификационен номер на транзакцията - 2 байта, които се определят от клиента, който еднозначно да идентифицира всяка заявка. Т.е. това е просто номер 0-65535 уникален за всяка заявка.
Протокол ID - 2 байта, указващи версия протокол. В текущото изпълнение винаги трябва да бъде равна на 0x00 0x00
Дължина - 2 байта, които определят дължината на пакета (с изключение на байт протокол ID ID и честна сделка.)
Но в действителност, доста често срещана ситуация, когато има сървър, който просто маршрути Исканията към други устройства, Modbus RTU, които са свързани с нея по различни канали (Ethernet, сериен, може да интерфейс). Поради това, клиентът може да използва Modbus TCP Server, като портал (Gateway), за да общува с устройства, които стоят зад него.
Пример Modbus TCP сървър, който се използва като вход за пренасочване на заявките към Modbus RTU устройства
Сега илюстративна диаграма, разликата между искането за Modbus RTU Modbus TCP от искането.
Различията Modbus RTU и Modbus TCP заявки
Нека да видим един пример от байтове за две искания: