Четвертушка Ethernet-а: старая скорость, новые возможности

tee6ll8li2mhqpyznoq9ql4-qiy.png

5 февраля этого года был утверждён новый стандарт на 10-ти мегабитный Ethernet. Да, вы верно прочитали: десять мегабит в секунду.

Для чего в 21-м веке нужна такая «маленькая» скорость? Для замены того зоопарка, который скрывается под ёмким названием «полевая шина» — Profibus, Modbus, CC-Link, CAN, FlexRay, HART и т.д. Их слишком много, они несовместимы между собой и относительно сложны в настройке. А хочется просто воткнуть кабель в коммутатор, и всё. Как с обычным Ethernet.


И вскоре это станет возможным! Знакомьтесь:»802.3cg-2019 — IEEE Standard for Ethernet — Amendment 5: Physical Layer Specifications and Management Parameters for 10 Mb/s Operation and Associated Power Delivery over a Single Balanced Pair of Conductors».

Чем-же интересен этот новый Ethernet? Прежде всего — он работает по одной витой паре, а не по четырём. Поэтому у него меньше разъёмы и тоньше кабели. И можно использовать уже проложенную витую пару, идущую к датчикам и исполнительным механизмам.

Вы можете возразить, что Ethernet работает до 100 метров, а датчики расположены гораздо дальше. Действительно, раньше это было проблемой. Но 802.3cg работает на расстоянии до 1 км! По одной паре! Неплохо?

На самом деле, ещё лучше: по этой-же паре может подаваться и электропитание. Вот с него и начнём.

IEEE 802.3bu Power over Data Lines (PoDL)


Думаю, многие из вас слышали о PoE (Power over Ethernet) и знают, что для передачи питания нужны 2 пары проводов. Ввод/вывод питания сделан в средних точках трансформаторов каждой пары. Используя одну пару такое сделать невозможно. Поэтому пришлось делать по-другому. Как именно — показано на рисунке внизу. Для примера добавлен и классический PoE.

iorwo1psicmn8h6otirwferb6t8.png

Здесь:
PSE — power sourcing equipment (источник питания)
PD — powered device (устройство на дальнем конце, потребляющее электричество)

Изначально 802.3bu имел 10 классов электропитания:
pmtoa75el4zplotgmon8il5xffq.png

Цветом выделены три условных градации напряжения источника: 12, 24 и 48В.

Обозначения:
Vpse — напряжение источника питания, В
Vpd min — минимальное напряжение на PD, В
I max — максимальный ток в линии, А
Ppd max — максимальная потребляемая мощность PD, Вт

С появлением протокола 802.3cg добавилось ещё 6 классов:
w3zwng1_qupoya2p_nc0ogt18vg.png

Разумеется, при таком многообразии PSE и PD должны согласовывать класс электропитания перед подачей полного напряжения. Делается это с помощью SCCP (Serial Communications Classification Protocol). Это низкоскоростной протокол (333 бит/с), основанный на 1-Wire. Он работает только тогда, когда в линию не подано основное питание (в т.ч. в спящем режиме).

На блок-схеме показано, как выполняется подача питания:

  • подаётся ток 10 мА и проверяется наличие на том конце стабилитрона на 4В
  • производится согласование класса питания
  • подаётся основное питание
  • если потребление падает меньше 10 мА — включается спящий режим (подача дежурного питания 3.3В)
  • если потребление превышает 1 мА — происходит выход из спящего режима

zpc3ygtx9p5j8xqw1svunwxvjcs.png

Согласование класса питания можно не делать, если он заранее известен. Такой вариант называется Fast Startup Mode. Применяется, например, в автомобилях, т.к. там нет необходимости менять конфигурацию подключенного оборудования.

Инициировать переход в спящий режим может как PSE, так и PD.

Теперь перейдём к описанию передачи данных. Там тоже интересно: в стандарте определены два режима работы — дальнобойный и для небольших расстояний.

10BASE-T1L


Это вариант для большой дальности (long reach). Основные характеристики следующие:

  • дальность действия — до 1 км
  • проводники 18AWG (0.8 мм2)
  • до 10 промежуточных разъёмов (и два оконечных)
  • режим работы точка-точка
  • полный дуплекс
  • символьная скорость 7.5Мбод
  • модуляция PAM-3, кодирование 4B3T
  • сигнал с амплитудой 1В (1Vpp) или 2.4В
  • поддержка Energy Efficient Ethernet («quiet/refresh» EEE)

Очевидно, что этот вариант предназначен для индустриального применения, систем контроля доступа, автоматизации зданий, лифтов. Для управление расположенными на крышах чиллерами, кондиционерами, вентиляторами. Или находящимися в технических помещениях отопительными котлами и насосами. То есть, уйма всяких применений помимо промышленности. Не говоря уже про интернет вещей (IoT).

Стоит упомянуть, что 10BASE-T1 только один из стандартов Single Pair Ethernet (SPE). Есть ещё 100BASE-T1 (802.3bw) и 1000BASE-T1 (802.3bp). Правда, они разрабатывались для автомобильных применений, поэтому там дальность только 15 (UTP) или 40 метров (STP). Однако, в планах уже есть и дальнобойный 100BASE-T1L. Так что в будущем добавят автосогласование скорости.

А пока согласование не используется — заявлен «быстрый старт» интерфейса: меньше 100 мс от подачи питания до начала обмена данными.

Ещё одна опция (необязательная) — увеличение амплитуды передачи с 1 до 2.4В для улучшения отношения сигнал/шум, уменьшения количества ошибок, противодействия индустриальным помехам.

Ну и, разумеется, EEE. Это способ экономить электричество за счёт отключения передатчика, если в данный момент нет данных для передачи. На диаграмме показано, как это выглядит:
i6wqv3x3lcsldyimjsextapzapg.png

Нет данных — отсылаем сообщение «я ушла спать» и отключаемся. Изредка просыпаемся и отсылаем сообщение «я ещё здесь». Когда появляются данные, противоположной стороне выдаётся предупреждение «я просыпаюсь» и начинается передача. То есть, постоянно работают только приёмники.

Теперь посмотрим, что придумали со вторым вариантом стандарта.

10BASE-T1S


Уже по последней букве понятно, что это протокол для коротких расстояний (short reach). Но зачем он нужен, если на коротких расстояниях и T1L работает? Читаем характеристики:

  • дальность действия до 15 м в режиме точка-точка
  • дуплекс или полудуплекс
  • проводники 24–26AWG (0.2–0.13 мм2)
  • символьная скорость 12.5Мбод
  • DME, кодирование 4B5B
  • сигнал с амплитудой 1В (1Vpp)
  • до 4-х промежуточных разъёмов (и два оконечных)
  • нет поддержки EEE

Вроде-бы ничего особенного. Так для чего-же он нужен? А вот для этого:

  • дальность действия до 25 м в режиме мультипоинт (до 8 узлов)


И этого:

  • режим работы с предотвращением коллизий PLCA RS (PHY-Level Collision Avoidance Reconciliation Sublayer)

И это уже гораздо интереснее, не правда-ли? Т.к. помогает сильно уменьшить количество проводов в управляющих шкафах, станках, роботах, автомобилях. И уже есть предложения использовать его как замену I2C в серверах, коммутаторах и прочей электронике.

sldfo-d9ezphfjlo2mvzeonvmya.png

Но у режима мультипоинт есть недостатки. Основной из них — разделяемая среда передачи данных. Конечно, коллизии разрешаются с помощью CSMA/CD. Но неизвестно, какая при этом будет задержка. А для некоторых применений это критично. Поэтому в новом стандарте дополнили мультипоинт специальным режимом PLCA RS (см. следующий раздел).

Второй недостаток — в мультипоинте не работает PoDL. То есть питание придётся подавать по отдельному кабелю или брать где-то на месте.

Впрочем, в режиме точка-точка PoDL работает и на T1S.

PLCA RS


Работает этот режим следующим образом:

  • узлы распределяют между собой идентификаторы, узел с ID=0 становится координатором
  • координатор выдаёт в сеть BEACON signal, означающий начало нового цикла передачи и передаёт свой пакет данных
  • после передачи пакета данных очередь на передачу переходит к следующему узлу
  • если в течение времени, необходимого для передачи 20 бит узел не начал передачу, очередь переходит к следующему узлу
  • когда все узлы передали данные (или пропустили свою очередь), координатор начинает новый цикл

В целом это напоминает TDMA. Но с той особенностью, что узел не использует свой временной фрейм, если ему нечего передавать. И размер фрейма жёстко не задан, т.к. зависит от размера пакета данных, передаваемого узлом. И всё это работает поверх стандартных фреймов Ethernet 802.3 (PLCA RS не обязателен, поэтому должна быть совместимость).

Результат использования PLCA — внизу на графиках. Первый — задержка в зависимости от загрузки, второй — пропускная способность в зависимости от количества передающих узлов. Хорошо заметно, что задержка стала гораздо более предсказуемой. И она в худшем случае на 2 порядка меньше, чем в худшем случае CSMA/CD:
ps_nq021fdfo2kdrjih-fiuxc9e.png

И пропускная способность канала в случае PLCA выше, т.к. не расходуется на разрешение коллизий:
of4ljonbs7lgbobs8utjab2cpgo.png

Разъёмы


Изначально выбирали из 6-ти вариантов разъёмов, предложенных разными фирмами. В результате остановились на этих двух вариантах:

3uduwpww_pxike1cn0bglcv6ouc.png

Для обычных условий эксплуатации был выбран LC разъём IEC 63171–1 компании CommScope.

xddsvu2iu6ddjomdvfhx_fyv3hq.png

Для суровых условий эксплуатации — семейство разъёмов IEC 63171–6 (бывший 61076–3–125) компании HARTING. Эти разъёмы рассчитаны на степени защиты от IP20 до IP67.

bemnxgq3go9s_w1oodrzy42ai7u.png

Разумеется, разъёмы и кабели могут быть как UTP, так и STP.

Прочее


Можно применять обычный четырёхпарный кабель Ethernet, используя каждую пару для отдельного канала SPE. Чтобы не тянуть куда-то вдаль четыре отдельных кабеля. Или использовать однопарный кабель, а на дальнем конце поставить коммутатор однопарного Ethernet.

А можно подключить этот коммутатор прямо в локальную сеть предприятия, если в дальние дали уже протянута сеть по оптоволокну. Воткнуть там в него датчики, а показания с них смотреть здесь. Прямо по сети. Без конвертеров интерфейсов и шлюзов.

И ведь это не обязательно должны быть датчики. Могут быть видеокамеры, домофоны или «умные» лампочки. Приводы каких-нибудь клапанов или турникеты на проходных.

Так что перспективы открываются интересные. Вряд-ли, конечно, SPE заменит все полевые шины. Но изрядный кусок он у них откусит. Уж в автомобилях-то точно.

PS Я не нашёл текст стандарта в открытом доступе. Приведенная выше информация собиралась по кусочкам из разных презентаций и доступных в интернете материалов. Так что в ней могут быть неточности.

© Habrahabr.ru