期刊
论文
课题
会议
基于GPRS的远程火灾视频监测系统的设计

【关键字】GPRS;MC39i;MSP430FG4619单片机

【出   处】 2018年 1期

【收   录】中文学术期刊网

【作   者】陈杰

【单   位】

【摘   要】摘要:基于目前自然火灾的监视情况,设计了一种基于GPRS的远程视频监测系统。使用GPRS网络实现远程视频监控技术,提出使用专用视频压缩芯片实现MPEG-4视频压缩的系统设计方案。本


摘要:基于目前自然火灾的监视情况,设计了一种基于GPRS的远程视频监测系统。使用GPRS网络实现远程视频监控技术,提出使用专用视频压缩芯片实现MPEG-4视频压缩的系统设计方案。本文研究的视频监控终端采用C/OS-II作为其嵌入式操作系统,利用GPRS无线传输模块接入互连网,接收服务器可以在监控中心实时监控多点传来的视频监控信号。

  关键词:GPRS;MC39i;MSP430FG4619单片机

  1引言

  随着科学技术的不断发展,大自然的环境却收到了越来越严重的破坏。其中火灾是很值得关注的重要问题,近年来,森林火灾频频发生,由于森林的面积广阔,一旦出现火灾,往往由于没有及时发现而造成重大的损失。由于面积广阔,建造有线通讯设施成本太大且频频维护,这是以往影响无人值守的火情了望台应用的技术瓶颈。但是,空间及遥感技术、计算机技术、通信与网络技术的快速发展为森林火灾监测的研究提供了不断完善的方法和手段。本文研究的森林火灾视频监控终端采用μC/OS-II作为嵌入式操作系统,为了支持GPRS网络通信,系统需要PPP或SLIP协议的支持。由于μC/OS-II不包括TCP/IP协议栈,所以要编写设备的网络接口。本文选用免费的TCP/IP协议栈LwIP v0.6.4作为设计核心,在μC/OS-II上移植了LwIP以实现TCP/IP协议栈,从而获得了一个功能完善的嵌入式IP终端。然后数据到达GPRS数据传输终端,通过GPRS网络到达数据监控中心,达到对火灾监控的目的。 GPRS传输技术概述 GPRS(General Packet Radio Service)即通用分组无线业务,是在现有GSM系统上发展起来的一种承载业务,目的是为GSM用户提供分组形式的数据业务。GPRS是 GSM Phase2+阶段规定实现的内容之一,它的目标是提供高I00kbit/s以上速率的分组数据业务[1]。GPRS采用与GSM同样的无线调制标准同样的频带同样的突发结构同样的跳频规则以及同样的TDMA帧结构,这种新的分组数据信道与当前的电路交换的话音业务信道极其相似,因此现有的基站子系统(BSS)从一开始就可提供全面的GPRS覆盖GPRS理论带宽可达到171.2kbps,实际应用带宽大约在40-100KbPs,在此信道上提供TCP/IP连接,可以用于Internet连接数据传输等应用,在移动用户和数据网络之间提供一种连接给移动用户提供高速无线IP或X.25服务巨大的吞吐量,改变了以往单一面向文本的无线数据应用,使得包括图片语音和视频在内的多媒体业务成为现实。GPRS采用分组交换方式仅在实际传送和接收数据时才占用无线资源,使用GPRS在一个小区内多个用户可以共享一条无线信道,同时进行通信大大提高了信道的利用率,即用户可随时与网络保持联系:比如用户用GPRS访问互联网时当没有数据传输时就进入一种准休眠状态,释放所用的无线频道给其他用户使用这时网络与用户之间还保持一种逻辑上的连接,当有数据传输时立即向网络请求无线频道用来传送数据,而不是像普通拨号上网那样断线后还得重新拨号才能上网冲浪。

  3监控系统的组成和设计

  3.1系统结构组成

  整个系统可以分为两个部分:监控终端和监控中心两个部分。监控终端的主要任务是对火灾现场视频图像的采集,压缩后送到GPRS传输终端,数据经过TCP封装->IP封装->PPP封装,然后将数据发送到GPRS网络,通过无线网络传输到监控中心。监控中心对收到的图像信息解压还原并显示。整体结构图如下所示。

  3.2系统硬件设计

  整个系统的设计包括GPRS终端的硬件与软件的选择与设计、视频监测终端网络接口软件设计、网络接口协议、TCP/IP协议处理等。

  由于GPRS作视频传输需要考虑带宽的问题。由于高精度实时视频信息量巨大,需要较高的传输码率,GPRS提供的带宽并不能达到这一要求。因而需要对现场采集视频信息进行压缩后传输。在这里我们采用了目前比较流行的MPEG-4动态视频压缩编码方法。MPEG-4采用可变取样率的作法,在20kbps-6Mbps的

  传输环境中都可以播放,适合于移动终端的图像传输[2],以便GPRS网络传输。

  我们选用的专业视频编码芯片为SAA7113H,视频压缩使用支持MPEG-4编码的专用芯片IME6400完成,其连接结构大致如下图:

  CV BS

S-Video控制线

  数据线

  视频的采集首先由摄像头进行拍摄,然后以S-Video(亮色分离信号)方式输出到SAA7113H视频编码芯片进行视频A/D转换。SAA7113H支持NTSC/PAL/SECAM制式的模拟信号到数字视频的转换。转换后的彩色数字视频的Y:Cb:Cr格式为4:2:2。SAA7113H的输出视频由IME6400接收后进行压缩。

  处理器通过I2C总线与SAA7113H连接,对其各个功能寄存器进行配置。SAA7113H输出8位数字信号VP0~VP7;输出两路参考信号RTS0~RTS1,通过设置内部寄存器可分别配置成水平参考信号(HREF)、垂直参考信号(VREF)、或者奇偶场同步信号。输出信号引脚分别与IME6400的VD0~VD7连接。SAA7113H输出的数字信号

  是以27MHz的LLC时钟为同步信号,即每个LLC周期内有1个字节输出(下降沿有效)。IME6400通过PCLK与LLC引脚进行连接,在每个LLC的下降沿读取SAA7113H的视频输出信号。

  IME6400芯片可以支持MPEG-4/2/1视频压缩编码标准;同时支持I、P和B帧压缩。其图像大小可以编程设定;可以支持固定和可变码率压缩,并且支持动态检测。IME6400提供支持16位的外部HOST引脚接口,可通过总线接口与处理器连接。LPC2214可通过总线对IME6400的寄存器和存储资源进行读写,以及获取视频信号压缩后的MPEG-4码流。处理器将读取到的视频码流保存在外扩的

  SDRAM寄存器中,等待进一步的发送处理。

  采集终端采用的是MSP430FG4619单片机 ,MSP430FG4619是TI公司最新推出的超低功耗特性的Flash型单片机,该系列单片机具有丰富的内部资源,大容量片内flash和强大的信号处理能力,其性价比相当高,在系统设计、开发调试及实际应用上都表现出较明显的优势。片上资源的使用使得系统硬件设计简化,同时可以提高系统的可靠性。单片机完成整个系统所需的协议栈(PPP,IP/TCP)以及监测数据的采集、中心主站命令的解析等。

  GPRS模块完成无线上网功能,选用SIE-MENS公司的MC39I,其稳定性以及性价比较高。该模块需要自行设计外围电路。通过ZIF为用户提供SIM卡、RS-232及语音等接口。MC39I是双频GSM/GPRS无线模块,它支持标准ITU-T的AT命令集。支持全双工的数据通信,其具有低功耗、接口简单并支持GPRS CLASS 10以及SMS功能[3]完成上网功能还需用户提供SIM卡以及天线。

  下图是MSP430FG4619单片机和MC39i的硬件接口图

  4软件设计

  4.1视频采集和压缩驱动

  视频A/D转换模块首先通过设置SAA7113H的配置寄存器对其进行初始化。设定输入的视频信号为PAL制式,每秒25帧,一帧图像的分辨率为720×576。视频压缩模块首先对IME6400进行初始化。IME6400由其片上RISC CPU控制工作,芯片上电复位之后,RISCCPU首先执行位于片内SDRAM中的代码,根据代码的的内容,对内部各功能模块进行初始化设置并协调各功能模块的行为。对IME6400的初始化可由ARM通过主控制接口向IME6400的SDRAM发送固件程序。使芯片接收SAA7113H的视频信息开始视频压缩工作。在压缩芯片工作的过程中。视频转换后的MPEG-4码流存放于数据库中,等待进一步的发送处理。

  4.2网络接口协议

  数据是通过GPRS网络传输到因特网服务器上的,所以在由单片机和GPRS Modem组成的发送端所发送的数据,要被封装成能被GPRS网络所接受的协议,而且要把数据正确地传送到接受方,则GPRS网络需要对接受方和发送方的协议进行转换。

  OSI(International Standard Organizations)针对抽象/复杂的网络功能,以不同层次的概念,系统地呈现网络功能的开放系统互连(open system interconnection,OSI)网络参考模型,将整个网络所需的软/硬件结构,按照不同的功能将其分为七层,即ISO7层协议。这七层从下到上分别是物理层,数据链路层,网络层,传输层,会话层,表示层,应用层。数据的发送主要涉及到物理层,数据链路层,网络层和传输层,其网络通信分层结构如图所示:

TCP IP PPP GPRS 传输层

网络层

链路层

物理层

  采集终端

  GPRS网络 Internet 主站

  物理层:利用AT指令通过GPRS Modem拨号,正确反馈及应答后,一条物理通道即GPRS信道就在系统中的GPRS Modem和GPRS网络之间建立起来。 数据链路层:PPP协议将原始的GPRS物理层连接改造成无差错的数据链路,系统将远程登录Internet,并得到GPRS网关分配的IP地址。 网络层:采用IP协议作为网络层协议。IP协议将接入Intemet的具有不同IP地址的终端都联系起来。经过IP路由选择,可以实现系统与连在Internet上的任一IP终端进行数据交互。 传输层:选择TCP作为传输层协议,为数据传输提供连接可靠地服务。[4] 4.3视频监测终端网络接口软件设计

  LwIP协议栈在设计时就考虑到了将来的移植问题,因此把所有与硬件、操作系统、编译器相关的部份都独立出来,放在/src/arch目录下。 LwIP在μC/OS-II上的实现就是要修改该目录下的文件,其它的文件一般不应该修改,主要的工作包括以下几部分。

  (1)相关的include文件

  在/src/arch/include/arch目录下的cc.h、cpu.h、perf.h中有一些与CPU或编译器相关的定义,如数据长度、字的高低位顺序等,这应该与用户实现μC/OS-II时定义的数据长度等参数一致。一般情况下C语言的结构体struct是4字节对齐的,但是在处理数据包的时候,LwIP是通过结构体中不同数据的长度来读取相应数据的,所以,一定要在定义struct的时候使用_packed关键字,让编译器放弃struct的字节对齐。

  (2)sys_arch操作系统相关部份

  sys_arch.[ch]中的内容是与操作系统相关的一些结构和函数。μC/OS-II实现了消息队列结构OSQ及其操作,但没有对消息队列中的消息进行管理,因此不能直接使用,必须重新实现。对队列本身的管理可利用mC/OS-II自己的OSQ操作完成,然后使用μC/OS-II中的内存管理模块实现对消息的创建、使用、删除回收,两部分综合起来即可形成LwIP的消息队列功能。

  (3)sys_thread_new 创建新线程

  在μC/OS-II中,没有线程(thread)的概念,只有任务(Task)。它已经提供了创建新任务的系统API调用OSTaskCreate,因此只要把OSTaskCreate封装一下,就可以实现sys_thread_new。需要注意的是LwIP中的thread并没有μC/OS-II中优先级的概念,实现时要由用户事先为LwIP中创建的线程分配好优先级。

  (4)lib_arch中库函数的实现

  LwIP协议栈中用到了8个外部函数,这些函数通常与用户使用的系统或编译器有关,因此应由用户自己实现。

  LwIP的设备驱动程序接口

  LwIP与PPP的程序结构简要描述如下:

  #define NTHREADS 3

  #define STACKSIZE( CYG NUM_HAL_STACK_SIZE_TYPICAL + 4096 )

  #define NTHREADS 3

  #define STACKSIZE ( CYG NUM_HAL_STACK_SIZE_TYPICAL + 4096 )

  err = cyg_io_lookup( "/dev/ser1", &handle1 );

  if (ENOERR == err)

  {middleblink();}

  Else

  {leftblink();};

  pppInit();

  pppSetAuth(PPPAUTHTYPE_ PAP," pppuser","pppassword");

  pd=pppOpen(handle1,ppp LinkStatus Callback,NULL);

  void pppLinkStatusCallback (void * ctx, int errCode, void * arg)

  {skipblink();}

  4.4 MC39i模块的驱动程序

  单片机通过串口和GPRS模块交换数据,所以首先要编写串口驱动程序,包括串口初始化(Init_Comm)、写串口数据(PrintChar)等函数。读串口数据是通过中断来完成的。由于篇幅所限,只给出串口初始化的代码:

  void Init_Comm(void)

  {

  TMOD=TMOD&0x0F;

  TMOD=TMOD|0x20;//定时器1采用方式2,用于产生串口1的波特率

  TL1=0xFD,TH1=0xFD;//32MHz-57600bps

  WDCON=0x80;//SMOD1=1

  SCON1=0x50;//串口1采用方式1

  TR1=1;//启动定时器1*/

  }

  在这些串口函数的基础上编写GPRS模块的驱动函数。单片机通过AT命令进行拨号后,GPRS模块就转入在线模式,此时通过PPP协议取得一个IP地址,就可以连接到互联网了。

  5 关键技术

  5.1 MC39i模块的初始化

  主要包括启动MC39I和驱动modem工作。启动MC39I主要是利用微处理器的I/O口控制MC39I的启动输入引脚IGT,微处理器通过模拟IGT脉冲时序触发MC39I启动。

  驱动modem是基于AT指令集完成的,AT指令是多种综合业务的集合,它通过“AT相应控制命令”来驱动modem工作。微处理器MSP430FG4619通过串行接口将AT指令发送给MC39I,从而完成对MC39I的控制,主要步骤如下:

  ①测试模块。使用ATE0X0\r命令测试模块工作是否正常;

  ②设置通信波特率。使用AT+IPR=38 400命令,把波特率设为38 400 b/s或其他合适的波特率,默认的通信速度为9 600 b/s;

  ③设置接入网关。通过T+ CGD-CONT=1,IP,CMNET\r命令设置GPRS接入网关为移动梦网;

  ④设置移动终端的类别。通过AT+CGCLASS=“B”设置移动终端的类别为B类,即同时监控多种业务;但只能运行一种业务,即在同一时间只能使用GPRS上网,或者使用GSM的语音通信;

  ⑤测试GPRS服务是否开通,使用AT+CGATT=1命令激活GPRS功能,使GPRS模块附着在网络上。如果返回OK,则GPRS连接成功;如果返回ERROR,则意味着GPRS失败;

  ⑥然后发送指令ATD*99***1#\r建立拨号过程,模块会返回一些16进制数据[5]。

  5.2 数据的传输

  GPRS网络物理层提供了数据传输的途径,需要一种数据链路层的协议对上层即网络层协议进行封装。由于GPRS是基于IP协议,数据以IP分组的形式在终端与GPRS服务器群之间进行传输,为了保证传输的可靠性和实现对终端的身份验证,中国移动采用了PPP协议作为数据链路层使用的协议。PPP协议在网络组件中实现,在此不做讨论。使用PPP拨号时,接入电话号码为“*999*1#”,用户名和密码都为空,开始PPP拨号后,不断的轮循PPP状态机的状态,当状态为OPENED时,表示PPP协商成功、连接建立,可以使用GPRS网络进行TCP/UDP的数据传输。由于通过GPRS拨号上网的终端连接上的是中国移动的GPRS内网,它获得的IP地址属于GPRS内网地址,初始状态下,数据中心不能直接用这个IP地址主动与终端设备进行通讯,所以通讯过程一般为:

  (1)终端设备通过PPP拨号登录GPRS网络,获得GPRS内网的IP地址;

  (2)终端设备使用数据中心服务器的Internet上的IP地址或HTTP地址与数据中心建立TCP连接,这时TCP握手请求的IP封包通过GPRS内网与Internet连接的网关路由至数据中心;

  (3)数据中心收到握手请求后,发送的同步响应报文经过上述GPRS网关的NAT转换递交到终端设备;

  (4)完成握手后,连接建立,开始数据传输。

  5.3可靠性的保证

  由于GPRS网络目前存在掉包率偏高、经常掉线、链路不稳定的特点,在实际应用中,需要采用心跳、掉线参照等机制来解决可能造成传输失败的种种问题,确保网络传输的可靠性。

  (1)心跳

  心跳机制是测试服务器和GPRS模块之间通路的一种手段。启用心跳设置,模块上线后,在运行期间按照一定的时间间隔定时发送数据包,任何一方接收到对方的心跳后,都原样返回。这样可以使模块自身的优先级不被降低,保持长时间在线。如果超过时间没有收到心跳,则重新启动模块,接入GPRS网络。

  (2)掉线参照

  掉线参照是给终端提供测试是否发生无线掉线的手段。采用掉线参照机制,可以选择GPRS网络内部的网关或路由器作为无线参照点,测试时使用ICMP协议中的PING操作。启用掉线参照设置,模块上线后,会自行依照设定的周期PING参照点,并通过测试结果确定是否进行掉线复位处理。

  在实际应用中,作者同时采用了心跳和掉线参照2种机制。这样既可以避免无线掉线的发生,又可以避免数据采集服务器故障或关机后,引起模块错误地认为是无线掉线,进行无谓的复位处理。两种机制的同时采用,便于处理网络传输中可能发生的各种情况,是比较理想的保证网络传输可靠性的做法。 总结 本文使用了GPRS网络实现远程视频监控的技术,大大减少了监测系统的成本,对现场能够时时进行安全的监控。采用了MSP430FG4619单片机作为数据采集模块和MC39i模块作为GPRS终端数据传输终端,有效地提高了数据的采集、传输,提高了系统的稳定性,能够更好的对需要检测的地区进行全面的监视,大大减少了火灾带来的损失。

  参考文献

  [1]黄嘉辉.JAVA网络程序设计.北京:清华大学出版社,2002.10

  [2]宏绪,李迅.一种MPEG4视频压缩和传输系统[J].现代电子技术.2004,(20):44-46.

  [3]SIEMENS. MC39I Handware Interface Description [EB/OL].www.SIEMENS.

  Com,2003-10-12.

  [4]张庆龙,HT48R单片机控制与网络传输应用.中国电力出版社.2007.

  [5]刘成良.基于无线JAVA的远程监控系统研究[J].自动化仪表,2006,27(2):

  18-21.

论文推荐 +更多
不锈钢在4-甲基咪唑缓蚀液中的电化学行为研究
长庆油田第一净化厂外输污水配伍性试验研究
低烟耐火材料聚氧化磷腈的合成与表征研究
等离子发射光谱法测定煤中总硫含量的研究
煤与瓦斯突出危险区域巷道贯通安全技术
登录 注册 投稿