Запускал на PLCWinNT.
Проблема в примере для ПЛК1хх на шаге CLIENT_STATE_CONNECT с этим:
Soc2.jpg
С портом те же "грабли".
Запускал на PLCWinNT.
Проблема в примере для ПЛК1хх на шаге CLIENT_STATE_CONNECT с этим:
Soc2.jpg
С портом те же "грабли".
Последний раз редактировалось Spawn; 09.09.2020 в 07:47.
Примеры предназначены для запуска именно на ПЛК Овен - на других платформах, естественно, будут свои нюансы.
Связь со мной: telegram: @JuneSmellsLikeBlood | e-mail: e.kislov@owen.ru (личка на форуме - не подходит)
Раздел CDS V3.5 на сайте | Основные темы по CDS V3.5 на форуме: Вопросы и ответы | Визуализация | Настройка обмена с другими устройствами
Repository Archive V3.5 SP4 (необходим для СПК207/СПК1хх без Eth/ПЛК3xx)
oscat.ru | Как обратиться в техподдержку? | Как отлаживать ошибки | Отладка проектов в CODESYS V3.5 | Проблема XY | Как правильно задавать вопросы | AnyDesk
Почему тогда с примерами для М02 (т.е. там, где используются функции SysSockHtons и SysSockHtonI) этой проблемы нет? Не понимаю какая взаимосвязь порядка передаваемых байт и конкретной платформы?
Потому что "примеры предназначены для запуска именно на ПЛК Овен".
Поэтому заявления типа "пример TCP клиента из шапки для ПЛК1хх, кстати, "из коробки" не рабочий." справедливо делать только в том случае, если вы запускаете его на ПЛК ОВЕН.
09-09-2020 9-24-10.png
Связь со мной: telegram: @JuneSmellsLikeBlood | e-mail: e.kislov@owen.ru (личка на форуме - не подходит)
Раздел CDS V3.5 на сайте | Основные темы по CDS V3.5 на форуме: Вопросы и ответы | Визуализация | Настройка обмена с другими устройствами
Repository Archive V3.5 SP4 (необходим для СПК207/СПК1хх без Eth/ПЛК3xx)
oscat.ru | Как обратиться в техподдержку? | Как отлаживать ошибки | Отладка проектов в CODESYS V3.5 | Проблема XY | Как правильно задавать вопросы | AnyDesk
capzap, спасибо за подсказку. Я это понял еще до того, как задал свои предыдущие вопросы, когда пробовал примеры обоих версий ПЛК и увидел, что один из примеров работает без исправлений, а второй нет. Честно говоря, я ждал подобный ответ от Евгения. Задал вопросы не с целью флуда, а чтобы в будущем, если кто-нибудь будет идти по тем же шагам, по которым сейчас иду я (с PLCWinNT), прочитав эти сообщения, понял в чем загвоздка.
Евгений, спасибо за наводку по документации, но я имею привычку "сначала читать документацию, а потом уже ломать". Можно же было просто указать, например, что у линейки ПЛК1хх нестандартная реализация работы с сокетами, отличающаяся от других устройств, и ПЛК1хх сами переворачивают байты. Что в документации подобные моменты ни как не упоминаются, что в Ваших ответах, и информация типа "Функция не поддержана в линейке ПЛК1хх." не привносит никакой ясности.
Всем спасибо за помощь.
Последний раз редактировалось Spawn; 09.09.2020 в 10:07.
Пример здесь https://owen.ru/forum/showthread.php...l=1#post291852 работает с виртуальным контроллером, овеновский плк работают не как все из-за неправильно понимания в свое время описания бибки
Bad programmers worry about the code. Good programmers worry about data structures and their relationships
среди успешных людей я не встречала нытиков
Барбара Коркоран
Мы дополним информацию в описании, спасибо за замечание.и ПЛК1хх сами переворачивают байты.
Upd. - документация дополнена.
Последний раз редактировалось Евгений Кислов; 11.09.2020 в 20:36.
Связь со мной: telegram: @JuneSmellsLikeBlood | e-mail: e.kislov@owen.ru (личка на форуме - не подходит)
Раздел CDS V3.5 на сайте | Основные темы по CDS V3.5 на форуме: Вопросы и ответы | Визуализация | Настройка обмена с другими устройствами
Repository Archive V3.5 SP4 (необходим для СПК207/СПК1хх без Eth/ПЛК3xx)
oscat.ru | Как обратиться в техподдержку? | Как отлаживать ошибки | Отладка проектов в CODESYS V3.5 | Проблема XY | Как правильно задавать вопросы | AnyDesk
День добрый.
Что-то я запутался с MQTT, если один топик читаем, и один публикуем, как в примере, вроде все понятно.
А если необходимо несколько топиков читать и писать, работает как-то непредсказуемо.
Пробовал и несколько экземпляров MQTT_Client вызывать, и один экземпляр последовательно с разными топиками в одном цикле ПЛК, и один экземпляр последовательно в разных циклах ПЛК.
Подскажите, как правильно организовать обмен?
В идеале, в виде примера хотя бы два топика на чтение и два на запись.
Хочу прикрутить MQTT на ПЛК-110-60 М02.
Добрый день.
Обновил пример по MQTT и библиотеку MQTTOwenPlc_udp.lib: https://owen.ru/forum/showthread.php...l=1#post327664
Публикация выполняется последовательно в два топика (по временному интервалу) и добавлены 2 топика подписчика.
Инженер по продуктам «ПЛК и модули»
e-mail: i.masterenko@owen.ru | skype: i.masterenko_owen
День добрый.
Спасибо за пример.
Но по идее правильнее тогда
sPublic: ARRAY [0..1] OF STRING:='Test0', 'Test1';
Публиковать ведь нужно разные сообщения.
И дальше получается что данные с брокера, из топика на который подписаны, попадают по порядку сначала в asSubscriber[0], потом в asSubscriber[1] и так далее (если массивы расширить до большего числа элементов, то это более наглядно просматривается).
(*когда получаем сообщение от издателя xMess равна TRUE)
IF xMess THEN
iNumberSubTopic:=iNumberSubTopic+1;
xSub:=TRUE;
xMess:=FALSE;
END_IF
Но ведь при большом числе топиков, они не все обновляются по порядку, и соответственно в массив получения они будут попадать по порядку обновления а не по тем топикам где находятся.
получается что необходимо доработать библиотеку и внести на выход еще одну переменную, чтоб при получении понимать в какой топик пришло новое значение.
В общем, запутался еще больше.![]()