для овена да, так же для других функций библиотеки SysLibSocket
Вид для печати
для овена да, так же для других функций библиотеки SysLibSocket
Ну строку в библиотеке я поменял правда проблема не решилась. Я может что-то не понимаю в хронологии действий, но по сути делаю то, что было описано на первых страницах данной темы
1. Добавляю библиотеки (codesys_network_121_hf1, oscat_basic_333) в свой проект
2. Экспортирую из библиотеки (codesys_network_121_hf1) DEMO
3. Импортирую DEMO в свой проект
4. Переименовываю MB_SERVER_DEMO в MB_SERVER_test
5. Вызываю MB_SERVER_test
Ну сейчас еще в библиотеке codesys_network_121_hf1 в IP_CONTROL2 заменил строку
IF SysSockBind(server_socket, ADR(sockaddr), SIZEOF(sockaddr)) THEN
на
IF BOOL_TO_DINT(SysSockBind(server_socket, ADR(sockaddr), SIZEOF(sockaddr)))<0 THEN
Где я ошибаюсь?
блин уже пожалел что связался, смотрите если в основной бибке в условие Вы проверяете на значение ИСТИНА, то и для овена знак должен быть больше -1
да и в целом зачем добавлять бибку экспортируйте в свой проект только то что нужно
Ну логику замены я понял (хотя не понимаю смысла). Я просто интересуюсь почему программа не работает, хотя я выполняю все то что было прописано на первой странице темы. Ну, а что касается экспорта библиотек, то вставить готовые и отработанные библиотеки я считаю правильнее и надежнее, чем что либо переделывать и дербанить, тем более ресурс контроллера позволяет
смысл что у всех функции возвращают булевы переменные, а у овена отрицательный результат это минус один (-1). Почему не работает, потому что это надо проделать и с листеном, ну и вообще смотреть на каком шаге стопорится. Незабываем, что самое главное это в начале сделать правильное закрытие сокета, без него овеноовский плк сможет тянуть 15 открытых сокетов, потом контроллер придется сбрасывать
Большое спасибо за консультацию. Меня просто интересовало, как и автора темы, нет ли готовых библиотек для работы с Modbus TCP (как для Modbus RTU). Из первых страниц данной темы я подумал, что можно использовать готовые библиотеки oscat для данной цели. Но тут получается, что готового нет и надо напильником дорабатывать, причем зная особенности контроллера. Будет время углублюсь в эту тему
да не так много там и переделывать, только открытие сокета и убрать лишнее из оскат бибки, не в смысле из всей библиотеки а из кода относящегося к модбасТСР
Добрый день.
Выкладываю рабочий пример ModbusTCP из OSCAT библиотеки для ПЛК100.
Допилил при помощи блока IP_CONTROL2 от АТАМАНА
http://www.owen.ru/forum/showthread....l=1#post232436
Тестировал с LectusOPC.
Работает до первого отключения.
Спасибо за пример!
Подскажите, как увеличить массив данных?
Добрый день.
Представляю пример ModbusTCP сервера с работой через сокеты.
Поддерживаются функции 3, 4, 6, 16.
Тестировал на ПЛК100.
Писал для работы с Openhab, который рвет соединение после каждого опроса.
Для работы с Lectus нужно установить переменную tReadTimeout больше периода опроса.
По идее должен работать и на ПЛК110.