Проект Muraena RF разработан для удалённой коммутации абонентов в кабельной сети оператора.
Данная разработка позволяет мгновенно отключить (или включить) абоненту услуги КТВ. Для злостных должников такая мера призвана побудить их платить исправно и в срок. Отсюда и название 🙂
Описываемый проект применим на объектах, где коммутация вручную невозможна или крайне неудобна, например, в гостинице или удалённом населённом пункте. Разумеется, всё описанное ниже имеет смысл если доступ к подъездной разводке у оператора защищён от несанкционированного доступа. В идеале — это антивандальный ящик с замком.
Интересным направлением использования, по мнению автора, видится телевидение по запросу, например, тариф «На вечер». Т.е. фактически у вас появляется инструмент предоставления повременных услуг КТВ, к примеру, с активацией по SMS.
Структурная схема проекта
Принцип работы Muraena RF основан в передаче кодовой комбинации на частоте 315 МГц для включения / отключения портов конкретного клиентского блока имеющего свой уникальный адрес. В рамках данной статьи будет рассмотрено только устройство базового и клиентского блоков. Описание иных устройств из вышеприведённой структурной схемы опустим, т.к. их работа не отличается от типовой.
Базовый блок
Задачей базового блока является получение из локальной сети двух параметров: идентификатора клиентского блока (далее клиент), состоящего из четырёх буквенно-цифровых символов (например, 5B8S) и логического состояния этого клиента от 0 до 255 (от 0b00000000 до 0b11111111). Эти параметры кодируются в цифровую последовательность с частотой несущей 315 МГц (модуляция GFSK) и далее данная посылка поступает в кабельную сеть. Передатчик включается только в момент отправки сигнала и его время работы составляет не более 250 мсек.
Обратите внимание на последнее фото - при исправной работе правильно прошитого базового блока светодиод возле 9-го пина ардуины светит в пол-накала (в реальности пин порта работает на высокой частоте).
Конструктивно блок выполнен на макетной плате, все соединения сделаны проводом МГТФ. ВЧ-автотрансформатор взят от абонентского делителя (ДА-2). Разъём SPI необходим для прошивки микроконтроллера Atmega328p программатором USBASP. В качестве программной среды для прошивки использована ProgISP. Прошивка Flash-памяти базового блока здесь — muraena_rf-tx.hex. Фьюзы микроконтроллера стандартные для Arduino Pro Mini.
По умолчанию IP базового блока имеет адрес 192.168.1.222. IP и MAC можно изменить, прописав их в EEPROM. Если данных в EEPROM нет, то используются предустановленные IP (192.168.1.222) и MAC (54 55 58 10 00 3F).
При попытке зайти из браузера наблюдаем подобную страницу…
Передача команды на базовый блок осуществляется внешней веб-панелью, взаимодействующей с базой данных абонентов. Команда выглядит как GET-запрос:
http://192.168.1.222/?id=5B8S&val=255
, где id — идентификатор клиента; val — состояние клиента от 0 до 255. Состояние 255 в двоичной системе выглядит как 0b11111111, т.е. все 8 абонентов отключены. Если передать val=0 (0b00000000) все абоненты будут включены. Расчётом необходимого значения val занимается внешняя программа. В случае успешного выполнения — ответ сервера «ok», в противном — «fail».
ПРОДОЛЖЕНИЕ СЛЕДУЕТ…