Просмотр полной версии : ПЛ110-30 М02 , ModbusSlave через RS-232
Здравствуйте,
имеется ПЛ110-30(М02) и СП307, соединение через rs-232, панель - мастер. Обмен в панели сделан через макрос. Очень плохо работает Writes, особенно если length > 10.
Причем
1. замена Writes на несколько Write работает хорошо
2. замена ПЛК110-30(М02) на старый образец, то же все хорошо
получается в ПЛК110-30(М02) плохо реализовано 16 функция modbus, или я что-то накосячил?
Сделал такой "костыль", вроде работает
BOOL writes( WORD address, WORD amount, WORD *buffer ) {
BOOL result;
WORD i;
for ( i = 0; i < amount; i++ ) {
result = Write( PLC, 1, MODBUS_RTU_REG_4X, address, 0, TYPE_WORD, buffer[ i ] );
if ( result ) {
address++;
} else {
break;
}
}
//result = Writes( PLC, 1, MODBUS_RTU_REGS_4X, address, amount, buffer );
return result;
}
При куче плюсов МО2, в нем есть и куча минусов. Один из минусов - штатный слейв. Шаг назад по сравнению с МО1.
За свои слова - отвечаю.
а можно немного поподробней, интересно же
ведь про проблемы в мануалах не пишут
В отличие от МО1, в МО2 немерянная задержка ответа штатного слейва по RS485-1/2.
Опросить быстрее 14мс так и не удалось. Куда время уходит - без понятия. Какие-то мифические системные задачи в проекте из ";" которых тупо не было в MO1 (его за это время пару раз с хвостиком опросить можно было, при этом он еще несколько десятков фб прогоняет)
да, неприятная особенность, особенно когда нельзя время ожидания ответа поменять
Ну не все потеряно. Syslibcom - как часы, видима тута нужно и слейва программного запиливать.
Да было бы здОрово, можно было бы параметры подключения из пользовательской программы менять
в принципе функции 3, 4, 6, 16 можно за неделю реализовать... ну плюс отладка
Так это.... реализовано в бибке modbus.lib
одна проблема - нужен короткий цикл, может не для каждого приложения подойти
Слейв. Не мастер )Ну, тогда надо попросить ОВЕН портировать слэйв из КДС3.
Скорее всего, он также работает через syslibcom и они скорее всего одинаковые.
одна проблема - нужен короткий цикл, может не для каждого приложения подойти
А тута вступают в силу плюсы МО2. Написать длинный цикл (минц) - надо постараться ))
...попросить ОВЕН портировать слэйв из КДС3...
Всего-то делов )))
Евгений Дударев
07.06.2016, 12:36
Здравствуйте, рабочая версия Modbus_slave для Codesys 2.
Прошу любить и тестировать.
Здравствуйте, рабочая версия Modbus_slave для Codesys 2.
Прошу любить и тестировать.
Позвольте полюбопытствовать, а зачем Вы дублируете выполнение таймера
при попытке залить этот "проект" в ПЛК, вылазит ошибка
даже , если в "пустой" проект подключить енту библиотеку вылазит тоже самой
Powered by vBulletin® Version 4.2.3 Copyright © 2025 vBulletin Solutions, Inc. All rights reserved. Перевод: zCarot