作者:王益祥 , 段俊丽 , 聂怀云
近年来,我国水运事业取得了很快地发展,为国民经济的增长提供了重要的支持和保障;然而,我国的水上安全基础设施仍然很薄弱,管理尚不规范,水上交通安全面临的形势仍然不容乐观。
违规违纪的现象也还非常严重,由于超载、抢道、冒雾航行等导致的翻船、沉船、撞船等交通事故频频发生,给国家造成了巨大的经济损失,同时给人民生命财产安全带来了严重危害。因此,相关部门正加大对水运船只的监管力度,各种轮船定位和导航服务随之兴起,各种船舶GPS监控系统逐渐被开发并应用于水路运输的监控管理中。
本文利用GPRS无线数据传输技术,在μC/OS-II嵌入式实时操作系统环境下,实现了船载远程监控系统中船载监控终端的设计,为实现对水路运输船舶的远程监控和管理提供了方便。该系统以GPS作为船舶定位手段,以GPRS作为数据传输方式,通过船载终端和监控中心的信息交互,实现对远程作业船舶的有效监控,由此将大大提高水上作业船舶的安全性,减少水上交通事故的发生,保障人民生命财产安全。
1 系统实现原理与总体结构
通常,基于GPRS的船载终端远程监控系统主要是用来对远程作业的船舶进行实时监控。具体操作时,用户可以通过GPRS模块上网,将数据发送到Internet;服务器连接到Internet,通过Socket套接字编程接收船载终端发送到Internet的数据信息。系统主要由三部分组成:监控中心、数据传输网络和船载终端。监控中心服务器必须可以连接到Internet,并具有固定的IP地址;数据传输网络由GPRS网络和Internet组成,是终端与监控中心之间的数据传输媒介;船载终端集成了GPRS通信模块,具有接收和发送数据的功能,可以接收来自监控中心的数据信息,也可以向监控中心发送数据信息。系统总体架构如图1所示。
在本系统的没计中,采用GPRS和Internet作为数据传输中介,实现船载终端与监控中心之间的数据传输。GPRS的基础是以IP包的形式进行数据传输的,GPRS终端通过PPP(Point-to-Point Protocol)协议获得动态分配的IP地址。建立连接后,在PPP协议的基础上通过数据传输协议(TCP、UDP)实现与Internet上计算机的数据通信。
2 船载终端硬件系统设计
从图1可以看出,基于GPRS进行船舶的远程监控,其能够实现的关键是要能够设计出可以实现数据通信、定位、显示以及报警等功能的船舶监控终端,因此,在整个系统的设计中,船载终端的设计是基础。根据船载终端所要实现的功能,设计图2所示的硬件系统。整个硬件系统由中央处理器、存储器、GPRS通信模块、GPS定位模块、JTAG接口、A/D、LCD、按键、电源管理等单元组成。其中核心的部分主要有中央处理器、GPS模块和GPRS模块三部分。
从图2可以看出,中央控制器在船载终端中起着重要的作用,它对整个硬件系统进行控制,包括对下端传感器的控制、传感器信号的处理、接收GPS定位信息、数据打包以及与GPRS模块通信等。考虑到系统对处理器性能的需求,选择三星公司的S3C4480X作为船载终端的中央处理器。该芯片采用0.25 μm COMS工艺制造,主频最高可达66 MHz,在ARM7TDMI内核基础上扩展了一系列完整的通用逻辑单元,可以减少外围器件,降低系统成本;同时它还提供了丰富的片上功能。本系统的GPRS模块选择了Motorola公司的G20作为船载终端的无线通信模块;而GPS定位模块则选用Motorola公司的M12作为GPS的接收模块,它提供了串行接口与外部控制器通信,主要是将接收的GPS信息发送给外部处理器。
整个硬件平台的设计以S3C44B0X为核心,选用闪速存储器(Flash memory)SST39VF160作为处理器外扩ROM存储器,用来保存掉电后仍需要保存的程序代码和数据信息;同时选用Hynix Semiconductor SDRAM芯片HY57V281620HCT作为存储器来扩展外部RAM,大大提高了系统的运行速度。电源管理模块根据各单元模块的电源需求,采用不同的电压转换芯片将9 V输入电压转换为所需要的各种电压值。船载终端采样G20的串行口与处理器S3C44B0X的串行口UART0连接实现数据通信;同时,将M12的串行口与S3C44B0X的串行口UART1连接,M12将接收到的GPS信号通过串口发送到S3C44B0X进行解析得出经纬度数据。
3 船载终端软件设计与实现
由于系统中应用程序较多、实时性要求较高,所以在软件设计时选用了多任务嵌入式实时操作系统μC/OS-II。μC/OS-II是完全占先式的实时内核,支持多任务操作,可管理多达64个任务,并且每个任务都有自己单独的堆栈空间;可以进行任务管理、时间管理、任务之间的通信与同步、中断管理等,因此可以很好地满足本系统的要求。
在进行终端系统所有程序的设计之前,必须先在S3C4480X上进行μC/OS-II移植。对μC/OS-II进行移植,主要是要对内核中与处理器和应用有关的文件进行改写,其中与处理器有关的文件有3个,分别是OS_CPU.H、OS_CPU_A.S和OS_CPU_C.C;与应用有关的文件主要是OS_CFG.H和INCLUDES.H,前者主要是对μC/OS-II所提供的内核服务进行选择性设置,后者主要对所需头文件的包含。μC/OS-II在S3C44B0X上移植完成以后,终端应用程序的设计就可以方便地在该操作系统下完成了。
编程时,首先根据船载终端的功能要求,将整个系统划分为几个并行存在的任务,即GPRS部分、GPS部分、A/D、按键部分以及报警部分等。然后,进行船载终端与监控中心数据通信协议的设计,此外还必须编制相应的终端底层硬件驱动程序。船载终端的主程序执行流程如图3所示。
在船载终端软件设计时,首先对ARM微处理器的系统进行上电初始化,即BootLoader代码。这里S3C4480X处理器的BootLoader代码全部放在Init.s文件中,初始化过程主要按照各个任务进行编写。其中在异常向量的实现中,复位异常ResetHandler的实现主要根据本系统实际情况,对存储器、中断、系统时钟频率、异常处理堆栈初始化、中断服务IsrIRQ、C代码运行环境等进行设置和初始化。在完成了BootLoader中所有必要的初始化以后,通过相应的跳转指令进入C语言程序开始执行应用程序的主程序,对船载终端各个任务模块的初始化、μC/OS-II的初始化、定时器启动和μC/OS-II多任务系统启动等。初始化程序如下:
初始化完成后进行任务创建,并启动任务调度。整个终端的各个任务之间的调度关系如图4所示。
系统监视任务优先权最高,最先进入运行态,其他任务处于就绪态。系统监视任务分别查询每一个被监视的任务是否向其发送消息。如果没有,则其进入挂起态。按优先权级别顺序,按键响应任务将由就绪态转为运行状态。在该任务将要执行完毕时,向系统监视中心发送消息,然后执行延肘函数将自身转为挂起状态,交出CPU使用权让其他任务得以执行。此时系统监视任务得到消息转为运行状态,继续查询其他被监视任务的运行消息。GPS数据接收任务和GPRS数据传输任务可以在按键任务延时时间间隔内执行。由于S3C44B0X处理器速度足够快,所有任务得以在满足时序的前提下顺利执行。为了提高船载的安全保障系数,能及时向监控中心报警,设计了一个中断服务子程序,专门用来分析和判断船载的运行状态是否正常。
在整个过程中,监控中心与船载终端之间的通信是通过建立TCP/IP连接来实现的。
4 实验分析及结论
在完成了上述硬件和软件设计的基础上,首先通过船载终端硬件调试、船载终端软件调试验证了设计的硬件、软件系统的可靠性,然后通过终端网络通信实验验证了终端能够实现与上位机进行网络连接并能够正常进行数据接收与发送。通过调试,基于GPRS的船载远程监控系统数据的发送与接收实时性较好,数据处理速度较快,完全满足监控系统实时处理和传输的要求,可以很好地应用于船舶远程监控系统中。
本文研究了基于GPRS的船载远程监控系统终端设计。主要完成了船载监控终端的总体结构设计,并以ARM处理器S3C44B0X为核心,在μC/OS-II嵌入式实时操作系统下,完成了系统的软、硬件设计,实现了船载终端预期的功能,以及船载终端与监控中心的数据通信、GPS信息获取、报警显示等功能。利用该系统可以有效地对水上交通情况进行监控管理,并对水路运输船舶进行合理调度、导航、紧急事故处理、危险报警以及防止违规作业等,为促进我国水上事业的发展提供了有力的保障。
责任编辑:gt
-
无线
+关注
关注
31文章
5437浏览量
173118 -
监控系统
+关注
关注
21文章
3870浏览量
173521 -
GPRS
+关注
关注
21文章
983浏览量
129350
发布评论请先 登录
相关推荐
评论