1.浙江工业大学软件开发环境重点实验室,杭州310014
2.公安部第三研究所,上海200031
摘 要: 介绍了离子迁移谱仪嵌入式系统工作原理及其核心部件嵌入式处理器和操作系统的选择,对系统的硬件结构和软件任务模块设计作了重点阐述,特别是对系统的核心CPU处理模块及关键技术作了详细介绍。
关键词: 嵌入式;波峰位置;离子信号;迁移时间
离子迁移谱仪是一种利用IMS(离子迁移谱)技术的专用探测仪,可用于探测样品气体中的微量成分,也可探测空气中的污染物或爆炸物,以及用于麻醉品和毒品的探测。离子迁移谱技术是一项专门的新型技术,以在确定的温度、气压、电场条件下,通过精确测定离子在电场作用下穿过固定距离的迁移时间,来确定被测可疑物质中是否具有某些化学成分的分子。因为不同物质的迁移率具有惟一性,所以其迁移时间也具有惟一性。IMS技术与计算机技术的结合,应用于专用探测仪研制是一个全新的课题。其中,对于迁移时间的精确测定要求该仪器内部的计算机模块具有快速的实时响应速度和高可靠性,涉及到对离子信号的正确提取,大量实时数据的读取、分析和处理,以及对系统中一些设备的实时监控。
1 系统工作原理
在仪器的硬件结构中,离子迁移管是离子形成和漂移的场所,是其中较重要的组成部分,其基本结构如图1所示。
根据IMS技术的基本原理,(见图1),样品分子在离化区里充分离化后,开启格栅离子门,并计时,离子同步进入迁移区中进行漂移,对于同一种物质分子的离子,其到达法拉第盘的时间是相同的,并由法拉第盘把采集到的离子变成电流。因而可通过不断测量输出信号强度,即电流来判定离子迁移时间,迁移时间就是产生瞬时强电流信号的时刻。一般,在4~20 cm长的迁移区域中,可获得5~20 ms的迁移时间。在系统中,迁移区的长度约为7 cm,每25ms开启离子门信号一次。因此,以25 ms为采样周期,采样离子输出信号,由此可得时间/电流二维关系波形图,称之为等离子图,其时间轴长度为25ms,其中必包含至少一个波峰(即强电流)。
由上述基本原理,该系统的工作原理如下:通过细节匹配,对离化后物质的等离子图的波峰位置(即物质的迁移时间)的提取来鉴定物质的具体成分。系统具体的原理框图如图2所示。
等离子图处理:去除等离子图中的干扰(如离子门开启和关闭时电压脉冲所造成的噪声),主要采用滤波技术,使其显现为一幅清晰的点线图,从而可以正确的提取出等离子图中的波峰位置。对等离子图的正确处理,将直接影响到检测结果的准确性,具有重要意义。
数据库的建立:就已知样品,对其等离子图正确处理之后,提取出它的特征点,即波峰位置,连同它的名称、峰值一并存入数据库(存放于FLASH中),作为比对模板。
由于物质的迁移时间还受大气压、温度等的影响,在实际比对过程中,还需对数据库中取出来的比对模板进行校正,并就一定的匹配条件进行比对。
2 系统定制
2.1 嵌入式处理器的选择
由于系统工作时,处理器承担着大量的计算分析任务,因此,对处理器的性能有较高的要求(大于50 Mbps),并须内置一定容量的缓存。另外,处理器要与大量外设相连,要求它有丰富的片内资源,同时内置一些常见接口。比较市场上各个主流产品,选择三星公司的S3C44B0X。该嵌入式微处理器有如下特点:内核是带有8 K缓存的ARM7TDMI,工作主频可达66 MHz,有专用JTAG调试端口;内置LCD控制器、DMA控制器、串口、定时器、10位AD转换器、实时RTC、看门狗电路等;具有外部存储器(FP/EDO/SDRAM)相连的接口,支持IIS和IIC接口;售价仅为8美元,具有较高的性价比。
2.2 嵌入式RTOS的选择
离子迁移谱仪嵌入式系统,对容量和速度要求较高,不仅要实时数据处理,还要对多个参数进行控制,单任务环境已不适应它的需求,必须采用多任务体制来提高系统的实时性。为了保证系统的可靠性,提高开发效率,缩短开发周期,需要在嵌入式处理器上运行嵌入式实时操作系统,形成完整的系统平台。为此,选择嵌入式实时操作系统NucleusPLUS。其95%的代码是用ANSIC写成的,非常便于移植并支持大多数类型的处理器。在典型的目标环境中,Nucleus PLUS核心代码区一般不超过20 K字节大小,内核规模非常小。并且,Nucleus PLUS采用了软件组件的方法,其组件包括任务控制、内存管理、任务间通信、任务的同步与互斥、中断管理、定时器I/O驱动等。通过这些组件,在离子迁移谱仪系统中,Nucleus PLUS可以完成以下功能:建立起软件系统和硬件系统之间的连接;响应系统外部事件;协调系统各个任务模块之间的调度。
2.3 系统硬件结构设计
(1)系统组成。如图3所示,以5个按键作为输入接口,完成查询、信息切换、简单设置等功能,以250×160的黑白LCD屏实时显示当前操作状态、信息等。其中驱动采样板的主要功能是电流驱动采样离子迁移管的离子信号,同时对温度传感器、气压传感器等采样的模拟量起放大作用;高压发生模块通向离子迁移管,使其产生高压电场,从而保证物质分子充分离化。
(2)CPU主控模块。CPU主控模块是离子质谱仪的心脏部分,它的组成框图如图4所示。CPU主控模块主要完成下面3个任务:
1)实时地管理和监控系统中的所有设备。系统有大量的实时控制要求,例如离子管上温度的恒定控制;维持气路的恒定流量;还包括对系统中的高压电源、整机电流、整机温度、试纸状态、按键等实时跟踪和控制。
2)人机操作界面。CPU要完成大量的菜单图形显示任务,并根据用户所下达的指令,完成相应的操作任务,同时将结果、状态显示于屏上。
3)完成对离子信号的采样、等离子图显示和计算分析任务。
(3)离子信号采样。离子信号的采集是系统的关键之一,经滤波整形后的离子信号通过模数转化,被处理器存储到SDRAM中。然而,对离子信号的数字化除了在量化精度、模数转化时间方面有较高要求外,同时还对采样的时间间隔有着严格要求,这利用处理器内部的通用定时器是无法完成的,往往需要特定的逻辑器件来完成这部分功能,这部分电路由可编程器件来实现。另外,离子信号采样量较大,在被采样到SDRAM的过程中,需要处理器频繁地读取A/D数据,这对处理器是个不小的负担,为此,利用单片机内部的DMA控制器,用A/D转换器的Busy信号触发DMA控制器读A/D转换数据,并存到SDRAM中,从而大大地减少了处理器的负担。
2.4 系统软件设计
(1)软件设计要求。根据离子迁移谱仪的工作原理,在软件设计时,要让系统启动时对各个管道(tube管、校准管、注入管)进行加热,并将它们的温度控制在某一个定点,与此同时,不断读取离子管内的信号,并以等离子图的形式显示在LCD屏上。在满足离子管工作分析条件后,控制马达,以及离子管内的泵、阀等,同时加热解析管温度到一定点,此时可以对样品进行分析。最终,在LCD屏上,分别以状态、等离子图、结果等分屏显示,通过5个按键在各个屏之间切换。
(2)建立BSP。根据RTOS的编程模型,软件设计分两步走,首先建立BSP。即根据目标环境进行系统配置,建立板级支撑程序BSP(相当于标准PC的BIOS)。主要完成系统初始化及与硬件相关的设备驱动,引导目标机硬件到一个确定的状态。分别以Board_Init(),INT_Initialize(),UARTInit(),LCDInit()等来实现。其次,关键的是任务的正确划分和实现。
(3)任务模块设计。依据DARTS[1]设计方法,在离子迁移谱系统中主要划分成以下任务模块设计实现:
·温度数据采集任务 以160 ms为采样周期,采集试管、校准管、注入管等的温度,该任务的优先级最高,数据采集的速度相对较快,每个采样周期中剩余的时间留给其他任务使用。
·离子信号数据采集任务 以25 ms为一采样周期,采集离子管内离子输出信号,并作数据保存。它与上一任务有相同的优先级。
·控制任务 根据采样所得到的温度值与设定的温度值比较,对试管、校准管、注入管温度通过不同的调节参数进行调节。它的优先级也设为最高。
·报警任务 报警任务并不经常发生,但当它通过提取等离子图中的波峰位置,检测到任何违禁品时,必须及时处理,所以其任务优先级也设为最高,并在前台执行。
·显示任务 对各个状态(如管道温度、环境温度、电压、大气压等)、等离子图、检测结果等的显示,可随时观察任意部分的变化情况。这个任务不是临界的,所以其优先级相对上几个任务要低。
·等离子图处理任务 去除等离子图中的干扰、毛刺,利于波峰位置的判别。其优先级同上一任务。
·参数整定任务 其功能是通过按键在线设定等离子图上的一些控制参数,即调整光标位置、电压幅度、时间宽度等值,它的执行不影响其他任务的临界时间,其优先级也较低。
·数据记录任务 把已知样品所测得的波峰位置记录与存放在FLASH的数据库中。同样,它的执行也不是临界的,优先级较低。
以上各个任务均在Application_Initialize(void*fist—available—memory)中定义,根据软件设计要求,其中温度数据采集任务、离子信号数据采集任务、控制任务、显示任务作为系统的主任务程序,即一旦系统启动,就启动了这几个任务。
(4)等离子图处理及波峰位置提取算法。对等离子图处理将直接影响迁移时间的提取,该部分是软件实现的难点之一。一个周期内采样的离子信号所产生的等离子图,往往具有干扰,含有许多毛刺,无法正确判断出波峰,也就无法得到迁移时间。为此,一个周期取1 000个采样点,首先采用算术平均滤波法,对多个周期的采样信号做算术平均:y[i]=(y1[i]+y2[i]+……+yn[i])/n,去除随机干扰信号;而后,采用横向平均滤波法:y[i]=(y[i+1]+y[i+2]+……+y[i+m])/m,减少等离子图上的毛刺;在此基础上,再将多个由上述方法得到的y[i]值作平均。经过采样值的多次处理后,可得到相对清晰的等离子图。而要正确提取波峰位置,关键是要找出波峰。对波峰的提取,并非找最大值问题,因为当物质含有多种成分时,会出现多个峰,根据物质的基本性质,其所含成分一般不超过20种,所以可找出最多20个波峰。另外,处理后的等离子图也不是毫无毛刺,相距几十微秒的两个峰往往只有一个是真正的峰。为解决这一难题,首先找出第一个波峰,采用试探法测出这个峰的大致宽度,再找出假想的第二个峰,若两个波峰之间的距离小于第一个波峰的宽度,则抛弃第二个峰,继续找,否则,保留第二个峰,继续找第三个波峰,此时以与第三个峰相邻的峰的宽度作为比较对象;以此类推,直到找完所有的波峰为止。找出了波峰,波峰位置即迁移时间也就容易获得了。
3 结束语
IMS技术是当前国内外研究的热点,把它与计算机技术相结合应用于实际产品的研制,是一新的较前沿的研究领域。文中主要介绍了采用IMS技术,基于实时多任务操作系统的离子迁移谱仪嵌入式系统的设计,在不久的将来,它将在毒品、爆炸物等探测领域发挥用武之地。
参考文献
[1]唐寅.实时操作系统应用开发指南[M].北京:中国电力出版社,2002.
[2]探矽工作室.嵌入式系统软件开发圣经[M].北京:中国青年出版社,2002.
[3]蒋书波,张焕春,经亚枝,等.实时操作系统用于嵌入式应用系统的设计[J].电测与仪表,2001,38(428):41.
[4]G.A.Eiceman.Ion-mobility spectrometry as a fast monitor of chemical composition[J].trendsin analyticalchemistry 2002,21(4):259.
摘自《工业仪表与自动化装置》