刘渊博
(榆林市一中,陕西 榆林 719000)
基于嵌入式平台的一种动物学习能力测量仪器
刘渊博
(榆林市一中,陕西 榆林 719000)
针对动物学习能力测量仪器不精确、不够智能化的问题,本文基于AR M9和WINCE,研制了一种基于嵌入式平台的动物学习能力测量仪器,其集高精度计时、主控智能化、可存储化与分控无线化于一体。实验测试表明,该嵌入式平台性能稳定、携带方便,数据测试精度达4ppm。
动物学习能力;测量仪器;嵌入式平台
目前针对动物反映时间的测量大多采用秒表计时,人为因素导致的误差较大,无法准确客观地对人体的反应和移动能力进行评估量化。本文基于对动物学习能力测量目前存在的问题和动物学习能力测量的重要意义,设计并开发了一种基于ARM9和WINCE系统的嵌入式平台。
图1 系统总体结构
如图1所示,系统主要由A、B、C、D四个分端、一个下位机分控(下称“分控”)和手持总控端(下称“手持端”)三部分组成,A、B、C、D四个分端之间用围墙相连,且分控和每个分端均有一个触摸屏。四个分端上只有一个分端上挂有真正的食物,为保证变量一致性,其他分端挂有相同的食物模型。在分控的触摸屏位置有一个测试动物箱(下称测试箱),测试开始前,将测试动物放于测试箱中,箱子开口面向触摸屏,一旦打开箱子,动物从箱子中出来就会碰到分控的触摸屏。测试开始时,四个分端的食物全部为食物模型,当动物第一次触摸分控面板时,分控将产生一个A/B/C/D的方向信号,接收到方向信号的分端会被随机信号所触发,并发出灯光报警信号,测试员随即将该分端的食物模型换作真正的食物,同时当前时间被记录到分控;动物在搜索到正确的食物所在的面板时,触碰面板,该分端产生警报解除信号并传送到分控,分控记录当前时间,当动物将食物吃掉,离开面板后,报警信号解除;当动物触碰到食物模型所在面板的时候,该面板不会做出任何响应。这样,动物搜索一次食物花费的时间都将使用分控记录下来,并通过无线方式发送到手持端。在这样的一个测试中,测试者可以自定义测量次数,最后所有的测试时间(单次和总的时间)都会存储到手持总控的SD卡上,以方便后期的数据分析,当然,分端的数量、分控与分端的距离等可以根据实际情况进行调整,因为它们之间都是通过无线方式进行通信的,在天气良好的情况下,手持终端与分控间的通信距离可达500米,分控和分端的有效通信距离可达50米。考虑到实际使用可能在户内,也可能在户
外,所有的设备都使用电池和外接电源两种供电方案。
使用该系统,系统中有两种东西可以帮助用户做出正确的判断,分别为食物的味道和被触发的分端发出的灯光信号,即动物学习对于环境常常使用的嗅觉和视觉感知,饥饿的动物在得到食物的刺激下,会逐渐对这两种信号进行感知。当然不同学习能力的动物发生感应所需的时间不同,学习能力越强的动物将能够越快地感知到这两种信号,从而在较少次数的刺激之后便能够比较迅速的找到食物,相应地,学习能力较弱的动物将需要较多的次数才能认识到这两种信号与食物之间的关系。上述一次测量时间,只是一次刺激花费的时间,对动物学习能力的测量需要大量的测试次数,即大量刺激才能够得到实验结果。
3.1 硬件和功能模块
如图1所示该系统主要包括手持总控端、下位机分控和分端三部分,三者全部采用无线进行通信,其中手持端和分控之间采用NRF-905无线数传模块通信、分控和分端之间采用PT2262/2272通信。本节将详述三部分的硬件模块设计。
3.1.1 手持总控端部分
该部分主要负责系统的整体控制,包括测试数据的存储、测试数据的处理、测试者信息管理和测试者反应和移动能力评估等。总控部分主要由ARM9 S3C2440A、SD卡、LCD触摸屏三部分组成,其中ARM9作为总处理器,当手持端通过NRF-905数传模块接收到来自分控的信号时,通过SPI总线传送给ARM9进行处理,ARM9将处理后的信息放到SD卡中存储并显示到LCD触摸屏。此外,ARM9也可接收来自LCD触摸屏的信号,比如查看某个动物某次搜索食物所花费的时间等,ARM9读取SD卡的数据并显示到LCD触摸屏上,从而完成信号的交互。其组成框图如图2所示。
图2 总控的硬件组成框图
为便于使用,对WINCE系统进行剪裁和移植,从而形成良好的人机交互界面,系统开机后,直接进入测量控制界面,这部分将在软件设计部分详细说明。
3.1.2 下位机分控部分
下位机分控部分主要负责产生随机信号、计时等,其主要包括主控制器MCU和基于阵列微动开关的触控信号板两部分。当动物触摸触控信号板时,触发中断,产生计时开始/结束信号,并将其传输给MCU处理。当MCU接收到开始信号时,产生A/B/C/D等随机信号,并通过PT2262/2272将信号传送给分端,并使用内部的计时器开始计时;当MCU接收到结束信号时,停止计时,并将测量数据通过NRF-905无线通信模块传送给手持总控端。其系统构造和连接图如图3所示。
图3 下位机分控硬件组成框图
3.1.3 分端部分
分端部分主要负责接收来自分控的随机报警触发信号、产生灯光报警信号、产生并处理解除报警信号等,其主要由微控器MCU基于阵列微动开关的触控信号板、灯光声音报警电路组成,如图4所示。当MCU通过PT2262/2272接收到分控的随机信号后,触发中断,产生灯光报警信号;当动物触摸信号板时,触发中断,产生警报解除信号,通过PT2262/ 2272发送到分控,分控记录当前时间;当动物离开触摸面板后,通过MCU解除灯光报警信号。
图4 分端硬件组成框图
3.2 软件功能模块
3.2.1 WINCE系统的裁剪定制和WINCE软件开发
相对于LINUX平台,WINCE系统平台的支持特性要简单一些,开发周期短,可以根据自己的需求开发功能和模块并进行相应的注册和编译,从而完成WINCE系统的裁剪和定制。
3.2.2 NRF-905无线模块SPI总线流驱动程序的实现
上述所有软件和NRF-905无线模块的SPI总线流驱动是在EVC 4.0环境下进行编写的。驱动程序将外设抽象为一个文件,应用程序使用操作系统提供的文件对外设进行访问。在具体实现时,流驱动程序使用固定模式的流驱动接口函数:XXX_Init、XXX_Deinit、XXX_PreDeinit、XXX_Open、XXX_Close、XXX_PreClose、XXX_Read、XXX_Write、XXX_Seek、XXX_IOControl、XXX_PowerUp、XXX_Power-Down,其中XXX代表该设备在注册表中的名字。通过这些接口函数,实现操作系统对外设的控制。NRF-905无线模块的SPI总线流驱动程序部分实现如下:
(1)打开设备
打开上下文的句柄保存在中hOpenFile中。
(2)读取Flash的ID号
&OP_READID,4,&id,sizeof(id),&dwNumOfRead,NULL);其中OP_READID是读取ID命令字,返回的ID号保存在变量id中。
(3)擦除设备
EraseData包含了擦除设备命令字和擦除地址。
(4)写入待测数据
TransArray中包括写Flash的命令字、写入地址和准备好待测数据。
(5)读取待测数据
其中ReceBuffer是应用程序准备的缓冲,用于存放先前写入到Flash中的数据。
3.2.3 下位机分控的高精度计时软件
下位机采用ST公司的32位MCU,外接贴片石英晶振。考虑到夏天和冬天的温差和环境的变化,所选晶振满足老化率最大为:±3ppm/year,频率偏差为±10ppm。
利用MCU计时器计时,精度可达到us级,完全满足测试要求。
通过基本分析,可以保证测试精度在200s内的误差不超过2ms,可以满足实际应用中的高精度计时要求。
3.2.4 分端软件
分端软件的编写比较简单,在此不做赘述。
该基于嵌入式平台的动物能力测试仪器安装方便,全部采用电池和外接电源两种供电方案,携带方便,手持总控端、下位机分控端和分端全部采用无线通信方式从而可以自由调整距离,良好的人机交互界面使得操作简单,智能化程度较高。
测量的全过程,数据全部由系统统计与记录,可以为组织者免去繁重的体力劳动且测量结果更加精确客观。此外,该系统可以根据每种动物定制测试,测试系统不需要做太大改进就可以应用于多种动物学习能力的测量,可扩展性较强。
[1]蹇兴亮.单片机定时中断的精确定时编程方法种种[J].单片机与嵌入式系统应用,2004(8):70-71.
[2]姜波.WindowsCE.NET程序设计[M].北京:机械工业出版社,2006.
[3]讯通电子科技有限公司.Nordic NR F905数据手册[Z].北京:讯通电子科技有限公司,2005.
[4]罗健飞,吴仲城,沈春山,等.基于AR M和WINCE下的设备接口驱动设计与实现[J].自动化与仪表,2009(3):1-3.
[5]何宗键.WindowsCE嵌入式系统[M].北京:北京航空航天大学出版社,2006.
Animal StudyAbility Measuring Instrument Based on Embedded Platform
Liu Yuanbo
(Yulin No.1 High School in Shaanxi Province,Yulin 719000,Shaanxi)
tract】 Aiming at the problems of animal study ability measuring instrument,such as inaccurate and intelligent testing,this paper develops a measuring instrument based on ARM9 and WINCE,which has the advantages of high precision timing,intelligence controlling,storable and wireless.Experimental tests show that the embedded platform performs stable.The test data accuracy is up to 4ppm.
words】 animal study ability;measuring instruments;embedded platform
TP274.4
A
1008-6609(2016)09-0047-03
刘渊博,男,榆林人,研究方向:计算机信息。