= Передача RS-232/RS-485 по общей шине **Задач:** передать данные по интерфейсам RS-232 и RS-485 между несколькими устройствами с помощью групповых каналов.\\ **Схема:** [[Image(1-1scheme.png,align=center, title=схема)]] >УС – узел связи\\ >НРП – необслуживаемый регенерационный пункт || ||IP-адрес||Синхронизация TDM|| ||УС||192.168.20.40||Freerun|| ||НРП||192.168.20.41||Auto -> Locked|| ||Оъект 1||192.168.20.40||Auto -> Locked|| ||Объект 2||192.168.20.40||Auto -> Locked|| \\ || ||SM-02||PD-04 || ||УС ||слот 3 (LT) ||слот 11|| ||НРП ||слот 1 (NT)\\слот 5 (LT)\\слот 12 (LT)|| || ||Объект 1||слот 3 (NT) ||слот 11|| ||Объект 2||слот 3 (NT) ||слот 11|| В этом руководстве рассмотрим типовую схему передачи данных по интерфейсам RS-232 и RS-485 через общую шину между Мастером телемеханики и несколькими Устройствами телемеханики с помощью групповых каналов.\\ Все устройства телемеханики работают со следующими параметрами: - скорость 9600 бод; - контроль четности - нет; - 8 бит данных; - 1 стоповый бит. Блок УС работает в автоколебательном режиме (Freerun), блок НРП синхронизируется от него, от блока НРП синхронизируются блоки Объект 1 и Объект 2. В дальнейшем мы настроим синхронизацию TDM. == 1. Настройка PD-04 **R232**\\ Для начала настроим плату PD-04 с субмодулем R232. Для этого выберем PD-04 в списке плат и нажмем на нее.\\ В появившемся окне: • Включить субмодуль, сняв галочку «Блокирован». • «Скорость передачи» – выбрать «10-20 кбит/с (8 битовых интервалов)».\\ Скорость передачи зависит от битовых интервалов, которые соответствуют канальным интервалам в таблице TDM. 8 битовых интервалов – это один канальный интервал; 16 битовых интервалов будут занимать 2 канальных интервалов, и так далее. В этом примере устройства телемеханики работают на скорости 9600 бод, что для платы PD-04 соответствует 9600 бит/с. • В поле «Позиция данных» написать 0. Этот параметр устанавливает положение первого бита данных на TDM-шине блока (более подробно можно прочитать в [[https://adc-line.ru/pdf/mc04-dsl-3u-re.pdf#%5B%7B%22num%22%3A316%2C%22gen%22%3A0%7D%2C%7B%22name%22%3A%22XYZ%22%7D%2C40%2C802%2C0%5D|Руководстве по эксплуатации]]). • Снять галочку «Шлейф». Этот параметр отвечает за заворот данных, который нам не нужен. • Снять галочку «Аппаратное управление». В оборудовании для нашего примера не используется. [[Image(2-PD-232_1.png,align=center, title=конфигурация R232)]] **R485**\\ По аналогии настроим субмодуль R485: • Включить субмодуль, сняв галочку «Блокирован». • «Скорость передачи» – выбрать «10-20 кбит/с (8 битовых интервалов)». • «Позиция данных» – написать 0. • «Точная настройка», «Инверсия приема», «Инверсия передачи» – можно оставить выключенными. Следует использовать в том случае, если подключенное Устройство телемеханики требует дополнительных настроек. [[Image(3-PD-485_1.png,align=center, title=конфигурация R485)]] == 2. Настройка SM-02 ==== 2.1 УС Так же находим SM-02, нажимаем на нее и переходим на вкладку «Конфигурация». В настройках «DSL A» и «DSL B»: • Убираем галочку «Блокировка», чтобы включить пару. • В столбце «Режим» выбираем «LT». На SM-02 DSL работает в режиме «ведущий – ведомый», соответственно на одной плате будет режим «ведущий», на другой – «ведомый».\\ LT – ведущий, NT – ведомый. • «Линейный код» выбираем «TC_PAM32», как универсальный вариант между скоростью передачи и помехозащищенностью. • В поле «Число каналов DSL» для примера укажем 40. В реальных условиях эксплуатации число каналов следует выбирать исходя из параметров тракта (более подробно можно узнать в [[https://adc-line.ru/pdf/mc04-dsl-3u-re.pdf#page=35|Руководстве по эксплуатации (п.5.2.9)]]). **«DSL A»:**\\ • В поле «Номер потока TDM» нужно указать любой свободный поток E1 из таблицы TDM с 5 по 32. Мы укажем 5. • В поле «Число каналов TDM» укажем 32, чтобы занять весь поток E1. • В поле «Число каналов eth» укажем оставшиеся 8 каналов. **«DSL B»:**\\ • В поле «Число каналов DSL» также укажем 40. • В поле «Число каналов eth» укажем 40, то есть все каналы DSL будут использованы для передачи Ethernet. **Далее:**\\ • Установить галочку «Агрегация трафика DSL», так как мы используем сразу две пары. • Установим галочку «Приоритет DSL A». Как правило, по паре А передают приоритетные данные. Остальные настройки можно оставить по умолчанию. Конфигурация SM-02 на блоке УС: [[Image(4-SM_b1_1.png,align=center, title=конфигурация SM-02 на блоке УС)]] ==== 2.2 НРП На блоке НРП на первой плате SM-02 делаем следующие настройки: • В поле «Режим» выбираем «NT». • «Шина синхронизации» – для выхода «refclk0» выбираем «DSL A» для синхронизации TDM. Все остальные настройки аналогичны настройкам SM-02 на блоке УС. Конфигурация первой SM-02 на блоке НРП: [[Image(5-SM_b2_1.png,align=center, title=конфигурация первой SM-02 на блоке НРП)]] На второй и третьей плате SM-02 блока НРП делаем точно такие же настройки, как на плате SM-02 на блоке УС. На второй SM-02 указываем «номер потока TDM» 6, на третьей – 7. Конфигурация второй SM-02 на блоке НРП: [[Image(6-SM_b2_2.png,align=center, title=конфигурация второй SM-02 на блоке НРП)]] Конфигурация третьей SM-02 на блоке НРП: [[Image(7-SM_b2_3.png,align=center, title=конфигурация третьей SM-02 на блоке НРП)]] ==== 2.3 Объект 1 и 2 На плате SM-02 блока Объект 1 и блока Объект 2 делаем точно такие же настройки, как на первой плате SM-02 на блоке НРП. Конфигурация SM-02 на блоке Объект 1: [[Image(8-SM_b3_1.png,align=center, title=конфигурация SM-02 на блоке Объект 1)]] Конфигурация SM-02 на блоке Объект 2: [[Image(9-SM_b4_1.png,align=center, title=конфигурация SM-02 на блоке Объект 2)]] == 3. Настройка таблицы TDM ==== 3.1 Коммутация КИ R232/R485 и E1 DSL A На блоках УС, Объект 1 и Объект 2 нужно скоммутировать канальный интервал, который занимает субмодуль R232/R485 платы PD-04, и любой свободный канальный интервал потока E1, который мы указали для DSL A (КИ0 и КИ16 рекомендуется не занимать, поскольку в дальнейшем может потребоваться передача сверхцикла или СУВ). [[Image(10-tdm_1.PNG,align=center, title=коммутация КИ R232/R485 и КИ потока E1 DSL A)]] ==== 3.2 Настройка TDM на блоке НРП В таблице TDM на блоке НРП:\\ КИ 5:1 занимает Мастер ТМ\\ КИ 6:1 занимает Устройство ТМ 1\\ КИ 7:1 занимает Устройство ТМ 2\\ На блоке НРП нам нужно скоммутировать канальный интервал, приходящий от Мастера ТМ, и канальные интервалы Устройств ТМ в одну сторону.\\ Для этого нужно перетащить ячейку 5:1 на ячейку 6:1.\\ Затем ответить «Да» на вопрос «Соединить каналы?». [[Image(11-tdm_commut_1.png,align=center, title=Соединить каналы? Да)]] Ответить «Нет» на вопрос «Установить обратный канал?». [[Image(12-tdm_commut_2.png,align=center, title=Установить обратный канал? Нет)]] Повторить для 5:1 --> 7:1. На данном этапе таблице TDM должна выглядеть так: [[Image(13-tdm_2.png,align=center, title=промежуточный итог таблицы TDM)]] После этого любым удобным способом создать групповой канал, который будет суммировать КИ 6:1 и 7:1. Для этого группового канала надо указать логический тип суммирования. [[Image(14-create_group_ch.png,align=center, title=создание группового канала)]] После создания группового канала, надо нажать на ячейку 5:1 и изменить «Режим» на «Групповой», и указать номер группового канала, который мы создали. Режим СУВ можно выбрать «Канал». [[Image(15-tdm_g0.png,align=center, title=групповой канал)]] В итоге таблица TDM на блоке НРП должна выглядеть следующим образом: [[Image(16-tdm_final.png,align=center, title=таблица TDM)]] == 4. Проверка Для проверки будет использоваться следующая схема: [[Image(17-2scheme.png,align=center, title=схема проверки)]] С помощью конвертеров `Ethernet <--> RS-232` и `Ethernet <--> RS-485` подключим ПК вместо устройств телемеханики. Через программу на ПК мы будем отправлять и получать данные на интерфейсах RS-232 и RS-485. Для начала убедимся, что с COM11 (Мастер ТМ) данные приходя на COM13 (Устройство ТМ 1) и COM14 (Устройство ТМ 2): [[Image(18-test1.PNG,align=center, title=результат тестирования)]] Как показано выше, количество байт и пакетов, отправленных с COM11, совпадает с количеством байт и пакетов, полученных на COM13 и COM14; ошибки отсутствуют. Далее убедимся, что данные с COM13 приходят на COM11: [[Image(19-test2.png,align=center, title=результат тестирования)]] И так же проверим, что данные с COM14 приходят на COM11: [[Image(20-test3.png,align=center, title=результат тестирования)]]