于志强,陆桂军,于洪泽,韩松,白洪海
(天津电气电气科学研究院有限公司,天津 300180)
在冶金行业,电控设备在调试、运行过程中,需要对设备中多种过程信号进行实时监测,以获取设备的运行状态,分析故障信息。工业设备的现场应用环境通常十分恶劣,存在复杂的磁场、电场等干扰因素,为保证数据采集的准确性,要求数据采集装置有较强的抗干扰能力,此外,多路模拟量、数字量信号需要同步采集[1]。
目前,常用的数据采集方式多为工控机配合数据采集卡,数据采集卡种类较多,能够采集不同频率、不同电压等级的信号,采集速度快、可靠性比较高,但采样设备成本较高、体积较大,不便于工业现场安装布线。通常情况下,采集设备与被测信号距离较远,信号采样的走线较长,采样信号易受干扰,引入较大噪声信号,导致采集信号失真[2-4]。
为了解决上述问题,本文设计了一种基于“ARM+FPGA”的多通道数据采集系统,该系统能够同步采集多路数字量、模拟量信号,采集模块有组网功能,体积小、成本低、抗干扰能力强。
数据采集系统结构如图1所示,系统内包含至多10个采集模块,每个模块实现8路模拟信号和8路数字信号采集。多个数据采集模块间通过高速光纤通讯连接,上位机与采集模块1通过网络连接。
图1 数据采集系统结构Fig.1 Structure of data acquisition system
采集模块是采集系统的核心,其结构如图2所示,采集模块包括:模拟量采集回路、数字量采集回路、主控回路、通讯回路、指示灯等。其中,模拟量采集回路实现模拟量输入接口保护,信号调理、滤波,模数转换(A/D),隔离;数字量采集回路实现数字量信号滤波输入、隔离;主控回路基于“ARM+FPGA”,实现A/D数据采集驱动、数据接收缓存、通讯回路驱动、指示灯控制等;通讯回路实现数据上传以及多个采集模块间的高速通讯;指示灯指示模块运行、错误状态。
图2 采集模块结构Fig.2 Structure of data acquisition module
系统工作过程中,由拨码开关设置各个采集模块的地址,各模块完成数据采集后,经由高速光纤通讯将数据传输到采集模块1,统一上传至上位机,进行实时显示、储存。
针对冶金行业的需求,采集模块实现的主要技术指标如下:
模拟量输入:8路,彼此隔离,对外隔离,输入电压-10~+10 V,输入电流0~+20 mA,信号带宽1.6 MHz;
数字量输入:8路,彼此隔离,对外隔离,24 V数字信号,频率上限10 kHz;
电源:DC18~28 V,2 A max;
模数转换器:采样频率1 MSPS,分辨率14 bits;
通讯接口:100 Mbps光纤;
上位机通讯接口:RJ45;
工作环境温度:-20~80℃。
为了增强数据采集系统的抗干扰能力,对模块电源进行了隔离设计,如图3所示。数据采集模块输入电源为DC24 V,1.5 A。模块中包含8路模拟量采集通道,通道间彼此独立,且对外隔离,使用8路隔离DC/DC电源,产生±12 V,+5 V电源为每个采样通道供电;24 V输入电源经过DC/DC电源芯片生成5 V,3.3 V,2.5 V,1.2 V电源为数字量采样回路隔离侧、主控回路、通讯回路、指示灯供电。
图3 电源设计Fig.3 Design of power supply
为了提高模拟量数据输入的稳定性,增强数据输入接口的抗干扰能力,采集模块设计了一个信号调理滤波电路,如图4所示。模拟量信号可以差分或者单端输入,低通滤波电路用于对信号进行共模、差模滤波,用以消除高频噪声影响,低通滤波电路截止频率1.6 MHz,利用瞬态二极管对输入电路进行保护。运放N1构成跟随器,使得信号输入端具有高输入阻抗的特性[5-6]。通过对电阻R7,R8的选焊,实现对电压量或者电流量信号采集的切换。
图4 信号调理滤波电路Fig.4 Circuit of signal adjusting
模块有8路模拟量通道,各通道采样电路为独立电路,如图5所示。设计中采用8片高精度、单电源供电、可变输入范围的SAR型(逐次逼近式)A/D采样芯片实现模拟量采样,该芯片分辨率14 bit、最大模拟量输入范围-12.288~+12.288 V,且内置低温漂、高精度参考电源,对经过滤波后的模拟量信号进行模数转换,转换成数字信号,经过SPI接口传输到主控系统FPGA。用电容隔离芯片对SPI接口进行数据隔离,隔离电压2 500 V,比传统光隔离的方式体积小、功耗低、传输速度快。
图5 模拟量采样电路Fig.5 Circuit of analog data acquisition
模块有8路数字量通道,电路如图6所示,数字信号两端分别接入DIN+,DIN-,信号输入不区分正负,经过一阶差模、共模滤波后,接入光耦输入端,信号隔离后,经过反相器整形,输出到主控单元FPGA。数字信号高电平24 V,低电平0 V,跳变阈值12 V左右。
图6 数字量采样电路Fig.6 Circuit of digital data acquisition
主控电路由ARM和FPGA组成,其中ARM芯片选择意法半导体公司的STM32F407,该芯片基于Cortex-M4内核,主频最高可达168 MHz。模块中主要使用芯片的RMII接口、FSMC接口、串口等,主要功能是通过FSMC接口接收FPGA发送过来的数据,并通过RMII接口经过PHY芯片传输到上位机。
FPGA芯片选择ALTERA公司的EP4CE22,内部含有22K逻辑单元、594 kbit RAM,该芯片通过并口与ARM通讯,通过SPI接口驱动A/D芯片,使用RMII方向驱动双网口PHY芯片,IO口接收数字采集电路传来的数字量数据。
通讯回路包括上位机通讯回路和高速并联通讯回路。
上位机通讯回路中,使用网口PHY芯片DP83848,该芯片与主控电路ARM通过RMII接口相连,经RJ45接口与上位机通讯,通讯速率100 Mbps,将采集的模拟量和数字量数据实时上传到上位机,进行存储、显示、分析。
高速并联通讯回路包括地址选择电路、网口PHY芯片、2光纤接口电路。其中,地址选择电路如图7所示,通过U14拨码开关,设置采集模块的编号,0表示主模块,1~9表示从模块,编号信息传递给FPGA。FPGA通过RMII接口连接到双路网口PHY芯片DP83849,通过100 Mbps光纤接口输出,使用POF光纤组网,实现多模块并联。模块并联组网示意图如图8所示。
图7 地址选择电路Fig.7 Circuit of address selection
图8 并联通讯示意图Fig.8 Diagram of parallel communication
通过FPGA实现模拟量和数字量信号采集。FPGA上电初始化过程中,FPGA对A/D芯片进行进行初始化配置。A/D芯片共包含9个寄存器,主 要 对 DEVICE_ID_REG,SDI_CTL_REG,SDO_CTL_REG,DATAOUT_CTL_REG,RANGE_SEL_REG等寄存器进行配置,设置每个A/D芯片的ID、数据传输方式、数据格式、A/D采样范围、是否使用内部参考电压等。
数字量采集时,每一路数字量作为一个位进行采集、缓存,将8路数字量打包成一个字节。
采集系统数据传输使用“FPGA+ARM”组合通讯方式,主模块数据传输流程如图9所示。整个系统对实时性有较高要求,最小通讯周期为100 μs,在一个周期内FPGA完成对8路模拟量、8路数字量数据采集,并接收从模块传输过来的数据,数据打包后,传输给ARM。ARM对数据进行运算后,经由网口传输到上位机。
图9 数据传输流程图Fig.9 The flow chart of data transmission
上位机软件设置数据显示的格式,动态显示范围后,对数据波形进行实时显示,可根据不同需求,显示多路采集通道数据,以进行数据对比,同时对数据进行打包存储。
使用高精度电源分析仪(精度小数点后4位)进行模拟量采样精度测试,将转换结果(A/D转换结果为5次测量结果的均值)与输入电压进行比较,测量误差为μV级别,输入电压在-10~+10 V时,测量误差一般小于3 mV,满足数据采集系统的高精度测量要求(动态范围达到3个量级),表1为采集系统模拟量测量的误差结果。此外,使用函数信号发生器产生方波,进行数字量采集,测试结果表明8路数字量采集无误码现象,输入频率范围0~12 kHz,满足系统设计要求。系统并联测试采用1主9从10台采集模块并联测试,测试结果表明,高速通讯并联回路能够实现80通道模拟量和80通道数字量数据,以0.1 ms的采样周期采集并实时上传到上位机,满足系统组网设计要求。
表1 模拟量数据采集Tab.1 Analog data acquisition
本文介绍了面向冶金行业的组网式多通道数据采集系统,详细介绍了其“ARM+FPGA”核心控制架构、基于高速光纤的组网通讯及各硬件电路和软件工作流程。实验测试表明,该系统数据采集精度高、可靠性高。系统已用于多个工业现场,应用结果表明,该系统各项指标满足工业现场应用需求。