• ВНИМАНИЕ! ПРОСЬБА ВОЗДЕРЖАТЬСЯ ОТ ОБСУЖДЕНИЯ НА ФОРУМЕ ЛЮБЫХ ПОЛИТИЧЕСКИХ СОБЫТИЙ! СПАСИБО!

Самодельный указатель курса (компас) для NMEA2000 (Просматривают: 5)

С нами с
15.06.2013
Сообщения
3 057
Репутация
3 407
Откуда
Железнодорожный
Самодельный указатель курса (компас) для NMEA2000
А можете понятнее сказать ?
Перевожу: :D

ЦОГ = COG = Course over ground = Курс по геокоординатам - усредненная величина, это то, что обычно получаем от GPS. ЦОГ умеет и сам эхолот (по GPS) и для этого отдельный компас не нужен.
Хидинг = Heading = Ориентация, направление, мгновенный курс прямо в данный момент, это то, что получаем анализируя одновременно компас (или COG от GPS) и гироскоп. То, ради чего компас в основном и нужен собственно.
Ну, еще полноценный 9-координатный компас по идее может крен, дифферент и вертикальное перемещение на волне сообщать, но не уверен что это вычисляется и используется в данном случае.

Если я конечно не наврал :)
 
С нами с
17.11.2019
Сообщения
81
Репутация
112
Откуда
Балашиха
Самодельный указатель курса (компас) для NMEA2000
Наконец-то удалось нормально запаять BNO, теперь ESP её видит. Осталось дождаться из китая микросхему dc-dc конвертера. Спасибо EduardNN за ответы на вопросы.
PCB.jpeg
 
С нами с
16.01.2024
Сообщения
1
Репутация
0
Возраст
33
Откуда
~
Самодельный указатель курса (компас) для NMEA2000
Ребята, а какой кабель использовать для nmea 2000? Подскажите, пожалуйста, маркировку. Я так понял нужен на 4 жилы, т.к. 5 контакт не используется
 
С нами с
17.11.2019
Сообщения
81
Репутация
112
Откуда
Балашиха
Самодельный указатель курса (компас) для NMEA2000
Ребята, а какой кабель использовать для nmea 2000? Подскажите, пожалуйста, маркировку. Я так понял нужен на 4 жилы, т.к. 5 контакт не используется
Я наверно такой буду использовать "L-SFTP4-ST, Витая пара SFTP, 4 пары Cat5e, многожильные в двойном экране", стОит 75р за метр. Столько жил не нужно, можно спараллелить. Экран должен придать прочности. DOC005409421.jpg
 
С нами с
17.08.2016
Сообщения
699
Репутация
877
Возраст
50
Откуда
Dzerzhinsk52
Самодельный указатель курса (компас) для NMEA2000
Ребята, а какой кабель использовать для nmea 2000? Подскажите, пожалуйста, маркировку. Я так понял нужен на 4 жилы, т.к. 5 контакт не используется
В кабеле n2k отдельно экранированы пары CAN и питания. Так же кабель должен быть стойкий к УФ излучению(совет участника темы).
Наиболее подходящий по мин. цене кабель - хороший (качественный) удлинитель USB 2.
 
С нами с
17.09.2010
Сообщения
860
Репутация
419
Откуда
Москва
Самодельный указатель курса (компас) для NMEA2000
Ребята, а какой кабель использовать для nmea 2000? Подскажите, пожалуйста, маркировку. Я так понял нужен на 4 жилы, т.к. 5 контакт не используется
Я применил ПРКС. УФ-стойкий, мягкий. На наших отрезках экранирование некритично.
Минимальное сечение 0.5мм2.
 
С нами с
15.06.2013
Сообщения
3 057
Репутация
3 407
Откуда
Железнодорожный
Самодельный указатель курса (компас) для NMEA2000
И еще, в этом модуле
Посмотреть вложение 12144428
перемычками задается только интерфейс (uart, i2c или hid i2c) . Адрес в этом модуле задан жестко - 0х29.
Проверил. Если вывод платы ADD подключить на вывод GND, то адрес I2C меняется с 0x29 на 0x28. Себе так запаял.

Еще, в оригинальном скетче немца допущен серьезный косяк, приводящий либо к постоянной перезагрузке с сообщением в компорт "No Data from Sensor. Reset." либо к перезагрузке если сенсор BNO чуть замешкался при выдаче результатов. По оригинальной мысли автора перезагрузка должна была вызываться если датчик долго лежит неподвижно и акселерометр начал выдавать нули. Накапливается довольно много исправлений, улучшений и дополнительных настроек, подумываю о выкладывании собственного комплекта исходников, возможно, руссифицированного. Чуть позже скорее всего это сделаю.
 
С нами с
15.06.2013
Сообщения
3 057
Репутация
3 407
Откуда
Железнодорожный
Самодельный указатель курса (компас) для NMEA2000
Одна из четырех плат BNO определяется на 0x40 порту

1714321667660.png

Стало быть активен протокол HID-I2C.

1714322033179.png

Протокол определяется коммутацией конфигурационных выводов PS0 и PS1, выведенных на перемычки.

1714321581450.png

Конфигурационные перемычки на плате обе запаяны и звонятся обе на GND. То есть скорее всего нога PS0 чипа не припаялась нормально к плате.
Хочу попробовать погреть строительным феном и прижать чип к плате посильнее. Какую температуру на фене ставить?
 
Последнее редактирование:
С нами с
22.04.2024
Сообщения
12
Репутация
76
Откуда
Саратов
Самодельный указатель курса (компас) для NMEA2000
Товарищи, а кто-нибудь кроме Сириуса продает "самодельные" компасы? У Сириуса 15к стоит, но хотелось бы за какой-то чутка более гуманный ценник. Типа если кто-то и собрал из деталей на 3к, и 5к накинет за работу, я бы купил такой. Мне на лоуранс. Буду рад если в личку напишите.
На али китайцы предлагают за 11 т.р. компасы типа стадекаст
 

Вложения

  • Screenshot_2.png
    199.8 КБ · Просмотры: 53
    Screenshot_2.png
С нами с
17.08.2016
Сообщения
699
Репутация
877
Возраст
50
Откуда
Dzerzhinsk52
Самодельный указатель курса (компас) для NMEA2000
Проверил. Если вывод платы ADD подключить на вывод GND, то адрес I2C меняется с 0x29 на 0x28. Себе так запаял.
Речь шла о перемычках. Вывод ADD в данном проекте не используется.
Еще, в оригинальном скетче немца допущен серьезный косяк, приводящий либо к постоянной перезагрузке с сообщением в компорт "No Data from Sensor. Reset." либо к перезагрузке если сенсор BNO чуть замешкался при выдаче результатов. По оригинальной мысли автора перезагрузка должна была вызываться если датчик долго лежит неподвижно и акселерометр начал выдавать нули. Накапливается довольно много исправлений, улучшений и дополнительных настроек, подумываю о выкладывании собственного комплекта исходников, возможно, руссифицированного. Чуть позже скорее всего это сделаю.
Все нормально сделано в скетче. Сенсор BNO055 начинает "замешкиваться" при не правильной работе тактового генератора - когда конденсаторы в цепи кварца(22пф) установлены не той емкости.
 
С нами с
15.06.2013
Сообщения
3 057
Репутация
3 407
Откуда
Железнодорожный
Самодельный указатель курса (компас) для NMEA2000
Все нормально сделано в скетче. Сенсор BNO055 начинает "замешкиваться" при не правильной работе тактового генератора - когда конденсаторы в цепи кварца(22пф) установлены не той емкости.
В случае кривых конденсаторов в цепи кварца сенсор начинает эпизодически "замешкиваться" или постоянно? Если это на постоянной основе, то это не тот случай, о котором я говорю.

Поясню подробнее.
Я заметил, что после запуска компас немного поработав иногда (но не всегда) начинает ресетиться бесконечно по кругу. Начал разбираться, проанализировал код.
В скетче немца сделано следующее. Есть таймаут 5 секунд на "расчухивание" сенсора после старта системы (с момента загрузки ESP32). В этот период нулевые показания акселерометра (0,0,0), поступающие от сенсора, не воспринимаются как зависание сенсора и перегрузки не происходит. Однако, как только 5 секунд с момента последнего запуска (перезапуска) системы истекают, то первые же показания 0,0,0 от акселерометра воспринимаются как "завис" сенсора. При этом автор скетча ресетит сенсор дропая его ногу RESET, которая управляется с ноги GPIO18 модуля ESP32, а затем отправляет модуль ESP32 в ребут.

Начал копать дальше. Включил режим отладки, который немец благоразумно встроил в код. В этом режиме в компорт отсылаются полученные от сенсора данные, а также я временно отключил ребут всей системы. Что я обнаружил? Я обнаружил, что иногда (но не всегда) 5 секунд после запуска сенсору было мало чтобы начать выдавать реальные данные. И если он не успевал "очухаться" после ребута в течении 5 секунд, то скетч снова перегружал систему, и так по кругу, бесконечный ребут или несколько ребутов один за другим. И так могло происходить достаточно долго, "компас при этом как бы "зависал", не реагируя на внешние воздействия. Мало того, даже если сенсор успевал за 5 секунд с момента старта выйти на нормальные показания, когда эти 5 секунд заканчивались, то первые же показания 0,0,0 от акселерометра воспринимаются скетчем как "зависания" и снова вся система отправляется в ребут :) Мне кажется, описываемые в этой теме некоторыми участниками "зависания" компаса связанны именно с этим.

По результатам наблюдений за отладочными данными было замечено, что в случаях, когда сенсор ловил магнитные помехи, или по питанию было что-то не так, сенсор начинал подтупливать и иногда выдавал 0,0,0. Иногда это были единичные 0,0,0 после которых продолжались нормальные показания. Но иногда сенсор реально впадал в "кому", причины впадения в эту "кому" я ни с чем не смог скоррелировать, но подозреваю виной тому слабое питание - на столе я запитал сенсор от платы ESP32, а она питается от USB. Причем, если сенсор все же впал в эту "кому", то ресет сенсора подачей низкого уровня на RESET толком не помогал, а помогал только ребут всей системы ESP32. Возможно, это глюк библиотек или неправильно подобранные задержки. Думаю, немец столкнулся с тем же самым и не придумал ничего лучше чем сделать этот ребут при получении от сенсора 0,0,0 по акселерометру.

Увидев такую картину я сделал следующие модификации скетча немца. Во-первых, я увеличил таймаут "невосприятия" 0,0,0 от акселерометра. Также я ввел игнорирование единичных показаний 0,0,0 от акселератора сенсора, если они проскакивают эпизодически, перемежаясь нормальными посылами. И только когда сенсор начинает слать 0,0,0 подряд в течении заданного периода, только тогда я отправляю весь компас в ребут. И только один ребут, поскольку увеличенный таймаут ожидания сенсора после ребута позволяет сенсору гарантированно успеть проснуться . Итого компас при зависании сенсора пропадает со связи с эхолотом совсем ненадолго, только на время одного ребута, а это около 2-3 секунд.

Как-то так.
 
С нами с
15.06.2013
Сообщения
3 057
Репутация
3 407
Откуда
Железнодорожный
Самодельный указатель курса (компас) для NMEA2000
То есть скорее всего нога PS0 чипа не припаялась нормально к плате.
Хочу попробовать погреть строительным феном и прижать чип к плате посильнее. Какую температуру на фене ставить?
Кто-то посоветует, какой температурой греть плату в попытке восстановить контакт?
 
С нами с
17.08.2016
Сообщения
699
Репутация
877
Возраст
50
Откуда
Dzerzhinsk52
Самодельный указатель курса (компас) для NMEA2000
180...200 - текстолит может вздуться....
 
  • Cпасибо
Реакции: XPOH
С нами с
15.06.2013
Сообщения
3 057
Репутация
3 407
Откуда
Железнодорожный
Самодельный указатель курса (компас) для NMEA2000
Ну вот и я собрал.
Пока на столе. Теперь осталось все нормально спаять и сделать корпус.
Корпус планирую 3D-печатать

IMG_20240429_025003.jpg
IMG_20240429_025242.jpg IMG_20240429_025442.jpg
 
Последнее редактирование:

Сейчас смотрят

Вверх