Страница 602 из 868 ПерваяПервая ... 102502552592600601602603604612652702 ... ПоследняяПоследняя
Показано с 6,011 по 6,020 из 8671

Тема: CODESYS V3.5. Вопросы и ответы

  1. #6011

    По умолчанию

    Решил все таки попробовать сделать ФБ, я так понимаю на вход мы передаем сигнал ошибки
    FUNCTION_BLOCK MBDeviceCheck
    VAR_INPUT
    xError_Modbus : IoDrvModbus.xError;
    END_VAR
    VAR_OUTPUT
    xModbusStatusAlarm : BOOL; // Установка наличии ошибки
    wsModbusError : WSTRING; // Вывод названии ошибки
    END_VAR
    VAR
    eError_Modbus : IoDrvModbus.MB_ErrorCodes;
    fbTon : TON;
    END_VAR
    и в самом начале кодесис начинает ругаться что не понимает что такое xError_Modbus : IoDrvModbus.xError;

    сам ФБ вызываю
    MBDeviceCheck(xError_Modbus:= A111.byModbusError, xModbusStatusAlarm=> xCheck, wsModbusError=> wsCheck);

  2. #6012

    По умолчанию

    Цитата Сообщение от sco-scorpion Посмотреть сообщение
    Решил все таки попробовать сделать ФБ, я так понимаю на вход мы передаем сигнал ошибки

    и в самом начале кодесис начинает ругаться что не понимает что такое xError_Modbus : IoDrvModbus.xError;

    сам ФБ вызываю
    Вы же ФБ делаете на разные случаи, а пытаетесь конкретный вход IoDrvModbus.xError; прямо в ФБ воткнуть, надо так
    Код:
    VAR_INPUT
    xError : BOOL;
    END_VAR
    А уже потом на вход нужное
    MBDeviceCheck(xError:= A111.byModbusError, xModbusStatusAlarm=> xCheck, wsModbusError=> wsCheck);

    А это в VAR, вообще вставлять не надо. Получится внутренняя (неизвестного типа) переменная ФБ, вместо глобальной, потому и ругается.
    Код:
    VAR
    eError_Modbus : IoDrvModbus.MB_ErrorCodes;     // Это убрать
    fbTon : TON;
    END_VAR
    Последний раз редактировалось kondor3000; 18.07.2023 в 23:48.

  3. #6013

    По умолчанию

    Добрый день, подскажите а можно ли как то в CS удалить не используемые переменные в автоматическом режиме?

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

    По умолчанию

    Цитата Сообщение от Teinrus Посмотреть сообщение
    Добрый день, подскажите а можно ли как то в CS удалить не используемые переменные в автоматическом режиме?
    Добрый день.
    Насколько я знаю - такой возможности нет.

  5. #6015

    По умолчанию

    Подскажите с помощью чего или как можно передать значение ошибки A111.byModbusError в ФБ ?

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

    По умолчанию

    Цитата Сообщение от sco-scorpion Посмотреть сообщение
    Подскажите с помощью чего или как можно передать значение ошибки A111.byModbusError в ФБ ?
    Отвечу именно на поставленный вопрос - с помощью оператора присваивания. В языке ST он выглядит как :=, в графических языках - как линия связи между переменными.

    Если вас интересует что-то другое - то сформулируйте вопрос более развернуто, пожалуйста.

  7. #6017

    По умолчанию

    Цитата Сообщение от Евгений Кислов Посмотреть сообщение
    Если вас интересует что-то другое - то сформулируйте вопрос более развернуто, пожалуйста.
    Я хочу передать на вход ФБ значение кода ошибки чтобы потом преобразовать в текстовое значение т.е. A111.byModbusError имеет значение RESPONSE_SUCCESS на входе ФБ я получаю это значение и с ним что-то делаю.
    Вызов ФБ:
    Check_1(xError_Modbus:= A111.xConfirmError, sName := A111_OwenDriver.ProjectName, Code :=A111.byModbusError , xModbusStatusAlarm=> xCheck, wsModbus_Error=> wsCheck);
    Сам ФБ:
    VAR_INPUT
    xError_Modbus : BOOL;
    sName : STRING;
    Code : ??? ;
    END_VAR
    VAR_OUTPUT
    xModbusStatusAlarm : BOOL; // Установка наличии ошибки
    wsModbus_Error : WSTRING; // Вывод названии ошибки
    END_VAR

  8. #6018

  9. #6019

    По умолчанию

    Цитата Сообщение от Евгений Кислов Посмотреть сообщение
    Сode: IoDrvModbusTcp.MB_ErrorCodes;
    Большое спасибо. А в чем разница между IoDrvModbusTcp.MB_ErrorCodes и IoDrvModbus.MB_ErrorCodes ?

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

    По умолчанию

    Цитата Сообщение от sco-scorpion Посмотреть сообщение
    Большое спасибо. А в чем разница между IoDrvModbusTcp.MB_ErrorCodes и IoDrvModbus.MB_ErrorCodes ?
    Единственное отличие - ошибка с кодом 16#A5 в первом случае называется TCP_COMMUNICATION_ERROR, а во втором - REQUEST_FAILED_TO_SEND.

Страница 602 из 868 ПерваяПервая ... 102502552592600601602603604612652702 ... ПоследняяПоследняя

Похожие темы

  1. Панели оператора СП3xx. Вопросы и ответы
    от Мурат Ахриев в разделе Панели оператора (HMI)
    Ответов: 4115
    Последнее сообщение: 04.02.2026, 16:24
  2. Панели оператора ИП320. Вопросы и ответы
    от automat в разделе Панели оператора (HMI)
    Ответов: 861
    Последнее сообщение: 31.12.2025, 23:19
  3. ИПП120. Вопросы и ответы
    от Р.Александр в разделе Программируемые реле
    Ответов: 273
    Последнее сообщение: 08.09.2025, 13:21
  4. Индикатор ИП120 , вопросы- ответы
    от rovki в разделе Программируемые реле
    Ответов: 56
    Последнее сообщение: 03.11.2017, 15:58
  5. Панели оператора СП270. Вопросы и ответы
    от Давидюк в разделе Панели оператора (HMI)
    Ответов: 930
    Последнее сообщение: 15.05.2017, 17:12

Ваши права

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