Редактор параметров COM-порта

  Host OEM RS

Вид редактора последовательного порта показан на рисунке:

Редактор содержит ту же панель инструментов для работы с буфером обмена, что и редактор узла (см. Задание параметров узла ).

В этом редакторе задаются следующие параметры:

   Номер порта – номер порта, выбирается из списка COM1...COM32 (rtms_COM_NUM.tmc);

   Назначение – назначение порта (указание для монитора используемого оборудования, протокола обмена и начального статуса узла при обмене по данному порту). Значение этого параметра выбирается из списка (rtms_COM_DEST.tmc):

   MASTER – задание для узла статуса MASTER. Это значение устанавливается при обмене по всем протоколам, кроме M-LINK – см. Обеспечение работы распределенных АСУ ;

   SLAVE – задание для узла статуса SLAVE при обмене по M-LINK;

   MODEM – это значение устанавливается в случае подключения модема к порту (модем конфигурируется в редакторе узла – см. Редактор параметров узла). Для обмена используется протокол M-LINK, узел может работать одновременно как MASTER и как SLAVE;

   GSM-SMS – к порту подключен GSM-модем для обмена SMS-сообщениями. Для обмена используется протокол M-LINK, узел может работать одновременно как MASTER и как SLAVE;

   MASTER M-LINK – задание для узла статуса MASTER при обмене по M-LINK;

   RESERVE M-LINK – это значение устанавливается для резервированных узлов в сети M-LINK;

   GPS – к порту подключено устройство GPS (см. описание @t_Set_Time и @t_Set_Date в разделе Группа СИСТЕМНЫЕ );

   Card/Bar Reader – к порту подключено устройство чтения магнитного носителя (см. Чтение штрих-кодов и магнитных носителей );

   IEC 61107 – к порту подключено устройство, поддерживающее протокол IEC 61107 (например, счетчик ЦЭ6850М);

   Non-M-Link Slave – для обмена по протоколу Slave, отличному от Slave M-Link (если МРВ поддерживает этот протокол; тип устройства задается в файле *.cnf);

   IEC 60870-101 – к порту подключено устройство, поддерживающее протокол IEC 60870-101 (телемеханика);

   Host OEM RS – см. ниже.

Назначение порта сохраняется в файле addr.ind (см. Файлы узла, создаваемые при экспорте );

   Скорость – скорость обмена, выбирается из стандартного списка (rtms_COM_SPD.tmc): 110, 150, 300, 600, 1200, 2400, 4800, 9600, 19200, 38400, 57600, 115200, 144000, 192000, 288000, 576000 бит/с. Скорость обмена по протоколу M-LINK не должна быть ниже 600 бит/с;

   Базовый адрес – базовый адрес порта;

   Контроль четности – данный параметр выбирается из списка (rtms_COM_EVEN.tmc), содержащего значения в формате k-m-x:

   k – количество информационных бит в посылке;

   m – количество стоповых бит;

   x – наличие проверки на четность:

n – отсутствие проверки,

e – проверка на четность,

o – проверка на нечетность;

   Прерывание – номер используемого прерывания;

   Управление передачей – режим управления передатчиком. Значение этого параметра выбирается из списка rtms_TRNFR_CTRL.tmc (режимы с использованием специальных портов – для RS-485):

 

Значение

Посылка

Прием

no

нет управления

нет управления

DTR

DTR = on

DTR = off

RTS

RTS = on

RTS = off

DTR-RTS

DTR, RTS = on

DTR, RTS = off

360H

outp(0x360,1)

outp(0x360,0)

DTR, RTS=on

DTR,RTS = on

DTR, RTS = on

DTR=on

DTR = on

DTR = on

20CH

outp(0x20с,1)

outp(0x20с,0)

RTS=on

RTS=on

RTS=on

RTS(auto)

Внешнее управление RTS

Внешнее управление RTS

C3H

outp(0xс3,1)

outp(0xс3,0)

DTR=on, RTS(auto)

DTR=on, Внешнее управление RTS

DTR=on, Внешнее управление RTS

DTR/RTS

RTS=on, DTR=off

RTS=off, DTR=on

 

Помимо указанных в таблице, список содержит следующие режимы:

   Modem_0

   Modem_1

   Modem_2

   Modem_3

   HART_ER

   Таймаут – время ожидания ответа от устройства, которому был послан запрос (в миллисекундах, значение по умолчанию – 100 мс). Если в течение этого времени ответ на запрос от устройства или МРВ не пришел, запрашивающему каналу устанавливается флаг аппаратной недостоверности.

Существует механизм задержки выключения передатчика после окончания передачи, реализуемый с помощью передачи после кадра 1-2 лишних байтов. 2 байта формируются в том случае, если таймаут ожидания ответа больше или равен 200 мс. Следует учитывать, что для очень медленных линий передачи этой задержки выключения передатчика может оказаться недостаточно;

   RS-передача – задержка (в миллисекундах) между транзакциями (процедурами ЗАПРОС/КОМАНДА+ОТВЕТ).

При связи по модему этот таймаут задает время ожидания звонка. В режим ожидания звонка узел MASTER переходит в следующих случаях:

   узел не блокирован, для обмена нет ни одного канала;

   после каждого прохода по базе;

   Включение передатчика – задержка (в миллисекундах) начала передачи данных после включения передатчика (реализуется только для узла со статусом MASTER);

   Задержка запроса – задержка передачи данных (в миллисекундах) после установления соединения при связи по модему. Величина этого таймаута должна быть меньше значения времени ожидания ответа;

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

   CRC16 – если этот флаг установлен, команда записи по M-LINK дополнительно защищается CRC16, а при приеме ответов по M-LINK вычисляется дополнительная контрольная сумма. Чтобы данный механизм работал, флаг CRC16 должен быть установлен как для порта узла M-LINK MASTER, так и для порта узла M-LINK SLAVE. При обмене по DCS через порт с установленным флагом CRC16 выполняется дополнительная проверка ответов.

При связи по модему, после приема звонка и соединения узел SLAVE переходит в режим ожидания приема данных. Узел выходит из этого режима в следующих случаях:

   ситуация, когда узел вошел в режим приема, а у него ничего не запросили, повторилась трижды;

   узел MASTER "повесил трубку".

Параметры последовательных портов задаются в ИС для узлов. При запуске узлов под управлением мониторов эти параметры устанавливаются для портов аппаратных средств, на которых размещены узлы – при этом данная процедура имеет следующие особенности:

   монитор устанавливает параметры Базовый адрес и Прерывание для COM-порта аппаратного средства только в DOS, в WINDOWS эти параметры задаются средствами ОС;

   для работы в WINDOWS параметры Базовый адрес и Прерывание нельзя задавать нулевыми (рекомендуется указать их реальные значения, установленные в ОС);

   для контроллера ЛАГУНА наличие ненулевых настроек базового адреса и прерывания обязательно, хотя их конкретные значения несущественны.

Host OEM RS

Данное назначение порта используется для обеспечения специфического чтения собственных УСО, а также поддержки протоколов DCS, Modbus RTU и t11.

Регламент обмена:

   обмен производится в режиме "запрос-ответ" (без расширения транзакции в реальном времени);

   со стороны МРВ нет управления UART (внешнее управление RTS(auto) поддерживается);

   поддерживается резервирование COM-портов (переключение обмена на резервный порт автоматическое, в узле должен быть создан только один COM-порт).

Настройки COM-порта имеют специфическое назначение:

   Прерывание – при IRQ>16 и обнаружении ошибки в транзакции запрос повторяется до (IRQ-16) раз. Если ошибка воспроизводится, в канале устанавливается флаг аппаратной недостоверности;

   Включение передатчика – максимальное число ошибок (неудачных серий повторов запросов при IRQ>16), при достижении которого производится переключение на резервный COM-порт;

   RS-передача – физический номер резервного COM-порта (1 – COM1, 2 – COM2 и т.д.);

   Задержка запроса – этот параметр определяет режим перехода к очередному циклу поиска каналов, требующих обслуживания, после завершения предыдущего прохода базы:

   0 (по умолчанию) – пауза длительностью 0.75 цикла потока CALC;

   1 – если в последнем проходе не было обслуживаемых каналов, то пауза длительностью 0.75 цикла потока CALC, иначе – без паузы;

   2 – если в последнем проходе не было обслуживаемых каналов, то пауза длительностью 0.5 цикла потока CALC, иначе – без паузы;

   3 – если в последнем проходе не было обслуживаемых каналов, то пауза до начала следующего цикла CALC, иначе – без паузы;

   4 – если в последнем проходе не было обслуживаемых каналов, то пауза до начала следующего цикла CALC;

   5 – если в последнем проходе не было обслуживаемых каналов, то пауза до начала следующего цикла CALC, иначе – ожидание non-CALC (приостановка потока MAIN) или пауза 1с.

Увеличение указанных чисел на 16 отключает транзакции по данному COM-порту в режиме TRACE.

Использование системных переменных (см. Группа СИСТЕМНЫЕ и Группа ДИАГНОСТИКА ):

   @Modem_Step типа INPUT (Параметр <> 0 указывает номер COM-порта):

   0, R среднее время взаимодействия по указанному COM-порту (включая паузы) за весь цикл базы;

   95, C2 – среднее время на одну успешную транзакцию (с учетом повторов запросов);

   92, I2 – счетчик циклов каналов (по атрибуту 39, EXEC) с незавершенным обменом (суммарно для всех каналов);

   @e_PLC2Type типа INPUT (Параметр <> 0 указывает номер COM-порта):

   0, R код ошибки:

32 – фатальная ошибка (соответствующее сообщение записывается в файл tm6_log.txt);

3 – ошибка записи;

9 – в ответе 0 символов (таймаут);

8 – в ответе недостаточно символов;

7 – ответ полный, но с ошибкой;

   91, I1 – счетчик повторов запросов (всех ошибок по всем каналам);

   92, I2 – счетчик неудачных серий повторов запросов;

   45, T – время последней ошибки (если установлен флаг Запрос времени значения).

Запись любого значения в @e_PLC2Type типа OUTPUT обнуляет атрибуты переменной, а также атрибуты @Modem_Step.

Счетчики в @Modem_Step и @e_PLC2Type обнуляются при переходе на обмен по заданному COM-порту.

   @RS_on_off:

   может выключать резервный COM-порт;

   при выключении текущего COM-порта предпринимается попытка перехода на резервный COM-порт.