无人驾驶车辆终端控制研究与探索
无人驾驶系统在世界很多城市的轨道交通建设中得到广泛的运用。这是由于无人驾驶车辆系统在现代交通中具有减少乘务人员、缩短行车间隔、高可靠性、自动转向控制等优点。
(1)自主悬挂式独轨车体上装有嵌入式控制系统,主要用于对整个车辆的控制以及各个模块之间的调度。主控制模块芯片采用了飞利浦公司生产的LPC2000系列处理器,该系列产品是基于一个支持实时仿真和跟踪的16/32位ARM7TDMI-STMCPU的微控制器,并带有0/128/256kB嵌入的高速片内FLASH存储器。片内128位宽度的存储器接口和独特的加速结构使得32位代码规模降低超过30%,而性能的损失却很小。
通过在该系列处理器芯片的基础上扩展一系列完整的通用外围器件,使系统硬件成本降到最低,并且根据设计需要再进行裁减,就能为本车载系统提供一个低功耗、低成本、高性能的方案。
(2)该系统以GPRS无线传输方式与因特网保持连接,与轨道交通信息网站交换数据。本系统采用了BenQ公司生产的M22模块,他符合ETSIGSM phase 2+标准和 AT指令集,支持GSM语音数据传真短消息和GPRS数据传输。
(3)显示模块主要是用来显示车辆行驶状态,包括地理信息位置,路径采集情况等。本系统采用TFT6758液晶显示模块,工作电压为3.3 V,内带白光LED背光灯。由于液晶模块内部包含了HD66781和HD66783液晶控制驱动,因此他可以直接使用8位、16位或者18位总线方式与控制器相连接。
(4)输入模块功能是通过按钮查阅通过读卡器接收到终端的路径信息。
(5)GPS模块用来对车辆进行定位。本系统采用M12定位模块,Motorola公司生产的导航设备,具有很低的功耗,支持RTCM(Radio Technical Commission forMaritime)格式的差分功能,采用NAEA0183格式输出。该接收器在汽车定位和调度系统中应用广泛。
3 终端软件部分程序设计
本系统由于使用ARM7做主要控制器,考虑到资源的利用,采用μC/OS-Ⅱ来作为操作系统。μC/OS-Ⅱ是一个完整的、可移植、可固化、可剪裁的占先式实时多任务内核。他用ANSI C语言编写,包含一小部分汇编代码,使之可以供不同架构的微处理器使用。μC/OS-Ⅱ可以管理64个任务,具有信号量、互斥信号量、事件标志组、消息邮箱、消息队列、任务管理、时间管理和内存块管理等功能。
μC/OS-Ⅱ软件体系结构有3部分:
(1)μC/OS-Ⅱ核心代码:包括10个C程序文件和1个头文件,主要实现系统调度、任务管理、内存管理、信号量、消息邮箱和消息队列等系统功能。此部分与处理器性能无关。
(2)μC/OS-Ⅱ配置代码:包括两个头文件,用于裁减和配置μC/OS-Ⅱ。该部分与用户实际应用相关。
(3)μC/OS-Ⅱ移植代码:包括1个汇编文件、1个C程序文件和1个头文件,这是移植μC/OS-Ⅱ所需要的代码,与处理器无关。
在本系统中首先要进行系统移植,才能进行程序的调用。移植满足了以下要求:
(1)处理器的C编译器能产生可重入型代码;
(2)处理器支持中断,并且能产生定时中断(10~100 Hz);
(3)用C语言可以开/关中断;
(4)处理器能支持一定数量的数据存储硬件堆栈(可能是几kB);
(5)处理器有将堆栈指针以及其他CPU寄存器的内容读出并保存到堆栈或者内存中去的指令。
- 本文关键词:

