Устройство передачи телеметрии с передатчиков Vigintos
Потребовалось как-то наблюдать за передатчиками фирмы Vigintos, расположенными на удалённых объектах. К величайшему сожалению эти передатчики нельзя непосредственно подключить к локальной сети, чтобы смотреть их параметры удалённо (в сравнении с конкурирующим оборудованием фирмы Микротек, к примеру). Предлагаемое производителем решение основано на соединении RS485, что несколько удручает, как по цене, так и по необходимости проброса портов внутри достаточно разнородной локальной сети. Поэтому было решено обратить внимание на разъём Remote, на который выводятся аналоговые значения необходимых параметров: прямой и отражённой мощности, а также модулирующих сигналов. Этих параметров вполне достаточно, чтобы контролировать как передатчики, так и присоединённое оборудование - вещательную машину и антенну. Также было решено дополнить наблюдение возможностью дистанционного выключения передатчика (переход в режим Stand By). Наблюдение и управление производится через обычный интернет-браузер.
На первом объекте у нас находятся два самостоятельных передатчика, и комплект возбудитель - усилитель мощности. На двух других - по одному передатчику. Соответственно были разработаны два типа блоков телеметрии и управления.
Все блоки включают в себя: а) сетевую плату на базе чипа Wiznet W5500, б) контроллер Atmega328, один блок дополнительно содержит аналоговый коммутатор.
Все соединители на плате - RJ45, для упрощения. Схема "большого" варианта ниже.
Для двух других мест установки схема упрощена.
На всех контактах внешнего разъёма установлены помехоподавляющие конденсаторы. Кварцевый резонатор может быть абсолютно любой, в "маленькой" версии использован на 9.12 МГц, в "большой" - на 16 МГц. Сопротивления, установленные на аналоговых входах контроллера, необходимы для стекания паразитных токов, образующихся между входами управления и каналами мультиплексоров. Токи небольшие, но до полутора вольт "лишнего" напряжения набегает. В "маленькой" плате сопротивления установлены "по инерции". Их величина может быть от 10 до 100 кОм. Тем не менее некоторые флуктуации измеренного напряжения вполне возможны в приемлемых пределах.
Софт для блоков писался в среде Arduino IDE якобы для платы Arduino Nano, соответственно все номера пинов в скетче привязаны к этой плате (ну а для перевода номера пинов в ножки микроконтроллера используйте даташит ;)). Скетчи для обоих блоков, а также необходимая библиотека Ethernet2 находятся в архиве. Со стандартной библиотекой Ethernet чип W5500 работать не будет. Необходимые комментарии указаны в тексте. Повторюсь только по важной теме - напряжение питания блоков. Поскольку напряжение питания используется как референсное, то необходимо учитывать это при уточнении формулы расчёта измеренной величины. Во-первых, автор использовал в качестве источников питания USB-выходы вещательных машин, напряжение на которых было в пределах 5.1 - 5.16 Вольт. Во вторых, входное напряжение на аналоговых входах не должно превышать напряжение питания контроллера. В случае превышения необходимо рассчитать входные резистивные делители (как это пришлось сделать для контроля аудиосигнала, поскольку входное напряжение может достигать 10 Вольт). Если используется не "голый" чип, а непосредственно Ардуина, то её напряжение питания составляет обычно 3.3 Вольта, что также объясняет необходимость установки делителей на аналоговых входах.
Вид окон управления с десктопа и мобильной версии для обоих блоков показан ниже.
Были неспешно напечатаны корпуса, поскольку без них прибор не работает ;)
Недостатком данного решения является необходимость компиляции прошивки под конкретный объект и адреса локальной сети. Но, поскольку устанавливается он на длительное время работы, этим неудобством можно пренебречь. Второй недостаток - это "показометр", индикация которого зависит от многих входных параметров. Но, поскольку 99% времени нам нужно только контролировать объект (работает ли вообще, не отвалилась ли антенна, подаётся ли сигнал, отключить в случае аварии), считать это недостатком не нужно.
Дополнения к подключению блока в сетку
(исходя из даташита).
1. Чип W5500 не имеет автоопределения
подключения (does not support auto-MDIX feature), поэтому
его следует подключать "прямым" кабелем к устройству, которое это
автоопределение умеет (современные хабы и роутеры). Напрямую к
компьютеру/серверу или к другому W5500 подключаемся
кроссовером.
2. Если есть возможность, то установите на устройстве, к которому подключается W5500, параметры линка на 10 МБит, чип будет потреблять в полтора раза меньше тока и меньше греться. Микротик, к примеру, это умеет. Если подключаемся к обычному хабу, то увы. Для передачи менее килобайта информации скорости нам хватит.
3. Применённая плата чипа W5500 не имеет встроенного сетевого трансформатора, поэтому длинным кабелем подключать его не рекомендуется.