Показано с 1 по 7 из 7

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

  1. #1

    По умолчанию Примеры по сокетам для ПЛК110/160 M02 и ПЛК1хх

    Добрый день. Для контроллеров ПЛК110/160 M02 и ПЛК1хх подготовлены примеры передачи данных по сетевым протоколам TCP и UDP с помощью библиотеки SysLibSockets.lib.
    Библиотека SysLibSockets.lib содержит все необходимые функции для организации обмена на транспортном уровне. Контроллеры ПЛК110/160 M02 и ПЛК1хх имеют свои особенности при работе с библиотекой SysLibSockets.lib, которые описаны в документации CODESYS V2.3. Программная реализация обмена через сокеты. В документации представлена совместимость функций, особенности работы для разных линеек контроллеров и описаны примеры в CODESYS.

    Программы клиента и сервера для ПЛК110/160 M02 и ПЛК1хх:
    TCP ПЛК110/160 М02
    TCP ПЛК1хх

    UDP ПЛК110/160 M02
    UDP ПЛК1хх

    Подготовлен пример передачи данных по протоколу MQTT – MQTT_OwenPLC. В примере используется библиотека от пользователя Artshw, которая была выложена на нашем форуме.

    Также сделан NTP клиент на базе примера UDP клиент для контроллеров ПЛК110/160 M02 – NTP_ClientPLC.
    Инженер по продуктам «ПЛК и модули»
    e-mail: i.masterenko@owen.ru | skype: i.masterenko_owen

  2. #2

    По умолчанию

    Иван, добрый день!

    Может и глуповатый вопрос, но все-таки. Хотел попробовать в учебных целях подключить МК210-302 к ПЛК110[M02] через библиотеку SysLibSocket. Что нужно для этого сделать? Или это вообще глупая затея?

  3. #3

    По умолчанию

    Добрый! Затея хорошая. Нужно с транспортного уровня перейти на прикладной (modbus). Для этого необходимо правильно сформировать посылку серверу (мк210-302).
    Такой пример уже обсуждался на форуме.
    Инженер по продуктам «ПЛК и модули»
    e-mail: i.masterenko@owen.ru | skype: i.masterenko_owen

  4. #4

    По умолчанию

    Иван, спасибо! Посмотрел, попробовал, но пока ничего не получается. На всякий случай шлю проект, может я чего-то накосячил? Забыл сказать. IP-адрес МК302 = 10.0.6.20, порт = 502, Modbus-адрес = 1. Последнее что мне удалось добиться - это то что на МК302 периодически подмигивает Eth1, а аварийный светодиод тоже горит, но подмигивает в противофазе Eth1
    Вложения Вложения
    Последний раз редактировалось Hemann; 04.04.2020 в 17:28.

  5. #5

    По умолчанию

    Иван, приветствую!

    Я переделал программу на основе примера TcpClient_PLCm02.pro, связь пошла. Но есть несколько вопросов. Во-первых, я вижу, что переменная hClientSocket типа HANDLE постоянно увеличивается. Хоть она и имеет длину 32 бита и мне на столе ее хватит на очень долго, она когда-то закончится. А если это будет уже на объекте, что произойдет? Возможно я что-то делаю не так? А во-вторых, прошу Вас посмотреть, правильно ли я разделяю вызовы чтение и запись, чтобы они не мешали друг другу? По-моему, чтение-запись начали подтормаживать, но может это только кажется (я делал 2 варианта проекта). Ну и в-третьих. Сейчас я работаю с одним модулем МК210. А если понадобится работать с несколькими, то как разделять доступ к ним, чтобы они друг другу не мешали?
    Проекты прикрепляю.
    Вложения Вложения
    Последний раз редактировалось Hemann; 05.04.2020 в 12:31.

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

    По умолчанию

    Цитата Сообщение от Hemann Посмотреть сообщение
    Во-первых, я вижу, что переменная hClientSocket типа HANDLE постоянно увеличивается.
    возможно в проекте для примера использования предполагали одно, а в итоге поучилось не очень. Но раз переход идет в закрытие сокета, то ни чего особенно страшного, главное есть ограничение на одновременно открытые сокеты. А та счетчик не сможет перепониться, начнется с другой стороны диапазона чисел
    Изображения Изображения
    • Тип файла: png owen.png (129.9 Кб, Просмотров: 23)
    Bad programmers worry about the code. Good programmers worry about data structures and their relationships

  7. #7

    По умолчанию

    Ну вот, что-то наваял. Теперь не перебираются постоянно хэндлы. Пожалуй, можно было и по-оптимальнее сделать, но не стал сильно переделывать программу, честно "стыренную" из примера
    Если будет конструктивная критика - буду рад услышать.
    Вложения Вложения

Похожие темы

  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

Ваши права

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