基于MEMS的惯性导航系统研究与设计
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
轴的
投影。对于捷联式惯性导航而言,导航计算不在载
体系中进行,而要在导航坐标系( n 系) 完成。
图 5 捷联惯性导航系统基本原理示意图
58
科学技术与工程
12 卷
捷联式惯性导航主要包括以下几个方面的内 容: 系统初始化、惯性仪表的误差补偿、姿态矩阵计 算、导航计 算、导 航 和 控 制 信 息 提 取[7]。 其 中 姿 态 矩阵的实时计算以及位置速度的积分是惯性导航 的关键任务,算法很多,常用的有欧拉角法、方向余 弦算法、四元数法和旋转矢量算法等[6]。导航参数 的计算都是在离散的时间轴上进行的,时间误差是惯 性导航系统误差的主要来源之一。保证导航系统实 时数据采集与计算是惯性导航系统的关键任务之一。 2. 2 导航系统的程序处理方法
μC / OS-II 是一种公开源码、结构小巧、具有可 剥夺型实时内核的硬实时操作系统,具有执行效率 高、占用空 间 小、实 时 性 能 优 良、可 扩 展 性 强 等 特 点,具备任 务 管 理,时 间 管 理,内 存 管 理,任 务 间 通 信和同步等基本功能。μC / OS-II 也有系统时钟,但 系统时钟被用来进行时间管理,并不是任务切换的 必备条件。在 μC / OS-II 中引起系统任务调度的是 事件,事件 或 来 源 于 其 它 优 先 级 的 任 务,或 来 源 于
1 系统硬件组成
捷联式惯性导航系统的硬件主要包括: MEMS 器件、导航 计 算 机、外 部 监 控 计 算 机。 在 传 统 的 惯 性导航系统中还含有数据采集单元。随着 MEMS 技术的发展,目前的惯性器件大多具有数字输出接 口,可以直 接 与 微 处 理 器 的 数 字 接 口 连 接,简 化 了 惯性导航系统的硬件设计。 1. 1 导航处理器的选型
1期
张晓玉,等: Βιβλιοθήκη Baidu于 MEMS 的惯性导航系统研究与设计
59
别采 用 ADXL345 加 速 度 计、ITG—3200 陀 螺 仪、 HMC5843 电子罗盘设计了惯性导航的硬件系统,在 软件上基于嵌入式硬实时操作系统 μC / OS-II 设计 了惯性导航算法的多任务处理。该导航系统脱离 了通用计算机平台,具有体积小、功耗低、成本低等 特点,在软 件 上 由 于 采 用 了 硬 实 时 操 作 系 统,导 航 算法具有极高的实时性。32 位的 ARM9 处理器极 高的运算速度完全符合导航算法大运算量的需求, ARM 处理器系列一致的通用性和丰富的接口特性 使得该导航系统可以很方便的移植到其它平台上, 可以在需要惯性导航的场合中推广应用。
基于嵌入式 Linux 操作系统也是常用的程序设 计方法,特别是在基于带 MMU 的 ARM 处理器中应 用广泛。linux 操作系统是一种非实时操作系统,其 时间片轮转的任务调度算法不能保证数据采集与 计算的时间刻度; linux 操作系统本身过于庞大,本 身在运行时需要占用大量的 CPU 时间,因此,嵌入 式 Linux 操作系统不适合用于惯性导航系统。
在捷联式惯性导航系统中常用的 MEMS 传感 器为陀螺仪、加速度计、电子罗盘等。MEMS 传感器 的选型主要 考 虑 传 感 器 的 轴 向 特 性、量 程、接 口 形 式、封装、抗冲击性、温漂等。
惯性导航系统的姿态位置计算都是在三维笛 卡尔坐标系中进行,单轴或双轴的传感器芯片在设 计时必须保证芯片的输出轴按三维坐标方向严格
在需要大数据量计算与实时处理的场合,主处 理器的性能是系统性能的决定性因素。本文采用 具有 ARM920T 内核的 S3C2440 处理器作为整个系 统的核心处理器。S3C2440 是一款 32 位具有精简 指令集的处 理 器,特 别 适 合 具 有 低 功 耗、高 计 算 量 要求的 场 合。具 有 内 存 管 理 单 元、哈 佛 双 总 线 结 构、数据指令缓冲区、5 级流水线结构,主频可高达 400 MHz。S3C2440 具有简单易用,程序可移植性好 等特点,完全符合惯性导航系统的要求。本文选用 S3C2440 处理器,负责传感器信息的采集,导航参数 的计算,导航结果的输出。 1. 2 MEMS 传感器的选型及外围电路
本文基于 μC / OS-II 操作系统设计了惯性导航 系统的软件,其中需要处理的任务主要有 MEMS 传 感器数据采 集、姿 态 矩 阵 计 算 及 姿 态 角 提 取、姿 态 角与磁阻式传感器测得角度的卡尔曼滤波算法、比 例变换算法、导航参数输出等。
传感器信息的采集是系统实时性要求最高的 任务,由于 导 航 计 算 都 是 沿 时 间 轴 上 的 计 算,要 求 传感器信息采集的时间点的精确度,为保证每两次 数据采集的 中 间,导 航 周 期 的 准 确 性,必 须 将 传 感 器信息采集设计为优先级最高的任务,一旦计时时 间到,CPU 立即切换至传感器信息采集任务。姿态 矩阵计算及姿态角提取、姿态角与磁阻式传感器测 得角度的卡尔曼滤波算法、比例变换这三个部分的 算法是一 种 顺 序 执 行 关 系,将 他 们 放 到 一 个 任 务 中,任务的优先级比传感器信息采集任务要低。最 后,导航参数的输出放在优先级最低的任务中。系 统的任务划分如图所示。
中断。具有最高优先级的任务在等待某个事件时, 只要该事件 发 生,则 系 统 立 即 进 行 任 务 切 换,高 优 先级的任务立即获得 CPU 的使用权。μC / OS-II 可 以保证 系 统 需 要 实 时 运 行 的 任 务 运 行 的 机 率 是 100% ,是一种硬实时操作系统,特别适用于惯性导 航系统中实时性任务的设计。
1期
张晓玉,等: 基于 MEMS 的惯性导航系统研究与设计
57
垂直,但由于焊接、安装等误差的存在,在选用单轴 或双轴的传感器芯片时,并不能严格保证芯片输出 轴的正交,这也成为惯性导航系统中仪器误差的主 要来源。为避免单轴或双轴传感器芯片存在的轴 向安装误差,本文选用三轴的 MEMS 传感器芯片。
陀螺仪芯片选用 InvenSense 公司的三轴陀螺仪 芯片 ITG—3200,具 有 ± 2 000 度 / s 的 量 程,可 抗 10 000 g的冲击,具有温度补偿功能,具有的 I2C 数 字输出接口。
图 6 系统任务结构图
系统在启 动 完 成 后,完 成 一 系 列 的 初 始 化,包 括从加载域 到 运 行 域 的 转 换,硬 件 初 始 化,操 作 系 统初始化等。然后创建三个任务和两个消息队列。 当系统启动初始化完成之后,便将 CPU 控制权交给 优先级最高的任务,即数据采集任务。除这三个任 务外,还有个系统空闲任务,在系统三个任务都没有 运行时,将运行空闲任务。数据采集任务通过调用操 作系统函数 OSTimeDly( ) 来达到周期性采集数据的
电子罗盘选用 Honeywell 公司的 HMC5843 芯 片,LCC 封装,内置 ASIC,放大器,12 位 AD 转换, SET / RESET 电路,可有效消除杂散磁场,温度漂移, 放大器偏置和漂移的影响。通过 I2C 接口以数字量 直接输出三轴传感信息。 1. 3 系统电气结构
由于选用的陀螺仪、加速度计和磁阻式传感器 都具 有 I2C 数 字 总 线 接 口,将 它 们 都 挂 接 在
第 12 卷 第 1 期 2012 年 1 月 1671—1815( 2012) 01-0056-04
通信技术
科学技术与工程
Science Technology and Engineering
Vol. 12 No. 1 Jan. 2012 2012 Sci. Tech. Engrg.
基于 MEMS 的惯性导航系统研究与设计
惯性导航系统的程序设计常用的方法有前后 台系统,基于非实时操作系统和基于嵌入式实时操 作系统的设计方法。
在传统的前后台系统中,前台中断程序负责运 行一些时间要求比较严格的实时性任务,后台主函 数负责惯性导航系统算法的计算以及导航参数的 输出,前台和后台程序之间通过共享的全局变量传 递信息,后 台 程 序 处 于 不 断 的 等 待 过 程 中,根 据 前 台传递进来的参数选择不同的处理流程。本文设 计的惯性导航系统中惯性器件全部基于 I2C 总线, I2C 总线上的数据通常需要等待固定的时间,以使 I2C 数据出现在 SDA 总线上,这就必须在中断程序 中设计一定的延时。而主函数中要处理的惯性导 航算法任务很多,需要不断等待前台系统采集到的 数据,这种程序设计方法过多占用了中断时间,CPU 大部处于等待状态,系统运行效率不高。
图 7 导航计算任务流程图
目的。其中,由于系统的时钟周期被设置为10 ms,本 文设计的导航周期亦为 10 ms。当数据采集任务采集 到数据后,便通过消息队列将采集到的数据发送给导 航计算任务。导航计算任务的流程图如图 7 所示。
常用的导航系统大都采用通用型的微型处理 器或专用的导航计算机完成。这种处理器处理速 度慢、体积大、功耗高、电路复杂、可靠性低,无法满 足捷联式惯 性 导 航 系 统 对 于 微 型 化、高 精 度、实 时 性的要求。嵌入式 ARM9 处理器具有高速、稳定、 功耗低、简单易用、接口丰富等特点,在智能仪器设 备中得到广泛的应用。采用 ARM9 处理器与 MEMS 器件设计的惯性导航系统不但可以满足导航系统 对于小体积、低 功 耗 等 的 要 求,同 时 也 可 满 足 导 航 系统对于高处理速度、高实时性的要求。
2. 1 惯性导航的基本原理
捷联式惯性导航的基本原理如图 2[5]所示,惯
性元件的敏感轴安装在载体坐标系( b 系) 三轴方向
上,由于固 连 在 载 体 上,所 以 测 得 的 都 是 载 体 坐 标
系下的物理量。陀螺仪和加速度计输出投影于载
体坐标系为
ω
b ib
和
a
b ib
,其中下标
ib
表示沿
b
系
i
本文设计 了 一 种 基 于 ARM9 处 理 器 和 MEMS 传感器的 惯 性 导 航 系 统,给 出 了 该 系 统 的 硬 件 平 台,为满足 导 航 系 统 中 对 于 实 时 计 算 的 要 求,设 计 了基于嵌入式实时操作系统 μc / os-II 的软件设计 方法。
2011 年 10 月 20 日收到 第一作者简介: 张晓玉( 1984—) ,女,吉林省九台市人,硕士研究生, 研究方向: 机械设计制造及其自动化。
张晓玉 丁文武
( 电子科技大学空天科学技术研究院,成都 611731)
摘 要 提出了一种基于 MEMS 的捷联式惯性导航系统硬件和软件设计方法。设计了以 ARM9 处理器为核心的硬件平台,
介绍了核心处理器及惯性器件的选型,给出了硬件系统组成; 提出了基于嵌入式实时操作系统的软件设计方法,给出基于该
操作系统的多任务设计方法及导航算法流程; 该导航系统能够实现 MEMS 信息的实时提取、计算、位姿输出。
图 3 电子罗盘电路图
S3C2440 处理器的 I2C 总线上,可以极大的简化整 个系统的硬件设计,不需要设计复杂的信号采集及 调理电路。其电气结构如图 4 所示。
图 4 导航定位模块结构图
2 导航系统软件设计
加速度芯片选用 ADI 公司的 ADXL345 三轴加 速度计芯片,具有最大 ± 16 g 的可配置量程,可在 - 40 ℃ ~ 85 ℃ 的温度下正常工作,可抗 1 000 g 的 冲击,具有 SPI / I2C 可配置数字输出接口。
关键词 MEMS 捷联式惯性导航 实时操作系统 导航算法
中图法分类号 TN964. 3;
文献标志码 A
惯性导航技术是一门综合性技术,用于对运动 物体的姿态、速 度 和 位 置 参 数 的 确 定,该 项 技 术 广 泛用于航 天、航 空、航 海 和 大 地 测 量 等 领 域[1]。 由 于捷联惯性导航不受外界电磁和气象环境干扰,不 依赖于外界 条 件,并 且 具 有 良 好 的 隐 蔽 性,真 正 地 实现了自主导航,成为自主式测量的最佳手段。目 前,在发达 国 家,捷 联 惯 性 导 航 系 统 广 泛 用 于 机 器 人、无人飞 机 和 精 确 制 导 炸 弹 等 飞 行 器 的 导 航 控 制中。