Страница 1 из 2 12 ПоследняяПоследняя
Показано с 1 по 10 из 11

Тема: ПЛК-200. Modbus TCP/IP + C#

  1. #1

    Question ПЛК-200. Modbus TCP/IP + C#

    Здравствуйте. Возникла такая проблема. Подключение: ПЛК-200-2 к ПК по Modbus tcp/ip. На ПК используем Visual Studio, на C# с библиотекой "Modbus.Device". Делаем запросы перебором переменных (запрос следующий: master.WriteSingleRegister(1, i, i); и master.ReadHoldingRegisters(1, i, 1)[0]);). На чтение/запись 1000+ переменных (word) выходит 10+ секунд. Можно ли как-то ускорить чтение/запись или это нормальная для данного протокола скорость?
    Аналогично до этого работали с сименс s300, связь была реализована посредством протокола Ethernet (используя Visual Studio, на C# с библиотекой "sharp7"). Читали ~2000 байт за 200мс. При чтении данных мы указывали размер посылки, например 3000 байт. И считывали эту область с ПЛК. А потом раскладывали по типу переменных. Насколько я понимаю, пользуясь библиотекой "Modbus.Device", размер посылки ограничивается 1 байтом?

  2. #2
    Пользователь
    Регистрация
    27.11.2011
    Адрес
    Краснодар
    Сообщений
    11,529

    По умолчанию

    читайте группы регистров сразу, что за читать по одному регистру в цикле ?

  3. #3
    Пользователь
    Регистрация
    29.04.2023
    Адрес
    Томск
    Сообщений
    5

    По умолчанию

    Здравствуйте!
    У меня есть вопрос касаемо темы: я также, как и https://owen.ru/forum/member.php?u=129483, работаю с ПЛК200, использую Visual Studio вместе с C#, только другую библиотеку, "EasyModbus", и также происходит работа по протоколу Modbus TCP/IP, и вот я хотел бы узнать - где можно взять карту регистров Modbus для ПЛК200?

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

    По умолчанию

    Цитата Сообщение от a86ndrew Посмотреть сообщение
    Здравствуйте!
    У меня есть вопрос касаемо темы: я также, как и https://owen.ru/forum/member.php?u=129483, работаю с ПЛК200, использую Visual Studio вместе с C#, только другую библиотеку, "EasyModbus", и также происходит работа по протоколу Modbus TCP/IP, и вот я хотел бы узнать - где можно взять карту регистров Modbus для ПЛК200?
    Добрый день.
    Карту регистров формирует разработчик проекта для ПЛК200.

  5. #5

    По умолчанию

    Цитата Сообщение от a86ndrew Посмотреть сообщение
    Здравствуйте!
    У меня есть вопрос касаемо темы: я также, как и https://owen.ru/forum/member.php?u=129483, работаю с ПЛК200, использую Visual Studio вместе с C#, только другую библиотеку, "EasyModbus", и также происходит работа по протоколу Modbus TCP/IP, и вот я хотел бы узнать - где можно взять карту регистров Modbus для ПЛК200?
    Для ПЛК мастера, вы сами задаёте нужные адреса регистров. Для ПЛК слейва, адреса всегда начинаются с 0.

  6. #6
    Пользователь
    Регистрация
    29.04.2023
    Адрес
    Томск
    Сообщений
    5

    По умолчанию

    А вот такого, как например с панелью оператора ОВЕН СП307, где эта карта прописана прямо в руководстве пользователя, ничего подобного получается для ПЛК200 нету?
    Я попробую объяснить подробнее: У меня есть программа на языке C#, которая считывает необходимые данные с конкретных ячеек и выводит их на форму, и поскольку я знаю конкретные регистры, где и что хранится, я знаю как формировать код на чтение, а в данном случае, даже если я смогу считать все регистры на ПЛК200, то как я пойму, что у меня за данные на руках? Если уж карты регистров нету для необходимой мне железки, то как тогда можно решить мою задачу?
    Последний раз редактировалось a86ndrew; 30.04.2023 в 12:15.

  7. #7

    По умолчанию

    Цитата Сообщение от a86ndrew Посмотреть сообщение
    А вот такого, как например с панелью оператора ОВЕН СП307, где эта карта прописана прямо в руководстве пользователя, ничего подобного получается для ПЛК200 нету?
    Разница только для Панели слейва, там адреса панели начинаются с 256, а не с 0.
    А с 0 по 255 регистр отведены под системные.
    Последний раз редактировалось kondor3000; 30.04.2023 в 12:19.

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

    По умолчанию

    Цитата Сообщение от a86ndrew Посмотреть сообщение
    А вот такого, как например с панелью оператора ОВЕН СП307, где эта карта прописана прямо в руководстве пользователя, ничего подобного получается для ПЛК200 нету?
    Там прописана только карта системных регистров.
    Разработчик конкретного проекта для панели сам формирует карту регистров для своего проекта.
    В ПЛК200 системных регистров, доступных по Modbus, нет.

  9. #9
    Пользователь
    Регистрация
    29.04.2023
    Адрес
    Томск
    Сообщений
    5

    По умолчанию

    А как тогда можно решить мою задачу?
    Вот у меня есть кусок кода, который с панели берет данные и показывает в трех разных группах - регистры PSB, PSW и PFW.
    bool[] reg1_PSB_PO = modClient.ReadCoils(256, 69);
    int[] reg1_PSW_PO = modClient.ReadHoldingRegisters(256, 222);
    int[] reg1_PFW_PO = modClient.ReadHoldingRegisters(4096, 131);
    И сейчас мне нужно сделать, по сути, тоже самое, только с ПЛК200 - вытащить системную информацию с него похожим образом. И что тогда может мне помочь, если про регистры я знаю только то, что они с 0 до 256?

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

    По умолчанию

    Цитата Сообщение от a86ndrew Посмотреть сообщение
    А как тогда можно решить мою задачу?
    Вот у меня есть кусок кода, который с панели берет данные и показывает в трех разных группах - регистры PSB, PSW и PFW.
    bool[] reg1_PSB_PO = modClient.ReadCoils(256, 69);
    int[] reg1_PSW_PO = modClient.ReadHoldingRegisters(256, 222);
    int[] reg1_PFW_PO = modClient.ReadHoldingRegisters(4096, 131);
    И сейчас мне нужно сделать, по сути, тоже самое, только с ПЛК200 - вытащить системную информацию с него похожим образом. И что тогда может мне помочь, если про регистры я знаю только то, что они с 0 до 256?
    Начните с этого видео:
    https://youtu.be/Zq1G_Njl5cw

Страница 1 из 2 12 ПоследняяПоследняя

Похожие темы

  1. Ответов: 26
    Последнее сообщение: 31.01.2023, 17:42
  2. Ответов: 2
    Последнее сообщение: 04.06.2019, 16:55
  3. Ответов: 10
    Последнее сообщение: 10.06.2018, 16:36
  4. Ответов: 4
    Последнее сообщение: 18.09.2012, 22:16
  5. Ответов: 5
    Последнее сообщение: 14.10.2010, 14:42

Метки этой темы

Ваши права

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