电子罗盘模块
电子罗盘和陀螺仪和G-Sensor
![电子罗盘和陀螺仪和G-Sensor](https://img.taocdn.com/s3/m/be0bf527a32d7375a417803e.png)
【其他杂类】什么是手机电子罗盘和陀螺仪及作用手机电子罗盘,就是手机一个软件,也是手机的一个硬件。
能根据手机的位置不同显示方向和俯仰角。
根据电子罗盘的读数,地图自动旋转到用户方便读取的方向。
十分适合不太会用地图的人使用。
此外,与传统罗盘一样,可以根据地标粗略估计自己所处位置(有经验的人使用起来就如同GPS一样)、可以控制行进方向......等等、等等。
电子罗盘,也叫数字指南针,是利用地磁场来定北极的一种方法。
古代称为罗经,现代利用先进加工工艺生产的磁阻传感器为罗盘的数字化提供了有力的帮助。
现在一般有用磁阻传感器和磁通门加工而成的电子罗盘。
虽然GPS在导航、定位、测速、定向方面有着广泛的应用,但由于其信号常被地形、地物遮挡,导致精度大大降低,甚至不能使用。
尤其在高楼林立城区和植被茂密的林区,GPS信号的有效性仅为60%。
并且在静止的情况下,GPS也无法给出航向信息。
为弥补这一不足,可以采用组合导航定向的方法。
电子罗盘产品正是为满足用户的此类需求而设计的。
它可以对GPS信号进行有效补偿,保证导航定向信息100%有效,即使是在GPS信号失锁后也能正常工作,做到“丢星不丢向”。
陀螺仪又叫角速度传感器,是不同于加速度计(G-sensor)的,他的测量物理量是偏转,倾斜时的转动角速度。
在手机上,仅用加速度计没办法测量或重构出完整的3D动作,测不到转动的动作的,G-sensor 只能检测轴向的线性动作。
但陀螺仪则可以对转动,偏转的动作做很好的测量,这样就可以精确分析判断出使用者的实际动作。
而后根据动作,可以对手机做相应的操作!目前,陀螺仪在消费类产品上,最成功的应用当属在Wii的游戏(Wii Motion Plus)中作体感游戏手柄,去实现对游戏的控制。
让游戏者只要手持Wii Motion Plus手柄,就可以通过自己的动作控制屏上的游戏视频,做打乒乓球,网球等运动类游戏,或者转动手柄,你就可以玩驾车的视频游戏。
基于LSM303AGR的超紧凑高性能电子罗盘模块说明书
![基于LSM303AGR的超紧凑高性能电子罗盘模块说明书](https://img.taocdn.com/s3/m/2d30514ef68a6529647d27284b73f242326c3141.png)
AN4825应用笔记基于LSM303AGR的超紧凑高性能电子罗盘模块引言本文档旨在提供ST eCompass六轴惯性传感器模块相关的使用信息和应用提示。
LSM303AGR是系统级封装的3D数字磁力计和3D数字加速度计,具有数字I2C和3线SPI接口标准输出,在组合高分辨率模式下功耗250 µA,在组合低功耗模式下功耗不超过60 µA。
由于磁力计和加速度计均具有超低噪声性能,始终具有低功耗特性,并结合了高传感精度,因此能够为客户提供最佳运动体验。
器件具有超低功耗工作模式,可实现高级节能、智能睡眠唤醒以及恢复睡眠功能。
该器件的磁场动态范围高达±50高斯,其用户可选择的满量程加速度范围为±2g/±4g/±8g/±16g。
可以对LSM303AGR进行配置,使其产生用于磁场检测的中断信号,并自动补偿由较高应用层产生的硬磁偏移。
它可配置为通过检测独立的惯性唤醒/自由落体事件以及通过器件自身的位置生成中断信号。
中断发生器的阈值和时序可由终端用户动态设定。
也可通过可自动编程的睡眠唤醒和恢复睡眠功能提高节能效率。
LSM303AGR集成了32级的先进先出(FIFO)缓冲器,允许用户存储加速度计数据,可减少主机处理器的干预。
LSM303AGR采用纤薄的小型塑料焊盘栅格阵列封装(LGA),可确保在更大的温度范围(-40 °C至+85 °C)内正常工作。
SMD封装的超小尺寸和重量使其成为手持便携式应用的理想选择,如智能手机、物联网(IoT)连接设备,穿戴,以及需要减小封装尺寸和重量的其他应用。
2020年3月DocID028927 Rev 1 [English Rev 1]1/65目录目录1引脚说明 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72寄存器 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93磁力计 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123.1工作模式 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123.1.1空闲模式 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133.1.2高分辨率模式 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133.1.3低功耗模式 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133.1.4单次测量模式 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133.2磁力计低通滤波器 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143.3读取输出数据 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143.3.1启动序列 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143.3.2使用状态寄存器 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153.3.3使用数据准备就绪信号 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153.3.4使用块数据(BDU)功能 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153.3.5理解输出数据 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16输出数据示例 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .163.4磁力计偏移消除 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173.5磁力计硬磁补偿 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 183.6中断产生 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 183.6.1中断引脚配置 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193.6.2事件状态. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193.6.3阈值中断 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193.7磁力计自检 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 214加速度计 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 234.1工作模式 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 234.1.1下电模式 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 244.1.2高分辨率模式 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 244.1.3正常模式 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 244.1.4低功耗模式 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 254.1.5切换模式 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 254.2启动序列 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 2/65DocID028927 Rev 1 [English Rev 1]目录4.2.1读取加速度数据 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26使用状态寄存器 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .26使用数据就绪(DRY)信号. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .26使用块数据更新(block data update,BDU)功能. . . . . . . . . . . . . . . . . . . . . . . .274.2.2理解加速度数据 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27数据对齐. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .27大小端序选择 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .27加速度数据示例 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .27 4.3高通滤波器 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 284.3.1滤波器配置 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29正常模式. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .29参考模式. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .30自动复位. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .30 4.4中断产生 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 314.4.1中断引脚配置 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 4.5惯性中断 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 324.5.1持续时间 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 334.5.2阈值. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 334.5.3自由落体和唤醒中断 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34惯性唤醒. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .35不使用高通滤波器. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .36使用高通滤波器 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .374.5.4自由落体检测 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38 4.66D/4D方向探测 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 394.6.16D方向探测 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 394.6.24D方向 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41 4.7单击和双击识别 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 414.7.1单击 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 414.7.2双击 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 424.7.3寄存器说明 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44CLICK_CFG_A (38h) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .44CLICK_SRC_A (39h) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .45CLICK_THS_A (3Ah) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .45TIME_LIMIT_A (3Bh) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .46TIME_LATENCY_A (3Ch) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .46TIME_WINDOW_A (3Dh). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .46CTRL_REG3_A [中断CTRL寄存器] (22h) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .474.7.4示例1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48调整TAP_TimeLimit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .48DocID028927 Rev 1 [English Rev 1]3/65目录调整TAP_Latency. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .49调整TAP_Window. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .504.8先进先出(FIFO)缓冲器 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 514.8.1FIFO说明. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 514.8.2FIFO寄存器 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52控制寄存器5(0x24). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .52FIFO控制寄存器(0x2E) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .53FIFO状态寄存器(0x2F) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .544.8.3FIFO模式. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55Bypass模式. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .55FIFO模式 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .55Stream模式. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .56Stream-FIFO模式. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .594.8.4水位标志 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 604.8.5从FIFO中读取数据 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 614.9温度传感器 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 624.10加速度计自检 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62 5版本历史 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 644/65DocID028927 Rev 1 [English Rev 1]表格索引表格索引表 1.引脚说明. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8表 2.寄存器. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9表 3.工作模式的电流消耗. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12表 4.工作模式. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12表 5.单次测量模式(HR和LP模式)下的最大ODR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13表 6.低通滤波器、相对带宽和噪声. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14表 7.CFG_REG_C_M寄存器 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19表 8.INT_CTRL_REG_M寄存器. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19表 9.工作模式选择 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23表 10.数据速率配置 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23表 11.工作模式的电流消耗. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24表 12.操作模式转换的导通时间 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25表 13.输出数据寄存器内容与加速度对比(FS = 2 g) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28表 14.高通滤波器模式配置. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29表 15.低功耗模式 - 高通滤波器截止频率[Hz] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29表 16.参考模式LSB值. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30表 17.CTRL_REG3_A寄存器. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31表 18.CTRL_REG3说明. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31表 19.CTRL_REG6寄存器 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31表 20.CTRL_REG6寄存器 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31表 21.中断模式配置 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32表 22.正常模式下的持续时间LSB值. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33表 23.阈值LSB值 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33表 24.6D位置中的INT1_SRC_A寄存器 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41表 25.CLICK_CFG_A寄存器 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44表 26.CLICK_CFG_A说明 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44表 27.真值表. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44表 28.CLICK_SRC_A寄存器 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45表 29.CLICK_SRC_A说明 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45表 30.CLICK_THS_A寄存器. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45表 31.CLICK_THS_A说明 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45表 32.TIME_LIMIT_A寄存器. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46表 33.TIME_LIMIT_A寄存器. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46表 34.TIME_LATENCY_A寄存器. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46表 35.TIME_LATENCY_A说明. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46表 36.TIME_WINDOW_A寄存器 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46表 37.TIME_LATENCY_A说明. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46表 38.CTRL_REG3_A寄存器. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47表 39.CTRL_REG3_A说明. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47表 40.FIFO缓冲区填满示例(存储第51个采样集) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32表 41.FIFO溢出示例(存储第52个采样集同时丢弃第1个采样) . . . . . . . . . . . . . . . . . . . . . . . . . 52表 42.CTRL_REG5_A中的FIFO使能位 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52表 43.FIFO_CTRL_REG_A . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53表 44.FIFO_SRC_REG_A . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54表 45.FIFO_SRC_REG_A特性(假定FTH[4:0] = 15) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54表 46.CTRL_REG3_A (0x22). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54表 47.文档版本历史 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64表 48.中文文档版本历史. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64DocID028927 Rev 1 [English Rev 1]5/65图片目录图片目录图 1.引脚连接. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7图 2.中断功能. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20图 3.磁力计自检步骤. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22图 4.数据准备就绪信号. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26图 5.高通滤波器连接框图. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28图 6.REFERENCE/DATACAPTURE_A读取 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29图 7.参考模式. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30图 8.自动复位. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30图 9.中断信号和中断引脚. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32图 10.自由落体、唤醒中断发生器. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34图 11.自由落体和唤醒配置 - 高和低 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35图 12.惯性唤醒中断 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35图13.自由落体中断 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38图14.ZH、ZL、YH、YL、XH和XL特性. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39图15.6D运动与6D位置对比. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40图16.6D识别位置. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40图17.使用非锁存中断的单击事件. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42图18.单击和双击识别. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43图19.双击识别. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43图20.短TimeLimit. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48图21.长TimeLimit. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48图22.短延迟. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49图23.长延迟. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49图24.短窗口. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50图25.长窗口. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50图26.FIFO_EN连接框图 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53图27.FIFO模式特性. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56图28.Stream模式快速读取特性. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57图29.Stream模式慢速读取特性. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57图30.Stream模式慢速读取(放大图). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58图31.Stream-FIFO模式:中断未锁存 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59图32.Stream-FIFO模式:中断已锁存 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60图33.水位标志特性 - FTH[4:0] = 10. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60图34.FIFO读取 - FTH[4:0] = 10. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61图35.加速度计自检步骤. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63 6/65DocID028927 Rev 1 [English Rev 1]引脚说明1 引脚说明DocID028927 Rev 1 [English Rev 1]7/65引脚说明8/65DocID028927 Rev 1 [English Rev 1]表1. 引脚说明引脚#名称功能引脚状态1SCLSPC I 2C 串行时钟(serial clock ,SCL )SPI 串口时钟(serial port clock ,SPC )默认值:无上拉的输入2CS_XL 加速度计:SPI 使能I 2C/SPI 模式选择1:SPI 空闲模式/ I 2C 通信使能;0:SPI 通信模式/ I 2C 禁用默认值:无上拉的输入3CS_MAG 磁力计:SPI 使能I 2C/SPI 模式选择1:SPI 空闲模式/ I 2C 通信使能;0:SPI 通信模式/ I 2C 禁用默认值:无上拉的输入4SDA SDI SDO I 2C 串行数据(serial data ,SDA )SPI 串行数据输入(serial data input ,SDI )3线接口串行数据输出(serial data output ,SDO )默认值:无上拉的输入5c1电容连接(C1 = 220 nF )6GND 0 V 电源7INT_MAG/DRDY 磁力计中断/数据准备就绪信号高阻抗8GND 0 V 电源9Vdd 电源10Vdd_IO I/O 引脚的供电11INT_2_XL 加速度计中断2输出强制接地12INT_1_XL 加速度计中断1输出强制接地DocID028927 Rev 1 [English Rev 1] 9/652 寄存器表2. 寄存器寄存器名地址位 7位 6位 5位 4位 3位 2位 1位 0STATUS_REG_AUX_A07h-TOR---TDA--RESERVED08h-0BhOUT_TEMP_L_A0Ch D7 D6D5D4D3D2D1D0OUT_TEMP_H_A0Dh D15 D14D13D12D11INT_COUNTER_REG_A0Eh IC7IC6IC5IC4IC3IC2IC1IC0WHO_AM_I_A0Fh00110011TEMP_CFG_REG_A1Fh TEMP_EN1TEMP_EN0000000CTRL_REG1_A20h ODR3ODR2ODR1ODR0LPen Zen Yen XenCTRL_REG2_A21h HPM1HPM0HPCF2HPCF1FDS HPCLICK HPIS2HPIS1CTRL_REG3_A22h I1_CLICK I1_AOI1I1_AOI2I1_DRDY1I1_DRDY2I1_WTM I1_OVERRUN-CTRL_REG4_A23h BDU BLE FS1FS0HR ST1ST0SPI_ENABLECTRL_REG5_A24h BOOT FIFO_EN--LIR_INT1D4D_INT1LIR_INT2D4D_INT2CTRL_REG6_A25h I2_CLICKen I2_INT1I2_INT2BOOT_I2P2_ACT-H_LACTIVE-REFERENCE/DATACAPTURE_A26h Ref7Ref6Ref5Ref4Ref3Ref2Ref1Ref0STATUS_REG_A27h ZYXOR ZOR YOR XOR ZYXDA ZDA YDA XDAOUT_X_L_A28h XD7XD6XD5XD4XD3XD2XD1XD0OUT_X_H_A29h XD15 XD14XD13XD12XD11XD10XD9XD8OUT_Y_L_A2Ah YD7YD6YD5YD4YD3YD2YD1YD0OUT_Y_H_A2Bh YD15YD14YD13YD12YD11YD10YD9YD8OUT_Z_L_A2Ch ZD7ZD6ZD5ZD4ZD3ZD2ZD1ZD0OUT_Z_H_A2Dh ZD15 ZD14ZD13ZD12ZD11ZD10ZD9ZD8FIFO_CTRL_REG_A2E FM1FM0TR FTH4FTH3FTH2FTH1FTH0寄存器DocID028927 Rev 1 [English Rev 1] 10/65FIFO_SRC_REG_A2F WTM OVRN_FIFO空FSS4FSS3FSS2FSS1FSS0INT1_CFG_A30h AOI6DZHIE/ZUPEZLIE/ZDOWNEYHIE/YUPEYLIE/YDOWNEXHIE/XUPEXLIE/XDOWNEINT1_SRC_A31h0IA ZH ZL YH YL XH XLINT1_THS_A32h0THS6THS5THS4THS3THS2THS1THS0INT1_DURATION_A33h0D6D5D4D3D2D1D0INT2_CFG_A34h AOI6D ZHIE ZLIE YHIE YLIE XHIE XLIEINT2_SRC_A35h0IA ZH ZL YH YL XH XLINT2_THS_A36h0THS6THS5THS4THS3THS2THS1THS0INT2_DURATION_A37h0D6D5D4D3D2D1D0CLICK_CFG_A38h--ZD ZS YD YS XD XSCLICK_SRC_A39h-IA Dclick Sclick符号Z Y XCLICK_THS_A3Ah-Ths6Ths5Ths4Ths3Ths2Ths1Ths0TIME_LIMIT_A3Bh-TLI6TLI5TLI4TLI3TLI2TLI1TLI0TIME_LATENCY_A3Ch TLA7TLA6TLA5TLA4TLA3TLA2TLA1TLA0TIME_WINDOW_A3Dh TW7TW6TW5TW4TW3TW2TW1TW0Act_THS_A3Eh-Acth6Acth5Acth4Acth3Acth2Acth1Acth0Act_DUR_A3Fh ActD7ActD6ActD5ActD4ActD3ActD2ActD1ActD0 RESERVED40h-44hOFFSET_X_REG_L_M45h Offset_X_7 Offset_X_6Offset_X_5Offset_X_4Offset_X_3Offset_X_2Offset_X_1Offset_X_0 OFFSET_X_REG_H_M46h Offset_X_15Offset_X_14Offset_X_13Offset_X_12Offset_X_11Offset_X_10Offset_X_9Offset_X_8 OFFSET_Y_REG_L_M47h Offset_Y_7Offset_Y_6Offset_Y_5Offset_Y_4Offset_Y_3Offset_Y_2Offset_Y_1Offset_Y_0 OFFSET_Y_REG_H_M48h Offset_Y_15Offset_Y_14Offset_Y_13Offset_Y_12Offset_Y_11Offset_Y_10Offset_Y_9Offset_Y_8 OFFSET_Z_REG_L_M49h Offset_Z_7Offset_Z_6Offset_Z_5Offset_Z_4Offset_Z_3Offset_Z_2Offset_Z_1Offset_Z_0 OFFSET_Z_REG_H_M4Ah Offset_Z_15Offset_Z_14Offset_Z_13Offset_Z_12Offset_Z_11Offset_Z_10Offset_Z_9Offset_Z_8表2. 寄存器(续)寄存器名地址位 7位 6位 5位 4位 3位 2位 1位 0寄存器DocID028927 Rev 1 [English Rev 1] 11/65WHO_AM_I_M4Fh01000000CFG_REG_A_M60hCOMP_TEMP_ENREBOOT SOFT_RST LP ODR1ODR0MD1MD0CFG_REG_B_M61h0000INT_on_DataOFFSet_FREQ OFF_CANC LPFCFG_REG_C_M62h0INT_MAG_PINI2C_DIS BDU BLE0Self_test INT_MAGINT_CTRL_REG_M63h XIEN YIEN ZIEN00IEA IEL IENINT_SOURCE_REG_M64h P_TH_S_X P_TH_S_Y P_TH_S_Z N_TH_S_X N_TH_S_Y N_TH_S_Z MROI INTINT_THS_L_REG_M65h TH7TH6TH5TH4TH3TH2TH1TH0INT_THS_H_REG_M66h TH15TH14TH13TH12TH11TH10TH9TH8STATUS_REG_M67h Zyxor zor yor xor Zyxda zda yda xdaOUTX_L_REG_M68h D7D6D5D4D3D2D1D0OUTX_H_REG_M69h D15D14D13D12D11D10D9D8OUTY_L_REG_M6Ah D7D6D5D4D3D2D1D0OUTY_H_REG_M6Bh D15D14D13D12D11D10D9D8OUTZ_L_REG_M6Ch D7D6D5D4D3D2D1D0OUTZ_H_REG_M6Dh D15D14D13D12D11D10D9D8表2. 寄存器(续)寄存器名地址位 7位 6位 5位 4位 3位 2位 1位 0寄存器磁力计12/65DocID028927 Rev 1 [English Rev 1]3磁力计3.1工作模式磁力模块提供两种功耗模式:高分辨率(HR )模式和低功耗(LP )模式。
电子罗盘调研
![电子罗盘调研](https://img.taocdn.com/s3/m/813a0913fc4ffe473368ab5b.png)
电子罗盘调研2014-02-211 电子罗盘功能介绍1.1 名字解释电子罗盘,也叫数字指南针,是利用地磁场来定北极的一种方法。
古代称为罗经,现代利用先进加工工艺生产的磁阻传感器为罗盘的数字化提供了有力的帮助。
现在一般有用磁阻传感器和磁通门加工而成的电子罗盘。
电子罗盘具有以下特点:●三轴磁阻效应传感器测量平面地磁场,双轴倾角补偿。
●高速高精度A/D转换。
●内置温度补偿,最大限度减少倾斜角和指向角的温度漂移。
●内置微处理器计算传感器与磁北夹角。
●具有简单有效的用户标校指令。
●具有指向零点修正功能。
1.2 电子罗盘作用1.2.1 GPS导航定位的缺陷1) 虽然GPS在导航、定位、测速、定向方面有着广泛的应用,但由于其信号常被地形、地物遮挡,导致精度大大降低, 其信号可用性仅为60% ,甚至不能使用。
产生不精确定位的原因包括:①多路径效应:建筑物对GPS信号的反射②阴影:城市中高楼与高楼之间形成的“峡谷”内、浓密的植被下,信号接收效果较差③在隧道、地下停车厂造成的信号失锁④在接收信号差的地区延长了初始化时间⑤一些动态影响,如汽车大幅度增速与减速等。
以上原因都会导致GPS无法提供任何位置或者定位精度陡然下降。
2) 在静止的情况下,GPS也无法给出航向信息。
高精度电子罗盘可以对GPS信号进行有效补偿,保证导航定向信息100%有效,即使是在GPS信号失锁后也能正常工作,做到“丢星不丢向”。
3) 安全及可靠性风险。
美国出于自身利益上的考虑,从不承诺不实施SA干扰和区域关闭,这更给GPS用户带来很大疑惑和担心。
因此,将GPS与电子罗盘相结合,二者相互补充,组合使用是导航领域的理想选择。
例如:美国虽然其完全独立掌握GPS 的卫星资源,但为了使系统更加可靠,使导航信息100%有效,其M1坦克及其它一些重要装备上仍加装了C100电子罗盘。
1.2.2 电子罗盘主要用途电子罗盘主要用于辅助GPS导航及在静止状态获取航向,具体包括加速度和方向的定位、倾角测量等功能。
PNI电子罗盘系列(二维罗盘_三维罗盘)
![PNI电子罗盘系列(二维罗盘_三维罗盘)](https://img.taocdn.com/s3/m/154fcc09844769eae009eda7.png)
俯仰 ≤80°时,为0.5° 重复性:0.05°rms
俯仰 ≤86°时,为1.0°
重复性:0.05° TCM-Prime 倾角补偿数字罗盘 磁感应技术 任何环境下都能保证精度
倾斜 >70°时,精度为0.8° 分辨率:0.1° 温度
分辨率:0.1° 重复性: ±0.05° 操作温度: -40° to +85° C
重复性: ±0.05° 范围±90° 存储温度: -40° to +125° C
倾斜信息 电压需求 接口:数字式RS232
高分辨率罗盘航向:0.01 °
高精度罗盘航向:2 °
非易失性存储器:当电源变化时,保持标定
多种测量模式:罗盘航向或者磁场
大测量范围: ±1100 μT (±11 Gauss)
高分辨率:0.015μT (0.00015Gauss)
数字接口
应用:
高性能磁场感知 、高性能固态导航 、测量设备 、机器人系统 、车辆探测 、消费者市场 、安全探测
PNI电子罗盘系列(二维罗盘/三维罗盘)
一、两轴罗盘 产品图片 型号 MicroMag2 V2Xe 主要技术参数及应用 特点:
双轴磁传感器模块 低功耗:来自VDC时电流小于500μA 操作电压3.2VDC
尺寸:14×11×2.8mm
大的磁场测量范围:±1100μT(±11Gauss)
倾斜 <70°时,精度为0.3° 分辨率:0.1° 睡眠模式:0.6mA
倾斜 >70°时,精度为0.5° 重复性: ±0.05° 温度
分辨率:0.1° 范围 操作温度: -40° to +85° C
基于STM32F407的智能配送小车
![基于STM32F407的智能配送小车](https://img.taocdn.com/s3/m/ef253a33bc64783e0912a21614791711cc7979f0.png)
基于 STM32F407的智能配送小车摘要:本小车利用QMC5883L电子罗盘模块实时获取行进角度,对比初始方位角,通过微调保持小车的行进方向与配送路径航向基本一致,避免偏航。
利用SIM900A短信模块和LD3320D语音模块等无线通信技术,当物品到达目的地后,系统自动向收货人发送短信,告知物品送达。
本小车的设计打造出一种新的更加安全,可靠的配送方式,避免了交叉感染的风险,增加了配送效率。
关键词:智能小车;GPS定位;图像识别;无线通信一、引言近年来,随着现代化技术的发展,人们生活的便捷化和智能化,人们对于生活物质服务的要求也越来越高。
对于物件快递的配送,外卖的送达等服务的要求也日益剧增。
随着配送行业的不断发展,纯人工配送已经无法满足现实的需求了,并且由于新冠疫情的不断蔓延,来自隔离社区或医院的刚需市场的拉动,无人配送技术已经可以应用到医学领域,小物件配送、外卖配送等领域,实现零接触运输。
二、基于STM32F407ZET6的智能配送小车1.总体设计方案选择了STM32F407ZET6作为主控芯片,功能强大、集成度高,首先实现了一些基本的功能,小车根据上位机的控制指令通过控制直流电机、LD3320、SIM900A等模块完成前后左右运动、加减速、语音控制、短信发送,其次是电子罗盘的实现,采用 QMC588具有高分辨的磁阻传感器,使小车行驶过程中进行精度微调,再者就是GPS定位导航功能的实现,搭配相应的外围模块,实现小车位置信息的采集,并反馈给上位机,以便对其进行准确的定位和跟踪,此外,接受上位机发送的路径信息,与自身的位置坐标对比后,确定小车的行驶方向和路径,在避障系统的辅助下,控制小车行驶到预先约定的位置,最后的是摄像头OV2640的实现,主要是对路况进行颜色识别。
2.硬件设计STM32F407ZET6是本次设计的控制核心板,其次主要分为SIM900A短信测试模块、语音测试模块、4WD-L298P电机模块、HC-SR04超声波模块、QMC5883L电子罗盘、GPS_ATGM332D定位导航、OV2640图像识别等主要模块。
扫地机器人传感器简介
![扫地机器人传感器简介](https://img.taocdn.com/s3/m/d2ef5d34960590c69fc37649.png)
• 机械
B
1
扫地机器人有哪 些传感器?
我们知道扫地机器人的 工作原理是由微电脑控制 扫地机器人,对家居环境 进行自动导航并清扫。那 扫地机器人是如何知道自 己所处的家居环境的呢? 这就要依靠扫地机器人的 传感器了。传感器就像扫 地机器人的眼睛一样,将 自己感应到的数据传输给 微电脑,再有微电脑来控 制扫地机器人应该怎么做。
B
9
轮速计
• 扫地机器人的轮速计精确记录轮子旋转的圈数,乘以轮子的周长,从而计 算扫地机器人在工作时行进的里程,保障扫地机器人能精准的计算出自己 在室内的位置变化。
回充传感器
• 扫地机器人的回充传感器位于扫地机器人正前方,由4组红外接收器组成,可以精准 锁定充电座指引信号,大幅度提升回充效率。扫地机器人所带电池容量有限,所以 就需要在电量低时自动返回充电基座进行充电再返回原位置继续打扫。当电量低于 限定值时,控制器会向红外线发射器发送信号,红外线发射器向四周发射红外线。 充电基座安装有红外线传感器,感受到来自扫地机器人发射来的红外线后,会向扫 地机器人发射红外线。扫地机器人内部的红外线传感器接收到后会向控制器发送信 号,控制器就会控制扫地机器人按照接受到红外线的方向找到充电基座,并自动返 回进行充电。
B
4
防过热传感器
• 为了防止扫地机器人持续工作导致电机过热,从 而导致电路的烧毁,在扫地机器人电路板上安装 两个温度传感器。当扫地机器人工作一段时间电 机温度达到一定限度后一个温度传感器发送信号 给控制器,控制器再控制扫地机器人停止工作, 并运行散热风扇进行散热。当温度降到一定程度 后,另一个温度传感器发送信号给控制器,控制 器在控制扫地机器人继续工作。
B
2
LDS激光雷达
Honeywell HMR3000三轴数字罗盘 磁阻传感器 说明书
![Honeywell HMR3000三轴数字罗盘 磁阻传感器 说明书](https://img.taocdn.com/s3/m/b3d6f1918662caaedd3383c4bb4cf7ec4afeb627.png)
电子罗盘模块按照NMEA格式,通过RS232/485串口提供航向输出(横滚、俯仰、偏航)采用Honeywell公司的固态磁阻传感器,具有快速的响应时间至20Hz,航向精度为0.5˚ ,分辨率为0.1˚。
快速响应时间小体积低功耗高精度宽的倾斜角度对铁磁物性金属进行补偿使用固态磁传感器提高了响应速度,和万向架固定式的磁通门传感器相比提高了数据更新速度。
仅为一块线路板,重量小于57克,体积为83x25x22mm,铝外壳封装。
功耗小于25mA,可长时间电池供电0.5˚ 航向精度,分辨率0.1˚ ,可适用于严格定向的应用场合。
倾斜角度为±40˚ ,适合于广泛的要求精确的应用通过对因环境中存在铁磁性金属而对地磁场造成的扭曲的补偿,提高精度。
下表显示,9针插头引脚排列,电源可以为调制的5V ,或不调制6—15V ,只有#9针或#8针中的一个,可由给定连接方法连接。
见以下:接口信号描述通信HMR3000 用简单的ASCII 字符与外部主控制器,通过 RS-232 或 RS-485 通讯。
ASCll 码的发送和接收,使用1个起始位,8个数据位(先是LSB,MSB 总为0) ,无奇偶位,和一个停止位,波特率可设置为1200,2400,4800,9600,19200或38400,HMR3000 对所有收到的带校验码的有效输入作反应。
罗盘输出HMR3000输出三种NMEA 标准格式(HDG,HDT 和XDR),三种专用格式(HPR,RCD 和CCD),及一个 ASCll 码航向输出,用于数据显示。
HDG,HDT 和HPR 是最通用格式。
$HCHDG 航向、偏差角、磁偏角$HCHDG, 85.5, 0.0, E, 0.0, E*77$HCHDT,航向、对(True)$HCHDT,271.1,T*2C$PTNTHPR,航向、俯仰和横滚$PTNTHPR,Heading,Heading Status,Pitch,Pitch Status,Roll,Roll Status*hh<cr><lf>$PTNTHPR,85.9,N,-0.9,N,0.8,N*2C名称TxD/B RxD/A GND 6-15V 5VOper/Calib(2)Run/Stop(2)Ready/Sleep(2)Cont/Reset(2)入/出Out In In In In In In In In引脚235981647描述RS-232 发送/ RS-485RS-232 接收 / RS-485电源/信号地未调理的电源电压输入调理的电源电压输入Operate/Calibrate (3) input (open=Operate)Run/Stop (3) input (open=Run)Ready/Sleep (3) input(open=Ready)Continue/Reset (3) input (open=Continue)(典型值)---6-155 ± 5%0-50-50-50-5(最小值)(1)-18-1800-20-20-20-20单位Vdc VdcVdc Vdc Vdc Vdc Vdc Vdc(最大值)(1)1818307.520202014(1) 绝对最大值(2) 沉电流:200µA (典型值), 400mA(最大值)(3) 开路输入 =高电平HMR3000 连线图——计算机RS232 到 HMR3000订货指南HMR3000-Demo-232*.....RS232HMR3000-D00-232..........RS232.........NoneHMR3000-D21-232..........RS232.........Extended BaseHMR3000-D00-485..........RS485.........NoneHMR3000-D21-485..........RS485.........Extended Base*Development Kit includes one module in alu minum enclosure, cablingwith power supply, demonstration software for PC running Windows™and User’s Manual.数值<0.5˚<1.5˚± 0.3˚0.1˚degrees/mils ±40˚±0.4˚±0.6˚±0.2˚0.1˚degree/mils ±1.0 Gauss (最大值)1 mGauss 5.0 Vdc 调理电压6~15Vdc 未调理电压35 mA@6 Vdc13 mA 2.0 mA RS-232RS-4851200 to 38400 bps NMEA 0183连续滤波0.75 oz (22g)3.25 oz (92g)1.2 x 2.95 x 0.7601.5 x 4.2 x 0.88-20 to 70˚C -35 to 100˚C 30 英寸高落下20~2000Hz Random 2 hrs/axisIPC6012IPC610航向角俯仰和横滚磁场电气接口物理环境制造指标1. 航向精度是假设地球磁体只有硬铁干扰,已通过标定进行补偿2. 标定值3. 由设计参数保证4. 典型5. 迟到或超过*器件方向角不超过75˚在工作或贮存时——可引起短暂的精度损失。
电子罗盘模块使用手册 CMPS04-I2C.
![电子罗盘模块使用手册 CMPS04-I2C.](https://img.taocdn.com/s3/m/7bc30613f242336c1fb95e4e.png)
CMPS04-I2C 电子罗盘模块
电子罗盘模块使用手册 CMPS04-I2C
/
概述:CMPS04-I2C 是一款高性能平面数字罗盘模块,其工作原理是通过磁阻传感器感应地球磁场的磁分 量,从而得出方位角度。该罗盘以 I2C 方式与上位进行通信。CMPS04 模块相当于一个 AT24C02 的存储器
校准的方法:
当罗盘周围磁场改变后,罗盘计算输出的角度信息将不准确,这时要对罗盘进行校准,以此对罗盘周 围磁场改变所产生的影响进行校正。方法:将罗盘水平放置发送 0x51 到命令寄存器之后均匀缓慢的旋转两 周,不可以太快,旋转一周时间应该不小于 1 分钟,一般 1 分钟旋转一周,(可以绕自身的中轴旋转,也可 以绕平面内一点作圆周运动),然后发送 0x52 到命令寄存器结束校准。
(2)电子罗盘的干扰信号 电子罗盘在稳定的磁环境下补偿适中的偏差,但是它不能补偿改变的磁干扰。比如,带直流电的电线产 生磁场,如果直流电改变,磁场大小也将改变。电源也一个变化的干扰源。 电子罗盘是消除不了变化的磁 环境干扰。
(3)电子罗盘的测量精度 国外号称是世界上精度最高的电子罗盘(C100),价格是大概 795 美元,它的航向精度能达到 0.5 度
改变目前 0xE0 设备地址( 默认出厂地址)到 0xE8,请按正确的顺序写入命令字符( 0xA0,0xAA,0xA5,0xE8 )。
这些命令必须发送正确的顺序才改变 I2C 地址,写入这个命令之间不能有其它的操作命令字符。 该命令字
符序列必须发送到命令寄存器的位置。操作完成后,你应该标签 IIC 地址,如果你忘了修改后的 IIC 地址,
你可以看发光二极管的闪烁状态。IIC 地址会在 LED 输出显示。 LED 长闪烁后就是一个 IIC 地址指示,较
盛瑟传感电子罗盘磁场传感器模块SM07-DC说明书
![盛瑟传感电子罗盘磁场传感器模块SM07-DC说明书](https://img.taocdn.com/s3/m/3988b981ba4cf7ec4afe04a1b0717fd5370cb250.png)
电子罗盘磁场传感器模块(型号:SM07-DC)使用说明书版本号:1.1实施日期:2021.9.22电话:邮箱:网址:https://声明本说明书版权属成都盛瑟传感技术有限公司(以下称本公司)所有,未经书面许可,本说明书任何部分不得复制、翻译、存储于数据库或检索系统内,也不可以电子、翻拍、录音等任何手段进行传播。
感谢您使用盛瑟传感的系列产品。
为使您更好地使用本公司产品,减少因使用不当造成的产品故障,使用前请务必仔细阅读本说明书并按照所建议的使用方法进行使用。
如果您不依照本说明书使用或擅自去除、拆解、更换传感器内部组件,本公司不承担由此造成的任何损失。
您所购买产品的颜色、款式及尺寸以实物为准。
本公司秉承科技进步的理念,不断致力于产品改进和技术创新。
因此,本公司保留任何产品改进而不预先通知的权力。
使用本说明书时,请确认其属于有效版本。
同时,本公司鼓励使用者根据其使用情况,探讨本产品更优化的使用方法。
请妥善保管本说明书,以便在您日后需要时能及时查阅并获得帮助。
成都盛瑟传感技术有限公司电话:************邮箱:****************网址:https://电话:************邮箱:****************网址:https://一、产品描述模块内部自带电压稳定电路,工作电压3.3V-5V,引脚电平兼容3.3V/5V的嵌入式系统,连接方便。
支持串口、IIC两种数字接口,IIC是直接连接芯片,方便用户选择最佳的开发连接方式。
串口可输出由磁场解析的航向角度,最高100Hz数据输出速率。
输出速率0.1~100Hz可调节。
2层PCB板工艺,更薄、更小、更可靠。
输出两种模式:串口模式、IIC模式。
电话:************邮箱:****************网址:https://二、性能参数产品型号SM07-DC 传感器类型半导体系列供电电压DC 3.3V~5V/建议+5V供电工作电流小于6毫安模块体积15.24mm *15.24mm *7.8mm 焊盘间距上下100mil(2.54mm)左右600mil(15.24mm)测量内容三轴的磁场和角度通信方式IIC通信和串口通信通信速率9600回传速率0.1-100HZ可调节灵敏度3000LSB/Gauss 量程-8Gauss ~+8Gauss三、引脚说明四、硬件连接电子罗盘磁场传感器模块与计算机连接通信,需要USB转TTL电平的串口模块。
基于STM32的电子罗盘设计
![基于STM32的电子罗盘设计](https://img.taocdn.com/s3/m/d53190a0294ac850ad02de80d4d8d15abe2300a6.png)
7+ 10 uF
IC3 NCP1400ASN30T1G
D3 IN5819(4148)
3.3 V +
4 47 uF
图 2 电源升压电路图
2.2 HMC5883 磁阻传感器电路设计
HMC5883 磁 阻 传 感 器 接口电 路 如 图 3 所 示。 图 3 中
HMC5883 为数字接口双轴磁阻传感器,该传感器内置 ASIC 放大器,12 位 A/D 转换器,I2C 总线输出 [3]。R1、R2 为上拉电阻, DRDY 为数据准备好中断控制口,接控制器中断输入口。电容
采用数字磁阻传感 器、 双 轴 加 速 度传 感 器,处理器采用 ST M 32 F103R ET6 单片机,具 有电 路 结 构简单、集成度 高、 抗干扰能力强 等 优 点。 正常工作 时 耗电非常低, 同 时硬件成本低、 功
52 51 50
PC11 PC10 PA15
PB4 PB3 PD2 PC12
中图分类号:TP39
文献标识码:A
文章编号:2095-1302(2015)12-0008-02
0引言 GPS 在导航定位、测速方面具有广泛的应用,但在高楼
密集的城区和偏远地带,GPS 信号受到阻挡,信号精度降低, 因而 GPS 设备不能很好的将信号回馈到卫星 [1]。针对这一问 题,可以采用电子罗盘和 GPS 组成导航定向,电子罗盘可以 对 GPS 进行有效的补偿 [2]。同时,随着科技的发展,电子罗 盘也可以安装在汽车或者轮船上,当驶入到信号较差的地方 时,数字电子罗盘可以起到很大的作用。
GND
VCC 3.3
图 5 单片机最小系统原理图电路
VCC 3.3 GND RX3
TX3 GND
电子罗盘模块1600
![电子罗盘模块1600](https://img.taocdn.com/s3/m/57d28c3b0912a216147929b9.png)
航纬香港有限公司磁场传感器&解决方案NAVI1600 姿态数字磁场罗盘模块NavHKNAVI1600姿态数字磁场罗盘模块是具备集成三轴陀螺来修正磁场偏差的姿态导航数字模块。
三轴磁阻,三轴MEMS重力加速度以及三轴MEMS陀螺仪传感器组合以在三维空间中能够在不依赖其它数据信号的情况下提供精确的航向和翻滚俯仰角度数据。
该模块是一款超小体积,高精度,高性能捷联惯性测量系统.性能优势高精度罗盘倾斜角度补偿,陀螺校准修正数据更新频率高达100Hz 超小体积20*21*3mm磁场偏差补偿校准-20℃-+85℃温度工作范围 串口数据通信接口+5V直流电源供电 电源管理0.5度航向精度,最小分辨率0.1度±85度俯仰角和翻滚角度量程,精度能达到0.3度 重量轻仅有0.9 克用户可自定义坐标平面低功耗:正常工作最大电流仅为60mA标准参数规格1.1. 航向参数1.2. 姿态参数1.3. 角速度参数1.4. 加速度参数1.5. 磁场参数1.6. 电气性能参数1.7物理指标电路描述NAVI1600由高精度三轴陀螺传感器、三轴加速度传感器和三轴磁场传感器连接上32位ARM处理器而成,通过32Bit的MCU分别采集来自磁阻传感器以及MEMS重力加速度传感器和MEMS 陀螺仪传感器的数据,实现空间3D航向角度计算,同时通过陀螺仪数据的采集修正MEMS重力加速的分量误差,从而实现计算输出高精度的俯仰翻滚角度。
通过MCU以及MAX232转换电平控制,将输出的TTL电平转换工业可控制的RS232以及RS485电平通信,从而实现简便电路应用处理.对于有需要增加气压传感器的客户,可以考虑选择NAVI1600B 产品,从而在实现Heading,Pitch,Roll角度数据上,再增加输出高度数据.NAVI1600订购须知更多信息可访问或联系86-755-88300656。
本应用电路构成典型的使用和界面。
NAVHK不保证或承担客户根据本描述中电路设计会出现情形的责任。
电子罗盘模块
![电子罗盘模块](https://img.taocdn.com/s3/m/537bc22176eeaeaad0f3307d.png)
电子罗盘模块1、概述电子罗盘模块可以检测周围的磁场强度,可应用于使运动的装置或设备转动到指定的方向等,比如安装在小车上,可以控制小车转动到指定方向或沿着指定方向行走。
模块上具有用于校准的按键和指示灯,当模块周围的机械结构或模块的安装位置(方向)发生改变时,用户可以通过下载Makeblock提供的程序并操作按键来进行校准,以使得模块在新的环境下能准确测量出角度值。
这也是本模块相比于其他商家同类型产品的优势之一。
该本模块接口是白色色标,说明是I2C通信模式,需要连接到主板上带有白色标识接口。
2、技术规格●工作电压:5V DC●分辨率:5 mil gauss●磁场动态范围:±1到±8 gauss●电子罗盘精度:可精确到1°到2°●信号模式:I2C通信●工作温度:-30到85℃●模块尺寸:52 x 24 x 18 mm (长x宽x高)3、功能特性●模块的白色区域是与金属梁接触的参考区域;●模块有两种工作模式:测量模式→蓝灯常亮,校准模式→蓝灯闪烁;●在通电后第一次使用模块时需要校准模块;●具有反接保护,电源反接不会损坏IC。
●支持Arduino IDE编程, 并且提供运行库来简化编程;●支持mBlock图形化编程,适合全年龄用户;●使用RJ25接口连线方便;●模块化安装,兼容乐高系列;●配有接头支持绝大多数Arduino系列主控板。
4、引脚定义电子罗盘模块有六个针脚的接头,每个针脚的功能如下表序号引脚功能1 GND 地线2 VCC 电源线3 SDA I2C数据接口4 SCL I2C时钟接口5 RDY 检测数据是否已采集6 KEY 检测校准按钮是否按下表 1 6-Pin 接口功能5、接线方式●RJ25连接由于电子罗盘模块接口是白色色标,当使用RJ25接口时,需要连接到主控板上带有白色色标的接口。
以Makeblock Orion为例,可以连接到3,4,6,7,8 号接口,如图图 1 电子罗盘模块与 Makeblock Orion连接●杜邦线连接当使用杜邦线连接到Arduino Uno主板时,模块SCL、SDA引脚需要连接到 I2C接口,即连接到A5、A4接口如下图所示:图 2 电子罗盘模块与 Arduino UNO 连接图注:接杜邦线时,模块上需要焊接排针。
电子罗盘基础知识及校准
![电子罗盘基础知识及校准](https://img.taocdn.com/s3/m/ca6bc3b2e2bd960591c67722.png)
无人机——磁力计/电子罗盘学习及校准电子罗盘是一种重要的导航工具,能实时提供移动物体的航向和姿态。
随着半导体工艺的进步和手机操作系统的发展,集成了越来越多传感器的智能手机变得功能强大,很多手机上都实现了电子罗盘的功能。
而基于电子罗盘的应用(如Android的Skymap)在各个软件平台上也流行起来。
要实现电子罗盘功能,需要一个检测磁场的三轴磁力传感器和一个三轴加速度传感器。
随着微机械工艺的成熟,意法半导体推出将三轴磁力计和三轴加速计集成在一个封装里的二合一传感器模块LSM303DLH,方便用户在短时间内设计出成本低、性能高的电子罗盘。
本文以LSM303DLH为例讨论该器件的工作原理、技术参数和电子罗盘的实现方法。
1.地磁场和航向角的背景知识如图1所示,地球的磁场象一个条形磁体一样由磁南极指向磁北极。
在磁极点处磁场和当地的水平面垂直,在赤道磁场和当地的水平面平行,所以在北半球磁场方向倾斜指向地面。
用来衡量磁感应强度大小的单位是Tesla或者Gauss(1Tesla=10000Gauss)。
随着地理位置的不同,通常地磁场的强度是0.4-0.6 Gauss。
需要注意的是,磁北极和地理上的北极并不重合,通常他们之间有11度左右的夹角。
图1 地磁场分布图地磁场是一个矢量,对于一个固定的地点来说,这个矢量可以被分解为两个与当地水平面平行的分量和一个与当地水平面垂直的分量。
如果保持电子罗盘和当地的水平面平行,那么罗盘中磁力计的三个轴就和这三个分量对应起来,如图2所示。
图2 地磁场矢量分解示意图实际上对水平方向的两个分量来说,他们的矢量和总是指向磁北的。
罗盘中的航向角(Azimuth)就是当前方向和磁北的夹角。
由于罗盘保持水平,只需要用磁力计水平方向两轴(通常为X轴和Y轴)的检测数据就可以用式1计算出航向角。
当罗盘水平旋转的时候,航向角在0?- 360?之间变化。
2.ST集成磁力计和加速计的传感器模块LSM303DLH2.1 磁力计工作原理在LSM303DLH中磁力计采用各向异性磁致电阻(Anisotropic Magneto-Resistance)材料来检测空间中磁感应强度的大小。
电子罗盘
![电子罗盘](https://img.taocdn.com/s3/m/9b8fb663011ca300a6c390cc.png)
电子罗盘主要分为磁通门、磁阻式和霍尔元件 三种。磁通门传感器是由一套环绕磁芯的线圈组成, 该磁芯配有励磁电路,能够提供低成本的磁场探测 方法,但它们体积偏大、易碎、响应时间慢。霍尔 效应磁传感器的优点是体积小,重量轻,功耗小, 价格便宜,接口电路简单,特别适用于强磁场的测 量。但是,它又有灵敏度低、噪声大、温 度性能 差等缺点。虽然有些高灵敏度或采取了聚磁措施霍 尔器件也能用于测 量地磁场,但一般都是用于要 求不高的场合。
模块设计
电子罗盘的设计框图如图1所示,可分为3大模块:传 感器模块、数据采集模块和MCU模块。系统 首先利用加 速度计敏感地球重力场中测量载体的姿态,然后通过姿 态坐标变换将磁阻传感器沿载体坐标的测量信号变换到 地平坐标系。在微处理器中进行实时姿态计算、坐标变 换,系统误差补偿,得到载体的姿态参数,将它们通过 串口在上位机实时输出。由于磁阻传感器的输出均为mv 级的电压信号,所以必须经过运算放大器放大后,才可 以送到A/D转换器进行模数转换。
磁阻传感器现在已经可以做成标准的集成芯片, 并且产品也形成了系列。而使用磁阻传感器的电 子罗盘克服了磁通门罗盘的不足,具有体积小、 重量轻、精度高、可靠性强、响应速度快等优点, 是未来电子罗盘的发展方向。
我们的设计
基于现状,本文我们采用磁阻传感器来设计电子磁 罗盘。设计电子磁罗盘的基本思路:首先考虑到三轴磁 阻传感器和加速度计的一些特性,我们采用HMC5883L三 轴磁阻传感器进行地球磁场矢量测量,加速度计 ADXl202敏感地球重力场中测量载体的姿态,然后通过 姿态坐标变换将磁阻传感器沿载体坐标的测量信号变换 到地平坐标系。其次我们将磁阻传感器的输出电压信号 进行放大,之后送到A/D转换器进行模数转换。在微处 理器中进行实时姿态计算、坐标变换,系统误差补偿, 得到载 体的姿态参数,将它们通过串口在上位机实时 输出。最后在微处理器中进行实时姿态计算、坐标变换,
TCM5技术手册
![TCM5技术手册](https://img.taocdn.com/s3/m/c66ba798680203d8ce2f2498.png)
[Calibration Tab]
所有的罗盘都可以在一个可以控制的环境中工作的很好,这种环境指的是周围的磁场只有地 磁场。然而,在大多数实际应用中,一个电子罗盘模块将被安放在一个系统中----像安在具 有很大的本地磁场源的车辆中,磁场源有:磁性金属底盘、变压器铁芯、电流,以及电机的 永磁铁等等。 通过执行用户校准工作,可使 TCM5 分离出那些本地磁场异常的主要来源,并随后在测量 用于计算罗盘航向的地磁场时把它们的影响消除。当你执行用户校准工作时,TCM5 获得一 系列磁场测量值。它分析这些全部的磁场测量值,是为了识别出哪些是由地磁场产生的分量, 是所需要的;哪些是由本地环境所产生的分量,是要去掉的。 做这项工作的最终目的是为了使 TCM5 得到在其安装位置由主系统产生的静态三维磁场矢 量的精确测量值。随后在实时野外测量时加以去除,以得到地磁场矢量的合量。 TCM5 的三轴磁强计和三轴倾斜计系统配置使你的主要受益是在于它在全部可用倾斜范围 内、所有方向上对硬铁影响作补偿。我们要强调指出,为了精确地校准,TCM5 必须在当时 安装在主系统的位置上测量由主系统所产生的本地场矢量。因为 TCM5 的磁强计是捷联式 的,或对于主系统是固定的,当主系统的姿态改变时,这个本地磁场不会改变,允许 TCM5 在所有俯仰和翻滚方向中作精确地补偿。而对于常平架式的磁通门而言,是不能在不水平的 状态下提供校准的,因为它的磁强计是常平的,当姿态变化时,它就改变了相对于主系统的 位置,那时就会有一个与校准时测量的所不同的本地磁场畸变。
获得参数: 模式: Poll 模式:选择此模式,可作连续输出,时间选择 0 表示实时输出。 Push:采样模式,time 为采样时间间隔。
无人机——磁力计电子罗盘学习及校准
![无人机——磁力计电子罗盘学习及校准](https://img.taocdn.com/s3/m/e9b065d3b307e87100f6962d.png)
无人机——磁力计/电子罗盘学习及校准电子罗盘是一种重要的导航工具,能实时提供移动物体的航向和姿态。随着半导体工艺的进步和手机操作系统的发展,集成了越来越多传感器的智能手机变得功能强大,很多手机上都实现了电子罗盘的功能。而基于电子罗盘的应用(如Android的Skymap)在各个软件平台上也流行起来。要实现电子罗盘功能,需要一个检测磁场的三轴磁力传感器和一个三轴加速度传感器。随着微机械工艺的成熟,意法半导体推出将三轴磁力计和三轴加速计集成在一个封装里的二合一传感器模块LSM303DLH,方便用户在短时间内设计出成本低、性能高的电子罗盘。本文以LSM303DLH为例讨论该器件的工作原理、技术参数和电子罗盘的实现方法。1.地磁场和航向角的背景知识如图1所示,地球的磁场象一个条形磁体一样由磁南极指向磁北极。在磁极点处磁场和当地的水平面垂直,在赤道磁场和当地的水平面平行,所以在北半球磁场方向倾斜指向地面。用来衡量磁感应强度大小的单位是Tesla或者Gauss(1Tesla=10000Gauss)。随着地理位置的不同,通常地磁场的强度是0.4-0.6 Gauss。需要注意的是,磁北极和地理上的北极并不重合,通常他们之间有11度左右的夹角。图1 地磁场分布图地磁场是一个矢量,对于一个固定的地点来说,这个矢量可以被分解为两个与当地水平面平行的分量和一个与当地水平面垂直的分量。如果保持电子罗盘和当地的水平面平行,那么罗盘中磁力计的三个轴就和这三个分量对应起来,如图2所示。图2 地磁场矢量分解示意图实际上对水平方向的两个分量来说,他们的矢量和总是指向磁北的。罗盘中的航向角(Azimuth)就是当前方向和磁北的夹角。由于罗盘保持水平,只需要用磁力计水平方向两轴(通常为X轴和Y轴)的检测数据就可以用式1计算出航向角。当罗盘水平旋转的时候,航向角在0?- 360?之间变化。2.ST集成磁力计和加速计的传感器模块LSM303DLH2.1 磁力计工作原理在LSM303DLH中磁力计采用各向异性磁致电阻(Anisotropic Magneto-Resistance)材料来检测空间中磁感应强度的大小。这种具有晶体结构的合金材料对外界的磁场很敏感,磁场的强弱变化会导致AMR自身电阻值发生变化。在制造过程中,将一个强磁场加在AMR上使其在某一方向上磁化,建立起一个主磁域,与主磁域垂直的轴被称为该AMR的敏感轴,如图3所示。为了使测量结果以线性的方式变化,AMR材料上的金属导线呈45º角倾斜排列,电流从这些导线上流过,如图4所示。由初始的强磁场在AMR材料上建立起来的主磁域和电流的方向有45º的夹角。图3 AMR材料示意图图4 45º角排列的导线当有外界磁场Ha时,AMR上主磁域方向就会发生变化而不再是初始的方向了,那么磁场方向和电流的夹角θ也会发生变化,如图5所示。对于AMR材料来说,θ角的变化会引起AMR自身阻值的变化,并且呈线性关系,如图6所示。图5 磁场方向和电流方向的夹角图6 θ-R特性曲线ST利用惠斯通电桥检测AMR阻值的变化,如图7所示。R1/R2/R3/R4是初始状态相同的AMR电阻,但是R1/R2和R3/R4具有相反的磁化特性。当检测到外界磁场的时候,R1/R2阻值增加∆R而R3/R4减少∆R。这样在没有外界磁场的情况下,电桥的输出为零;而在有外界磁场时电桥的输出为一个微小的电压∆V。图7 惠斯通电桥当R1=R2=R3=R4=R,在外界磁场的作用下电阻变化为∆R时,电桥输出?V正比于?R。这就是磁力计的工作原理。2.2 置位/复位(Set/Reset)电路由于受到外界环境的影响,LSM303DLH中AMR上的主磁域方向不会永久保持不变。LSM303DLH内置有置位/复位电路,通过内部的金属线圈周期性的产生电流脉冲,恢复初始的主磁域,如图8所示。需要注意的是,置位脉冲和复位脉冲产生的效果是一样的,只是方向不同而已。图8 LSM303DLH置位/复位电路置位/复位电路给LSM303DLH带来很多优点:1) 即使遇到外界强磁场的干扰,在干扰消失后LSM303DLH也能恢复正常工作而不需要用户再次进行校正。2) 即使长时间工作也能保持初始磁化方向实现精确测量,不会因为芯片温度变化或内部噪音增大而影响测量精度。3) 消除由于温漂引起的电桥偏差。2.3 LSM303DLH的性能参数LSM303DLH集成三轴磁力计和三轴加速计,采用数字接口。磁力计的测量范围从1.3 Gauss到8.1 Gauss共分7档,用户可以自由选择。并且在20 Gauss以内的磁场环境下都能够保持一致的测量效果和相同的敏感度。它的分辨率可以达到8 mGauss并且内部采用12位ADC,以保证对磁场强度的精确测量。和采用霍尔效应原理的磁力计相比,LSM303DLH的功耗低,精度高,线性度好,并且不需要温度补偿。LSM303DLH具有自动检测功能。当控制寄存器A被置位时,芯片内部的自测电路会产生一个约为地磁场大小的激励信号并输出。用户可以通过输出数据来判断芯片是否正常工作。作为高集成度的传感器模组,除了磁力计以外LSM303DLH还集成一颗高性能的加速计。加速计同样采用12位ADC,可以达到1mg的测量精度。加速计可运行于低功耗模式,并有睡眠/唤醒功能,可大大降低功耗。同时,加速计还集成了6轴方向检测,两路可编程中断接口。3. ST电子罗盘方案介绍一个传统的电子罗盘系统至少需要一个三轴的磁力计以测量磁场数据,一个三轴加速计以测量罗盘倾角,通过信号条理和数据采集部分将三维空间中的重力分布和磁场数据传送给处理器。处理器通过磁场数据计算出方位角,通过重力数据进行倾斜补偿。这样处理后输出的方位角不受电子罗盘空间姿态的影响,如图9所示。图9 电子罗盘结构示意图LSM303DLH将上述的加速计、磁力计、A/D转化器及信号条理电路集成在一起,仍然通过I2C总线和处理器通信。这样只用一颗芯片就实现了6轴的数据检测和输出,降低了客户的设计难度,减小了PCB板的占用面积,降低了器件成本。LSM303DLH的典型应用如图10所示。它需要的周边器件很少,连接也很简单,磁力计和加速计各自有一条I2C总线和处理器通信。如果客户的I/O接口电平为1.8V,Vdd_dig_M、Vdd_IO_A和Vdd_I2C_Bus 均可接1.8V供电,Vdd使用2.5V以上供电即可;如果客户接口电平为2.6V,除了Vdd_dig_M要求1.8V以外,其他皆可以用2.6V。在上文中提到,LSM303DLH需要置位/复位电路以维持AMR的主磁域。C1和C2为置位/复位电路的外部匹配电容,由于对置位脉冲和复位脉冲有一定的要求,建议用户不要随意修改C1和C2的大小。图10 LSM303DLH典型应用电路图对于便携式设备而言,器件的功耗非常重要,直接影响其待机的时间。LSM303DLH可以分别对磁力计和加速计的供电模式进行控制,使其进入睡眠或低功耗模式。并且用户可自行调整磁力计和加速计的数据更新频率,以调整功耗水平。在磁力计数据更新频率为7.5Hz、加速计数据更新频率为50Hz时,消耗电流典型值为0.83mA。在待机模式时,消耗电流小于3uA。4. 铁磁场干扰及校准电子指南针主要是通过感知地球磁场的存在来计算磁北极的方向。然而由于地球磁场在一般情况下只有微弱的0.5高斯,而一个普通的手机喇叭当相距2厘米时仍会有大约4高斯的磁场,一个手机马达在相距2厘米时会有大约6高斯的磁场,这一特点使得针对电子设备表面地球磁场的测量很容易受到电子设备本身的干扰。磁场干扰是指由于具有磁性物质或者可以影响局部磁场强度的物质存在,使得磁传感器所放置位置上的地球磁场发生了偏差。如图11所示,在磁传感器的XYZ 坐标系中,绿色的圆表示地球磁场矢量绕z 轴圆周转动过程中在XY平面内的投影轨迹,再没有外界任何磁场干扰的情况下,此轨迹将会是一个标准的以O(0,0)为中心的圆。当存在外界磁场干扰的情况时,测量得到的磁场强度矢量α将为该点地球磁场β与干扰磁场γ的矢量和。记作:图11 磁传感器XY坐标以及磁力线投影轨迹一般可以认为,干扰磁场γ在该点可以视为一个恒定的矢量。有很多因素可以造成磁场的干扰,如摆放在电路板上的马达和喇叭,还有含有铁镍钴等金属的材料如屏蔽罩,螺丝,电阻, LCD背板以及外壳等等。同样根据安培定律有电流通过的导线也会产生磁场,如图12。图12 电流对磁场产生的影响为了校准这些来自电路板的磁场干扰,主要的工作就是通过计算将γ求出。4.1 平面校准方法针对XY轴的校准,将配备有磁传感器的设备在XY平面内自转,如图11,等价于将地球磁场矢量绕着过点O(γx,γy)垂直于XY平面的法线旋转, 而红色的圆为磁场矢量在旋转过程中在XY平面内投影的轨迹。这可以找到圆心的位置为((Xmax + Xmin)/2, (Ymax + Ymin)/2). 同样将设备在XZ平面内旋转可以得到地球磁场在XZ平面上的轨迹圆,这可以求出三维空间中的磁场干扰矢量γ(γx, γy, γz).4.2 立体8字校准方法一般情况下,当带有传感器的设备在空中各个方向旋转时,测量值组成的空间几何结构实际上是一个圆球,所有的采样点都落在这个球的表面上,如图13所示,这一点同两维平面内投影得到的圆类似。图13 地球磁场空间旋转后在传感器空间坐标内得到球体这种情况下,可以通过足够的样本点求出圆心O(γx, γy, γz), 即固定磁场干扰矢量的大小及方向。公式如下:8字校准法要求用户使用需要校准的设备在空中做8字晃动,原则上尽量多的让设备法线方向指向空间的所有8个象限,如图14所示。图14 设备的空中8字校准示意图4.2 十面校准方法同样,通过以下10面校准方法,也可以达到校准的目的。图15 10面交准法步骤如图16所示,经过10面校准方法之后,同样可以采样到以上所述球体表面的部分轨迹,从而推导出球心的位置,即固定磁场干扰矢量的大小及方向。图16 10面校准后的空间轨迹5.倾斜补偿及航偏角计算经过校准后电子指南针在水平面上已经可以正常使用了。但是更多的时候手机并不是保持水平的,通常它和水平面都有一个夹角。这个夹角会影响航向角的精度,需要通过加速度传感器进行倾斜补偿。对于一个物体在空中的姿态,导航系统里早已有定义,如图17所示,Android中也采用了这个定义。Pitch(Φ)定义为x轴和水平面的夹角,图示方向为正方向;Roll(θ)定义为y轴和水平面的夹角,图示方向为正方向。由Pitch角引起的航向角的误差如图18所示。可以看出,在x轴方向10度的倾斜角就可以引起航向角最大7-8度的误差。图17 Pitch角和Roll角定义图18 Pitch角引起的航向角误差手机在空中的倾斜姿态如图19所示,通过3轴加速度传感器检测出三个轴上重力加速度的分量,再通过式2可以计算出Pitch和Roll。图19 手机在空中的倾斜姿态式3可以将磁力计测得的三轴数据(XM,YM ,ZM)通过Pitch和Roll 转化为式1中计算航向角需要的Hy和Hx。之后再利用式1计算出航向角。6.Android平台指南针的实现在当前流行的android 手机中,很多都配备有指南针的功能。为了实现这一功能,只需要配备有ST提供的二合一传感模块LSM303DLH,ST 提供整套解决方案。Android中的软件实现可以由以下框图表示:其中包括:BSP ReferenceLinux Kernel Driver (LSM303DLH_ACC + LSM303DLH_MAG)HAL Library(Sensors_lsm303dlh + Liblsm303DLH) for sensors.default.so经过library 的计算,上层的应用可以很轻松的运用由Android定义由Library提供的航偏角信息进行应用程序的编写。。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
电子罗盘模块
1、概述
电子罗盘模块可以检测周围的磁场强度,可应用于使运动的装置或设备转动到指定的方向等,比如安装在小车上,可以控制小车转动到指定方向或沿着指定方向行走。
模块上具有用于校准的按键和指示灯,当模块周围的机械结构或模块的安装位置(方向)发生改变时,用户可以通过下载Makeblock提供的程序并操作按键来进行校准,以使得模块在新的环境下能准确测量出角度值。
这也是本模块相比于其他商家同类型产品的优势之一。
该本模块接口是白色色标,说明是I2C通信模式,需要连接到主板上带有白色标识接口。
2、技术规格
●工作电压:5V DC
●分辨率:5 mil gauss
●磁场动态范围:±1到±8 gauss
●电子罗盘精度:可精确到1°到2°
●信号模式:I2C通信
●工作温度:-30到85℃
●模块尺寸:52 x 24 x 18 mm (长x宽x高)
3、功能特性
●模块的白色区域是与金属梁接触的参考区域;
●模块有两种工作模式:测量模式→蓝灯常亮,校准模式→蓝灯闪烁;
●在通电后第一次使用模块时需要校准模块;
●具有反接保护,电源反接不会损坏IC。
●支持Arduino IDE编程, 并且提供运行库来简化编程;
●支持mBlock图形化编程,适合全年龄用户;
●使用RJ25接口连线方便;
●模块化安装,兼容乐高系列;
●配有接头支持绝大多数Arduino系列主控板。
4、引脚定义
电子罗盘模块有六个针脚的接头,每个针脚的功能如下表
序号引脚功能
1 GND 地线
2 VCC 电源线
3 SDA I2C数据接口
4 SCL I2C时钟接口
5 RDY 检测数据是否已采集
6 KEY 检测校准按钮是否按下
表 1 6-Pin 接口功能
5、接线方式
●RJ25连接
由于电子罗盘模块接口是白色色标,当使用RJ25接口时,需要连接到主控板上带有白色色标的接口。
以Makeblock Orion为例,可以连接到3,4,6,7,8 号接口,如图
图 1 电子罗盘模块与 Makeblock Orion连接
●杜邦线连接
当使用杜邦线连接到Arduino Uno主板时,模块SCL、SDA引脚需要连接到 I2C接口,即连接到A5、A4接口如下图所示:
图 2 电子罗盘模块与 Arduino UNO 连接图
注:接杜邦线时,模块上需要焊接排针。
6、编程指南
Arduino编程
如果使用Arduino编程,需要调用库Makeblock-Library-master来控制电子罗盘模块本程序通过Arduino编程
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22 #include"MeOrion.h"
#include<Wire.h>
#include<SoftwareSerial.h>
MeCompass myCompass(PORT_4);
#define LED_PIN 13
void setup()
{
Serial.begin(9600);
Serial.println("Initializing I2C devices...");
myCompass.init();
Serial.println("Testing device connections...");
Serial.println(myCompass.testConnection() ? "HMC5883L connection successful": "HMC5883L connection failed");
}
void loop()
{
int16_t head_X, head_Y, head_Z;
double angle_number = 0;
angle_number = myCompass.getAngle();
Serial.println(angle_number, 1);
delay(500);
}
电子罗盘模块函数功能列表
函数功能
void init(void) 电子罗盘初始化函数
bool testConnection(void) 模块连接检测函数
double getAngle(void) 获取角度测量值
int16_t getHeadingX(void) 获取X轴磁场测量值
int16_t getHeadingY(void) 获取Y轴磁场测量值
int16_t getHeadingZ(void) 获取Z轴磁场测量值
void getHeading(int16_t *x, int16_t *y, int16_t *z) 同时获取X、Y、Z轴磁场测量值 mBlock编程
6、注意事项
电子罗盘模块对其周围磁场的变化比较敏感。
模块周围的机械结构发生变化或改变模块
的方向,都有可能使模块周围的磁场发生改变,从而使模块的测量结果有不同程度的偏差。
这时,需要对模块进行校准一下,使得模块在当前的环境能够准确的测量出角度值。
模块的校准流程如下:
(1)将模块正确连接到Makeblock主控板,接通电源,并下载我们提供的任意一个电
子罗盘的例程;
(2)按住模块上的按键不放,直到模块上的蓝色指示灯不断地闪烁后,才松开按键;
(3)在蓝色指示灯闪烁的过程中,将模块(连同与其连接的机械结构)在你需要应用
电子罗盘的平面上旋转一周以上,最好能比较平稳地旋转;
(4)完成旋转操作后,再按一下模块上的按键退出校准流程,模块上的蓝色指示灯保
持常亮;
备注:
模块有两种工作模式:测量模式→蓝灯常亮,校准模式→蓝灯闪烁;
若模块在当前环境下校准过一次,断电重启后不需要再校准;
模块在不需要校准的情况下,请不要按模块上的按键,否则会使之前的校准操作无效;
在校准过程中,须将模块(连同与其连接的机械结构)旋转一周以上,否则会校准无效。
7、原理解析
传统指南针用一根被磁化的磁针来感应地球磁场,地球磁场与磁针之间的磁力时磁针转动,直至磁针的两端分别指向地球的磁南极与磁北极。
电子罗盘也一样,只不过把磁针换成了磁阻传感器,然后将感受到的地磁信息转换为数字信号输出给用户使用。
三轴电子罗盘由三轴磁阻传感器、双轴倾角传感器和MCU构成。
三轴磁阻传感器用来测量地球磁场,倾角传感器是在磁力仪非水平状态时进行补偿;MCU处理磁力仪和倾角传感器的信号以及数据输出和软铁、硬铁补偿。
三个互相垂直的磁阻传感器,每个轴向上的传感器检测在该方向上的地磁场强度。
传感器产生的模拟输出信号进行放大后送入MCU进行处理。
8、相关链接
应用案例及原理图:
/forum-42-1.html。