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

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

С нами с
22.02.2024
Сообщения
8
Репутация
0
Возраст
40
Откуда
Калининград
Самодельный указатель курса (компас) для NMEA2000
Ребята где взять эту шляпу
#include <Arduino.h>
#include <EEPROM.h>
#include <Wire.h>
#include <Adafruit_Sensor.h>
#include <Adafruit_BNO055.h>
#include <utility/imumaths.h>
#include <math.h>
#include <EEPROM.h>
#include <esp_task_wdt.h>
#include <Time.h>
#include <N2kMsg.h>
#include <NMEA2000.h>
#include <N2kMessages.h>
#include <NMEA2000_CAN.h>
#include "BluetoothStream.h"
#include "soc/soc.h"
#include "soc/rtc_cntl_reg.h"
2 день мучаюсь у меня сенсор 0x28
 
С нами с
11.04.2009
Сообщения
328
Репутация
178
Возраст
60
Откуда
Реутов
Самодельный указатель курса (компас) для NMEA2000
Управление библиотекой и грузи все
 
С нами с
17.08.2016
Сообщения
693
Репутация
867
Возраст
50
Откуда
Dzerzhinsk52
Самодельный указатель курса (компас) для NMEA2000
Ребята где взять эту шляпу
#include <Arduino.h>
#include <EEPROM.h>
#include <Wire.h>
#include <Adafruit_Sensor.h>
#include <Adafruit_BNO055.h>
#include <utility/imumaths.h>
#include <math.h>
#include <EEPROM.h>
#include <esp_task_wdt.h>
#include <Time.h>
#include <N2kMsg.h>
#include <NMEA2000.h>
#include <N2kMessages.h>
#include <NMEA2000_CAN.h>
#include "BluetoothStream.h"
#include "soc/soc.h"
#include "soc/rtc_cntl_reg.h"
2 день мучаюсь у меня сенсор 0x28
Запаяйте перемычку выбора адреса на модуле или используйте Flashing.bat(переименовал в Flashing 0x28.bat) из папки ESP32_COMPASS.

Управление библиотекой и грузи все
Кроме Adafruit_BNO055 !!! Adafruit_BNO055 использовать из репозитория автора кода!!!
 
С нами с
22.02.2024
Сообщения
8
Репутация
0
Возраст
40
Откуда
Калининград
Самодельный указатель курса (компас) для NMEA2000
Спасибо, уже разобрался , просто в теме не у кого похожего модуля не было
 
С нами с
22.02.2024
Сообщения
8
Репутация
0
Возраст
40
Откуда
Калининград
Самодельный указатель курса (компас) для NMEA2000
Вот
 

Вложения

  • IMG_20240224_180712.jpg
    142.5 КБ · Просмотры: 106
    IMG_20240224_180712.jpg
С нами с
23.10.2009
Сообщения
180
Репутация
55
Возраст
54
Откуда
Торжок, Тверская обл.
Самодельный указатель курса (компас) для NMEA2000
#define DEBUG 1 включить. И будет все видно. что он принимает и отдает. И тогда может можно будет понять где собака зарыта. да и с собакой тоже неплохо было бы разобраться. // Watchdog reset !
С этим я разобрался. в ESP32 есть защитный механизм, который отправляет в reset подвисший процесс.
Ну например мы ошиблись где то в коде и прога ушла в бесконечный цикл.

Автор скетча его активирует, но не так как рекомендуется в описании ESP32.
Вместо отправки сторожевому таймеру true, он отправляет false, пишет что так нужно, чтобы модуль точно перезапустился.
Установлен очень большой таймаут, 40 секунд. Все это время компас не будет отвечать, если вдруг зависнет.
Затем ESP32 апаратно перезапускает задачу.

Продолжаю эксперименты, вычисленный курс, по показанием магнитометра в программе, плавает на 1-2 градуса.
Курс же полученный от BNO055 после обработки внутри чипа, нисколько не плавает.

Попутно выяснил почему у меня время от времени проходят сбросы, это не сторожевая собака, это почему то от BNO055 ответа не приходит.
Похоже на то, что слишком часто ESP32 долбит запросами в датчик, стакан запросов переполняется, и BNO резетится.
Попробую в код ввести настройку скорости опроса BNO055 ну и долбеж в NMEA2000 тоже стандартизировать на уровне времени описания протокола NMEA2000
 

Вложения

  • 123.jpg
    60.6 КБ · Просмотры: 32
    123.jpg
С нами с
11.04.2009
Сообщения
328
Репутация
178
Возраст
60
Откуда
Реутов
Самодельный указатель курса (компас) для NMEA2000
Попробую в код ввести настройку скорости опроса BNO055 ну и долбеж в NMEA2000 тоже стандартизировать на уровне времени описания протокола NMEA2000
nmea200 можно вообще отключить на время отладки.. не мешает он ни вычислению ни передаче данных в USB порт, потоки разные. Тимо написал просто изумительную библиотеку, да и человек он душевный. У BNO055 нельзя отключить автокалибровку, но можно запросить статус автокалибровки. В даташите есть как . и по статусу понять в проге дело или в микропрограмме чипа.
 
С нами с
23.10.2009
Сообщения
180
Репутация
55
Возраст
54
Откуда
Торжок, Тверская обл.
Самодельный указатель курса (компас) для NMEA2000
nmea200 можно вообще отключить на время отладки.. не мешает он ни вычислению ни передаче данных в USB порт, потоки разные. Тимо написал просто изумительную библиотеку, да и человек он душевный. У BNO055 нельзя отключить автокалибровку, но можно запросить статус автокалибровки. В даташите есть как . и по статусу понять в проге дело или в микропрограмме чипа.
Да, труд громадный он проделал, Тимо его зовут? Респект и уважение человеку!
Видимо изделие он делал серьезное, даже заморочился и сделал процедуру задания вручную магнитной поправки
для каждого положения в таблице поправок.
Я собственно в коде ничего пока не добавлял, за исключением вывода в терминал промежуточных значений, чтобы быстрее разобраться.
Сейчас зависаний нет, как раз на рабочем месте, где и удобнее разбираться.

Но вероятно я все же возьму курс сразу из BNO055, из вычислителя Эйлера, единственно в коде расчет сделан исходя из магнитного севера по стрелке Х(с учетом поправок), а сам чип считает по стрелке Y . Ну и не понятно почему скорость поворота, тангаж и крен отдается в NMEA на каждом цикле, а курс через раз.
 
С нами с
11.04.2009
Сообщения
328
Репутация
178
Возраст
60
Откуда
Реутов
Самодельный указатель курса (компас) для NMEA2000
Да, труд громадный он проделал, Тимо его зовут?

Но вероятно я все же возьму курс сразу из BNO055, из вычислителя Эйлера, единственно в коде расчет сделан исходя из магнитного севера по стрелке Х(с учетом поправок), а сам чип считает по стрелке Y .
Тимо библиотеку Nmea 2000 писал. Наверно надо посмотреть в сторону quaternion, по углам эйлера одних соглашений больше 10.
Какое было применено х.з. А остальное - как видел автор, но Y на север это наверное правильнее.
 
С нами с
25.10.2018
Сообщения
26
Репутация
4
Возраст
33
Откуда
Краснодар
Самодельный указатель курса (компас) для NMEA2000
Здравствуйте товарищи. Купил я набор для пайки, на какой странице можно найти схему и какие комплектующие заказывать? Спасибо большое. Потом уже буду вникать в прошивку итд
 
С нами с
05.05.2020
Сообщения
49
Репутация
40
Возраст
46
Откуда
Тюмень
Самодельный указатель курса (компас) для NMEA2000
Здравствуйте товарищи. Купил я набор для пайки, на какой странице можно найти схему и какие комплектующие заказывать? Спасибо большое. Потом уже буду вникать в прошивку итд
С первой страницы начните, там все понятно )
 
С нами с
22.02.2024
Сообщения
8
Репутация
0
Возраст
40
Откуда
Калининград
Самодельный указатель курса (компас) для NMEA2000
у меня не запускалась пока reset не отключил, что-то не доработанно
 
С нами с
22.02.2024
Сообщения
8
Репутация
0
Возраст
40
Откуда
Калининград
Самодельный указатель курса (компас) для NMEA2000
фиолетовая плата компаса, я так понимаю что при сбросе либо ESP или компас стартует раньше
 
С нами с
11.04.2009
Сообщения
328
Репутация
178
Возраст
60
Откуда
Реутов
Самодельный указатель курса (компас) для NMEA2000
фиолетовая плата компаса, я так понимаю что при сбросе либо ESP или компас стартует раньше
В фиолетовой плате и дело, у всех с нормальной платой проблем нет. И контакт Boot тоже ??????
Для фиолетовой ---->
Есть две площадки для пайки для PS0 и PS1, которые необходимо соединить с контактами + или - для установки рабочего режима - I2C, последовательный порт UART и т. д. Для I2C обе площадки подключены к -.
Вывод ATX — SDA, а вывод LRX — SCL.
Единственная загвоздка — это контакт с маркировкой I2C, который не подключен ни к чему иному, как к BNO055, и должен быть заземлен для применения стандартного адреса I2C.
 

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

Вверх