王丰
(中国航天科技集团北京航天长征飞行器研究所,北京,100076)
电子电气产品的研制调试不同于结构等其他产品,很多的数据看不见,摸不到,而且电子电气产品的可能故障点非常多,光是芯片的引脚就有几百个,任何一点的虚焊,都会引起难以排查的故障。况且电信号的速度非常的快,很多的现象都是毫秒、甚至微妙级,转瞬即逝,有的故障现象还是概率性事件,只有达到一定的测试次数才会复现,因此电子电气工程师排查电气系统的故障都必须使用专门的调试设备。
现阶段比较普遍使用的测试设备是三用表和示波器。三用表使用简单,价格经济便宜,可以检测电压信号、电流信号、测量电阻的大小;示波器的使用门槛比较高,价格比较昂贵,可以检测微妙甚至纳秒级的电信号,测试电压范围宽,采用率高,很多高端的产品还可以进行信号时域和频域的转换。但是这两种产品都存在一个共同的缺点,就是不能够将采集的数据长时间存储并回放,这就给工程师带来了麻烦。电子电气产品中产生了概率性的问题后往往需要大量长时间的测试用于产品故障复现,为了抓住产品故障状态下的信号波形,就需要对信号进行长时间监测。
现阶段在市面已经存在具有数据采集存储功能的测试仪,例如日置公司的数据存储记录仪MR6000、HBM公司的GEN3i,产品虽然能够实现数据的采集存储,但是成本很高,不低于30万,创业型小公司或者个人试验室往往无法承受;并且产品体积大、重量大、便携性不好。
基于上述产品的缺点,现设计一款成本低廉、便携性好的基于通用总线技术的数据记录存储模块(以下简称数据记录存储模块),采用计算机通用总线传输数据,与笔记本电脑配合使用,发挥计算机总线的高速特性、大容量硬盘的存储技术和Windows操作系统下成熟数据处理软件技术,对测试数据进行大量存储和精确分析,同时显著降低产品成本。
三用表、示波器、数据存储记录仪以及数据记录存储模块的优缺点比对,详见表1。
表1 各种数据记录仪特性比对
经过表1的比对分析得出,新设计数据记录存储模块的综合性指标要优于其它测试设备,因此开发基于计算机通用总线技术的数据记录模块很有必要。
基于通用总线技术的数据采集模块设计原理详见图1。
图1 模块原理框图
基于通用总线技术的数据记录模块,采用现阶段计算机比较通用的USB总线,因为USB总线多用于笔记本电脑对外接口,接口速度快,连接使用方便,抗干扰能力强,其中USB接口转接RS422接口模块,也是市面很普遍的产品。而且很多的USB转接RS422接口的模块均为免驱动,通用的串口助手等数据存储软件也很多,这为上位机软件的研制减少工作量。
模块的核心设计采用DSP芯片,可以高速处理传输16位数据,并且DSP芯片自带全双工串口,方便扩展RS422接口。AD芯片为12位数据采集芯片,可以实现小数点后2位数的电压精度。由于模块采用RS422接口与上位机笔记本连接,模块本身无法从USB接口取电,因此需要外接交流220V转直流5V电源供电,采用市购通用的220V转5V变压器即可。
数据记录存储模块使用时,将模块与笔记本电脑USB接口连接,模块电源与220V交流电源连接,将两个探针分别连接被测设备的正负点,启动串口助手,设置好通信的波特率和奇偶校验位。将模块配置数据通过串口助手发送至模块,模块配置好后自动开始采集数据,并将采集的数据通过USB接口传送至上位机的串口助手。点击串口助手的数据保存功能,将数据单独存储为文件。用Matlab或者Origin软件对数据进行分析。
本模块的CPU采用TI公司的TMS320F2812DSP芯片。此芯片为高性能32位定点数字信号处理器,内核的指令执行周期达到了6.67ns,最高运行频率可以达到150MHz,保证了控制系统有足够的数据处理能力。此外,F2812集成有许多外设,提供了整套的片上系统,从降低了系统成本,实现更简单、高效的控制[1]。其片上外设主要包括2路SCI,1路SPI,1路McBSP,1路eCAN接口等,并带有两个事件管理模块(EVA、EVB),分别包括6路PWM/CMP,2路QEP,3路CAP,2路16位定时器(或TxPWM/TxCMP)。另外,该器件还有3个独立的32位CPU定时器,以及多达56个独立编程的GPIO引脚。芯片内部有18K的SARAM,包括MO、M1、L0、L1、H0共5个存储块。各存储块保持独立,可以在同一机器周期对不同的RAM块进行访问。而且F2812内部有128K字的FLASH,适用于低功耗、高性能的控制系统。此外F2812提供了外部存储器扩展接口(XINTF),方便进行系统扩展,其寻址空间可以达到1MB。
AD采样电路采用AD7864芯片。AD7864是一款高速低功耗四通道同步采样单5V供电的12位模数转换器。它包含一个1.65μs逐次逼近ADC,四采样保持放大器,2.5V电压参考,时钟振荡器,信号调理电路和一高速并行接口,它可以同步采样四路通道的输入信号以保持四路模拟输入的相对状态信息。AD7864可以接受的输入信号范围为:AD7864-1型 为 ±10V,±5V;AD7864-2型为 0~2.5V,0~5V;AD7864-3型为±2.5V。模拟输入的过电压保护可以允许输入电压分别达到±20V,+20V/-1V,+20/-5V而对器件不产生损害或影响。通道选择可以通过软件或硬件进行选择。AD7864四通道同时工作时,最大采样率可以高达130kHz。
RS422接口芯片采用ADM2587E完全集成式隔离数据收发器,包含一个集成式隔离DC/DC电源,不再需要外部隔离电源模块,是带隔离的增强型RS-485收发器,ADM2582E/ADM2587E是具备±15kVESD保护功能的完全集成式隔离数据收发器,适合用于多点传输线路上的高速通信应用。它采用ADI公司的isoPowerTM技术,在单个封装内集成了一个三通道隔离器、一个三态差分线路驱动器、一个差分输入接收机和一个isoPowerTMDC/DC转换器,该器件采用5V或3.3V单电源供电,从而实现了完全隔离的RS-485解决方案。ADM2582E/ADM2587E驱动器带有一个高电平有效使能电路,并且还提供一个高电平接收机有效禁用电路,可使接收机输出进入高阻抗状态[2]。
嵌入式软件设计采用C语言进行设计,编译器选用CCS3.3版本,软件流程图详见图2。
图2 嵌入式软件流程图
软件下载在DSP芯片中,上电后自动运行。软件运行后,先对DSP芯片和AD芯片进行基本的配置,然后检测是否有上位机通过RS422总线发送来的配置指令,若有则将相应的寄存器置位,同时检测配置信息中是否有开始采集数据信息,若有,则将启动采集寄存器置位。当DSP检测到启动采集寄存器职位后,开始按照配置数据采集数据,并将数据通过RS422接口编帧,传输给上位机[3]。
数据编帧的格式详见表2。
表2 RS422接口数据传输协议
操作系统通过上位机软件将USB接口传输过来的数据解帧,通过操作系统内置函数存储为十六进制文件.dat。当数据量比较大时,可以将数据分包,存成几个文件,便于后续分析和处理。
采集结束时,发送RS422指令,停止数据采集,DSP处于待机状态,继续等待接收新的开始指令。
对5V电压进行采集测试,上位机现实的电压数据曲线详见图6。此波形为采用Origin8.0软件对5V电压采集数据进行的绘图。
图3 电压采集曲线
经分析,模块可是实现对5V直流电压的精确采集。
通过将采集数据和其他公司设备采集数据相比较,可以发现数据趋势基本一致,同时基于USB总线技术的数据采集设备在存储方面明显优于其它设备,可以借用操作系统的对存储系统管理的优越性,显著减少软件数据处理的工作量,同时由于具有操作系统的支持,数据处理也变得很简单,可以通过波形直接识别出总线数据,还可以定制自己的算法。