Разработка IoT-шлюза на базе Raspberry CM3+

Большой опыт работы в сфере промышленной автоматизации и АСУТП, казалось бы, должен способствовать тому, что со временем уже много всего видел и много всего знаешь. Но не тут-то было. Оказывается, иногда могут возникать задачи и проекты, которые трудно реализовать стандартными средствами. Так под один крупный проект по мониторингу и управлению в «облаке» одного небезызвестного завода N требовалось найти подходящее железо. Однако оказалось, что в России по требованиям помехозащищенности устройства и открытости системы ничего подходящего не существует. Попытка заказать идеально подходящее нам устройство из-за рубежа провалилась, поскольку на территорию нашей страны оборудование с пометкой «IoT» весьма трудно ввести в промышленных масштабах. Другие же поставщики не устроили сроками доставки в 12 недель при небольших объемах и ценой. Поэтому в голове родилась и плотно осела мысль о создании своего устройства. Причем такого, чтобы оно было универсальным и подходило не только конкретно под этот один проект, а под множество других. В итоге от момента зарождения идеи, подбора поставщиков и корпуса, разработки платы, её отладки и тестирования, написания инструкций и технической документации прошло весьма много времени. Но зато теперь я держу с легким трепетом в руках полностью законченное и рабочее устройство, и могу заявлять, что мы это сделали!

Разработка IoT-шлюза на базе Raspberry CM3+
Рисунок 1 — Плата устройства

Почему именно Raspberry?

Raspberry Pi – это небольшой и дешевый универсальный микрокомпьютер, гибко настраиваемый под любые задачи. С 2014 года он выпускается как самостоятельный вычислительный модуль Compute Module, то есть из привычной платы с различными интерфейсами и разъемами осталось только самое важное: процессор, ПЗУ и ОЗУ. Такое исполнение позволяет использовать это устройство для любых мыслимых и немыслимых задач, все лишь упирается в возможности фантазии для создания обвязки вокруг модуля. Стоит также заметить, что с момента выхода в свет первой версии устройства вышло уже три версии модулей, а после выхода Raspberry Pi 4, вероятно, стоит ожидать еще и четвертую версию в скором времени. Всё это говорит о том, что разработчики активно развивают свой продукт, увеличивают его мощность и быстродействие, и что их устройство пользуется определенной популярностью у людей. Эта популярность не беспочвенна: за всё это время они зарекомендовали себя как надежные устройства, способные решать задачи различного уровня в любых условиях, даже в космосе. Также программировать на Raspberry Pi условно просто, они обладают большим количеством интеграторов по всему миру.

Открытая операционная система Linux позволяет устанавливать на устройство абсолютно любое программное обеспечение в зависимости от требуемой задачи. Например для решений в области умного дома возможны стыковки с OpenHab, Home Assistant, iRidiumMobile, NodeRed и др (пример использования устройства для умного дома можно прочесть тут). Для промышленности возможна установка SCADA-систем, таких как CODESYS, Rapid SCADA, OpenSCADA с возможностью использовать устройство как шлюз для передачи данных на верхний уровень по протоколам MQTT, http, REST API или CoAP. Также возможна интеграция с различными облачными сервисами.

Что по интерфейсам?

image
Рисунок 2 — Вид платы сверху и снизу

Устройство в минимальном исполнение поддерживает следующие интерфейсы:

  • RS485 х 2;
  • RS232 х 1;
  • CanBus х 1;
  • 1-Wire х 1;
  • USB х 1;
  • Ethernet х 1;
  • SMA x 2;
  • SIM х 1;
  • miniPCIe х 2;
  • HDMI 4k х 1;
  • MicroUSB х 1;
  • MicroSD х 1;
  • GPIO х 1.
  • LED х 1 (программируемый);

Вышеописанные интерфейсы позволяют внедрить устройство практический в любой проект. А дополнительные аппаратные модули для установки в слоты Mini PCI-e от сторонних производителей решают проблему с наличием связи и интернета у устройства. Такой путь с установкой модулей связи нами был выбран не случайно, поскольку наличие USB-адаптеров (так называемых «свистков») является не очень надежным и качественным вариантом, а установка промышленных роутеров по типу Robustel R2000-3P является дорогостоящим (около 12 т.р.). Поэтому мы остановились на установке двух разъемов под модули Mini PCI-e, которые можно использовать по собственному желанию:

  • 3G, LTE, GPRS модуль (HUAWEI MU709s-2, цена: 2,5 т.р.);
  • Wi-Fi модуль с возможностью подключения к нему направленной антенны;
  • NB-IoT модуль;
  • LoraWan модуль для построения сети «интернет вещей».

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

Дополнительные решения

  • Аппаратный watchdog;
  • Аппаратные часы реального времени;
  • Энергонезависимая память EEPROM;
  • Металлический корпус и крышки (алюминий 3 мм);
  • Диапазон питания 9-36 В;
  • Температурный диапазон -25…+80°C (по документам, тесты еще не проводились).

image
Рисунок 3 — Устройство AntexGate в корпусе

Хочется получить обратную связь от специалистов. И, возможно, услышать какие-либо советы или пожелания.

 

Источник

1-wire, can шина, canbus, codesys, DIY, diy или сделай сам, diy умный дом, homeassistant, internet of things, iot, Iridium, iridium mobile, linux, mqtt, node-red, openhab, raspberry, raspberry pi, Raspberry pi 3, raspbian, rs232, rs485, scada, scada разработка программирование, smart home, АСУ ТП, асутп, интернет вещей, облачные сервисы, облачные технологии, промышленная автоматизация, промышленный интернет вещей, разработка, умный автомобиль, умный город, умный дом

Читайте также