电子罗盘模块使用手册 CMPS04-I2C.

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

2010-04-25
4/8
新动力电子
CMPS04-I2C 电子罗盘模块
http://shop58691278.taobao.com/
的磁偏角是 5℃,此时相对于地理北极的航向就是 60℃+5℃=65℃。
校准:
也叫硬铁补偿,所有的电子罗盘在使用前都要进行校准。一旦罗盘周围硬铁环境发生变化,也会使罗盘 周围固有的磁场环境发生变化。此时罗盘计算输出的角度信息将不准确,为消除周围固有磁场变化带来的 影响,就要对罗盘进行校准。
磁偏角计算公式: 180℃>磁偏角>0℃ = 磁偏角; -180℃<磁偏角<0℃ = (360℃- 磁偏角);
3、检查校准质量等级。 输出一个 HEX 数据,它是一个 0 到 9 范围内的数字,0 是校准最差结果,
9 代表校准已经达到最佳状态。如果这个值小于等于 7,为了达到理想的精度建议重新校准罗盘。
校准的方法:
当罗盘周围磁场改变后,罗盘计算输出的角度信息将不准确,这时要对罗盘进行校准,以此对罗盘周 围磁场改变所产生的影响进行校正。方法:将罗盘水平放置发送 0x51 到命令寄存器之后均匀缓慢的旋转两 周,不可以太快,旋转一周时间应该不小于 1 分钟,一般 1 分钟旋转一周,(可以绕自身的中轴旋转,也可 以绕平面内一点作圆周运动),然后发送 0x52 到命令寄存器结束校准。
命令字符 (HEX) 0x51
校准功能 0x52
设置地址 设置地址 设置地址
0xA0 0xA5 0xAA
含义
校准开始。罗盘模块开始搜索周围的磁场强度。 具体说明请看后面术语说明(校准的方法) (罗盘上的 LED 会点亮,直到校准结束) 校准结束。(罗盘模块存放周围的磁场强度数据,这样就可以输出更准确 的角度数据)。 1st 按顺序改变 I2C 地址;恢复出厂前校准设置。 3rd 按顺序改变 I2C 地址;恢复出厂前校准设置。 2nd 按顺序改变 I2C 地址;恢复出厂前校准设置。
2010-04-25
2/8
新动力电子
CMPS04-I2C 电子罗盘模块
http://shop58691278.taobao.com/
4.5、更改 I2C 总线地址
命令字符 1
命令字符 2
命令字符 3
IIC 的新地址
0xA0
0xAA
0xA5
0xE8
更改 I2C 地址时,总线中只能连接一个 I2C 设备。按正确的顺序写入三个命令字符到命令寄存器,比如,
LCD1602 显示的数据 第一行: CMPS04 I2C 第一行: 方向角 磁偏角 校准质量等级
该模块的通讯方式与 AT24C02 是一样的. 在 C51_I2C.h 文件里更改 I2C 的通讯引脚. 注意的事项: 1.通电前要检查模块的接线要正确。 2.要确定模块的工作电压是 5V,因为出厂参数是 5V 下测得的。 3. 若 用 开 发 板 调 试 时 , 要 看 开 发 板 的 单 片 机 的 引 脚 有 没 有 被 外 部 电 路 复 用 , 否 则 调 试 不 了 。 ====================================================================================*/ #include <reg52.h> #include "C51_I2C.h" #include "LCM1602.h" #define uchar unsigned char #define uint unsigned int
6
Byte5
检查校准质量等级
未用
7
Byte6
产品编号 A(0x41)
未用
8
Byte7
内部测试参数
未用
9
Byte8
内部测试参数
未用
注解: 1、请不要经常设置序号带*号的数据寄存器,因为这些数据寄存器的数据写入到 EEPROM。
2、磁偏角设置。顺时针加上去,设定范围 0℃~360℃(出厂默认 000 度)
#define CompassI2C_Addr 0xE0 //定义电子罗盘 I2C 地址
2010-04-25
6/8
新动力电子
CMPS04-I2C 电子罗盘模块
http://shop58691278.taobao.com/
uchar nIIC_RD[10];//IIC 的数据缓冲区
unsigned int nAngleNow = 0;//方向角(单位度) unsigned int nMagnAngle = 0;//磁偏角(单位度)
三、技术参数表:
序号 1 2 3 4 5 6 7 8 9 10
项目 测量范围 显示分辨率 精度 响应频率 重复性 工作电压 工作电流 工作温度 储存温度 尺寸
参数 0℃~360℃ 1℃ <3℃ 30Hz <2℃ 5(+0.2 -0.2) <10 -40℃~80℃ -40℃~80℃ 24*24
单位 度 度 度 Hz 度 VDC mA 度 度 mm
(2)电子罗盘的干扰信号 电子罗盘在稳定的磁环境下补偿适中的偏差,但是它不能补偿改变的磁干扰。比如,带直流电的电线产 生磁场,如果直流电改变,磁场大小也将改变。电源也一个变化的干扰源。 电子罗盘是消除不了变化的磁 环境干扰。
(3)电子罗盘的测量精度 国外号称是世界上精度最高的电子罗盘(C100),价格是大概 795 美元,它的航向精度能达到 0.5 度
P2 接线定义:
P2 接口为工厂调试用,用户在实际使用时应该悬空,否则会对产品产生破坏性后果。
5.2、电子罗盘与单片机(MCU)I2C 总线控制方框图:
六、术语说明:
磁偏角:
地磁场强度矢量所在的垂直平面与地理子午面之间的夹角就角就叫磁偏角。简单的说,地理南北极之间 的连线和地磁南北极之间的连线之间有一个夹角,该夹角就叫磁偏角。不同地点的磁偏角一般是不同的, 同一地点的磁偏角也因时而变。我们用罗盘进行定向导航时,一般测量的方向是相对于地磁北极的。因此 可以通过磁偏角的补偿得到相对于地理北极的航向。比如,通过罗盘测得当前航向是北偏东 60℃,而当地
备注 罗盘水平放置 罗盘的显示分辨率 罗盘的输出精度 罗盘的更新数据的频率
出厂参数在 5V 电压测量的 连续输出模式
DIP 封装的插针
四、IIC 总线通讯协议
2010-04-25
1/8
新动力电子
CMPS04-I2C 电子罗盘模块
http://shop58691278.taobao.com/
4.1、产品说明:
4.6、恢复工厂校准
命令字符 1
命令字符 2
命令字符 3
恢复命令
0xA0
0xAA
0xA5
0x55
恢复出厂前校准参数设置。 你只要按上面写入命令字符和恢复命令( 0x55 )。注意,它与更改 I2C
总线地址命令是不同的,它不能用于改变 I2C 的地址。
2010-04-25
3/8
新动力电子
CMPS04-I2C 电子罗盘模块
改变目前 0xE0 设备地址( 默认出厂地址)到 0xE8,请按正确的顺序写入命令字符( 0xA0,0xAA,0xA5,0xE8 )。
这些命令必须发送正确的顺序才改变 I2C 地址,写入这个命令之间不能有其它的操作命令字符。 该命令字
符序列必须发送到命令寄存器的位置。操作完成后,你应该标签 IIC 地址,如果你忘了修改后的 IIC 地址,
1、电子罗盘模块的通讯方式与 IIC 存储器 AT24C02 一样,最高的同步时钟为 400KHz。 2、主机与从机(本模块)进行 IIC 通讯需要三根线,即 SDA(数据总线),SCL(时钟总线),GND(主、从共用
的地线)。如果要多个设备用在同一个总线上,请安装电阻值为 4K7 的上拉电阻,可防止设备间不 能通讯。 3、电子罗盘模块的 I2C 总线地址为 0xE0,可更改 I2C 地址。 4、输出的角度关系:方向角 = 罗盘角 + 磁偏角;
你可以看发光二极管的闪烁状态。IIC 地址会在 LED 输出显示。 LED 长闪烁后就是一个 IIC 地址指示,较
短闪烁就是 IIC 地址。 请参照下表:
IIC 设备地址
LED 指示灯的状态
序号
整数
HEX 码 长闪烁
短闪烁
1
224
E0
1
0
2
226
E2
1
1
3
228
E4
1
2
4
230
E6
1
3
5
232
E8
1
的范围内。
八、电子罗盘实验图
8.1、图 1
2010-04-25
5/8
新动力电子
8.1、图 2
CMPS04-I2C 电子罗盘模块
http://shop58691278.taobao.com/
九、电子罗盘模块与 AT89S52 的 I2C 通讯 部分程序
/*=================================================================================== 项目名称:CMPS04-I2C 的产品测试程序 功能描述:用液晶 LCD1602 显示电子罗盘模块的测量数据 使用软件:Keil uVision3 使用芯片: AT89S52 外部时钟: 12MHz 开发人员:新动力电子 开发日期:2010.05.15
4.2、电子罗盘内部数据地址定义:
序号
数据地址
读出数据的定义
写入数据的定义
1ቤተ መጻሕፍቲ ባይዱ
Byte0
工作状态寄存器
命令寄存器
0x00 : 正常状态;
0x01 : 校准状态;
2
Byte1
方向角高 8 位
未用
3
Byte2
方向角低 8 位
未用
4*
Byte3
磁偏角高 8 位
磁偏角高 8 位
5*
Byte4
磁偏角低 8 位
磁偏角低 8 位
七、使用时注意的问题
(1)如何安装电子罗盘 罗盘是检测磁场的传感器,但对于外界干扰磁场和地球磁场无法做到实时、准确的区分。在使用时, 选择一个干扰磁场小的安装位置是保证罗盘精度是至关重要的。将罗盘尽可能的远离铁、钢、磁铁、发动 机和其他磁物质的地方放置,一般来说 1 米的距离已经不影响罗盘的正常工作,在空间不够的的情况下至 少也需要维持 30 厘米以上远的距离。安装时用户必须评估所在环境下的安装可行性。
五、电子罗盘安装和接线 5.1、安装尺寸和接线定义:(单位 mm)
http://shop58691278.taobao.com/
P1 接线定义:
序号 1 2 3 4 5 6
符号 5V GND RXD TXD SDA SCL
含义 电源正极。 电源负极。 未用 未用 IIC 总线的数据接口。 IIC 总线的时钟接口。
4
6
234
EA
1
5
7
236
EC
1
6
8
238
EE
1
7
9
240
F0
1
8
10
242
F2
1
9
11
244
F4
1
10
12
246
F6
1
11
13
248
F8
1
12
14
250
FA
1
13
15
252
FC
1
14
16
254
FE
1
15
模块只接收以上 IIC 地址列表数据,其它 IIC 地址数据是无效的。
注意:在同一个 IIC 总线中,不能有相同的 IIC 地址。如果 IIC 地址相同可能会出现非常难以预料的结果。
4、数据格式定义如下:
(1) 方向角
方向角为 0℃~360℃的二进制数,数据的高 7 位为 0,低 9 位为数据,共占用 2 个字节
(2)磁偏角
磁偏角为 0℃~360℃的二进制数,数据的高 7 位为 0,低 9 位为数据,共占用 2 个字节。
4.4、相关命令字符:
序号 1
2 3 4 5
命令分类 校准功能
sbit Key0 = P1^3; //按键 0 恢复工厂校准参数 sbit Key1 = P1^4; //按键 1 磁偏角+1 sbit Key2 = P1^5; //按键 2 磁偏角-1 sbit Key3 = P1^6; //按键 3 校准开始 sbit Key4 = P1^7; //按键 4 校准结束
(EEPROM),这样做可以解决了 RS232 接口只能接一个外部设备问题,减少了使用者的开发时间。该产品可 以改变 I2C 的通讯地址,默认 I2C 地址是 0xE0,用户可以设置 16 个不同的 IIC 地址中的一个,有校准功
能,可设置磁偏角功能,可适应不同的工作环境。
二、产品应用:
● 手持式仪器仪表; ● 机器人导航、定位; ● 船用自动舵; ● 天线定位; ● 车载 GPS 导航; ● 船模定向; ● 航行系统
新动力电子
CMPS04-I2C 电子罗盘模块
电子罗盘模块使用手册 CMPS04-I2C
http://shop58691278.taobao.com/
概述:CMPS04-I2C 是一款高性能平面数字罗盘模块,其工作原理是通过磁阻传感器感应地球磁场的磁分 量,从而得出方位角度。该罗盘以 I2C 方式与上位进行通信。CMPS04 模块相当于一个 AT24C02 的存储器
相关文档
最新文档