Шлюз NMEA2000-Gateway with ESP32

kaa

Коллега
Пока зима решил навести порядок с электроникой на лодке.
Задача - объединить в одну сеть эхолот (он же картплотер), AIS, указатель ветра, лаг, автопилот, экранчики st60, комп, планшеты и телефоны, рация :)

В итоге имеем кучу различных интерфейсов:
1. NMEA183 RS232 - AIS
2. NMEA183 RS422 - указатель ветра, лаг, автопилот (шоновский), рация
3. NMEA2000 (STng) CAN - эхолот, экранчики
4. WIFI - комп, планшеты, телефоны
Ну и до кучи завести это все в интернет (раздача интернета оп WIFI, удаленный доступ к сети лодки через инет).

При объединении всего этого зоопарка, не наделать петель по земле, и не завязывать это все на комп (что бы при выключенном компе сеть продолжала функционировать). Обеспечить дальнейшее расширение сети - датчики уровня воды, топлива, состояние аккумуляторов, счетчик якорной цепи, вебкамеры в кокпите и в каюте, сигнализация срабатывания аварийных помп, двигатель (обороты, температура ОЖ и выхлопа, давление масла). Ну и чего еще придумаю :)

продолжение следует
 
Вопрос встал в конверторе NMEA183 <-> NMEA2000 <-> WIFI.
1. Всем известны китайский имеет всего один вход NMEA183 - мало :(
2. У Луиса в конце прошлого года появился новый мультиплексор Nmea2Wifi. Два входа NMEA183 (мало), нет выхода NMEA183. Цена привлекательна, но не понятно как сейчас оплачивать и как с доставкой из Европы (.
3. Австралийские - та же фигня, либо не совсем то что надо, либо цена не устраивает и логистика.

Решил вспомнить, что не всегда был капитаном и судостроителем, а как бы схемотехник и программист :)

За основу взят проект с гитхаба https://github.com/wellenvogel/esp32-nmea2000?tab=readme-ov-file
Творчески переработан и подогнан к своим хотелкам.

В итоге получился мультиплексор имеющий:
1. Три честных RS422 входа NMEA183;
2. Честный RS422 выход NMEA183 (позволяет подключить до десятка приемников) ;
3. CAN шина NMEA2000 (STng);
4. TCP сервер NMEA183;
5. ТCP хост NMEA183;
6. Точка доступа сети WIFI;
7. Клиент сети WIFI;
8. Удобный веб интерфейс для настройки и мониторинга;
9. Возможность фильтровать пакеты по каждому порту;
10. Возможность сопоставить свои PGN и NMEA пакеты;

продолжение следует

схема.jpgпп.jpgпп1.jpgпп2.jpgфото.jpg
 
Подключение AIS.
Matsutec HP-102 имеет выход RS232 с амплитудой +- 6в, что нас не устраивает. Нам нужен честный RS422 с диф. выходом. Можно было сразу сделать один из входов мультиплексора совместимым с RS232, но как то это не красиво, если уж разбираемся с зоопарком, то идем до конца )

Нужен конвертор RS232 -> RS422. Располагаем его рядом с HP-102 и запитываем от него. В итоге через лодку у нас тянется честный диф. сигнал.
rs232.jpgrs232-1.jpgrs232-3.jpgrs232-2.jpg
 
Подключаем приборы на CAN шину.

Имеем Raymarine A57d, и два ST60.
С ними все просто. STng это обычный NMEA2000, только разъемы "не правильные".
Добываем нужные нам разъемы из имеющихся в запасе проводков реймарина.
В качестве шины и проводов снижения используем хороший патчкорд F/FTP шестой категории.
По большому счету, при скоростях NMEA2000, подойдет любой четырехжильный провод.
По красной паре скрученной вместе пускаем +12 питания, по коричневой GND, синяя пара сигнальная, зеленую не используем. На концы синей пары припаяны резисторы 120 ом.
Шина собрана на скрутках, скрутки пропаяны и заизолированы термотрубкой.
Можно, можно, конечно закупить на али тройнички и разъемы М12. По мне, так пропаянная скрутка надежней любого разъема.
В общем сеть CAN шина поднялась с пол пинка, даже с одним терминатором.

продолжение следует.


 
Ветпроуказатель и Шоновский автопилот.
С ними проблем ни каких. У них правильные RS422. Просто подключаем их в мультиплексор.
 
Во сколько обошелся такой шлюз?
Предполагаете выгрузить свой проект на Гитхаб?
 
WiFi.
Данный мультиплексор можно использовать как точку доступа, но это не удобно. Мы ведь хотим еще получить и доступ в инет, и нормальный сервер DHCP, и mDNS хочется. Не плохо бы иметь возможность получить доступ к сети лодки из вне (перед сном, из дома, посмотреть количество воды в баках, заряд аккумуляторов, температуру в каюте... :) )

Поэтому ставим отдельный WiFi роутер, с системой Keenetic, и портом USB ( 4G модем воткнуть)
В закромах как раз завалялся подходящий старенький Зуксель.

В сеть WiFi, кроме мультиплексора, конектятся : бортовой комп, планшет, телефоны.
ПО: OpenCPN, Navionics, AvNav.

Все проверено в боевых условиях в выходами в море (кроме автопилота, его пока только на столе проверял).
 
Во сколько обошелся такой шлюз?
Предполагаете выгрузить свой проект на Гитхаб?
1) ESP32 - 500 руб
2) DC-DC LM2596 - 200 руб
3) ca-is3050 - 150 руб
4) max490 - 3*400=1200 руб
5) разъемы - 3*60 =120 руб
6) текстолит, пластик, резисторы, кондеры, диоды пусть еще 200 руб
Итого 2370 руб.

Ну и время потраченное как всегда в удовольствие :)

Смысла выкладывать на Гитхаб не вижу, я взял то что уже там есть и скомпилировал под себя.
 
Еще один такой сделал товарищу. Но пока он его использует только как WiFi шлюз для вывода целей AIS на телефон в Navionics. В планах весной развернуть полноценную сеть.

ПС. Коллеги, имеет смысл изготовить таких партию на продажу? Тысяч по 5. Как думаете, найдутся покупатели?
 
Еще один такой сделал товарищу. Но пока он его использует только как WiFi шлюз для вывода целей AIS на телефон в Navionics. В планах весной развернуть полноценную сеть.

ПС. Коллеги, имеет смысл изготовить таких партию на продажу? Тысяч по 5. Как думаете, найдутся покупатели?
Я бы купил
 
Единственное, стоит изолированную схему дс/дс применить (имхо показанный на фото модуль по земле не развязан, в схеме же все норм), расширить диапазон питающего напряжения до 30В (у меня, например, вся сеть постоянного тока 24В), и обвешать все входы/выходы защитными устройствами, стоит это копейки, а уверенности прибавится.
Может даже посмотреть в сторону развязки по всем информационным шинам, добавить трансформаторы, как в сетевушках, или другие решения.
В итоге данный дивайс будет центром всей информационной инфраструктуры корабля
 
"за 5 Беру!!!" Ух как мне интересна эта тема, при все том , что 50% не совсем понял (протоколы, нема, вифи......) но давно уже завел себе "червяка правда он пока спит и я его не кормлю"
Вот Такого
Думаю, что речь идет не только об этом.
Обеспечить дальнейшее расширение сети
1706526402546.jpeg
Просто подключаем их в мультиплексор.

Не плохо бы иметь возможность получить доступ к сети лодки из вне (перед сном, из дома, посмотреть количество воды в баках, заряд аккумуляторов, температуру в каюте... :) )

расширить диапазон питающего напряжения до 30В

данный дивайс будет центром всей информационной инфраструктуры

1706526639996.jpeg
 
Единственное, стоит изолированную схему дс/дс применить (имхо показанный на фото модуль по земле не развязан, в схеме же все норм), расширить диапазон питающего напряжения до 30В (у меня, например, вся сеть постоянного тока 24В), и обвешать все входы/выходы защитными устройствами, стоит это копейки, а уверенности прибавится.
Может даже посмотреть в сторону развязки по всем информационным шинам, добавить трансформаторы, как в сетевушках, или другие решения.
В итоге данный дивайс будет центром всей информационной инфраструктуры корабля
Да. Учитывая, что и CAN и RS-422 это честные дифсигналы, т.е. земли не требуют, то их легко можно развязать. DC-DC для питания + оптика для RS-422, а для CAN придётся что то побыстрее дешёвой оптики поставить, Adum например.
 
Верх