多冗余输出的数据采集处理单元设计与实现
时间:2023-09-29 10:37来源: 作者: 点击: 次1 系统总体
为满足对现场多种数据采集和处理、显示与上传,采集由开关量采集模块、4~20 mA采集模块、Pt100采集模块、热电偶采集模块构成集总式采集系统,再由双CPU专用处理模块多路冗余至本地人机界面显示和PC机。单片机的运算能力强,运算速度快,I/0接口功能完善,抗干扰能力强,可靠性高,系统结构简单、价格优廉,是现场数据采集器的核心元件之一。采集终端采用基于单片机ATmegal6的各专用采集模块。RS 485硬件简单,控制方便成本低廉,支持远距离多机通信,故采用RS 485总线进行数据传输。图1为系统的总体框图。
2 系统的实现
本文主要对数据采集单元硬件部份的实现做介绍,包括单片机采集模块、多路冗余处理模块。开发工具为Protel 2004 DXP和Keil μVision 2。
2.1 单片机采集模块
为满足工程需要,开发设计了4~20 mA输入与输出模块、PTlOO输入模块、热电偶输入模块、开关量输入与输出模块等系列采集终端,各终端采用模块化设计,可以方便灵活地组成不同要求的采集单元。以下以8路4~20 mA输入模块为例说明其设计与实现。
2.1.1 单片机选择及ATmegal6单片机主要特征
该系列采集模块采用功能强大的ATmegal6(TQFP封装)作为主处理器。ATmegal6是RISC结构的低功耗8位AVR微控制器,其主要特点如下:16 KB的系统内可编程FLASH512 B E2PROM,1KBSRAM,32个通用I/O口线,32个通用工作寄存器,用于边界扫描的JTAG接口,支持片内调试与编程,3个具有比较模式的灵活的定时器/计数器(T/C),片内/外中断,可编程串行USART,有起始条件检测器的通用串行接口,8路10位具有可选差分输入级可编程增益的ADC(TQFP封装),具有片内振荡器的可编程看门狗定时器,1个SPI串行端口,以及6个可以通过软件进行选择的省电模式。片内ISP FLASH允许程序存储器通过ISP串行接口,或者通用编程器进行编程,也可以通过运行于AVR内核之中的引导程序进行编程。引导程序可以使用任意接口将应用程序下载到应用FLASH存储区(Application FLASH Memory)。在更新应用FLASH存储区时引导FLASH区(Boot FLASH Memory)的程序继续运行,实现了RWW操作。由于其先进的指令集以及单时钟周期指令执行时间,ATmegal6的数据吞吐率高达1 MIPS/MHz。