首页
|
新闻
|
新品
|
文库
|
方案
|
视频
|
下载
|
商城
|
开发板
|
数据中心
|
座谈新版
|
培训
|
工具
|
博客
|
论坛
|
百科
|
GEC
|
活动
|
主题月
|
电子展
注册
登录
论坛
博客
搜索
帮助
导航
默认风格
uchome
discuz6
GreenM
»
MCU 单片机技术
»
ARM
» 基于ARM-Linux的微惯性单元数据采集与处理[图](3)
返回列表
回复
发帖
发新话题
发布投票
发布悬赏
发布辩论
发布活动
发布视频
发布商品
基于ARM-Linux的微惯性单元数据采集与处理[图](3)
发短消息
加为好友
yuyang911220
当前离线
UID
1029342
帖子
9914
精华
0
积分
4959
阅读权限
90
在线时间
286 小时
注册时间
2014-5-22
最后登录
2017-7-24
论坛元老
UID
1029342
性别
男
1
#
打印
字体大小:
t
T
yuyang911220
发表于 2014-10-30 10:17
|
只看该作者
基于ARM-Linux的微惯性单元数据采集与处理[图](3)
数据采集
,
最大限度
,
滤波器
,
带宽
,
左右
设计IIR数字低通滤波器必须确定的另一个重要参数是滤波器的阶数。阶数低时,滤波时延较小,但过渡带宽过大,滤波效果不明显,阶数高时,过渡带宽较小,但滤波时延较大。为了既能获得较好的滤波效果,又能够最大限度地满足实时应用,在选择滤波器的阶数时需要做折中考虑。基于以上分析,选择具有单调下降幅频特性的巴特沃斯滤波器。 采用巴特沃斯直接型结构,系统函数为:
通过分析比较,当通带截止频率设为4Hz左右、滤波器阶数设为4时,能得到理想的综合滤波效果。图5所示为滤波后的数据。
对滤波后的数据进行Yule Walker功率谱密度分析,结果如图6所示。
比较图4和图6可以看出,滤波后的功率谱密度原来的两个尖峰完全消失了,除0Hz附近整体变得十分平坦。这正是期望的滤波效果,说明设计的滤波器达到了预期的滤波目的。计算滤波前后的均值与方差,结果如表2所示。
可以看出,滤波后的均值与滤波前的均值相比在误差允许的范围内可以认为是相等的,滤波后的方差比滤波前的方差小两个数量级。这说明合理地选择巴特沃斯数字低通滤波器的截止频率和阶数,MEMS陀螺仪输出的数据可产生较好的滤波效果。通过计算得出低通滤波器的权系数ak和br,便可根据差分方程编制C语言程序。
2.4 输出数据基于Qt的界面显示
Qt是一个跨平台的C++图形界面库,主要通过汇集C++类的形式来实现应用程序界面开发所需要的一切,包括Qt/X11、Qt Embedded、Qtdesigner和Qt linguist等[4]。Qt是基于面向对象的C++语言,它提供了signal(信号)和slot(槽)的对象通信机制,具有可查询和设计的属性以及强大的事件和事件过滤器。本文主要用到其面向嵌入式开发的Qt Embedded及其设计器Qtdesigner。
Qt界面开发通常有以下步骤:
(1)用Qt生成file.ui和main.cpp;
(2)用uic生成file.h和file.cpp;
(3)用qmake生成file.pro;
(4)通过./setenv命令设置环境变量;
(5)用tmake生成二进制代码。
主函数部分如下:
int main( int argc, char ** argv)
{
QApplication a(argc, argv);
IMU_display w;
QTimer *t = new QTimer(&w );
nnect(t,SIGNAL(timeout()),&w,SLOT(imu()));
t->start( 10, FALSE);
w.show();
nnect(&a,SIGNAL(lastWindowClosed()),&a, SLOT(quit()) );
return a.exec();
}
IMU数据输出速率为100Hz,将Qtimer定时器设置为10ms刷新一次,保证数据输出的完整性。IMU数据的具体输出可以进行定制。在上位机开发完系统之后,可以利用虚拟帧缓存技术(qvfb)技术在PC机上测试Qt/Embedded 程序。经过反复的测试修改,测试成功之后制作图标和桌面启动器,通过minicom拷贝到ARM-Linux系统下的指定目录,便完成了程序的开发工作,需要注意的是交叉编译前需要将程序中上位机的串口名改为ARM开发板的指定串口名,否则程序将不会正常运行。
本文实现了ARM-Linux环境下对于MEMS IMU的数据采集处理,功耗低、成本低、体积小,可广泛应用到各种惯性测量领域。文中所述IIR数字低通滤波器,设计简单,适合运用于有用信号和噪声的频带不重叠的非高速变化运动的场合。其不足之处在于虽然可以取得较为理想的滤波效果,但同时产生了一定的延迟,所以不适合对于实时性要求很高的惯性测量场合,但可以通过改进滤波算法来实现。
收藏
分享
评分
继承事业,薪火相传
回复
引用
订阅
TOP
返回列表
便携式设备
电商论坛
Pine A64
资料下载
方案分享
FAQ
行业应用
消费电子
便携式设备
医疗电子
汽车电子
工业控制
热门技术
智能可穿戴
3D打印
智能家居
综合设计
示波器技术
存储器
电子制造
计算机和外设
软件开发
分立器件
传感器技术
无源元件
资料共享
PCB综合技术
综合技术交流
EDA
MCU 单片机技术
ST MCU
Freescale MCU
NXP MCU
新唐 MCU
MIPS
X86
ARM
PowerPC
DSP技术
嵌入式技术
FPGA/CPLD可编程逻辑
模拟电路
数字电路
富士通半导体FRAM 铁电存储器“免费样片”使用心得
电源与功率管理
LED技术
测试测量
通信技术
3G
无线技术
微波在线
综合交流区
职场驿站
活动专区
在线座谈交流区
紧缺人才培训课程交流区
意见和建议