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

Тема: Соединение СПК107 по rs485 c ПК

  1. #1

    По умолчанию Соединение СПК107 по rs485 c ПК

    Добрый день. Подскажите как решить такую задачу - по нажатию кнопки на экране СПК107 отправить строку в ПК (например "System alert stop"). Спасибо.
    PS. Для соединение СПК107 с ПК используется Овен АС4.

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

    По умолчанию

    Цитата Сообщение от Alex_Shakhray Посмотреть сообщение
    Добрый день. Подскажите как решить такую задачу - по нажатию кнопки на экране СПК107 отправить строку в ПК (например "System alert stop"). Спасибо.
    PS. Для соединение СПК107 с ПК используется Овен АС4.
    Добрый день.
    Можно использовать ФБ UNM_SerialRequest из библиотеки OwenCommunication.

  3. #3

    По умолчанию

    Спасибо, а где посмотреть пример ее использования?

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

    По умолчанию

    Цитата Сообщение от Alex_Shakhray Посмотреть сообщение
    Спасибо, а где посмотреть пример ее использования?
    Можно здесь:
    https://youtu.be/uH3hnXmc0fw

    Там рассмотрен конкретный случай, но вы сможете понять общий принцип и, думаю, после этого без проблем решите свою задачу.

  5. #5

    По умолчанию

    Спасибо. А на ST пример есть ?

  6. #6

  7. #7

    По умолчанию

    Добрый день. Насколько я понял, готового примера нет. Я применил следующее решение
    PROGRAM PLC_PRG
    VAR
    iValue : INT := 10;
    res : BOOL := TRUE;
    modbus : BOOL := TRUE;
    fbComControl1: OCL.COM_Control; // ФБ управления портом COM1
    SerialRequest: OCL.UNM_SerialRequest;
    iStateCom1: INT; // результат опроса по порту COM1
    Data: WSTRING := "System alert stop";
    Answer: WSTRING;
    END_VAR
    -----------------------------------------------------------------------------------------
    IF modbus = TRUE THEN
    PLC_PRG.fbComControl1
    (
    xEnable := TRUE,
    udiComPort := 1,
    udiBaudrate := 9600,
    udiByteSize := 8,
    eParity := OCL.COM_PARITY.NONE,
    eStopBit := OCL.COM_STOPBIT.ONE
    );
    IF PLC_PRG.fbComControl1.xDone THEN
    PLC_PRG.iStateCom1 := 1;
    iValue := 100;
    modbus := FALSE;
    END_IF

    END_IF

    На экране есть кнопка по нажатию которой выполняется ST код:
    PLC_PRG.iValue := 30;

    PLC_PRG.SerialRequest
    (
    xExecute := TRUE,
    tTimeout := T#500MS,
    usiRetry := 1,
    hCom := PLC_PRG.fbComControl1.hCom,
    pRequest := ADR(PLC_PRG.Data),
    szRequest := SIZEOF(PLC_PRG.Data),
    pResponse := ADR(PLC_PRG.Answer),
    szResponse := SIZEOF(PLC_PRG.Answer),
    szExpectedSize := 0,
    wStopChar :=0
    );

    Проблема в том, что при первом нажатии все хорошо и команда проходит, но потом связь отрубается, хотя код кнопки выполняется судя по изменению переменной iValue.

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

    По умолчанию

    Проблема в том, что при первом нажатии все хорошо и команда проходит, но потом связь отрубается, хотя код кнопки выполняется судя по изменению переменной iValue.
    Лучше перенесите вызов SerialRequest прямо в код PLC_PRG. Ко входу xExecute привяжите булевскую переменную. На время зажатия кнопки присваивайте этой переменной значение TRUE (чтобы после отпускания она вернулась в FALSE).
    У вас сейчас проблема связана с тем, что вы не вызываете SerialRequest с xExecute := FALSE, а блок выполняется по переднему фронту этого входа.

  9. #9

    По умолчанию

    Спасибо, все заработало как надо, проблема действительно была в SerialRequest с xExecute := FALSE.

Похожие темы

  1. СПК107 & RS485
    от lazy в разделе СПК1хх [М01]
    Ответов: 5
    Последнее сообщение: 11.04.2022, 17:34
  2. Соединение ПР110 и МВ110 по протоколу Modbus Rs485
    от Fipol в разделе Программируемые реле
    Ответов: 1
    Последнее сообщение: 28.09.2020, 21:26
  3. Ответов: 2
    Последнее сообщение: 27.08.2019, 12:51
  4. ПЛК150ИМ+СП307Р по rs485 "соединение PLC порт 1"
    от 770001 в разделе Панели оператора (HMI)
    Ответов: 2
    Последнее сообщение: 10.08.2016, 07:00
  5. Соединение ПЛК154А-М из СПК107
    от Deoxes в разделе СПК1хх
    Ответов: 2
    Последнее сообщение: 26.04.2014, 20:20

Ваши права

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