一种基于C8051F350的无线同步数据采集方法
从传感器输出的信号往往是很微弱的毫伏级信号,需要用放大器对信号加以放大。信号经放大、滤波后接入C805lF350的模拟信号输入端。
射频芯片nRF24L01是一款工作在2.4 GHz~2.5 GHz,世界通用ISM频段的单片无线收发器芯片,不仅具有自动应答及自动重发功能,而且在增强型ShockBurst模式下还具有数据包识别、地址及循环冗余校验方式(Cyclic Redundancy Check,CRC)校验的功能,减少了外部CPU的工作量,增强了数据传输的可靠性。本文引用地址://m.amcfsurvey.com/article/195482.htm
3 采集系统同步设计
3.1 系统软件设计
安装在操纵杆手柄上的采集系统作为主采集器(简称A),实现对操纵杆/舵操纵的施力信号的采集。和操纵连杆相连的采集系统为从采集器(简称B),实现对操纵连杆位移信号的采集。现有的同步数据采集系统一般是由l台控制器控制1片具有多通道的同步数据采集芯片,或者同时控制多片同步数据采集芯片来实现的。而本系统要完成的是由2片单片机分别控制,对力和位移进行同步数据采集。由A控制采集过程的开始和结束,2个采集器由2片C8051F350分别控制,所以在数据采集开始前必须使A和B系统同步。A和B的程序流程图分别如图2、图3所示。
3.2 系统同步的实现
A和B系统同步是指2个采集系统开始采集力数据和位移数据的时间是一致的,先计算出2片C805lF350控制无线模块通信过程中的时间差,经过时间补偿后使2个采集系统开始同步数据采集。A和B进行系统同步的流程图分别如图4、图5所示。
A同步初始化后向B发送一个准备开始采集的同步信号,随即检测是否接收到B发来的应答信号(同步信号和应答信号为相同字节),同时A使用定时器中断监测同步信号是否丢失,定时时间要远大于从发送同步信号到接收到应答信号所用时间的理论计算值。若定时内没有收到应答信号则认为同步信号丢失,触发中断,在中断子程序中将重新发送同步信号并装载定时初值,直到收到应答信号。
A的定时时间包括发送同步信号的时间、同步信号的传输时间、B检测判断该信号的时间、发送应答信号的时间、应答信号的传输时间和关定时器的时间。
其中A发送同步信号需m个机器周期,B检测判断同步信号需n个机器周期,发送应答信号需p个机器周期(p=m),关定时器需q个机器周期,C8051F350的机器周期为T,则执行这些指令的时间S=(m+n+p+q)T。nRF24L0l的数据传输率为l Mbps,同步信号的传输时间为tl,应答信号的传输时间为t2(t2=t1),这一过程共用时G=t1+t2+S,定时时间为H>>G。
B接收到同步信号后,向A发送一个应答信号,经过X的延时后2个采集系统便完成了系统同步。由于测试环境的不同,X也是不确定的,可由另外的测试程序测试后加以计算获得。
评论