摘要:
随着铁路运输产业发展的需要,建立铁路微机联锁系统已经是大势所趋.传统的微机联锁系统采用的是专用的工业控制机,移动性能不好;并且大多使用VxWorks操作系统,价格较昂贵.本文欲采用小尺寸,低功耗,堆栈总线结构的PC/104平台作为铁路联锁的微机,搭载基于开源的.Linux操作系统来解决传统的铁路联锁系统存在的问题. 由于普通Linux在实时应用领域的局限性,本文在对各种实时Linux架构调研和分析之后采用RT-preempt作为本系统的补丁.基于RT-preempt的实时Linux的移植和开发都相对容易,能够进一步的缩短开发周期和成本. 通过对实时Linux的启动过程分析,提出了移植工作需要做的前期准备工作和移植步骤.在此基础上制作,安装了实时Linux内核,Debian根文件系统以及GRUB引导程序,并成功地将它们移植到PC/104平台上.经过cyclictest测试实时软件的模拟运行,证明了本系统的实时性,稳定性,可靠性能够满足在铁路微机联锁中的应用. 针对铁路微机联锁系统在实时控制和通信能力方面的需求,本文在对Linux设备驱动研究的基础上,实现了包括I/O,中断,DMA等通信模式的PC/104扩展接口的设备驱动,并结合基于FPGA通信板卡成功地完成了相关的通信功能.为了保证应用程序的实时能力,本文在对RT-preemlpt研究的基础上提出了通用实时调度策略,通过基于GPIO口的测试程序的运行进一步的验证了该策略的有效性.
展开