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

Тема: Библиотека OwenCommunication. Данные для блока MB_TcpSlave

  1. #1
    Пользователь Аватар для zaychenko
    Регистрация
    01.12.2021
    Адрес
    Санкт-Петербург
    Сообщений
    47

    По умолчанию Библиотека OwenCommunication. Данные для блока MB_TcpSlave

    Евгений, добрый день!

    Подскажите, пожалуйста, как корректно передавать данные с помощью блока MB_TcpSlave, где часть из них должна быть RETAIN, а часть не должна быть RETAIN.

    Например, сейчас такая структура DATA_HVS, состоящая из вложенных структур:

    TYPE DATA_HVS :
    STRUCT
    Input: Input_HVS; // Оперативные данные - не энергонезависимые
    Output: Output_HVS; // Оперативные данные - не энергонезависимые
    TimeProcess : TimeProcess_HVS; // Оперативные данные - не энергонезависимые
    Parameters: Parametrs_HVS; // Энергонезависимые данные (уставки и т.д.)
    END_STRUCT
    END_TYP
    E

    Необходимо, чтобы Parameters была энергонезависимой переменной.

    Как вариант, конечно, выделить Parameters: Parametrs_HVS в отдельный список переменных и использовать два блока MB_TcpSlave, но хотелось бы постараться обойтись одним блоком MB_TcpSlave, т.к. подобных блоков в проекте и без того много вызывается.
    Последний раз редактировалось zaychenko; 07.02.2023 в 11:14.
    _______________________________

    С уважением,
    Зайченко Никита
    ООО «Политехник»
    Тел.: +7 (911) 284 86 84
    E-mail: zaychenko@owen-polytechnic.ru

  2. #2

  3. #3
    Пользователь Аватар для zaychenko
    Регистрация
    01.12.2021
    Адрес
    Санкт-Петербург
    Сообщений
    47

    По умолчанию

    Цитата Сообщение от Евгений Кислов Посмотреть сообщение
    Добрый день.
    Сделать только часть структуры энергонезависимой - не получится.



    А с чем это связано?
    ПЛК210 slave для 8-ми панелей (у каждой свои данные) + slave для СКАДЫ + опрашивает 8-мь устройств блоками UNM_TcpRequest
    _______________________________

    С уважением,
    Зайченко Никита
    ООО «Политехник»
    Тел.: +7 (911) 284 86 84
    E-mail: zaychenko@owen-polytechnic.ru

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

    По умолчанию

    Цитата Сообщение от zaychenko Посмотреть сообщение
    ПЛК210 slave для 8-ми панелей (у каждой свои данные) + slave для СКАДЫ + опрашивает 8-мь устройств блоками UNM_TcpRequest
    А почему нельзя было обойтись одним слэйвом для всех панелей? Например, для одной панели выделить в нем регистры 0...999, для второй 1000...1999 и т.д.

  5. #5
    Пользователь Аватар для zaychenko
    Регистрация
    01.12.2021
    Адрес
    Санкт-Петербург
    Сообщений
    47

    По умолчанию

    Цитата Сообщение от Евгений Кислов Посмотреть сообщение
    А почему нельзя было обойтись одним слэйвом для всех панелей? Например, для одной панели выделить в нем регистры 0...999, для второй 1000...1999 и т.д.
    как вариант, но тогда у каждой панели будет свой проект со своей адресацией регистров. При использовании блока MB_TcpSlave для каждой панели адресация одинаковая, а меняется структура, на которую ссылается блок.
    _______________________________

    С уважением,
    Зайченко Никита
    ООО «Политехник»
    Тел.: +7 (911) 284 86 84
    E-mail: zaychenko@owen-polytechnic.ru

  6. #6
    Пользователь Аватар для zaychenko
    Регистрация
    01.12.2021
    Адрес
    Санкт-Петербург
    Сообщений
    47

    По умолчанию

    Цитата Сообщение от Евгений Кислов Посмотреть сообщение
    для одной панели выделить в нем регистры 0...999, для второй 1000...1999 и т.д.
    Евгений, я правильно понимаю, что при таком подходе необходимо под каждую панель объявлять структуру по 1000 регистров?

    Т.к. у блока можно подвязать только одну структуру и указать смещение для нее.

    Или реализовать код, который будет изменять структуру на входе блока (указатели на разные структуры, для каждой панели) и смещение?
    _______________________________

    С уважением,
    Зайченко Никита
    ООО «Политехник»
    Тел.: +7 (911) 284 86 84
    E-mail: zaychenko@owen-polytechnic.ru

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

    По умолчанию

    Евгений, я правильно понимаю, что при таком подходе необходимо под каждую панель объявлять структуру по 1000 регистров?

    Т.к. у блока можно подвязать только одну структуру и указать смещение для нее.
    Вы поняли правильно.

Похожие темы

  1. Библиотека OwenCommunication (релиз версии 3.5.11.7)
    от Евгений Кислов в разделе Библиотеки CODESYS
    Ответов: 5
    Последнее сообщение: 05.03.2024, 11:05
  2. Вопрос по MB_TcpSlave из Owen Communication
    от hermano в разделе ПЛК2хх
    Ответов: 9
    Последнее сообщение: 10.11.2023, 09:06
  3. Ответов: 1
    Последнее сообщение: 16.12.2022, 08:38
  4. OwenCommunication ОШИБКИ (Важно!)
    от monsterrnd в разделе СПК1хх
    Ответов: 4
    Последнее сообщение: 12.10.2021, 14:30
  5. СПК107 не работает ФБ UNM_SerialRequest OwenCommunication
    от eigor_vl в разделе СПК1хх [М01]
    Ответов: 5
    Последнее сообщение: 22.07.2020, 08:35

Ваши права

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