首页 » 技术文章 » 多冗余输出的数据采集处理单元设计与实现

多冗余输出的数据采集处理单元设计与实现

作者:  时间:2010-09-14 09:43  来源:EDN

  在现代信号处理系统中,数据采集处理系统越来越广泛地用于各行各业。现代船舶为了实现安全、经济的运行,自动化程度越来越高,需要采集处理各种数据。由于船舶本身的特殊性,各设备运行工况非常恶劣,环境干扰因素多,为了保障船舶安全,对数据采集处理的可高性有很高的要求。本文介绍一种用于船舶监测报警系统的数据采集单元,该单元由采集模块实现对多通道现场各数据的实时采集,然后由专用的多路冗余处理模块输出至本地人机界面显示和上位机进行综合处理,具有很强的实用性、通用性及可扩展性,且冗余度高,稳定可靠,已在多个船舶监测报警系统实际工程中应用。

  1 系统总体设计

  为满足对现场多种数据采集和处理、显示与上传,采集单元由开关量采集模块、420 mA采集模块、Pt100采集模块、热电偶采集模块构成集总式采集系统,再由双CPU专用处理模块实现多路冗余输出至本地人机界面显示和PC机。单片机的运算能力强,运算速度快,I0接口功能完善,抗干扰能力强,可靠性高,系统结构简单、价格优廉,是现场数据采集器的核心元件之一。采集终端采用基于单片机ATmegal6的各专用采集模块。RS 485硬件设计简单,控制方便成本低廉,支持远距离多机通信,故采用RS 485总线进行数据传输。图1为系统的总体框图。

  2 系统的设计实现

  本文主要对数据采集单元硬件部份的实现做介绍,包括单片机采集模块、多路冗余输出处理模块。开发工具为Protel 2004 DXPKeil μVision 2

  21 单片机采集模块

  为满足工程需要,开发设计了420 mA输入与输出模块、PTlOO输入模块、热电偶输入模块、开关量输入与输出模块等系列采集终端,各终端采用模块化设计,可以方便灵活地组成不同要求的采集单元。以下以8420 mA输入模块为例说明其设计与实现。

  211 单片机选择及ATmegal6单片机主要特征

  该系列采集模块采用功能强大的ATmegal6(TQFP封装)作为主处理器。ATmegal6RISC结构的低功耗8AVR微控制器,其主要特点如下:16 KB的系统内可编程FLASH512 B E2PROM1KBSRAM32个通用IO口线,32个通用工作寄存器,用于边界扫描的JTAG接口,支持片内调试与编程,3个具有比较模式的灵活的定时器/计数器(TC),片内/外中断,可编程串行USART,有起始条件检测器的通用串行接口,810位具有可选差分输入级可编程增益的ADC(TQFP封装),具有片内振荡器的可编程看门狗定时器,1SPI串行端口,以及6个可以通过软件进行选择的省电模式。片内ISP FLASH允许程序存储器通过ISP串行接口,或者通用编程器进行编程,也可以通过运行于AVR内核之中的引导程序进行编程。引导程序可以使用任意接口将应用程序下载到应用FLASH存储区(Application FLASH Memory)。在更新应用FLASH存储区时引导FLASH(Boot FLASH Memory)的程序继续运行,实现了RWW操作。由于其先进的指令集以及单时钟周期指令执行时间,ATmegal6的数据吞吐率高达1 MIPSMHz

  212 电源及电压基准源

  本模块外部由直流24 V电源供电,内部由3个鑫飞达DCDC隔离电源实现分开供电,互不干扰,一路经DFA5-24S12输入24 V隔离输出5 V供通道采样与AD转换工作电源;一路经DFA5-24S5输入24 V隔离输出5 VCPU工作电源;一路S05HIS05-2W输入5 V隔离输出5 VRS 485通讯工作电源。模块前向通道的信号调理电路和模数转换芯片都需要一个高精度的5 V的电压基准源,TL431就是基准源电路的核心器件。其主要特点是:稳压值从2536 V连续可调;参考电压源误差±l%,低动态输出电阻,典型值O22 Ω,输出电流1O100 mA,全温度范伟内温度特性平坦,典型值为50 ppm;低输出电压噪声。TL431适用作12位模数转换器的基准电压参考源。本模块用TL431构建的5 V基准电路。

  213 工作过程

  8420 mA信号经信号调理电路(TLC279ID),再经数模转换(TLC2543)、隔离(6N137)送入ATmegal6单片机,它利用内部自带的ADD转换器采集8路数据,将其经由RS 485接口电路传送给上位机,RS 485通讯模块采用带磁隔离的ADM2483。其原理框图见图2

  214 程序设计

  系统上电后执行初始化程序,复位各个端口。当处于监听状态时,各监测点数据采集模块处于自动巡回监测状态,系统开始对各通道按设定间隔时间进行采集;当接收到上位机发送来的指令便选中相应的采集通道执行数据采集,调用数字滤波子程序进行滤波得到精确的数值,再通过数据转换和处理后送微处理器的数据存储器,等待上位机的读取。单片机程序采用C语言编写,系统主程序为一个循环,在循环中完成以下工作:系统初始化,包括初始化I0端口,外部中断,计数器OUSART等;扫描上位机采集指令;开中断;响应INTO中断和计数器0溢出中断;读取ADC转换结果;将采集的数据调用通讯子程序由串口通讯模块输出;接收上位机发出的命令并进行相应的操作。 

相关推荐

基于Web的MCF5249数据采集系统的设计

Web  MCF5249  数据采集  2011-08-18

探地雷达信号的数据采集与显示研究

数据采集  探地雷达  2011-08-18

多路跟踪滤波同步数据采集系统的研究

AD73360L  数据采集  2011-08-01

为铁路谐波干扰的研究搭建一个数据采集和监控系统

数据采集  2011-07-25

基于LabVIEW的外置串口采集控制卡的研制

LabVIEW  数据采集  2011-06-20

NI协办首届全国虚拟仪器设计大赛圆满落幕

在线研讨会
焦点