Страница 2 из 9 ПерваяПервая 1234 ... ПоследняяПоследняя
Показано с 11 по 20 из 85

Тема: Примеры по сокетам для ПЛК110/160 M02 и ПЛК1хх

  1. #11

    По умолчанию

    Цитата Сообщение от Евгений Кислов Посмотреть сообщение
    Вы его запускали именно на ПЛК1хх или на PLCWinNT?
    Если на ПЛК1хх - на каком шаге возникли проблемы?
    Запускал на PLCWinNT.

    Проблема в примере для ПЛК1хх на шаге CLIENT_STATE_CONNECT с этим:

    Soc2.jpg

    С портом те же "грабли".
    Последний раз редактировалось Spawn; 09.09.2020 в 07:47.

  2. #12

  3. #13

    По умолчанию

    Почему тогда с примерами для М02 (т.е. там, где используются функции SysSockHtons и SysSockHtonI) этой проблемы нет? Не понимаю какая взаимосвязь порядка передаваемых байт и конкретной платформы?

  4. #14
    Пользователь Аватар для capzap
    Регистрация
    25.02.2011
    Адрес
    Киров
    Сообщений
    10,224

    По умолчанию

    Пример здесь https://owen.ru/forum/showthread.php...l=1#post291852 работает с виртуальным контроллером, овеновский плк работают не как все из-за неправильно понимания в свое время описания бибки
    Bad programmers worry about the code. Good programmers worry about data structures and their relationships

    среди успешных людей я не встречала нытиков
    Барбара Коркоран

  5. #15
    Супер Модератор Аватар для Евгений Кислов
    Регистрация
    27.01.2015
    Адрес
    Москва
    Сообщений
    12,063

    По умолчанию

    Цитата Сообщение от Spawn Посмотреть сообщение
    Почему тогда с примерами для М02 (т.е. там, где используются функции SysSockHtons и SysSockHtonI) этой проблемы нет? Не понимаю какая взаимосвязь порядка передаваемых байт и конкретной платформы?
    Потому что "примеры предназначены для запуска именно на ПЛК Овен".
    Поэтому заявления типа "пример TCP клиента из шапки для ПЛК1хх, кстати, "из коробки" не рабочий." справедливо делать только в том случае, если вы запускаете его на ПЛК ОВЕН.

    09-09-2020 9-24-10.png

  6. #16

    По умолчанию

    Цитата Сообщение от capzap Посмотреть сообщение
    Пример здесь https://owen.ru/forum/showthread.php...l=1#post291852 работает с виртуальным контроллером, овеновский плк работают не как все из-за неправильно понимания в свое время описания бибки
    capzap, спасибо за подсказку. Я это понял еще до того, как задал свои предыдущие вопросы, когда пробовал примеры обоих версий ПЛК и увидел, что один из примеров работает без исправлений, а второй нет. Честно говоря, я ждал подобный ответ от Евгения. Задал вопросы не с целью флуда, а чтобы в будущем, если кто-нибудь будет идти по тем же шагам, по которым сейчас иду я (с PLCWinNT), прочитав эти сообщения, понял в чем загвоздка.

    Цитата Сообщение от Евгений Кислов Посмотреть сообщение
    Потому что "примеры предназначены для запуска именно на ПЛК Овен".
    Поэтому заявления типа "пример TCP клиента из шапки для ПЛК1хх, кстати, "из коробки" не рабочий." справедливо делать только в том случае, если вы запускаете его на ПЛК ОВЕН.

    09-09-2020 9-24-10.png
    Евгений, спасибо за наводку по документации, но я имею привычку "сначала читать документацию, а потом уже ломать". Можно же было просто указать, например, что у линейки ПЛК1хх нестандартная реализация работы с сокетами, отличающаяся от других устройств, и ПЛК1хх сами переворачивают байты. Что в документации подобные моменты ни как не упоминаются, что в Ваших ответах, и информация типа "Функция не поддержана в линейке ПЛК1хх." не привносит никакой ясности.

    Всем спасибо за помощь.
    Последний раз редактировалось Spawn; 09.09.2020 в 10:07.

  7. #17
    Супер Модератор Аватар для Евгений Кислов
    Регистрация
    27.01.2015
    Адрес
    Москва
    Сообщений
    12,063

    По умолчанию

    и ПЛК1хх сами переворачивают байты.
    Мы дополним информацию в описании, спасибо за замечание.

    Upd. - документация дополнена.

  8. #18

    По умолчанию

    День добрый.
    Что-то я запутался с MQTT, если один топик читаем, и один публикуем, как в примере, вроде все понятно.
    А если необходимо несколько топиков читать и писать, работает как-то непредсказуемо.
    Пробовал и несколько экземпляров MQTT_Client вызывать, и один экземпляр последовательно с разными топиками в одном цикле ПЛК, и один экземпляр последовательно в разных циклах ПЛК.
    Подскажите, как правильно организовать обмен?
    В идеале, в виде примера хотя бы два топика на чтение и два на запись.
    Хочу прикрутить MQTT на ПЛК-110-60 М02.

  9. #19

    По умолчанию

    Цитата Сообщение от LAM Посмотреть сообщение
    День добрый.
    Что-то я запутался с 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

  10. #20

    По умолчанию

    Цитата Сообщение от Мастеренко Иван Посмотреть сообщение
    Добрый день.
    Обновил пример по MQTT и библиотеку MQTTOwenPlc_udp.lib: https://owen.ru/forum/showthread.php...l=1#post327664
    Публикация выполняется последовательно в два топика (по временному интервалу) и добавлены 2 топика подписчика.
    День добрый.
    Спасибо за пример.
    Но по идее правильнее тогда
    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
    Но ведь при большом числе топиков, они не все обновляются по порядку, и соответственно в массив получения они будут попадать по порядку обновления а не по тем топикам где находятся.
    получается что необходимо доработать библиотеку и внести на выход еще одну переменную, чтоб при получении понимать в какой топик пришло новое значение.
    В общем, запутался еще больше.

Страница 2 из 9 ПерваяПервая 1234 ... ПоследняяПоследняя

Похожие темы

  1. Недостатки ОВЕН ПЛК1хх
    от Николай Федоров в разделе ПЛК1хх
    Ответов: 104
    Последнее сообщение: 26.05.2017, 09:50
  2. Ответов: 1
    Последнее сообщение: 06.09.2014, 22:52
  3. ЕКОН134 и ПЛК1хх опрос по Ethernet
    от Makswell в разделе Сетевые технологии
    Ответов: 4
    Последнее сообщение: 09.04.2014, 08:00
  4. ПЛК1хх + GPRS
    от alext1981 в разделе Сетевые технологии
    Ответов: 11
    Последнее сообщение: 28.02.2013, 19:22
  5. Пожарная сигнализация+ПЛК1хх
    от Gans в разделе Подбор Оборудования
    Ответов: 2
    Последнее сообщение: 09.08.2007, 16:09

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •