基于GPRS的嵌入式控制服务器系统实现

时间:2024-01-24 点赞:46842 浏览:93028 作者原创标记本站原创

本文是一篇嵌入式论文范文,嵌入式方面毕业论文题目,关于基于GPRS的嵌入式控制服务器系统实现相关专升本毕业论文范文。适合嵌入式及服务器及控制系统方面的的大学硕士和本科毕业论文以及嵌入式相关开题报告范文和职称论文写作参考文献资料下载。

摘 要:本论文基于ARM嵌入式硬件平台,以嵌入式Linux为操作系统,设计并实现了一个远程控制系统中控制服务器系统.该系统实现了G短消息收发、GPRS数据传输、视频图像采集等功能.该系统可广泛应用于智能家居、工矿采集和机械生产等远程控制方面.

关 键 词:GPRS;蓝牙;远程控制

控制服务器系统主要的功能是实现GPRS模块和远程控制终端的数据传输.当手机或GPRS模块想要通过GPRS移动网络进行上网时,首先手机或GPRS模块需要通过移动GPRS无线网络接入到移动服务器的CMWAP或CMNET接入点当接入成功后,移动服务器会给接入设备动态的分配一个以10开头的移动内部IP地址,此时接入设备就可以成功的完成联网操作.由于移动服务器给接入设备分配的是动态IP,所以每个接入设备在接入移动服务器之前所拥有的IP地址都是不可知的,并且每次重新接入移动服务器时所得到的IP地址也是不固定的.因此对于控制服务器系统的GPRS模块和远程控制终端的连接使用了GPRS模块动态获得移动内部IP地址后,远程控制终端进行动态连接的方案,即控制服务器的GPRS模块首先接入到移动的服务器,获得移动服务器动态分配的IP地址,然后控制服务器的GPRS模块将获得的动态IP地址通过移动的G网络以短消息的形式发送到远程控制终端.远程控制终端得到由控制服务器的GPRS模块发送过来的IP地址后,就可以在登入界面中输入得到的IP地址连接到控制服务器进行相关的控制.

控制服务器另一个主要的功能就是接收受控终端的连接并与受控终端进行通信.控制服务器与受控终端的通信是应用蓝牙无线通信技术来实现的.为了使受控终端能更加方便的找到控制服务器并与其进行连接,在控制服务器系统中创建了一个服务发现协议(SDP)的服务记录.受控终端根据服务记录就可以方便的实现与控制服务器的连接.

控制服务器为了能更高效率的实现对受控终端的接入管理,在控制服务器系统实现过程中采用了异步socket方式接收受控终端的接入,即通过select()函数来监听接入的各个受控终端的反应.当客户端关闭套接口时,可以采用向服务器端发送断开连接消息的方案来解决有效连接的问题.然而,在本系统的实现过程中采用了更为简洁的方案来解决此问题.由于客户端和服务器端采用TCP进行连接,所以任意一方主动关闭套接口进行释放连接时,都将进行四次握手过程.被动关闭的一方此时读套接口将会读到FIN结束标志,返回读到的字节数为0.因此,可以利用这个过程来解决有效连接断开问题.

控制服务器再一个主要的功能就是现场状况的监视功能.该功能的实现主要通过网眼V2000摄像头不断采集原始RGB24格式帧.然后利用jpeglib库将采集的原始RGB24格式帧压缩成jpeg格式的图片,通过GPRS的数据传输将图片发送到远程控制终端实现现场的监视功能.

1.1GPRS模块通信

GPRS模块和应用系统是通过串口连接的,控制系统可以发给GPRS模块AT命令的字符串来控制其行为.GPRS模块具有一套标准的AT命令集,包括一般命令、呼叫控制命令、网络服务相关命令、本命令、短消息命令、GPRS命令等.

1.2GPRS服务器的构建

GPRS服务器的构建主要通过GPRS模块的AT指令来实现的.在设定模块为服务器之前,首先要通过AT+CIPCSGP指令为服务器设定使用GPRS服务方式,连接移动服务器的CMWAP接入点.然后通过AT+CLPORT指令指定服务器本地的端口号和使用的连接方式(TCP或UDP).最后通过调用AT+CIPSERVER指令启动GPRS模块向移动服务器发起连接.模块尝试连接后,无论连接是否成功都会马上返回结果.如果连接成功模块就可以得到移动服务器动态分配的IP地址,并且可以不断监听客户端的连接请求.

1.3蓝牙服务器的构建

在蓝牙服务器的构建实现过程中,首先要创建服务记录,并在服务器的端口上注册服务记录.然后再创建服务器端的套接口(socket),将带有服务记录的端口号绑定到创建的套接口上,最后蓝牙服务器就可监听这个绑定端口号的套接口,根据这个套接口的可读性变化来判断是否有蓝牙客户端请求连接.蓝牙客户端与服务器端建立连接后,服务器端就可以不停的来监听各个蓝牙客户端的行为.在系统的实现过程中,服务器的监听套接口和有效连接套接口的行为变化是通过select函数进行监听的.

1.4服务器的控制

服务器的控制实现主要根据控制服务器接收到远程控制终端发送的命令后,查找控制服务器相应的控制命令来实现的.

查找命令根据接收到的控制命令种类进行相应行为的判断.如果接收到的是启动GPRS服务器的命令,控制服务器就会将GPRS服务器的标志位置位,使能GPRS服务器重新启动.如果接收到的命令是得到控制服务器的IP地址的命令,控制服务器就会通过G网络以短消息的形式将IP地址发送到远程控制终端.如果是受控终端的控制命令,监听线程就会重新启动一个发送命令线程,将收到的控制命令向各个受控终端进行广播.如果控制服务器接收到的是查看现场的命令,监听线程就会创建采集帧和发送帧两个线程,完成摄像头的采集并压缩图像数据和发送压缩好的图像数据.在此处启动两个线程主要是由于摄像头采集数据采用了内存映射方式,该方式是将采集的原始数据帧直接放到内存空间中,实现了不同进程共享内存的通信方式,减少了进程对I/O的操作,提高了读取效率.并且在该方式下,摄像头可以连续采集两帧原始数据,在采集帧线程采集并压缩完第一帧数据后,采集帧线程可以继续采集第二帧数据.在采集帧线程采集第二帧数据过程中,发送线程可以同时将压缩好的第一帧数据发送出去.通过创建采集帧和发送帧两个线程可以更高效的采集数据和发送数据.

1.5图像的采集

视频图像采集主要通过调用驱动函数ioctl()来实现对视频图像采集设备的配置与控制.

视频图像采集的实现是通过采集帧线程来完成的.采集帧线程主要完成了采集帧和压缩帧的功能.


1.6图像的压缩

图像压缩的实现主要通过jpeglib库提供方法来实现的.通过创建压缩结构体来设置图像压缩后的大小、压缩质量和压缩方式等属性.

1.7图像帧的发送

控制服务器采集的图像帧是利用GPRS模块的数据传输功能,经过移动GPRS无线网络发送到远程控制终端的.为了使远程控制终端能够更加方便的辨别出发送的数据为视频图像采集数据,在发送前为每个分片后的数据添加了VIDEO的数据包头信息.远程控制终端接收到数据,通过判断VIDEO标志就可提取出每个分片的视频图像数据.为了使远程控制终端辨别出完整一帧的发送结束,在控制服务器完成一帧的发送后将会再发送一个OVER标志.远程控制终端接收到VIDEOOVER信息就会将接收到的一帧图像提交给视频监视查看界面.

相关论文

计算机房计算机控制管理系统的实现

此文是一篇计算机论文范文,关于计算机类论文范文数据库,与计算机房计算机控制管理系统的实现相关本科毕业论文。适合不知如何写计算机及计算。

嵌入式语音识别系统的与实现

本文关于语音及算法及模型方面的免费优秀学术论文范文,语音有关论文范文集,与嵌入式语音识别系统的与实现相关毕业论文的格式范文,对不知。

服务器系统远程管理技术与应用

本文是一篇操作系统论文范文,操作系统有关学士学位论文,关于服务器系统远程管理技术与应用相关专升本毕业论文范文。适合操作系统及服务器及。

典型连铸过程控制计算机系统的实现

本文是一篇过程控制论文范文,关于过程控制相关毕业论文开题报告,关于典型连铸过程控制计算机系统的实现相关硕士毕业论文范文。适合过程控制。

建筑电气的控制总线系统与应用

本文是一篇控制系统论文范文,控制系统类有关毕业论文提纲,关于建筑电气的控制总线系统与应用相关毕业论文题目范文。适合控制系统及建筑电气。