ФБ ретрансляции
При задании маршрута следования RTM64-пакета через цепочку ретрансляторов, необходимо подать на входы RTM64-Master ФБ адреса всех ретрансляторов и виды связи, в которые они должны ретранслировать пакет данного ФБ.
ФБ №35 «RTM64var Master»
Требования к типам входов и выходов и их количеству:
- Вход Enable - строго bit. Разрешает ФБ отправлять пакеты.
- Вход «CRC16» - дискретный. «1» указывает, что контрольную сумму в исходящем пакете следует рассчитывать по алгоритму CRC16. В противном случае, считается как простая сумма байт пакета. Тип контрольной суммы ответного пакета ФБ определит автоматически.
- Входы «адрес i2c-модуля», «внутренний адрес» и «кол-во байт» - целочисленные.
- Входы «RTM-адрес N» - адреса ретрансляторов и получателя пакета. Допустимы адреса в диапазоне от 1 до 4095, кроме адреса 126. Тип входа – uint16.
- Входы «Вид связи N» - значение, обозначающее вид связи, который должен быть использован устройством при ретрансляции пакета. У получателя пакета вход «Вид связи» должен быть равен «0». Тип входа – uint8.
- Максимальный TimeOut ответа = 6350 мс.
- Внутренняя переменная «№ пакета» обязательна. Она нужна для идентификации пакета в очереди пакетов и корректного отрабатывания истечения тайм-аута ответа и переключе-ния нескольких интерфейсных ФБ на одном канале связи, её тип uint8.
ФБ №36 «RTM64 Master»
Требования к типам входов и выходов и их количеству:
- Вход Enable - строго bit. Разрешает ФБ отправлять пакеты.
- Входы «адрес i2c-модуля», «внутренний адрес» и «кол-во байт» - целочисленные.
- Входы «RTM-адрес N» и «RTM-адрес «кому»» - адреса и ретрансляторов и получателя пакета. Допустимы адреса в диапазоне от 1 до 4095, кроме адреса 126. Тип входа – int16.
- Входы «Вид связи N» и «Вид связи «кому»» - значение, обозначающее вид связи, который должен быть использован устройством при ретрансляции пакета. У получателя пакета вход «Вид связи» равен «0». Тип входа – uint8.
- Максимальный TimeOut ответа = 6350 мс.
- Внутренняя переменная «№ пакета» обязательна. Она нужна для идентификации пакета в очереди пакетов и корректного отрабатывания истечения тайм-аута ответа и переключения нескольких интерфейсных ФБ на одном канале связи, её тип uint8.
ФБ №110 MODBUS-Модем
ФБ №110 настраивает в PacketManager маршрутизацию Modbus пакетов. Функциональный блок записывает новый RTM маршрут для указанного Modbus адреса, в дальнейшем приходящий пакет разбирается и если он не совпадает с собственным адресом Modbus, но совпадает с адресом указанным в ФБ на входе ModbusAddress формируется пакет RTM_MW куда вкладывается Modbus пакет, при достижении пакета последнего адресата(последнее ненулевое значение NodeAddress) если Modbus адрес вложенный в пакет не совпал со своим то контроллер распаковывает Modbus и отправляет в канал указанный в NodeChanel.
- Маршрут в пакете формируется согласно входам “NodeAddress”,”NodeChanel”, все ненулевые узлы становятся ретрансляторами.
- Вход ModbusAddress может быть массивом до 50 элементов для того чтобы можно было опросить несколько устройств подключенных на одну шину RS485(channel 5).
- Вход ChanelFrom откуда приходят пакеты для ретрансляции, если указан канал 8 (Ethernet) но пакет пришел по каналу 1 (RS232), пакет не будит ретранслироваться даже если есть совпадение адресов.
- Вход ChanelTo указывает куда дальше ретранслируется пакет.
Если адрес первого ретранслятора(NodeAddress1) равен “0", но Modbus адрес совпал с одним из указанных во входе ModbusAddres создается маршрут в котором адрес первого ретранслятора равен Modbus адресу в пакете.
Если адрес первого узла «1»,то формируется широковещательный маршрут, в котором адрес первого узла заменяется адресом в Modbus пакете. Данный маршрут будет задействован только в случае если в других небыло совпадения Modbus адреса.
Для ретрансляции Modbus пакета без промежуточного RTM устройства, в NodeAddress1 необходимо записать 4095, тогда Modbus пакет будет ретранслироваться сразу в другой Modbus на другом канале.
На входе ModbusAddress можно указать широковещательный адрес 251, тогда все Modbus пакеты будут ретранслироваться по указанному маршруту.
Номера каналов:
0 – ближнее радио(внешний модуль дальность до 5000 км);
1 - COM1 RS232;
2 – chNearRadio ближнее радио(до 2500 км);
3 - chWire was not make!!!!;
4 - chFarRadio дальнее радио(motorola or kenwood);
5 - COM2 RS485;
6 - chGSMGPRS was not make!!!!;
7 – chCOMIntBUS внутренняя шина(по умолчанию скорость 2 мбит/с);
8 - chEthernet Ethernet(IP).
Список входов/выходов
ФБ №123 «Чтение сетевых переменных по GUID»
ФБ реализует возможность чтения сетевых перемнных по GUID.
На вход подаются:
- Enable – Разешает работу ФБ
- IntervalRequest – Период опроса
- TimeOut – Таймаут ожидания ответа
- Channel – Канал
- NodeAddress – Адрес ретранслятора
- NodeChannel – Канал ретранслятора
Выходы:
- Status – Статус выполнения:
- «0» – ФБ в работе;
- «1» – было установлено соединение;
- «2» – ФБ освободило канал.
- PackNum – Номер пакета в очереди
- TimeOutCounter – Счетчик TimeOut
- IntervalTimer – Таймер интервала
- RestartCounter – Счетчик перезагрузок ФБ
Выход OutData – прочитанное значение.
Настройка маршрутизации происходит аналогично ФБ №110 «MODBUS-Модем».
ФБ №124 «Запись сетевых переменных по GUID»
ФБ реализует возможность записи сетевых перемнных по GUID.
На вход подаются:
- Enable – Разрешает работу ФБ
- IntervalRequest – Период опроса
- TimeOut – Таймаут ожидания ответа
- Channel – Канал
- NodeAddress – Адрес ретранслятора
- NodeChannel – Канал ретранслятора
- GuidAddress – Адрес GUID
- GuidSize – Размер GUID
Выходы:
- Status – Статус выполнения:
- «0» – ФБ в работе;
- «1» – было установлено соединение;
- «2» – ФБ освободило канал.
- PackNum – Номер пакета в очереди
- TimeOutCounter – Счетчик TimeOut
- IntervalTimer – Таймер интервала
- RestartCounter – Счетчик перезагрузок ФБ
Настройка маршрутизации происходит аналогично ФБ №110 «MODBUS-Модем».
ФБ №130 «Чтение сетевых переменных с ретрансляцией»
ФБ реализует возможность записи значений в сетевые переменные контроллеров слейвов (Подробней в описании ФБ103).
- Вход «Enabled» - строго bit. Разрешает работу ФБ. Если Enabled = 0 то ФБ только передает свое значение входа Run в выход OUT, для того чтобы при последовательном соединении нескольких ФБ процесс обмена не прерывался если у одной из ФБ вход Enabled = 0.
- Вход «Run» - строго bit. Вход Триггерный. При изменении состояния запускает процесс записи значения сетевой переменной контроллера Слейва. После отправки запроса на запись ФБ ожидает ответа от контроллера об успешной записи некоторое установленное время (таймаут) для каждого канала таймаут установлен разный. Если был получен не верный ответ или ответ за отведенное время не пришел логика ФБ считается выполненной и выход OUT = 1.
- Вход «№ Слота». Вход задает число которому сопоставлен слейв (подробней в описании ФБ103).
- Вход «Адрес ретранслятора». Задает адрес ретрансляторов через который будет проходить запрос до конечного устройства.
- Вход «Порт ретранслятора». Задает порт в который ретранслятор должен отправить полученный запрос
- Вход «Количество СП». Задает количество элементов(1 элемент = 1 тип данных Uint8,16,32) на запись в зависимости от типа входа - Данные.
- Вход «ID СП». Задает id сетевой переменной, в которую происходит запись данных.
- Вход «Данные». Задается массив данных, который надо записать в сетевую переменную слейва. Может быть в формате Uint8, Uint16, Uint32.
- Выход «OUT» - строго bit. Равен «1» когда логика ФБ выполнена и был получен ответ о успешной записи значения или ответ за отведенное время не пришел.
- Выход «Exception» - строго bit. Информирует об ошибке в процессе записи данных.
- Выход «Ok» - строго bit. Информирует об успешном процессе записи данных.