Страница 2 из 2 ПерваяПервая 12
Показано с 11 по 15 из 15

Тема: Modbus TCP Slave

  1. #11

    По умолчанию

    Цитата Сообщение от Логвиненко Андрей Посмотреть сообщение
    Через конфигуратор всё делается достаточно просто.
    Максимальный размер слейва 999 переменных, если они будут DWORD, то можно зарезервировать область памяти до 3996 байт.
    Делается это копипастом достаточно быстро.
    Далее нужно создать структуру, которая содержит нужные типы данных, например:
    TYPE Motor :
    STRUCT
    uiState: UINT;
    uiPrt: UINT;
    xMan,
    xManStart,
    xSwitch ,
    xReady,
    xRun,
    xAuto,
    xDrvFault,
    xInhibition,
    xStartFault,
    xAlert,
    xReset: BOOL;

    END_STRUCT
    END_TYPE

    в глобальных переменных объявляем переменные требуемого типа:
    VAR_GLOBAL

    Pump1 AT %QD7.1.0:Motor;

    Pump2 AT %QD7.5.0:Motor;

    END_VAR
    Единственное неудобство - смещение в структурах надо считать вручную, избегать наложения переменных и помнить о выравнивании адресов.
    Спасибо за ответ. А в самой Конфигурации ПЛК что в вашем случае требуется сделать? Ничего? Ограничиться только вызовом подэлемента TCP[VAR] и все?

  2. #12

    По умолчанию

    В конфигурации выбираются требуемые интерфейсы (TCP, RS-xxx), их может быть несколько, и резервируется необходимый размер памяти.

  3. #13

    По умолчанию

    Цитата Сообщение от Логвиненко Андрей Посмотреть сообщение
    В конфигурации выбираются требуемые интерфейсы (TCP, RS-xxx), их может быть несколько, и резервируется необходимый размер памяти.
    А резервируется каким образом? Что сделать то нужно для этого?

    tcp.png

  4. #14

    По умолчанию

    Надо добавить нужное количество пустых подэлементов , лучше всего 4 byte.

  5. #15
    Пользователь
    Регистрация
    31.01.2019
    Адрес
    РФ/РБ
    Сообщений
    917

    По умолчанию

    Цитата Сообщение от kondor3000 Посмотреть сообщение
    Если бы был ПЛК мастер, то пятью String можно передать 200 переменных, упакованных в 5 массивов по 40 целочисленных ( или 20 REAL). Писанины меньше.
    Тоже можно сделать и в слейве, только добавлять придётся 200 шт. по 2 BYTE. Это всё через конфигурацию.
    По времени - дешевле массив подряд по RTU передавать. чем строку.

Страница 2 из 2 ПерваяПервая 12

Похожие темы

  1. Ответов: 2
    Последнее сообщение: 04.06.2019, 16:55
  2. Modbus (Master) не отображается в память Modbus (Slave)
    от ghoch в разделе Помощь Разработчикам
    Ответов: 3
    Последнее сообщение: 07.05.2018, 09:40
  3. ПЛК160: Modbus TCP Master и Modbus TCP Slave одновременно.
    от Антон Костюченко в разделе ПЛК1хх
    Ответов: 10
    Последнее сообщение: 18.07.2016, 10:36
  4. Переменная из Modbus (master) в Modbus (slave)
    от Zenr в разделе ПЛК1хх
    Ответов: 6
    Последнее сообщение: 25.10.2013, 12:38
  5. Ответов: 5
    Последнее сообщение: 14.10.2010, 14:42

Ваши права

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