《电子技术应用》
您所在的位置:首页 > 嵌入式技术 > 设计应用 > 民机驾驶舱人为因素生理体征数据采集系统设计
民机驾驶舱人为因素生理体征数据采集系统设计
来源:电子技术应用2011年第5期
夏寅昕,傅 山
上海交通大学 航空航天学院人机环境工程所,上海200240
摘要: 提出了基于物联网技术的一种生理体征数据便携式采集系统。该系统通过传感器网络和嵌入式系统,将体征数据实时采集并传输到远程进行分析处理。系统主要由生理体征采集模块、ARM接收模块、远程数据分析服务器组成。系统充分体现了模块化的设计理念,配合高效的数据协议,使得系统可靠性高、稳定性强、扩展性好,对于民机驾驶舱人为因素研究是一种崭新的探索。
中图分类号: TP393
文献标识码: A
文章编号: 0258-7998(2011)05-0035-04
Design of physical sign data collection system for human factors in civil airplane cockpit
Xia Yinxin,Fu Shan
School of Aeronautics and Astronautics, Shanghai Jiaotong University,Shanghai 200240,China
Abstract: The paper provides a design of portable data collection system via the technology of “Internet of things” which can be used during the task of pilots. The system contains three major parts: physical sign data sensor module, ARM system and remote server. The data protocol between the interfaces of different modules is the most important relationship which makes the whole system more reliable and stable. The application of “Internet of things” and “modular design” is a great innovation to the study of aviatic human factors.
Key words : human factors of civil airplane;Internet of things;Zigbee;ARM;data protocol

    统计资料表明,随着飞机设计技术的突飞猛进,在各类民航客机事故原因中,机械电子设备故障所占的比例越来越低,而机组人员人为因素所占比例越来越高。因此,针对机组人员人为因素的研究将是未来人机工程的主要趋势,这对于降低民航飞机事故率、优化驾驶舱设计、改善航空电子设备以及提升飞行员工作方式和效率有重要意义。

    人为因素的研究主要以飞行员的任务对象为核心,由飞行员、驾驶舱布局、环境、电子设备以及相互之间的关系等多种复杂因素组成。飞行员执行任务时的状态指标、尤其是人体生理体征数据是反映飞行员人为因素的重要特征。因此,对于这些数据的采集是研究飞行员人为因素的第一步。
    飞行员的主要生理体征数据有:心电、体温、心率、呼吸率、血氧、脑电波、肌肉骨骼状态等。测量过程中应对飞行员任务操作的影响降低到最低,而脑电波和肌肉骨骼的测量通常需要额外复杂的设备和操作,对飞行员影响较大,通常以图像的方式进行辅助识别。另外血氧值数据在人体没有发生重大生理变化时一般保持不变。因此,心电、体温、心率、呼吸率数据足以反映一名飞行员的生理体征,且随着电子技术和物联网技术的发展,对这些数据的便携采集在技术上也是可行的。
1 系统架构
    基于物联网技术的数据采集和传输系统如图1所示。主要由三部分组成:生理体征数据采集模块、本地接收模块及远程分析处理服务器。系统采用模块化设计,使得提取、采集、传输、分析各个功能在逻辑和应用上分开,降低了不必要的冗余性,增强了整个系统的扩展性和可维护性,使设计更加简单。

    生理体征数据采集模块和本地接收模块之间采用无线传感器网络。采集模块将生理体征数据通过无线传感器网络发送到本地接收模块,通过初步处理之后,本地接收模块再将简单处理过的数据通过以太网络传递到远程服务器,做进一步复杂的数据分析、显示和数据库保存。无线传感器网络采用星型无线网络拓扑结构,采集模块充当终端设备,由一个到多个,本地接收模块作为网络调谐器或者网络路由器,是整个无线传感器网络的中心。
2 硬件设计
    出于对数据流量带宽以及性价比的考虑,无线传感器网络采用低功耗、中低速、技术比较成熟的Zigbee网络搭建,而采集模块和接收模块都采用基于ARM的嵌入式系统。前者任务简单,使用ARM7,而后者要进行多任务操作,所以使用性能相对较强的ARM9。生理体征传感器主要使用心电传感器和体温传感器,提供心电波、心率、体温、呼吸率的数据。接收模块和远程服务器采用基于TCP/IP的以太网进行通信。数据库服务器采用普通PC或者高性能的服务器。
2.1 采集模块硬件组成
    生理体征数据采集模块主要由生理体征传感器、ATMEL ARM7 AT91SAM7X256微处理器、AD、SRAM、采集导联及其接口、CC2430模块、天线和电池组成,见图2。

    通过接在飞行员身体的导联线,可以实现便携采集体征数据而不影响飞行员工作。其中,CC2430是一款单个芯片上整合ZigBee射频(RF)前端、8 KB SRAM、128 KB Flash和8051微控制器的SoC片上系统,适用于各种ZigBee节点,包括调谐器、路由器和终端设备。CC2430作为一个外设连接到采集模块的ARM7处理器上,通过UART串口输入体征数据,再通过数据融合、数据打包发送出去。该模块特点有:体积小、重量轻、便于便携测量;模块同时实现7通道ECG心电数据、1通道心率数据、1通道RESP呼吸率、2通道体温数据的监测;稳定性好、精度高、符合CE要求的功能安全设计,符合IEC60601族所有心电、体温监测相关标准;支持多节点,中低速率的低功耗网络传输功能,最高可达250 kb/s,可以接入多个采集模块;单电源5 V工作,低功耗设计,体征传感器模块的功耗为0.6 W,CC2430模块的功耗为0.125 W左右。

 


2.2 接收模块硬件组成
    接收模块由ARM系统板和CC2430模块组成。ARM系统板以三星公司的ARM920T架构S3C2440a芯片为核心,工作频率400 MHz,最高533 MHz,并且配备64 MB的SDRAM内存、256 MB的Nandflash以及2 MB的Norflash。CC2430接收模块负责分时接收各个节点的数据并且存入缓存。ARM系统板和CC2430模块也是通过UART进行通信,ARM系统通过UART控制CC2430与体征数据采集模块通过Zigbee无线传感器网络进行交互,并对数据进行一定的预处理和过滤,并通过以太网传送给远程服务器。该模块具有如下特点:性价比高、功耗小、体积小、稳定性好,有多种应用模式;接口丰富,有UART、百兆以太网口、USB-Host/Device、SPI、I2C、GPIO、LCD接口等,便于系统扩展;可以运行Linux操作系统,进行多任务操作,软件易扩展裁剪;拥有简单的用户交互界面和输入输出设备,如键盘鼠标、LCD等,可以脱离远程服务器进行显示;UART波特率可达115 200 b/s,满足接收端CC2430接收多个节点数据的需要。
2.3 远程服务器搭建
    远程服务器主要指软件层面的服务器端程序,可以运行在普通PC或硬件服务器上。远程服务器和ARM通过以太网通信,将ARM已经进行过预处理的体征数据做进一步分析和处理,如统计分析、与其他数据协同分析、数据库存储等。其特点如下:具有高性能的计算、存储和通信能力,可以运行具有图形界面的操作系统;ARM作为远程服务器的接口扩展,而远程服务器和ARM通过以太网进行高速通信,从而实现远程服务器的远程操控;具有用户交互功能,如界面和输入输出设备等。
3 软件设计
    系统有三部分共五个处理器:采集模块的ARM7处理器、CC2430发送节点和接收节点的8051单片机、接收模块的ARM9以及服务器的CPU。
    采集模块通过接收传感器对AD的原始数据进行计算和整理,按照一定的数据通信协议通过UART口传递到CC2430发送节点进行缓存,再组包通过Zigbee网络以无线网络数据协议发送到接收模块的接收节点,进行二次缓存。接收模块的ARM也是通过UART和CC2430接收节点按照相互的通信协议进行通信取得这些数据,经过进一步的融合和过滤,最终通过TCP/IP协议发送到远程服务器进行显示、存储、分析等。
    由此可见,贯穿于整个系统软件的是各个模块接口间的数据协议,通过一种有效和风格统一的协议,能大大提高数据通信的效率。
3.1 采集模块程序
    接收模块通过电极片和导联得到模拟数据,并经过放大电路、AD和传感器等得到量化并具有一定意义的数字信号。ARM7将这些数字信号进行计算预处理,对数据进行简单的组包,以适应UART口的传输。这些数据包括7通道ECG心电数据、1通道心率数据、1通道RESP呼吸率、2通道体温数据。共有3种数据包:心电数据、体温和呼吸率数据、导联连接和系统状态数据。平均每个数据包为8 B,数据率为16 384 b/s,实时不间断地输出。这样的数据率可以保证每秒有224组左右心电数据、20~30组体温数据和状态数据。ARM7和CC2430之间UART的波特率设置为8 400 b/s,已满足数据带宽,包括数据传输延时和处理延时。
    为保证传感器数据的实时性和完整性,ARM7输出的数据一般带有一定的冗余,所以CC2430接收到数据后要进行数据融合以降低数据量。由于人体体温、心率数据短期变化不明显,所以可以降低实时性,因此该类型数据一次发送周期内只需传输一组即可。而每组7通道心电数据中,3个通道可以通过其他4通道数值计算得出,因此只需保留4通道数值即可。
    采集模块的CC2430充当Zigbee终端设备,因此初始化时,应该根据接收模块的Zigbee协调器所定期发出的同步命令进行注册,接入Zigbee星型无线传感器网络,然后等待接收端协调器发出的体征数据发送命令。当命令传送时,立刻将缓存中的数据通过Zigbee无线传感器网络发送到接收模块的CC2430节点。
    在Zigbee的帧格式中,体征数据包含在MAC协议数据单元中,而MAC协议数据单元又由MAC头、MAC有效负荷、MAC尾组成,最大长度为127 B,如果使用长地址,MAC头和MAC尾要占掉25 B,而短地址只需要9 B。在本系统中,考虑到体征数据的数据量较大,而节点数较少,所以应该采取短地址以增加通信效率,因此每次传输体征数据118 B,所以发送时需要进行分帧。
3.2 接收端CC2430程序
    接收端的CC2430模块作为Zigbee的协调器,即星型网络的中心,与生理体征采集模块的CC2430类似,主要完成UART通信和Zigbee通信两项任务。
    接收端CC2430初始化时建立一个Zigbee网络,并且定期搜寻是否有新接入的Zigbee终端设备,若有则通知其注册。考虑到数据量,终端设备节点的上限为4个。以轮询的方式向已注册的节点终端发送传输命令,得到各个节点所连接的生理体征采集模块的数据,并写入缓存,同时打上时间戳,完成一次接收周期。
    另外,CC2430以中断方式接收ARM端UART传来的命令,并且将缓存数据通过UART返回给ARM系统。
3.3 ARM系统板程序
    ARM系统板的软件架构以Linux为主,主要分成内核层、中间层以及应用层。
    内核层包括设备驱动、内核API以及简单的文件系统;中间层包括一些图形和网络通信的开源库,如QT和JRTPLib等;应用层运行核心的数据处理程序。
    ARM系统数据处理程序通过基于TCP/IP协议的以太网接收远程服务器的命令,对ARM接收端的CC2430发出指令,以控制和接收体征数据采集模块通过Zigbee无线传感网络发送的生理体征数据,并且对数据做进一步的融合和筛选,降低数据流量,加强针对性,按照数据协议加包加尾,发送到远程服务器。ARM系统需要定期与CC2430进行时间校对,以确保CC2430在接收数据时打的时间戳尽可能保持时间同步。
    另外,ARM系统还可以提供一个简单的用户界面,显示这些体征数据波形和数值,并且接收用户的指令,从而使ARM即使和远程服务器没有相连的情况,也可以脱离服务器进行简单的交互。
3.4 远程服务器数据处理程序
    由于本系统中远程服务器的功能主要是采集,所以数据处理在于简单的统计分析,设计数据库存储功能,并且为上层应用模块提供处理接口,同时设计用户界面显示结果和接收用户输入的指令。
    远程服务器的核心是网络编程,通过基于TCP/IP的数据通信协议控制ARM完成最终的体征数据采集传输,并且将这些数据在界面上画图显示波形,同时将数据存入数据库,并提供数据处理和分析的底层接口。
4 实现过程
    系统实现过程中的难点在于:采集生理体征数据的准确性、Zigbee多节点下的延时控制和数据完整性、数据融合和数据协议、系统装配等。
4.1 生理体征数据的准确性
    体征数据的准确性主要依赖于传感器芯片的质量,传感器相关电路的设计以及数据计算的正确性。为了尽可能地保证数据采集的准确性,生理体征采集模块通过采购大型厂商的OEM模块实现,该模块的软硬件架构和前文所提到的设计基本保持一致。
    该OEM模块符合CE要求的功能安全设计以及IEC60601族所有心电、体温监测相关标准,可靠性好、数据准确性高。
4.2 Zigbee多节点下的延时控制和数据完整性
    实际测试得到生理体征传感器模块的数据速率为16 384 b/s左右,通过传感器模块发射端CC2430的筛选,可以使每个Zigbee节点的实际输入数据速率为6 400 b/s左右,而Zigbee网络的发送速率最高为250 kb/s,理论上可以满足多个生理体征传感器模块通过Zigbee节点接入Zigbee网络以分时复用的模式与ARM接收端通信。
    实验表明,除了上述数据率限制因素,还要加入Zigbee传输延时、节点切换延时。CC2430数据筛选处理延时,尤其是切换和处理延时,由于CC2430缓存有限,最高约为1 KB,因此比较合理的节点个数在1~4个。如果节点过多,则节点数据处理延时和节点切换延时会使得单个节点的数据总延时成倍加大。如果数据缓存超过了上限,则会出现数据不完整的情况。
    当1~4个节点接入时,每个节点的数据总延时并不大,在100 ms级别,不超过1 s,具有良好的实时性,说明限制节点个数的瓶颈为CC2430的缓存上限。可以得出结论,控制延时和数据完整性主要在于降低数据处理延时和节点切换的延时,通过合理的算法以及数据协议的设计,可以提升有限缓存空间的使用效率。
    另外,实时性的控制必须加入时间戳的方法及时间同步的技术,以确保数据产生时间的相对准确性,也可对于延时进行量化的计算。
4.3 数据融合和数据协议
    数据融合和数据协议是整个系统上层通信的关键,Zigbee网络带宽和硬件性能是有限的,因此好的上层数据协议,能够很好地提升数据通信效率,同时方便软件实现和风格统一。
    本设计实现中,数据以组包的形式传递,各接口数据包协议统一设计为:数据包头+数据类型+数据长度+数据实际内容(载荷)+数据校验。这使数据协议的处理能够统一方法,提升软件代码的重用性和效率,加强了数据的传输效率和准确性。
    数据融合主要按照分级数据筛选的方式进行,每一级都有一套数据筛选和重新进行排列组合的规则和方法,以适应不同级之间的传输。这能大大降低数据传输量,提升数据的传输效率,并且能够满足不同的数据需求。
4.4 系统装配
    生理体征采集模块在采集飞行员体征数据的同时,对飞行员执行任务的影响要降低到最小,因此,对模块的体积有很高的要求。传感器模块和CC2430要尽可能地贴近,节省体积,并且使用电池使整个模块变成一个便携式设备。接收模块也应该尽量做到小巧,不影响驾驶舱的设备摆放和工作。
    本文讨论的民机驾驶舱人为因素生理体征数据采集系统的设计,采用目前比较流行的物联网技术和嵌入式电子技术,利用Zigbee无线传感器网络,将飞行员具有代表性的生理体征数据(心电图、心率、体温、呼吸率)采集到ARM系统上进行初步处理和筛选,再通过以太网传给远程服务器进行进一步复杂的分析并储存。这样的工作模式对于民机人为因素理论研究具有重要的实践意义。
    系统的最大优点是利用物联网的成熟技术实现了生理体征数据采集的模块化设计,提高了数据采集能力,提升了系统的可靠性、稳定性和便携性,同时方便系统的功能扩展,以便开展更多人为因素相关数据的采集。
    系统的下一步改进方向是优化各个接口之间的通信协议,从而更好地改善数据融合和传输效率,进一步增强扩展性并提升各设备对象的管理能力,从而接入更多类型的数据采集设备。
参考文献
[1] 李劲松,杨明,刘晓平.基于CC2430和ZigBee2006协议栈的通信模块设计[J].单片机与嵌入式系统应用,2010.
[2] 孙德辉,龚关飞,杨扬.基于CC2430的无线传感器网络系统设计[J].现代电子技术,2010(13).
[3] 程道来,杨琳,仪垂杰.飞机飞行事故原因的人为因素分析[J].中国民航飞行学院学报,2006,17(6).
[4] 赵钧.构建基于云计算的物联网运营平台[J].电信科学,2010(6).
[5] 黄布毅,王俊,常亚军,等.基于ZigBee技术家庭网关的设计与实现[J].通信技术,2009(6).

此内容为AET网站原创,未经授权禁止转载。