CC2430芯片在油田安防监测系统中的应用
扫描二维码
随时随地手机看文章
引言
油田油库通常分布于远离城市、地广人稀的区域,工作人员巡检的工作量和劳动强度都很大。这样,一方面存在工作效率低下、浪费人力的问题,也容易出现人员违规操作、笔误、作假等隐患,从而导致信息不能正确的反馈;另一方面,也会造成异常情况不能及时得到监测和解决,容易造成不可估计的经济损失。另外,各钻井平台之间地域遥远且地形复杂,使得通信十分不便。而架设一个庞大的有线通信系统是一个费时又耗资金的过程,同时,电缆穿过炼油厂可能存在潜在危险,所有这些客观条件使得在油田中搭建无线网络成为一种必然趋势。
大型油田油库管理系统中的安防产品主要是视频监控和防盗报警两大类,二者的联合应用已成为保障油田油库安全的重要手段。但是,远距离实时视频传输通信的费用会给油田企业带来很大的开销。而事实上,油田周边的安全隐患并不是时时刻刻都发生的,所以连续实时的发送视频图像完全是一种资源浪费。鉴于此,本文设计了一种可在监测前端实现异常信息识别,而在通信线路上只传输具有安全隐患时刻的视频图像信息的安防系统,该系统可大大减少通信线路上的信息量,降低通信成本
1 系统设计1.1系统总体设计
此监测系统可对油井的井场进行全天候的实时监测⑵,系统包括井场区的监测前端、信息转发基站和远端的监控中心,监测前端与基站之间采用无线传感网络,基站与监控中心通过GPRS网络相连。监测前端可以实现信息的采集和识别,以产生所需要的报警信号;无线网络和GPRS网络是系统的通信传输部分;监测中心的功能相对简单,只是接收所传来的异常信号,然后启动报警装置来通知相关工作人员,再由工作人员根据报警所在地进行相关的远程调度和控制。图1所示是本系统的总体框图。
1.2 硬件模块选择
本系统中的井区监测前端分设了三个模块,分别为火灾监测模块、温度监测模块和入侵监测模块。当然,也可以根据实际需要增删相应的模块,其工作原理都是一样的。监测前端包括普通摄像头、电子栏杆、温度传感器、图像处理模块、无线模块、GPRS模块等。
本系统所搭建的无线传感网络的核心部分是具有微控制器和无线通信功能的无线模块,无线模块选用的CC2430芯片是美国TI公司推出的全新概念的新一代ZigBee无线单片机系列器件。
它在单个芯片上整合了ZigBee(RF)前端、内存和8051微控制器,同时具有128KB可编程闪存和8kB的RAM、一个DMA控制器、8个14位ADC、四个定时器(可支持典型的定时/计数功能,例如输入捕捉、比较输出和PWM功能)、可编程看门狗、AES128协处理器、上电复位电路、掉电检测电路、两个可编程USART(用于主/从SPI或UART操作)以及21个可编程I/O引脚。该芯片采用0.18MOS工艺生产,在接收和发射模式下,电流损耗分别低于27mA和25mA,非常适用于低成本、低功耗要求的工控系统。
在监测前端,摄像头拍摄的井场区的图像信息最终要转换成CC2430模块所能转发的数字信号。目前,基于图像处理的很多DSP模块都很成熟,因此,本系统中图像处理部分的功能由CIS嵌入式高速智能扫描平台Wispeed200来完成。该产品采用嵌入式技术,基于“DSP+FPGA”硬件结构,模块由CIS接口经过AD将获得的数字信号传送到FPGA,在FPGA内部完成图像的拼接和相关时钟的产生洞时完成与DSP的接口转换和通信。再由FPGA将最终的图像传送到DSP进行处理,处理完成后的结果由DSP的UART口传送到CC2430无线模块。
1.3 硬件接口设计
本系统监测前端各部分的硬件框图如图2所示。
无线模块的基本电路主要由电源、复位电路、串口连接电路和无线收发电路组成。可实现串口数据的无线收发功能。
温度传感器选用DS18B20芯片,该芯片使用单总线方式与处理器进行数据通信,其中DQ线接到CC2430的一个I/O口上用于读取数据,这里选择P1.0引脚。图3所示是系统终端电路的连接图。
由于单总线为开漏,所以需要外接一个4.7kQ的上拉电阻。系统中的电子栏杆使用的是深圳龙安电子有限公司生产的红外对射3光束电子栏杆,它的数据传输采用SPI连接方式,可使用USART0设置为SPI方式和位置2,MISO线连接P1.4引脚以进行数据传输;SCK数据线连接到P1.3引脚,负责处理器和输入设备的通讯同步。Wispeed200图像处理模块通过UART接口与处理器进行数据通信,可使用USART1设置为UART方式和位置1,其中RXD数据线和TXD数据线分别接CC2430的P0.5引脚和P0.4引脚。
2 软件设计
2.1 监测终端的程序设计
监测终端采用CC2430无线模块还需要对各串口进行配置,包括信息釆集程序、时钟信号的釆集程序、无线模块控制程序、定时中断子程序、数据通信子程序、看门狗监控定时处理程序等。
IEEE802.15.4规定的RF物理层工作频段为2.4GHz,共有16个频道。监测终端和基站中的无线模块的RF必须工作在相同的频道上,这样,才能够互相收发数据。监测终端CC2430无线模块完成一次数据发送的程序流程图如图4所示,而基站中无线模块完成一次数据接收的程序流程图如图5所示。
系统初始化主要是将系统工作频率设为
32MHz的晶振频率,这样RF才能正常工作。RF初始化时,先设置通信频率,再通过设置RFPWR.RREG_RADIO_PD位为1给RF供电。此外,RF初始化的过程还包括开启Rx,清空Rx、Tx的FiFo缓冲区以及校准天线等。
数据接收过程同样也需要设置系统工作频率为32MHz,且应确保Rx工作在与Tx相同的频道上,并需设置DMA通道。
CC2430包含了较多的自定义SFR寄存器,如何使用好这些寄存器是很关键的。在对USART的控制操作中,控制寄存器和状态寄存器分别为UxUCR和UxCSR。它们都是8位寄存器,操作时可通过设置相应的位状态来完成对USART的基本设置,其代码如:
SETU1CSR.MODE ;选择USART1为UART模式
SETU1CSR.RE ;允许USART1接收数据
此外,CC2430串口波特率的设置与一般的80561有些不同,因为它内部集成了一个波特率发生器,所以,设计时只需设置相关的寄存器UxBAUD的BAUD_M[7:0]位和UxGCR的BAUD_E[4:0]位即可。
其波特率计算公式为:
其中,f为系统时钟频率,在该系统中为32MHz,执行下列语句,就可以得到9600b/s的串口波特率:
MOV U1GCR,#08H
MOV U1BAUD,#3BH ;设置波特率为9600b/s
2.2 监测中心软件设计
监测前端与后台中心的通讯可分为定时通讯和应急通讯,即在正常情况下的信号由基站向监测中心每一、两个小时传送一次,而遇到紧急情况时则立即通讯。这样可极大减少网络上传输的信息量,降低通信成本。监测中心使用Windows服务器来实现数据的接收、判断和启动报警器的功能。中心软件的设计可釆用VC十十编程语言。VC++的MFC类库提供有CAsyncSocket套接字库,用它可以很方便地实现Socket编程。
3 结语
设计该系统的意义在于系统中CC2430无线网络模块成本小,功耗低,且在系统前端就可实现异常识别,通信线路上只传输简单的数字信号,故可减少网络流量,降低通信成本。通过监控中心的集中监测,可以实现统一部署管理和调度,及时发现油井周边的异常等情况,从而有效防止设备被损坏或盗油事件的发生,减少经济损失,从而提高了企业整体效率和竞争能力,也提高了预测突发事件的能力和紧急情况下的快速反应能力,带来潜在的社会和经济效益。
另外,由于该系统要在露天野外的环境下长期工作,使用环境相对恶劣(如干旱少雨、风沙侵蚀,冬季温度很低、夏季温度很高等客观条件的影响),因而会对系统形成一定的干扰,容易发生误判。所以,该监测系统还应该在以下方面进一步完善:比如前端硬件要选择高性能、高稳定性的成熟器件;传感器要灵敏,摄像头要清晰,并应对设备进行有效保护,防雷防爆O在传输报警信号时,可以采用连续多次发送同一报警信号的方式来降低误判率。产品安装及维护也要尽量做到快速方便,维护迅速准确,以降低成本价格,尽量实现较高的性价比。