在炼焦生产中,推焦时间、平煤时间、推焦电流等数据是反映焦炉实际操作情况的重要指标。由于推焦车是室外移动装置,而采集好的数据需及时传送到中心主控室的计算机中完成数据的分析、处理和记录,因此为了实现推焦过程的有效监测,需要解决数据采集和数据通信这两大问题。
1 监控系统的基本结构
按项目要求,中心主控站能对2个移动距离达200 m的推焦车上的电流信号进行数据采集,所以采用无线数据传输的模式,通过无线数传电台控制推焦车上的从站接收主控站的命令,并接收从站发出的推焦电流等模拟量以及炉号等数字量信息。系统的基本结构如图l所示,其中上位机(主站)由1个PC终端和D2lDL无线数传模块(含天线)组成,二者之间通过串口通信。
鉴于数据库技术已经相当成熟,中心主控站的数据管理可以较容易地实现,所以关键技术就在于下位机对现场数据的实时采集,以及下位机与上位机之间可靠的无线数据传输。
2 下位机的硬件组成
下位机以ARM7微控制器为核心,利用ARM7内核对外围设备,包括无线数传模块、LCD显示模块、模拟/数字信号输入、键盘扫描,进行控制和管理,基本框架如图2所示。
(1)ARM控制板
控制板是下位机的核心,控制系统的各个功能模块。控制板的MCU采用Atmel公司的 AT91SAM7S64芯片,它有64 KB高速Flash和16 KB的SRAM,片内主要有存储器控制器、复位控制器、时钟发生器、电源管理控制器、先进中断控制器、周期性间隔定时器、时间窗看门狗、实时定时器、并行输入/输出控制器、外设数据控制器、USB2.O全速设备接口、同步串行控制器、通用同步/异步收发器、主从串行外设接口、3通道16位定时器/计数器、4通道16位PWM控制器、两线接口、8通道10位A/D。控制板的外围电路主要包括电压转换电路、串口输入/输出控制电路、JTAG电路、模拟量数字量输入/输出电路、时钟芯片控制电路、USB接口电路、EEPROM电路等。
(2)液晶显示模块
下位机的本地显示功能通过控制带有SEDl335控制器的液晶显示模块实现。SEDl335是日本Seiko Epson公司生产的液晶显示控制器。它的输入/输出缓冲器功能较强,指令功能丰富,并行发送4位数据,最大驱动能力为640×256点阵。SEDl335硬件结构由MCU接口、内部控制和驱动LCM组成。
(3)无线数传模块
由于推焦车要在较大范围移动,因而采用无线数据传输是一种较好的选择。北京捷麦公司生产的SA68D21DL无线数据收发模块是一种可在微机与微机之间或微机与单片机之间进行全双工远距离无线通信的收发模块,它还可以脱离微机组成多点报警、遥控系统。其主要特点为:串口具有TTL、RS232、RS485等多种电平接口;内含EE—PROM看门狗电路,可掉电记忆设置参数;发送/接收距离为1~3 km。
(4)电流变送器模块
在电力电子产品中,对大电流进行精确的检测和控制是产品安全可靠运行的根本保证。推焦车设备中,最大电流可达400 A。经多方调研比较,采用北京森社公司生产的霍尔电流变送器模块,其主要特点为:工作区内精度高于1%;动态性能响应时间小于lms,跟踪速度高于50 A/ms;平均无故障工作时间>50 000小时;易于安装。
(5)键盘控制模块
传统的行列式编码数字键盘要占用很多I/O引脚,而基于A/D转换器的键盘一般只用一个I/O引脚就能读取多个按键。其工作原理为:键盘由一系列分压电阻和按键组成,不同的按键对应着不同的分压电阻,从而得到不同的分压及不同的A/D转换数值。这种键盘只能识别单个按键按下的情况,本键盘只有12个按键,现场操作人员只需输入炉号1~10以及“确认”、“取消”键,因此完全满足要求。
3 下位机的软件设计
软件模块包括串口控制程序、A/D数据采集、无线模块收发控制、LCD更新显示控制、定时器控制和按键扫描输入控制部分。
由于下位机工作模式简单,出于精简代码量以及程序稳定性的考虑,未在控制器中使用操作系统等复杂的进程调度机制。下位机上电后直接运行主程序,完成初始化过程之后进入主循环,接收上位机发送的命令并据此进行相关操作。对于实时性要求较高的数据采集、LCD屏显示更新和键盘扫描任务,则在定时器中断服务程序中完成。
主程序主要包括系统初始化(初始化MCU、总线、I/O端口、LCD、A/D、参数、串口等)、无线数传模块设置(读取并设置地址和身份码)、显示开机画面、开定时器中断、接收串口数据、数据校验和发送数据。中断控制程序包括键盘扫描、判断键值响应按键、模拟量和数字量采样以及按照协议将数据填充到发送数组。
3.1 对LCD显示屏的控制
ARM系统使用12个I/0端口控制内置SED1335控制器的显示屏。其中4个端口为控制命令端口,8个端口为数据端口,端口控制信号图如图3所示。
AT91SAM7S64并行输入输出控制器(PIO)管理多达32个全可编程I/O线。对于LCD显示屏的控制,实际上是根据SED1335控制器的时序进行操作,即通过PIO控制器控制并行数据输出。
程序的具体实现就是先总线初始化,配置控制LCD的8条数据总线和4条命令总线,设置外围设备时钟使能寄存器(PCER)、上拉禁止寄存器(PPUDR)、多驱动禁止寄存器(MDDR)、输入滤波禁止寄存器(IF—DR)、输出写使能寄存器(0WER)、PIO使能寄存器(PER)、输出使能寄存器(OER)和输出数据寄存器(S0一DR)。
3.2 对无线数传电台模块的控制
AT91SAM7S64的USART,支持与使能由发送器到接收器的数据传输的外设数据控制器的连接,可管理多类型串行同步或异步通信。推焦车上的下位机通过USART口同无线数传电台模块通信,控制电台接收和发送数据,相关接口的核心芯片是MAX3232EEA,具体电路如图4所示。
串口的初始化包括初始化外设I/0,使能时钟,配置串口工作模式(如波特率)等,使能串口;串口接收采用超时接收,其含义是:当串口收到1字节的数据后,若在一定时间间隔内收到另外1字节数据,则可认为后1字节同前1字节为同一包数据中的内容,若在一定时间间隔内未收到数据,则认为此包数据接收结束。这时,串口状态寄存器的相应位置1,通过查询状态寄存器该状态位的值可判断是否接收结束。串口数据发送只要设置好发送数据寄存器和发送数据计数器,即可开始发送。
3.3 系统中定时器的作用
本系统通过AT91SAM7S64的定时器/计数器模块控制数据采集周期、按键扫描和LCD更新。AT91SAM7S64定时器/计数器(TC)包括3个相同但相互独立的16位定时器/计数器通道。
每个通道有3个外部时钟输入,5个内部时钟输入及2个可由用户配置的多功能输入/输出信号。每个通道驱动一个可编程内部中断信号来产生处理器中断。定时器/计数器有2个作用于这3个通道的全局寄存器。块控制寄存器允许使用同样的指令同时启动3个通道。块模式寄存器为每个通道定义外部时钟输入,允许将它们连接。另外,每个通道有一个16位寄存器