Direction方向传感器system.ppt

  1. 1、本文档共34页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Direction方向传感器system

方向传感器系统 苏州大学飞思卡尔嵌入式系统示范实验室 介绍内容 系统概述 系统原理 硬件平台的搭建 软件设计 总结 系统演示 系统概述 1.系统背景 校企项目合作。 系统概述 2.开发过程 本科生毕业设计:雏形 研究生的优化:半成品 公司的包装:成品 磁电阻传感器的测量原理 物体在磁场中电阻发生变化的现象称为磁电阻效应。 基于霍尔效应的普通磁电阻效应 各向异性磁电阻效应 由于坡莫(NiFe) 合金在弱磁场下的电阻变化率较大, 因此适用于适合于弱磁场条件下使用。 各向异性磁电阻传感器就是以薄膜加工技术在硅片上制备坡莫合金薄膜再经微细加工技术制成磁电阻元件。由4 个磁电阻元件连成惠斯通电桥的形式, 从而构成了一维磁电阻传感器。 磁阻传感器HMC1022 磁阻传感器按4元件惠斯顿电桥配置它将磁场转换成差分输出电压,并能传感强度低至30μ高斯的磁场。 方向角 地磁场磁感应强度约为0. 5~0. 6,与地球表面平行的水平分量总是指向地磁北极,这是地磁导航的依据。在水平面内,知道了磁场在前向分量Hx 及右向分量Hy 就可由下式计算方向角 Ψ = arctan (Hy /Hx ) 硬件平台的搭建 1.方位测定系统原理 方位测定系统的结构框图如下。 硬件平台的搭建 2.硬件选择 (1)磁电阻传感器:Honeywell公司HMC1022芯片 (2)放大器:AMP04芯片 (3)主控芯片:Freescale公司MC908MR8芯片(4)HMC1022的复位/置位电路为IRF7105芯片 (5)SCI电平电路:MAX3232芯片 硬件平台 硬件平台的搭建 3.硬件连接 软件设计 软件设计与实现 1.初始化程序 MC908MR8系统初始化,设置CONFIG寄存器及内部总线工作频率。 SCI进行初始化,主要进行比特率设置、通信格式设置、发送接收数据方式设置等。 A/D转换初始化时对A/D转换输入时钟寄存器ADCLK写入控制字节,决定时钟输入源是内部总线还是外部晶振,决定分频系数。 软件设计与实现 2.A/D采样程序 A/D转换程序采用包含了中值滤波与平均值滤波的复合滤波方式。程序中的中值滤波,就是对三次采样值比较大小,取中间的一个。所谓平均值滤波,就是N个采样值求平均。而中值滤波与平均值滤波的复合滤波方式,就是先进行中值滤波,在进行平均值滤波。 软件设计与实现 3.数值回归处理程序 确定载体纵轴X相对于磁北的航向角β。由磁阻传感器可以直接得出地磁场的水平分量Hx,Hy。 Hx = Hcosβ Hy = Hsinβ 因此载体相对于磁北的航向角为 β = arctan(Hy/Hx) 总结-----硬件的考虑 MCU选择问题 A/D采样电路的设计 总结---- 软件的优化实例(1) 对于测定的方位角(PosAngle)需要分解出百位、十位及个位数,C语言的编程如下: hundredNum= PosAngle / 100; tenNum =( PosAngle %100)/10; unitNum = PosAngle %10; 算法分析 这种方法是可行的,但是效率低。 在执行除法和求模的运算时,调用了内部子程序“__divmodu_16X16_16”进行16进制的除法和求模运算。 通过阅读该子程序的汇编代码,发现除法运算是通过减法来实现的, “PosAngle /100”是每次将PosAngle减去100,直到PosAngle小于100为止,循环减的次数是商。 假如PosAngle=299° 则“PosAngle/100”需要进行2次循环减法, “(PosAngle %100)/10”需要进行2+9=11次循环减法, “PosAngle%10” 需要进行9循环减法 每一次减法需要大约80个指令周期,则上述程序需要(2+11+9)*80=1760个指令周期 改进 假如熟悉Freescale HC08的指令系统,其中有一条除法指令:DIV,7个指令周期。它是将寄存器H和A组成的16位数除以寄存器X(8位数),除法运算后,商存储在A中,余数存储在H中,即DIV是16位数除以8位数,商必须是8位。而编译器在编译时不知道相除的结果是否是8位,所以不能使用DIV指令。但在本问题中,由于PosAngle的范围是0~360,上述除法运算完全可以使用

您可能关注的文档

文档评论(0)

shaoye348 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档