项目简介
本项目是一个基于Arduino的航海误差追踪系统,利用多种硬件模块协同工作,具备罗盘导航和GPS导航双模式,能够实时测量并直观展示航海过程中的累积误差,辅助用户调整航向。
项目的主要特性和功能
特性
- 多模块协同:借助支持I2C服务的Arduino兼容处理器,与MC5883L罗盘模块通信测量方向变化,通过SSD1306显示屏输出误差评估,利用NEO - 6M GPS模块进行UART通信。
- 双模式导航:提供罗盘导航和GPS导航两种模式,可根据条件自动切换。
- 误差直观展示:以图形和数字形式直观呈现累积误差,方便用户调整航向。
功能
- 目标设定:初始化时获取当前航向作为目标航向,显示屏提示“TARGET ACQUIRED”。
- 误差测量与累积:周期性测量当前航向与目标航向的误差,并进行累积。
- 误差图形展示:用四分之一圆的大小和位置表示累积误差的大小和方向。
- 转向提示:累积误差超过阈值时,显示屏显示转向信号。
- 严重误差警示:累积误差极大时,显示具体误差值提醒用户采取行动。
- 重置功能:按下按钮可重新设定目标航向并清零累积误差。
- GPS导航:满足一定条件时切换至GPS导航,持续提供航向偏差评估。
安装使用步骤
环境准备
假设用户已下载项目源码文件,需确保拥有支持I2C服务的Arduino兼容处理器(如Arduino Nano Every或Seeeduino XIAO)、MC5883L罗盘模块、SSD1306显示屏、NEO - 6M GPS模块。
硬件连接
按照项目提供的原理图(位于/src目录,由Autodesk - Eagle创建)连接各硬件模块。
代码上传
使用Arduino IDE打开项目源码文件,选择对应的开发板和端口,上传代码至开发板。
系统使用
- 接通电源,等待系统初始化完成。
- 将设备指向期望的航向,系统会自动记录目标航向。
- 航行过程中,观察显示屏上的误差信息,根据提示调整航向。
- 若需重新设定目标航向,按下按钮即可。
- 若想手动输入目标航向,可按下复位按钮并保持3秒以上,旋转设备使显示屏显示期望航向,松开按钮完成设定。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】