基于GPS和3G技术的智能公交终端设计 - 中国一卡通网
用户名密码 [免费注册] [找回密码] 推广技巧 发布求购 建商铺  发产品  会员体制比较  
 

基于GPS和3G技术的智能公交终端设计

来源:中国一卡通网  作者:不详  发布时间:2012-11-02 10:47:51  字体:[ ]

关键字:智能公交  通信  GPS  

摘   要: 智能公交系统的实施,不仅可以给乘客带来巨大的利益,提升城市形象,还以为公交企业节约大量经营成本,提高科学管理水平。因此智能公交系统的建设着重大的社会效益和经济效益。


  OV7620是一款高集成度、高分辨率的彩色图像传感器。其分辨率为640x480,传输速率可达30帧/秒。OV7620的控制采用SCCB(Serial Camera Control Bus)协议,可利用其SCCB(Serial Camera Control Bus)接口完成对它的有关设置和读取图像数据。

  OV511是摄像头的主控芯片,其片内的高性能压缩引擎可使图像的压缩比达到7:1,保证了从图像传感器到主控制器的快速图像传输。

  2.3 GPS模块的选型与连接

  本系统的GPS模块采用的是HOLUX的GB-87模块。该模块支持NMEA0183协议,支持V3.3-V5.5电压输入,TTL接口电平,波特率可置。

  在本系统中,GR-87模块通过6PIN排线与主板相连,1脚为电源输入脚,接5 V电源,2、3脚为GPS模块的数据接收和发送,5脚接地。

  工作时,GPS模块串口2与主控制器S3C2440进行通信,通过设置模块定时输出GPS定位数据,由主控制器对GPS数据进行处理,提取出经纬度,时间等有用信息,为自动报站及正点考核提供可靠数据,保证报站及正点考核功能的实现。

  2.4 3G模块的选型与连接

  根据无线接口技术的不同,现有3G技术可以分为联通的WCDMA技术,电信的CDMA2000技术和移动的TD-SCDMA技术。

  考虑到传输带宽、网络稳定性、实用性等因素,本系统采用电信CDMA2000作为无线网络传输,采用中兴公司的MC8630模块作为视频数据传输模块。

  MC8630模块具有语音、短信、数据业务和GPS等功能,工作频段为800MHz,通过双天线接收分集技术和均衡技术,上行速率最高可达3.1 Mbit/s下行速率最高可达3.1 Mbit/s。可以通过USB接口将MC8630模块连接到MIN2440(S3C2440为主芯片的开发板)处理器上,实现封装后的视频数据传输。

  3 系统软件设计

  目前常见的嵌入式操作系统主要有WinCE、Linux、Vxworks等几种。其中Linux操作系统的源码完全开放。由于其自身具有高效稳定、网络资源丰富、内核小、执行速度快,可移植性好等优点,被广泛应用于嵌入式系统领域。所以,选择嵌入式Linux操作系统作为本系统的软件开发平台。

  在软件设计方面,首先需要在单片机和PC机之间建立交叉编译环境,用来编译引导程序和Linux内核。然后完成引导程序Bootloa der的移植;配置和编译Linux内核;制作根文件系统以及底层驱动程序。

  最后,通过编写上层应用程序完成图像采集、GPS信息采集、3G传输等功能。下面几节详细的介绍了几个主要程序的设计思想。

  3.1 图像采集程序

  在视频采集方面,本文采用的摄像头是网眼V2000,它是一款是以ov511为主控芯片的摄像头。选用它的原因是由于Linux内核自带ov511驱动,所以不用再自己编写摄像头的驱动程序,只需在定制内核的时候选中即可。为开发节省了时间。

  当Linux系统正常启动后,插上V2000摄像头,如果成功加载驱动,将为摄像头在/dev/v41/目录下创建设备文件device0,上层应用程序即可通过此设备文件访问摄像头,实现拍摄图像的功能。嵌入式系统平台已搭建成功,要实现实时地获取图像,就需要利用V4L(Vidio For Linux)编程接口实现图像采集程序了。

  考虑到摄像头采集的640x480的RGB图像数据量较大,这里用图像压缩函数put_image_jpeg将图像转化为JPEG格式,这样存储时就减少了占用的NandFlash空间,同时通过3G网络回传监控中心时,也减少了传输费用和确保传送成功。

  3.2 GPS解析程序

  GPS接收机HOLUX的GR-87模块输出数据格式符合NMEA.183标准。NMEA.0183协议是由美国国家海洋电子协会制定的一种串行通信的数据协议,所有输入输出信息均为一行ASCII字符。它的一条消息称为语句(Sentence),每条语句都以“rdquo;开始,以回车换行符结束,中间是用逗号分隔的若干个域。

  由于此GPS模块设置信息掉电丢失,在每次系统启动时均要对该GPS模块进行初始化。将模块设置成每秒钟输出一次GPS信息。系统启动后,模块接收GPS信息,然后解析出GPS信息,根据解析出来的经纬度信息与数据区中存储的站点信息比较,计算出实际距离。如果距离到达阀值时,启动GPS报站中断。

  该GPS模块接收模块遵循NMEA.0183协议,可以输出多种格式的数据帧,均以“MYM”开头。输出数据采用的是ASCII码字符,内容包含了纬度、经度、速度、日期、航向及卫星状况等信息。该系统所使用的仅限于$GPRMC定位数据帧格式。

  系统启动后,通过串口对GPS模块进行设置,由于系统对实时性要求不高,将GPS设置为每秒钟输出一次RMC数据。提取GPRMC语句的思路是设置一个数据缓冲区,把接收到的GPS数据都放入这个缓冲区,当缓冲区满了的时侯就在缓冲区中查找是否接受到GPRMC定位语句,如果没有接收到则重新接GPS数据。

  如果找到GPRMC定位语句则还要判断该语句在缓冲区中的位置离缓冲区的最大字节数是否大于62个字节(因为本程序中需要的GPRMC定位语句所包含的字节数为62),然后通过多程序提取相关经纬度、时间和速度等信息并通过数据处理线程进行相关处理。运行过程如图3所示。

  3.3 3G模块解析程序 


  MC8630模块驱动可以通过驱动源码交叉编译生成。MC8630模块的加载和拨号连接的过MC8630模块驱动可以通过驱动源码交叉编译生成。MC8630模块的加载和拨号连接的过程如下:

  1)在编译前首先要确认编译驱动和编译内核的编译环境相同,也就是需要相同版本号的交叉编译工具(本系统Linux版本号为2.6);

  2)修改驱动源码Makefde文件,包括添加内核源码目录和编译工具;

  3)Make编译之后,生成ztemt.ko;

  4)insmod ztemt.ko,生成4个设备节点/dev/ttyUSB0-ttyUSB3;

  5)mknod/dev/ttyUSB0 c 188 0,创建设备节点;

  6)编写Linux下拨号脚本、chat配置文件和账号密码配置文件;

  7)添加内核选项,编译支持PPP协议的内核;

  8)pppd call evdo拨号连接,ifconfig查询网络是否连接;

  9)ppp-off中断连接。

  4 结束语

  本系统设计的智能公交终端采用先进的3G/GPS技术,通过对公交车辆运行时的信息的采集、传输和处理,实现了对公交运营车辆的实时监控和调度,迅速调整公交车辆的运行状况,提高车辆工作的效率,使公交资源实现最佳利用和分配,达到公交的智能化。

更多

新闻投稿合作邮箱:yktchina-admin@163.com    字体[ ] [收藏] [进入论坛]

推荐文章

论坛热帖