车载导航系统终端的研究
时间:11-02
来源:互联网
点击:
引言
面对庞大的汽车市场以及随着全国各省市高速公路路网的建设与完善,对交通管理信息化的要求越来越高,gps车载系统的潜力不可估量,其发展前景比较乐观。日本和西方各大公司都参与了这场高科技的角逐。各发达国家的很多生产商都加快了车载导航系统的研究步伐。随着嵌入式技术的发展,很多资源不足的瓶颈问题都很大程度上得到了解决。车载定位系统由车载定位终端、无线通信链路和车载监控管理系统三部分组成。其主要功能是将移动目标的动态位置(经度和纬度)、时间和海拔等对用户有用的信息,通过无线通信链路传送到监控中心,而后在电子地图上对移动目标的运动轨迹进行显示,并对车辆的准确位置、速度、运动方向和车辆状态等用户感兴趣的参数进行监控和查询,为调度管理提供可视化依据,提高车辆运行效率,还能起到节能减排的作用。也在一定程度上起到保护地球的作用。本文将gps定位技术应用于气车,与现有定位技术组合起来共同完成定位监控任务,将大大提高定位准确性及安全性,同时能够降低资金投入,具有很广阔的发展空间。
系统总体设计
系统硬件的结构设计
车辆监控系统由车载端(包括arm工控机、触摸屏、gps接收模块和电源等)、通信系统(gprs)、监控中心三大部分组成。车载端的gps模块实时接收全球定位卫星的位置、时间等数据,一方面发送给车内的arm微型工控机,得到车辆的当前位置并且在电子地图上显示:另一方面,数据将通过gprs终端模块发送到远程监控中心服务器,使得监控中心能实时得到所有车辆的位置信息,给车辆的安全监控以及远程凋度提供了基础。通过spi接口与can总线相连,利用can总线挂接传感器,检测汽车主要技术参数,can总线模块可以使本系统与其他车载模块的连接,完成收集车辆的状态信息以及进一步控制。can总线模块主要包括can总线的控制器和收发器,在这里分别选用的是microchip公司的mcp2510和飞利浦公司的pca82c250。其中,can总线控制器mcp2510实现了can总线的协议,can总线收发器pca82c250提供协议控制器和物理传输线路之间的接口。由于can总线控制器mcp2510具有spi接口,因此,系统中将其与s3c2440的spi0相连。故障检测模块主要是对汽车的主要技术参数进行检测,并显示到lcd显示器上,如果检测到故障,会发出报警信号。本文主要检测的技术参数包括燃油消耗量、制动力、转向力、发动机温度、冷却液温度、前照灯,以及车内噪声和尾气等方面。该模块主要是通过各种传感器把各种信号转换为电信号,再利用信号处理电路把电信号进行相应的处理,使其能与can总线模块进行数据传输。车载端的硬件组成框图,如图1所示。
应用程序的总体流程图如图2所示。由于gprs模块和gps模块都是通过串口和监控终端连接的,程序系统初始化的工作就是对串口进行初始化,使串口按gprs及gps模块的要求工作。之后创建共享内存是为gprs通信子进程与gps子进程之间的通信做准备。gps子进程负责从串口接收gps信息并把这些信息写入共享内存内,gprs子进程则将共享内存内的gps信息通过网络送到远方的监控服务器。
为了使arm上的应用程序能够处理gps接收到的导航信号,要编写gps的驱动程序。
这个gps驱动程序也是属于字符型驱动程序,首先了解嵌入式开发中应用程序、库、内核、驱动程序的关系:应用程序调用应用程序库函数完成功能;应用程序以文件形式访问各种资源;应用程序函数库的一部分直接完成功能,一部分函数通过系统调用由内核完成,内核处理系统调用,调用设备驱动程序,设备驱动程序直接与硬件通信。如图3所示
面对庞大的汽车市场以及随着全国各省市高速公路路网的建设与完善,对交通管理信息化的要求越来越高,gps车载系统的潜力不可估量,其发展前景比较乐观。日本和西方各大公司都参与了这场高科技的角逐。各发达国家的很多生产商都加快了车载导航系统的研究步伐。随着嵌入式技术的发展,很多资源不足的瓶颈问题都很大程度上得到了解决。车载定位系统由车载定位终端、无线通信链路和车载监控管理系统三部分组成。其主要功能是将移动目标的动态位置(经度和纬度)、时间和海拔等对用户有用的信息,通过无线通信链路传送到监控中心,而后在电子地图上对移动目标的运动轨迹进行显示,并对车辆的准确位置、速度、运动方向和车辆状态等用户感兴趣的参数进行监控和查询,为调度管理提供可视化依据,提高车辆运行效率,还能起到节能减排的作用。也在一定程度上起到保护地球的作用。本文将gps定位技术应用于气车,与现有定位技术组合起来共同完成定位监控任务,将大大提高定位准确性及安全性,同时能够降低资金投入,具有很广阔的发展空间。
系统总体设计
系统硬件的结构设计
车辆监控系统由车载端(包括arm工控机、触摸屏、gps接收模块和电源等)、通信系统(gprs)、监控中心三大部分组成。车载端的gps模块实时接收全球定位卫星的位置、时间等数据,一方面发送给车内的arm微型工控机,得到车辆的当前位置并且在电子地图上显示:另一方面,数据将通过gprs终端模块发送到远程监控中心服务器,使得监控中心能实时得到所有车辆的位置信息,给车辆的安全监控以及远程凋度提供了基础。通过spi接口与can总线相连,利用can总线挂接传感器,检测汽车主要技术参数,can总线模块可以使本系统与其他车载模块的连接,完成收集车辆的状态信息以及进一步控制。can总线模块主要包括can总线的控制器和收发器,在这里分别选用的是microchip公司的mcp2510和飞利浦公司的pca82c250。其中,can总线控制器mcp2510实现了can总线的协议,can总线收发器pca82c250提供协议控制器和物理传输线路之间的接口。由于can总线控制器mcp2510具有spi接口,因此,系统中将其与s3c2440的spi0相连。故障检测模块主要是对汽车的主要技术参数进行检测,并显示到lcd显示器上,如果检测到故障,会发出报警信号。本文主要检测的技术参数包括燃油消耗量、制动力、转向力、发动机温度、冷却液温度、前照灯,以及车内噪声和尾气等方面。该模块主要是通过各种传感器把各种信号转换为电信号,再利用信号处理电路把电信号进行相应的处理,使其能与can总线模块进行数据传输。车载端的硬件组成框图,如图1所示。
图1 车载端的硬件组成框图
应用程序总结构应用程序的总体流程图如图2所示。由于gprs模块和gps模块都是通过串口和监控终端连接的,程序系统初始化的工作就是对串口进行初始化,使串口按gprs及gps模块的要求工作。之后创建共享内存是为gprs通信子进程与gps子进程之间的通信做准备。gps子进程负责从串口接收gps信息并把这些信息写入共享内存内,gprs子进程则将共享内存内的gps信息通过网络送到远方的监控服务器。
为了使arm上的应用程序能够处理gps接收到的导航信号,要编写gps的驱动程序。
这个gps驱动程序也是属于字符型驱动程序,首先了解嵌入式开发中应用程序、库、内核、驱动程序的关系:应用程序调用应用程序库函数完成功能;应用程序以文件形式访问各种资源;应用程序函数库的一部分直接完成功能,一部分函数通过系统调用由内核完成,内核处理系统调用,调用设备驱动程序,设备驱动程序直接与硬件通信。如图3所示
一般linux的设备驱动有三种类型,字符设备、块设备、网络设备。而我要讲的gps模块的驱动程序是属于字符设备。对于字符设备发出读/写请求时,实际的硬件i/o操作一般紧接着发生。在设备管理中,除了设备类型外,内核还需要一对被称为主从设备号的参数,才能唯一标识一个设备。主设备号相同的设备使用相同的驱动程序,从设备号用于区分具体设备的实例。用命令cat/proc/devices可以查看系统中所有设备对应的主设备号。所以在gps驱动程序的开始定义设备名称#define device_name “s3c2440-gps”再定义主设备号,我是让系统自动分配的,以防主设备号已被占用,static int gps_major=0;驱动程序以一个模块初始化函数作为入口,如module_init(s3c2440_gps_init)向内核声明当前模块的初始化函数;再写gps的初始化函数:static int __init s3c2440_gp
嵌入式 电子 触摸屏 总线 传感器 收发器 显示器 电路 相关文章:
- 采用MPC5200实现高速视频探测的车内应用(02-22)
- 嵌入式非易失性存储器在汽车系统中的应用(05-13)
- 基于嵌入式的悬架与转向集成控制器研究(05-20)
- 嵌入式电脑在车载电视系统中的应用方案(04-13)
- 基于嵌入式Qt的车载GUI平台的设计(07-10)
- ARM嵌入式汽车节能控制系统的设计(07-17)