引言
目前市场上的巡更产品可以分为在线式巡更与离线式巡更两大类。离线式电子巡更巡检系统只需巡逻人员手持巡更巡检器到每一个巡更巡检点采集信息后,将信息通过数据线传输给计算机,相对于在线式电子巡更巡检系统具有以下优点:安装简单,易携带,操作方便,性能可靠;系统扩容、线路变更容易。因此目前应用的多是离线式巡更系统。
对于网点较多的单位,在巡更值班室使用具有GPRS 功能巡更数据采集终端,可以实现即时采集数据并与监控中心通讯,增强了实时性的同时,还可以降低成本,是一种很好的解决方案。
1 智能巡更系统方案
一般来说,巡更系统的工作原理是在每个巡查点设一个可以贮存了巡查点地理信息的模块,巡查员拿着手持式巡更棒,到达巡查点时用手持式巡更设备采集巡更点的信息, 即把到达该巡查点的时间、地理位置等数据自动记录在巡更棒上。巡查员完成巡更任务后,把巡查棒连接巡更主机, 将巡查员的所有巡查记录传送到监控中心计算机,系统管理软件立即显示出该巡查员巡查的路线、到达每个巡查点的时间和名称及漏查的巡查点,并按照要求生成巡检报告。系统原理示意图如图1 所示。
通过系统原理图可以看出,系统由巡更手持机、巡更终端和监控中心软件三大部分组成。巡更手持机是巡更员执行巡更任务时,用来对巡更点的电子标志进行识别的手持式设备,同时还提供与巡更终端通讯的功能。手持式巡更设备一般体积较小,不好实现大数据量的存储以及与监控中心通讯等功能。
巡更终端主要起到对巡更手持设备管理的作用。首先,巡更终端通过RS232 通讯采集手持巡更机的巡更数据,然后把数据组织为数据包,以GPRS 的方式传送到监控中心服务器,监控中心的软件对数据进行处理。巡更终端与监控中心服务器传输的数据可以是巡更情况,也可以是巡更计划、报警提示等信息。巡更终端还可以对巡更手持设备进行初始化、设置时钟、设置工作状态等操作。
监控中心的巡更管理软件可以实现设置巡更地点、设置巡更人员、设置巡更路线与时间、数据采集与分析等多个功能,能够对收集的数据与原来设定的任务相比较, 然后对巡更人员的工作进行评价,并把相应的处理命令发送到GPRS 巡更主机,提醒值班人员进行相应的处理。
2 巡更终端的硬件设计
巡更终端主要起到对巡更手持设备进行管理的作用。基于上面所述巡更终端的功能,它需要由具备以下功能:GPRS 通讯、显示、按键、串行口通讯、实时时钟。
在系统的各个模块中,网络通讯是个重点。因为各个巡更场点并不是在同一个地方,要把巡更手持机的数据及时地传送到监控中心服务器,必须使用网络传输,因此系统使用GPRS 通讯的方式来实现无线数据传输。GPRS[1]是一种新的分组数据承载业务,具有“实时在线”、“快捷登录”、“高速传输”、的优点,特别适合数据量比较小、间断传输的远程数据传输[2]。系统中采用西门子公司的MC55 GPRS 模块。GPRS模块与微控制器间是使用串行口进行通信的,通信速率最高可以达到115 200bps。模块与控制器间的通信协议使用标准AT 命令集[3]。
{$PAGE$}
系统使用三星公司ARM7 系列的S3C44B0 作为主处理器, 并应用uC/OS-II 进行系统软件开发。S3C44B0 它具有丰富的接口:UART、IIS、IIC、A/D、D/A、LCD 专用接口以及通用I/O 管脚[4]。S3C44B0 芯片内部没有存储空间,需要通过外接存储芯片来满足系统的需要。通常使用NOR Flash 映射到地址0 开始的空间存储程序代码, 使RAM 能满足程序软件(特别是操作系统)运行时的需要。GPRS 的通讯方式通过S3C44B0 使用串口控制GPRS 模块来实现。巡更终端需要显示巡更点的情况时,显示的数据较多,因此使用128*64 的LCD 显示。键盘定义了通讯、请求计划、3 个级别的报警等多个功能鍵。时钟使用S3C44B0 片内的实时时钟, 在通讯过程中与监控中心服务器进行校时。巡更终端的系统原理框图如图2 所示。
3 巡更终端的软件设计
巡更终端的系统软件使用uC/OS-II 操作系统进行开发。uC/OS-II的源代码完全开放,是一个完整的可移植、固化、裁剪的占先式实时多任务内核。它是针对嵌入式应用设计的,它的大部分源代码都是用高可移植性的ANSI C 编写的。uC/OS-II 可以移植到不同类型、不同规模的嵌入式系统,并能在大部分的8 位、16 位、32 位、甚至64 位的微处理器和DSP 上运行。由于uC/OS-II 是一个实时操作系统,所以使用它进行软件开发,能够进一步简化ARM 系统的开发。
首先需要把uC/OS-II 操作系统移植到S3C44B0 系统中。uC/OSII的操作系统代码包括核心代码部分、设置代码部分、与处理器相关的移植代码部分。核心代码部分的功能包括内核管理、事件管理、消息队列管理、存储管理、消息管理、信号量处理、任务调度和定时管理。设置代码部分包括2 个头文件,用来配置事件控制块的数目以及是否包含消息管理相关代码。与处理器相关的移植代码部分则是进行移植过程中需要更改的部分, 它是与嵌入式处理器密切相关的, 包含OS_CPU.H、OS_CPU_C.C 和OS_CPU 三个文件。主要的移植工作包括:修改数据类型、进入和退出临界段、设置堆栈生长方向、任务的切换和调度、堆栈的初始化、时钟节拍中断。
巡更终端的任务主要有LCD 显示、键盘扫描、巡更手持机数据采集和GPRS 数据通讯,因此在uC/OS-II 的main()函数中需要创建四个主要任务, 根据不同的事件要求进行任务的切换,以
完成系统的要求。Task_data_collect()任务负责采集巡更数据,即从巡更手持机的EEPROM 读取巡更数据, 每条巡更数据16 字节, 包括1 字节的记录号、4 字节巡更员标识、4 字节巡更点的标识、6 字节的时间、1 字节的状态字(正常巡更/补巡)。终端先给手持机发一个握手信号,得到正确响应后,发送读取命令读取数据,收到正确格式的巡更数据则发送响应,并读取下一条,直到采集完成。如果收到的数据不正确,返回出错响应并进行最多三次的重新读取。
Task_GPRS_communication()任务负责与监控中心的通讯。终端通过MC55 模块与监控中心建立连接后,监控串口的接收数据,如果收到MC55 接收数据的标识“^SISR: 1, 1\r\n” ,则读取来自监控中心的数据,包括巡更计划或通知信息。当需要上传巡更数据或者报警时,终端可以发起通讯。
4 结束语
μC/OS-II 实时操作系统是开放源代码且得到实际验证的软件平台,而S3C44BOx 具有强大的32 位RISC 性能,基于此软硬件平台开发的巡更数据远程采集终端, 具有稳定可靠的性能, 可以通过GPRS与监控中心进行实时通讯,为整个巡更系统的安全可靠奠定了坚实的基础,确保巡更单位财产的安全。