首页 » 智能 » 单片机实例分享基于HMC5883L的电子罗盘_模块_串口

单片机实例分享基于HMC5883L的电子罗盘_模块_串口

萌界大人物 2025-01-07 02:11:41 0

扫一扫用手机浏览

文章目录 [+]

磁北的方向便是地磁场在水平面上分量的方向。
假设电子罗盘处于水平面上,要确定其相对付磁北的航向角α。
由磁阻传感器可以直接得出地磁场的水平分量Hx、Hy,因此相对付磁北的航向角为:

正切函数的周期为180°,为担保数据有效性,船体航向角α转换到相对磁北0°~360°的范围内。
可将上式分解,得到相对付磁北极的360°范围内(顺时针方向)的航向角,加上当地的磁偏角就可以算出与真北的航向角。

单片机实例分享基于HMC5883L的电子罗盘_模块_串口 单片机实例分享基于HMC5883L的电子罗盘_模块_串口 智能

由于地磁南北极与地理南北极存在磁偏角,要得到准确的南北极方向,必须用打算结果加上或减去所在地区磁偏角,得出提高方向与地理北极的夹角,即真北方位角A。
本地点地区磁偏角φ已知时,真北方位角为:A=α+φ。

单片机实例分享基于HMC5883L的电子罗盘_模块_串口 单片机实例分享基于HMC5883L的电子罗盘_模块_串口 智能
(图片来自网络侵删)
硬件设计

电子罗盘的硬件系统如图21.1所示,紧张由传感器、掌握器、电源及串口输出4部分组成。
掌握器通过串口与PC通信,用于实现对电子罗盘的设置、校正以及丈量数据输出。

图21.1 硬件系统设计图

1. 掌握器模块

图21.2 ATmega16 最小系统事理图

掌握器采取ATmega16,这是一款基于增强的AVR RISC构造的高性能、低功耗8位MCU,事情电压为2.7~5.5V,在1MHz时钟下,事情电流为1.1mA。
大多数指令可以单时钟周期实行,具有统一的中断管理,片上外围模块丰富,片内有16KB的Flash、1KB的RAM、512字节的EEPROM、8路的10位A/D转换器以及一起USART通信端口等资源。
在本设计中,掌握器串口与PC连接,可以对电子罗盘进行配置及校正,也可以将终极打算得到的方向及角度通过串口输出,供其他丈量系统利用。
掌握器模块在ATmega16的根本上,做了最小系统的扩展,如图21.2所示。
按照模块化设计思想,本文将最小系统制作成单独模块,其终极实物如图21.3所示。

图21.3 ATmega16最小系统实物图

图21.4 HMC5883L模块

图21.5 串口模块

图21.6 底板事理图

2. HMC5883L 模块

HMC5883L是一种基于表面贴装的高集成、自带数字接口的弱磁传感器,运用于低本钱罗盘和磁场检测领域。
HMC5883L包括最前辈的高分辨率HMC118X系列磁阻传感器,并附带霍尼韦尔专利的集成电路,包括放大器、自动消磁驱动器、偏差校准、能使罗盘精度掌握在1°~2°的12位模数转换器以及大略单纯的I2C总线接口。

HMC5883L采取霍尼韦尔各向异性磁阻(AMR)技能,具有轴向高灵敏度和线性高精度的特点,能用于丈量地球磁场的方向和大小。

HMC5883L模块的外围电路非常大略,本文采取的是成品模块,如图21.4所示。
该模块外接引脚包括VCC、GND、SCL、SDA、DRDY、3V3。
个中VCC为5V输入,模块自带降压功能,可以输出3.3V电压供其他模块利用。
SCL与SDA为标准I2C接口,DRDY用于指示HMC5883L数据是否准备好,用于中断办法读取丈量数据。

3. 串口模块

与PC通信的串口模块采取的是USB转串口办法,同样采取成品模块,如图21.5所示。
该模块利用PL2303HX芯片实现USB转串口功能,具有电路大略、传输速率快等特点。
模块引出的功能引脚包括TXD、RXD、GND、3V3、5V。
个中5V为USB总线输出电压,本文将该电压作为下位机的供电电压。
TXD与RXD为串口接口,与单片机直接连接,无需做电平转换。
模块内部同时集成了降压模块,可以输出3.3V电压,但由于已经利用了HMC5883L模块的降压功能,本系统中该输出引脚悬空。

4. 底板模块

各模块之间须要通过底板进行连接,其事理图如图21.6所示。
个中与HMC5883L模块的I2C接口利用的是ATmega16的硬件接口,因此须要连接PC0与PC1端口,DRDY则与PD7端口连接。
串口模块与单片机的硬件串口端口PD0、PD1连接,总体连接相对大略。
将各个模块通过插座、插针以及连接线连接,设备终极的样子如图21.7所示。

软件设计

电子罗盘的软件分为两部分:单片机上的软件以及PC真个掌握软件。
平时事情时,只需运行单片机上的程序,PC端软件仅显示当前数据。
当须要配置或者校正时,要合营PC端软件利用。

单片机的软件流程如图21.8所示。
参数保存在单片机的EEPROM中,掉电后仍旧可以保存。

图21.7 总体设备实物图

图21.8 单片机软件流程图

PC机与单片机进行串口连接,平时事情时,单片机事情在正常模式,PC端软件通过串口查询当前方位角并显示在界面上。
当须要配置电子罗盘时,可以通过PC端软件设置磁偏角,参数都会保存在单片机的EEPROM中,罗盘重启后还按之前的设置参数运行。
当须要对罗盘进行校正时,通过PC端软件启动校正流程。
用户须要在水平面上缓慢旋转罗盘360°,然后通过PC端软件奉告罗盘结束校正,此时罗盘会自动打算出X、Y轴的偏移值并保存,同时PC端软件上会显示这些偏移值。

PC 端软件采取 Visual C++ 2005 编写,基于 MFC 框架开拓,软件流程如图21.9所示。
软件框架采取的是查询办法,由PC掌握软件作为主动方,发送串口命令到单片机,单片机则作为被动方,将结果返回给PC掌握软件。

通过界面上的按钮,用户可以设置电子罗盘、进行校正,并看到当前方位角的显示,界面如图21.10所示。
利用时,先将单片机与PC串口连接,然后打开对应的串口号,此时即可以看到当前方位角显示在偏角栏里。
如果须要设置磁偏角,只需将数值写入对话框,并单击“设置”按钮即可。
校正功能相比拟较繁芜,在单击“开始校正”后,须要手动旋转电子罗盘360°,然后再单击“结束校正”,最大、最小偏移值即会显示在界面上。

罗盘偏差及补偿

图21.9 PC端软件流程图

图21.10 PC 端软件界面

图21.11 有无滋扰时的罗盘输出

造成罗盘偏差的紧张成分有传感器偏差、其他磁材料滋扰等。
为了校准传感器放大电路,HMC5883 内部集成了自测试电路,可以驱动偏置电流带产生一定大小的测试磁场,以校准传感器各轴灵敏度。
自测试还可以校准温度变革产生的漂移。
当磁阻传感器处于较强滋扰磁场中时,传感器灵敏度会低落乃至失落效。
为了肃清这种影响,须要复位/置位电路施加脉冲宽度为2μs、电流强度为3~4A的电流,使传感器特性规复。
在目前运用较为广泛的HMC1022及HMC1022 仿照输出磁阻传感器中,复位/置位电路须要额外设计并由掌握器掌握,而HMC5883 芯片内部集成了天生复位/置位脉冲所需的驱动电路,且由片上ASIC 电路自动掌握,在每次丈量前自动进行复位/置位操作,不仅担保了传感器精度,也使传感器运用电路大为简化。

除了传感器本身的偏差,磁阻传感器运用环境中的磁介质引起的磁场变革也会使电子罗盘精度降落。
磁场滋扰分硬磁滋扰和软滋扰两类。
硬磁滋扰是传感器附近的永磁体或被磁化的金属造成的,它对磁阻传感器输出的影响是固定的,使输出曲线图圆心偏移,如图21.11(b)所示。
而软磁滋扰则是地球磁场和传感器附近磁性材料的相互浸染造成的,其滋扰具有方向性,如图21.11(c)所示。

为了校正X、Y轴方向的硬磁滋扰,须要在校准模式中绕Z轴缓缓旋转罗盘一周,在旋转过程中,罗盘不断采集X、Y轴的磁场强度数据,终极找出数据的最大值Xmax、Ymax和最小值Xmin、Ymin。
对付Z轴的校准,须要绕X轴或Y轴旋转一周,找出Z轴数据的最大值Zmax、最小值Zmin。
校准偏移量为:

将偏移量保存到掌握器的EEPROM存储器中,在往后的每次丈量中,将每轴的磁场强度减去对应的偏移量,即可校准硬磁滋扰。
肃清软磁滋扰的补偿算法较为繁芜,在低本钱的掌握器上不易实现且效果有限,因此在本设计中选用了优化磁阻传感器安装位置的方法,以降落其他磁性材料对地磁场的滋扰,担保罗盘精度。

总结

本文依据磁罗盘测向事理,设计了具有倾斜补偿功能的小体积、低功耗数字罗盘。
该罗盘采取数字磁阻传感器HMC5883L及超低功耗处理器ATmega16L,具有电路构造大略、集成度高、抗滋扰能力强等优点。
实验证明,经算法补偿后,该电子罗盘精度可以达到±1°。
由于硬件本钱低、功耗小,它也适用于便携导航、小型翱翔器掌握,以及用于其他须要丈量倾角和方位角的场合。

标签:

相关文章

一路理解电感的用途—电感_电感_暗记

电感是闭合回路的一种属性,当通过闭合回路的电流改变时,会涌现电动势来抵抗电流的改变。电感的符号L,单位亨(H)(1H = 1000...

智能 2025-01-07 阅读0 评论0

收付款协议,构建和谐商业关系的基石

在商业活动中,收付款协议作为双方合作的基石,不仅关乎资金的安全,更关乎商业信誉的维护。本文将围绕收付款协议的书写,探讨其重要性与具...

智能 2025-01-07 阅读0 评论0

数字化时代,探索最佳网站建设的奥秘

随着互联网技术的飞速发展,网站已经成为企业、个人展示形象、拓展业务的重要平台。在数字化时代,如何打造一个最佳网站,成为众多企业和个...

智能 2025-01-07 阅读0 评论0