PDA

Просмотр полной версии : Пара ModbusSlave для панели ИП320



Кольцов Сергей
24.02.2011, 19:31
Можно ли создавать 2 элемента ModbusSlave на один порт контроллера для обмена с панелью ИП320? (8битные переменые в слейв1 2байтовые в слейв2) Будет ли такая конфигурация нормально функционировать?

Ельцов Андрей
26.02.2011, 13:45
В ПЛК можно повесить 2 устройства на 1 порт. Только зачем это.
Чем Вас не устраивает вариант сначала добавить 8 битные переменные, а затем 2-байтные?

Кольцов Сергей
26.02.2011, 20:00
Чем Вас не устраивает вариант сначала добавить 8 битные переменные, а затем 2-байтные?
Не заработало почему то когда в конец 2 байтовых добавил float, а с 2мя слейвами заработало без проблем, во 2 слейв сунул все 4 байтовые. Просто хотел узнать, скажется такая конфигурация на надёжности работы или нет. Пока вроде всё работает.

Илья Кареткин
28.02.2011, 10:11
Оригинально...на мой взгляд конфигурация не правильная.. Floatы встают только на четные адреса(2,4,6..), даже если следующий свободный адрес конфигурации нечетный(он будет пропущен)..

Кольцов Сергей
28.02.2011, 18:26
Хм.....а вот этот момент по моему нигде не отображён, по крайней мере в руководстве к ИП320 лежащему на сайте вообще ничего про float'ы не сказано. Хотя в руководстве к ПЛК100: "Такое упорядочение заключается в организации памяти таким образом, что переменные размером 8 бит, 2 байта и 4 байта располагаются только по определенным адресам: четырёхбайтным переменным присваиваются адреса, кратные 4; двухбайтным – кратные 2; однобайтным (или восьмибитным) –кратные 1."
А в моей конфигурации float как раз попали на регистры 21, 23, 25. Надо будет при случае попробовать. Хотя из руководства получается не 2,4,6.....а 24 28 32 в моём случае. Пока же работает на 2х слейвах с адресами 0, 2, 4.

Илья Кареткин
01.03.2011, 13:27
Сергей, я поясню.. если Вы посмотрите таблицу памяти Slave... речь в

Хотя в руководстве к ПЛК100: "Такое упорядочение заключается в организации памяти таким образом, что переменные размером 8 бит, 2 байта и 4 байта располагаются только по определенным адресам: четырёхбайтным переменным присваиваются адреса, кратные 4; двухбайтным – кратные 2; однобайтным (или восьмибитным) –кратные 1."

шла о байтовой памяти.. колонка правее показывает адрес Регистров - "кратна четырем байтам" значит "кратна 2 регистрам" итд - обращение же в Modbus идет по регистрам..
(согласен - неоднозначно, зачем тут байты..свой вариант таблички я Вам уже выкладывал :rolleyes: - на ПЛК110 переделали и включили в РП)