微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > 基于高性能单片机的数据采集系统的设计及实现

基于高性能单片机的数据采集系统的设计及实现

时间:02-07 来源:互联网 点击:

时,回传要求重发数据,此信号被监控系统接收并负责重发数据,而80C196KC不再负责数据的重发,实时地启动下一次A/D转换。在软件编程时,采取了汉明编码理论[3],通过软件来实现纠错编码[4]。实践表明,采用硬件通讯监听和软件实现纠错编码后,数据传输误码率大大降低,特别是对一些突发性干扰(尖脉冲)尤为明显,大大提高了整机系统的可靠性。

4 双端口RAM缓存

由于导航计算机忙于姿态更新和复杂的滤波计算,不可能直接和采集板上的单片机80C196KC或89C2051进行数据通讯,因此系统中采用双端口 RAM来缓存传输的数据,缓存单元由微处理器89C51进行控制。首先是89C51直接和采集板上的单片机进行数据通讯,并负责通讯传输过程中可能发生的误码的处理,然后将接收到的数据放入双端口RAM,这样导航计算机只需从双端口RAM的另一侧数据线上读走数据,减轻了导航计算机的负担,提高了惯性系统的可靠性。

双端口RAM缓存单元不仅暂时存贮陀螺仪的信息,实际应用时还暂存加速度计的信息,此外还由89C51进行陀螺标度因子的计算来完成导航计算机的部分工作。

双端口RAM在实际操作时会发生数据冲突,即双端口RAM两侧的CPU同时对同一个地址单元进行写操作,这种情况是不允许的。有三种解决争用的方案:片内硬件判优方案、中断方案和令牌传替方案。在本系统中,利用双端口RAM(IDT7130/LA55P)上两个特殊的存贮单元3FFH和3FEH(16 进制)产生中断信号供两侧计算机使用[5]。

5 数据采集系统的软件和抗干扰

在数据采集系统中,软件可分为三个模块,分布在三个单片机中。(1)数据采集转换启动模块,它包括对16位A/D转换器的自校准编程,采集数据的预处理处理和PTS发送等功能;(2)通讯监听纠错模块,完成通讯过程中数据的发送和接收编程,汉明码的软件实施等;(3)数据缓冲单元中89C51的编程,主要完成通讯数据的接收和陀螺标度因子的计算以及发布导航计算机的控制命令等工作。

数据采集系统的抗干扰主要从硬件和软件上着手,除了上面介绍的措施外,系统中还采取了多种方法,如对程序和电源进行监视,以实现系统失控防护以及掉电复位和掉电操作的控制。对软件运行中可能出现的“飞程序”和程序 “死循环”采取了监控定时器和中断互检技术。此外良好的地平面技术、合理的系统布局都大大提高了系统的抗干扰能力。图3给出该数据采集系统测试陀螺仪静态时的数据曲线。

Vave=0.003 377 6 V
Vrms=1.013833e-004 V
Vmax=0.003 631 6 V
Vmin=0.003 106 6 V

参考文献

1 孙涵芳.Intel 16位单片机.北京:北京航空航天大学出版社,1995.144~171
2 MAXIM 1996 New Release Data Book Volume V7.93~7.117
3 杨 爵,等.实用纠错编码.北京:中国铁道出版社,1988.22~34
4 吴延海.用软件实现纠错编码.电子技术应用,1997,5:33~35
5 朱欣华.多机系统中双口RAM的构成方法及应用.测控技术,1996,2:25~28

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top