基于ARM9的便携式电子控制器检测系统设计❋
2016-11-28秦文姬黄国兵彭易博
秦文姬,黄国兵,彭易博
(西安工程大学计算机科学学院,西安710048)
基于ARM9的便携式电子控制器检测系统设计❋
秦文姬,黄国兵,彭易博
(西安工程大学计算机科学学院,西安710048)
为确保飞机和机上人员的安全,其发动机的电子控制器的性能指标和运行状态必须得到有效的监控。介绍了一种基于ARM9的便携式电子控制器的检测方法,着重描述了该检测系统的硬件平台的研究与设计。系统采用了AT91SAM9263 ARM9微控制器为核心搭建硬件平台,实现了AO、DI、DO等过程通道,以太网通讯技术作为传输手段,实现发动机运行的仿真参数的输出和电子控制器运行状态检测和控制。实验表明,该系统具有便携、易操作、控制精度高和可靠性高等特点。
电子控制器;ARM 9处理器;过程通道;Linux移植;数模转换器DAC7568
1 引 言
随着电子控制器用户使用数量的增加及产品出口的出现,主机厂及用户对便携式检测器的需求与日俱增。发动机作为飞机的关键设备,其电子控制器检测设备的研发成为该领域的研究热点[1-3]。根据项目组实际调研,目前市场上发动机控制器的通用测试方法多采用多台仪器联合检测法[4-5]。由于该方法使用设备过于庞大、所需测试条件不便利等因素,导致电子控制器测试不宜于现场在线检测,必须在实验室完成,以致检测过程繁琐,效率低下,很多方面已经不能满足用户的需求。
针对上述存在的问题,开发设计了一款基于ARM9的便携式电子控制器检测系统。该系统能仿真发动机产生试车参数,能够在不使用发动机的情况下全面检测控制器的控制功能,绘制检测曲线,自动记录检测数据,存储检测数据,并可以查看和打印检测报告,有效帮助检测人员分析判断电子控制器是否存在故障。还可以下载电子控制器记录的发动机运行状态曲线,对发动机的运行状态进行及时在线检测。检测时间短,准确性高,能够正确引导工作人员及时进行调整和处理故障。
2 系统结构及工作原理
该检测系统主要包括以下模块:控制模块(控制芯片AT91SAM9263)、D/A数模转换模块、数字量输入/输出模块、模拟量输入/输出模块、UART串行通信模块、以太网通讯模块、USB模块和LCD显示器模块等。
该系统以ARM微处理器AT91SAM9263芯片为核心专用计算机,通过AO和MUX分时向多个通道发送发动机启动过程中的状态参数,同时采用AI和DI过程通道实时采样、显示和记录发动机启动过程中的状态参数,以便判断发动机和电子控制器的工作状态是否正常。同时,该计算机还需要下载并显示电子控制器记录的发动机运行状态曲线,向电子控制器下载控制程序,指定当前运行的控制程序。另外,使用DO过程通道实现信号选择开关、通讯自检信号控制开关、起动按钮等功能。AI/O,DI/O过程通道需根据信号特征和实时性指标专门设计。而计算机系统的异步串口、网口、USB、键盘、鼠标、液晶显示器等外设接口,采用开发板提供的标准设计方案即可。系统工作原理图如图1所示。
图1 系统总体框架图
3 硬件电路设计
3.1ARM9 CPU板和周边电路设计
作为整个硬件系统的核心控制部分,该部分主要包括了CPU的选择和配置以及设计周边电路包括RS232接口、以太网接口、JTAG接口、USB接口扩展等。介于篇幅有限,在这里重点介绍一下相对复杂的CPU的选择和配置、RS232接口以及USB接口扩展电路的设计。
3.1.1CPU核心板的选择及接口电路
作为整个硬件平台的核心,CPU的选择至关重要。基于安米公司MDK9263核心板上扩展了存储器使得软件系统可以直接运行,这样硬件平台的设计就直接简化为外部通道扩展设计,大大节省了产品设计周期。因此,为简化硬件系统设计,项目组采用该核心板作为硬件平台的中央处理器。MDK9263核心板上载有ARM9处理器,64MB SDRAM,128MB NAND FLASH,10M/100M网络以及丰富的Linux软件资源,应用扩展非常方便[6]。该板上的ARM9处理器采用ATMEL公司AT91SAM9263芯片,片上载有USB HOST,USB Device,CAN,以太网,EBI总线,3个USART,DBGU,SPI等丰富的资源,具有体积小、低功耗、低成本和高性能等优点[7-11]。
MDK9263核心板通过两个100针1.27间距的双排连接器实现GPIO和外设控制器信号引出。根据应用需要,模板使用其中的部分信号,包括GPIO、SPI、网络、TFT、JTAG等。与MDK9263核心板对接的连接器电路原理图如图2所示。
3.1.2RS232接口
为了实现目标机信息下载和应用软件上传,主板设计了一个RS232接口与目标机通信。另外,为了实现Linux操作系统的超级终端接口,同时扩展了另一路RS232接口,两个接口可以并行工作。
RS232接口电路采用SP202E实现,该芯片实现了2组收发信号的电平转换,正好可以实现两个简化的RS232通道接口。
3.1.3USB接口扩展
由于检测系统的鼠标、键盘、打印机、U盘均需要USB接口连接,而AT91SAM9263自身只有两个主方式USB接口,显然不能满足当前需要,因此必须扩展USB接口的数量。方法是通过一个USB HUB(1:2)电路扩展出来两个USB接口,这两个接口用于连接键盘和鼠标。
MDK9263核心板内置两路主方式的USB控制器,其中1路直接引出,另一路接USB HUB扩展成两路USB接口,用于外接U盘、键盘和鼠标。
3.2电源系统设计
整个检测仪的电源设计分为外部供电设计和内部电压转换设计。
外部供电方案:根据协作企业提供的工作电压为+27V,为方便用户在使用过程中更容易找到供给电源,计划采取双电源供电方案(AC220V和DC27V)来解决外部供电问题。当两路电源都正常时,系统自动取其中一路电源供电;当主供电源异常时,系统自动切换到备用电源工作。
内部供电方案:检测仪内部共需+12V、+5V、+3.3V三种不同电压,它们分别用于液晶显示器供电、数模转换模块供电以及CPU供电。根据检测系统内部模块的电源需求各不相同,计划采用内部电压转换模块方案将+27V转化为各个模块所需电压来解决内部供电问题。
图2 与MDK9263核心板对接的连接器电路原理图
根据上述电源设计方案,需要在机箱内部安装合适的电源模块,但电源模块体积较大,而机箱内部空间有限会影响到主板的设计安装。通过与用户协商,最终采用AC220Vto27V电源适配器给检测系统供电,这样大大简化了供电系统的设计。
最终采用的电源设计方案为:机箱上安装一个3P的航空插头接入27V电源,如果接入AC220V电源,则需通过电源适配器连接,否则可直接连接27V电源。
3.3过程通道设计
检测系统的过程通道包括AO、DI和DO三大部分。AO过程通道的主要功能是将已经采集好的发动机状态参数,通过数模转换,转换成电子控制器能接收的模拟量。DI过程通道的主要功能是接收电子控制器反馈的发动机运行状态信息。DO过程通道主要用于人机交互时的状态设置。下面分别介绍这三个过程通道的工作原理。
3.3.1AO过程通道
检测系统要同时或分时产生4台发动机的转速和温度曲线,而这个过程需要用AO过程通道实现。根据项目需要输出9路模拟量信号和CPU的接口资源,因此需采用两片模数转换器DAC7568扩展实现。DAC7568内部集成了8个独立的12位DAC,满足输出精度要求。如果需要提高输出精度,相同封装的14位/16位DAC转换器可以直接替代,设计冗余度大。这里以其中2路模拟信号输出为例介绍AO过程通道的工作原理,如图3所示。
DAC7568采用SPI同步外设总线与CPU连接,两片DAC7568连接在同一条SPI总线上,采用片选信号进行分时访问控制,图3中的片选信号为PB15。SPI的时钟线为SCLK(PB14),数据线MOSI为PB13。数据通信采用单工方式,即数据只从CPU发送到DAC7568。PB17为DA输出清除控制线。
根据目标机输入信号或者发动机传感器输出信号的特点,这里使用运算放大器对输出信号的范围进行调整。DA输出标定时以DAC7568的满码值为准,其输出范围为0-5V,对应目标机的输入范围,采用分压和比例缩小进行量程范围的调整。
3.3.2DI过程通道
发动机的运动状态是否正常以及是否要进行切油工作或者进入等待运行状态,这些信号均由DI过程通道实现。根据系统需求,硬件平台共需实现10路DI过程通道,用于采集监视目标机的输出状态。由于DI信号的驱动电平为27V,为了实现信号转换,需采用光电耦合器将27V电源转换到5V电源,并实现信号隔离,提高过程通道的抗干扰能力。
DI回路的限流电阻为3K,驱动光耦的电流约为9mA,符合光耦驱动电流的要求。回路中的电容和限流电阻构成RC滤波电路,过滤回路中的干扰信号。反接二极管用于保护光耦的发光管,在出现过高的反向电压时,二极管导通,避免反向电压加载光耦的发光管,造成光耦发光管的永久损坏。回路中的磁珠用于吸收高频干扰信号。
输出回路中的上拉电阻用于确定光耦的输出状态,光耦内光敏管导通时采集点处于低电平,截止时处于高电平。光耦输出的数字信号直接连接到CPU的GPIO引脚,实现输入信号的采集访问,DI过程通道实现原理如图4所示。
图3 AO过程通道工作原理图
图4 DI过程通道
3.3.3DO过程通道
DO过程通道主要实现人机交互时的状态设置。通常情况下,检测系统上的状态设置多采用按键、旋钮和波段开关设置。由于便携式检测系统上的空间很小,不适合安装这些组件。于是,决定采用软件界面设置,硬件上通过继电器触点给定设置状态的方案解决此问题。
DO过程通道采用DS1E-S-24V继电器进行触点信号输出,该继电器的线包能承受30V输入电压,直接采用检测系统内的27V电源驱动。电路中设计了一个200欧电阻进行分压,来降低线包两侧的电压,用于将其控制在标准的24V。继电器线包两侧反接的二极管为泄放二极管,在控制继电器触点打开时,放掉线包中储存的电量,防止继电器触点不能分开或延迟分开。
为了推动继电器分合,这里采用PS2702带达林顿输出的光电耦合器,采用这种光耦设计开关量过程驱动通道可以大大简化电路设计。CPU通过GPIO管脚控制继电器的分合操作。光耦驱动采用74LVC125实现,提高GPIO管脚的驱动能力。DO通道的原理图如图5所示。
4 软件设计
由于Linux免费开放源代码,不仅显著降低了嵌入式操作系统的使用成本,而且还能实现复杂程序的处理,因此Linux正在成为越来越多公司的软件平台[12-14]。本检测系统以嵌入式Linux操作系统为软件平台,使用C和汇编语言编程。根据嵌入式系统对功能、体积、资源等方面要求严格的特点,检测系统根据软硬件的需求,对Linux内核进行定制,裁掉多余的功能模块,降低成本的同时提高了执行效率[15-16]。这里以编译裁剪和移植为例,其过程如下:
(1)安装虚拟机,安装Red Hat企业版5,下载相关软件包。
(2)安装工具链,根据工具链创建软连接,输入命令如图6,连接结果如图7所示。
(3)在系统路径下添加工具链路径:在bashrc文件中添加/9263/codesourcery/bin。
(4)为本开发平台安装厂家提供的补丁包,只有安装过补丁的系统才能正常工作。
(5)更改时钟频率(18.432MHz),编译bootstrap。
(6)为了适应控制器设备硬件平台,需要删除原有配置,重新对Linux进行相应配置,并对相关功能进行裁减。输入如图7所示的配置命令进入配置环节,选择移植的硬件平台Atmel AT91SAM9263,修改所需的其它配置及相关参数,然后对其进行编译生成zImage。首次编译比较耗时,大约需要20分钟。
图5 DO过程通道电路原理图
图6 创建软连接命令
图7 配置命令
(7)在本平台下需要将zImage编译成uImage,复制mkimage到Linux对应的boot目录。
内核经裁剪后编译形成镜像文件,再通过超级终端将编译好的系统镜像烧录到目标机中。在完成Linux操作系统剪裁制作之后,装入到所设计、生产好的硬件平台,Linux操作系统能正常引导运行,超级终端显示的信息正常。
5 测试和结论
该系统采用ARM9处理器集成SOPC系统,很好地解决了电子控制器检测系统的电源设计以及过程通道问题,方便快捷地完成了电子控制器的现场检测工作。下面给出了三个通道中最复杂的AO过程通道测试的实验结果。
CPU采用SPI接口与DAC7568通信,将设定参数传递给DAC7568,通过DAC7568数模转换实现模拟量输出。对于SPI通信接口调试,采用逻辑跟踪仪配合软件开发人员监视通信时序,检验软件输出波形的正确性,如图8所示。软件开发人员借助于Linux自带的SPI驱动程序,向DAC7568发送输出命令,控制DAC7568按指令输出。在完成AO软件设计之后,和软件开发人员协作,完成AO通道的标定和曲线数据连续输出测试。表1给出了一小部分标定结果,根据结果可知,各数模转换器的系统标定测量值与标定值的误差在允许范围之内。图9给出了连续测试曲线,输出测试采用高精度Fluke测试仪,检验输出精度和响应的实时性。
表1 AO过程通道标定结果
图8 逻辑跟踪仪记录的SPI通信时序图
图9 逻辑跟踪仪记录的SPI通信时序图
6 结束语
实验表明,该系统能够实现电子控制器参数的实时采集、传输、显示,较好地完成了电子控制器的检测工作。该系统不仅实现了小型化和便携化,而且能满足检测系统的分析性能要求,完全适用于电子控制器的现场检测。
[1]张伟,周凤星,严保康.基于ARM9和Linux的机械故障诊断仪的设计[J].电子技术应用,2014,40(8):76-79.Zhang wei,Zhou Fengxing.Yan Baokang.Design of mechanical fault diagnosis instrument based on ARM9 and Linux[J].Application of Electronic Technique,2014,40(8):76-79.
[2]蔡锦达,齐建虹,顾豪.基于ARM9的滚筒式生物芯片点样仪的研发[J].仪器仪表学报,2013,34(10):2198-2203.Cai Jinda,Qi Jianhong,Gu Hao.Research and development of roller biochip microarrayer based on ARM9[J].Chinese Journal of Scientific Instrument,2013,34(10):2198-2203.
[3]WANG J N,WANG W.The Common Data Acquisition System Based On ARM9[C].//The tenth International Conference on Electronic Measurement&Instruments.Chengdu,2011:324-327.
[4]刘军山,王宁,徐征,等.基于ARM9的便携式电容耦合非接触电导检测器[J].分析化学,2013,41(4):616-620.Liu Junshan,Wang Ning,Xu Zheng,et al.A Portable Capacitively Coupled Contactless Conductivity Detector Based on ARM9 Microprocessor[J].Chinese Journal of Analytical chemistry,2013,41(4):616-620.
[5]温宗周,刘国旭.基于以太网的电网电力参数在线监测装置设计[J].微型机与应用,2012,31(24):84-86.Wen Zongzhou,Liu Guoxu.Design of on-line monitoring device of grip power parameters based on the Ethernet[J].Microcomputer&Its Applications,2012,31(24):84-86.
[6]章国平.MDK9263核心板板载资源[EB/OL].(2014-10-11)/[2015-02-20].http://detail.1688.com/offer/431992585.html.Zhang Guoping.Hangzhou ARM Electronic Co.,Ltd.[EB/OL].[2015-02-20].http://detail.1688.com/offer/431992585.html.
[7]周立功,等.ARM嵌入式系统基础教程[M].北京:北京航空航天大学出版社,2005.Zhou Ligong,et al.ARM Embedded System Basic Course[M].Beijing:Beijing University of Aeronautics and Astronautics Press,2005.
[8]马忠梅,李善平,康慨.ARM&Linux嵌入式系统教程[M].北京:北京航空航天出版社,2004.Ma zhongmei,Li Shanping,Kang kai.ARM&Linux Embedded System Basic Course[M].Beijing:Beijing University of Aeronautics and Astronautics Press,2005.
[9]WANG H Z,YAN P,YU H L,et al.Civil Air Defence Alarm System Based On Embedded Linux[C].The 11th IEEE International Conference on Electronic Measurement&Instruments,Haerbin,2013:697-699.
[10]LAN J L,SONG G,JIANG L,et al.Design and Implement of ARM-Based Tobacco Feeding Control System[C].the 25th Chinese Control and Decision Conference,Guiyang,2013:510-513.
[11]陈天华,唐海涛.基于ARM和GPRS的远程土壤墒情监测预报系统[J].农业工程学报,2012,28(3):162-166.Chen Tianhua,Tang Haitao.Remote monitoring and forecasting system of soil moisture based on ARM and GPRS[J].Transactions of the Chinese Society of Agricultural Engineering,2012,28(3):162-166.
[12]Texas instruments[EB/OL].[2015-03-01].http://www.ti.com.cn/product/cn/dac7568?DCMP=PPC_ Google_TI&k_clickid=0cc3b8c4-5ae4-3388-830a-00004fa2d63b.
[13]耿道渠,郭春,李小龙,等.基于ARM9的嵌入式Linux系统移植研究与QoS功能实现[J].四川大学学报(自然科学版),2014,51(4):719-724.Geng Daoqu,Guo Chun,Li Xiaolong,et al.Research on the transplantation of the embedded Linux system and QoS functions realization based on ARM9[J].Journal of Sichuan University(Natural Science Edition),2014,51(4):719-724.
[14]赵春媛,李萌,韩会山,等.基于ARM9的无线视频监控系统设计与实现[J].计算机工程与设计,2012,33(2):529-534.Zhao Chunyuan,Li Meng,Han Huishan,et al.Design and implementation of wireless video monitor system based on ARM9[J].Computer Engineering and design,2012,33(2):529-534.
[15]卞芸.ARM9平台上的嵌入式Linux系统移植研究[D].重庆:重庆大学,2011.Bian Yun.embedded Linux system's Transplantation based on ARM9 platform[D].Chongqing:Chongqing university,2011.
[16]WU Y,WU T,LIU P.Smart Home System Based on ZigBee and ARM[C].The 11th IEEE International Conference on Electronic Measurement&Instruments.Haerbin,2013:772-777.
Design of Portable Electronic Controller Detection System Based on ARM9
Qin Wenji,Huang Guobing,Peng Yibo
(Institute of Computer,Xi'an Polytechnical University,Xi'an 710048,China,China)
In order to ensure the safety of the aircrafts and the crews,the performance and operational status of the engine's electronic controller must be validly monitored.A portable electronic controller detection system based on ARM9 is introduced in this paper,and hardware platform design is emphatically described.Using the AT91SAM9263 ARM9 microcontroller as the core of the hardware platform and Ethernet communication technology for transmission,the system completes the AO,DI and DO processes channel and achieves output of the engine's running simulation parameters,and monitoring and controlling for the electronic controller operating status.The experiments show that the system has advantages such as portable and easy operating,high precision and reliability.
Electronic controller;ARM9 processor;Processes channel;Linux transplant;DAC7568
10.3969/j.issn.1002-2279.2016.05.019
TP368.1
A
1002-2279(2016)05-0078-06
❋2016年陕西省大学生创新创业训练计划项目
秦文姬(1981-),女,山西省临县人,讲师/硕士,主研方向:计算机测控、嵌入式系统应用。
2015-12-22