论文部分内容阅读
在车辆检测系统中,为了使各个部件的状态信息及时反馈给显示终端和操作人员,以便操作人员作出合适的调整,该检测系统需要较高的实时性。由于通常的Linux操作系统实时性不强,无法适用于实时性较高的应用环境,因此本检测系统采用了实时性能较好的RTLinux操作系统。本检测系统在实现时,分为实时部分和非实时部分:实时部分主要实现硬件数据采集和数据传送;而非实时部分则利用Linux现有的网络协议栈更方便地与显示终端和控制计算机通讯。车辆检测系统是个复杂的系统,本论文详细分析和设计了检测计算机子系统,并对其做了实现。检测计算机通过工业以太网分别与前端车和后端车的显示终端、控制计算机相连接;同时,它通过CAN总线与车辆内的各设备部件相连接,这样形成了车辆检测子系统。设备部件通过其内部的信号采集器采集控状态信号,并将这些信息通过CAN总线传输给车辆检测计算机。车辆检测计算机将接收到的状态信号与设定值进行比较来判断车辆部件是否出现故障,然后把状态信息发送给显示终端和控制计算机。显示终端显示设备部件工作状态,而控制计算机对设备部件发出控制指令。论文还介绍了实时操作系统的特点、实现要求及常用的几种实时操作系统,分析了标准Linux实时性不足的原因,详细研究了RTLinux的实现原理及编程方法;同时,论文研究了RTLinux设备驱动的实现方法,为检测系统中CAN设备驱动的实现奠定了理论基础。在系统实现时,由于RTLinux对实时性要求比较高,运行环境也和标准Linux有所不同,表现在对资源的使用,及中断处理等方面,在这里主要研究了CAN卡驱动的初始化模块、中断处理模块,以及设备操作接口等模块的具体设计与实现。最后,论文重点给出检测计算机上CAN卡设备的驱动程序在RTLinux下的详细设计,并进行了系统原型的实现。实际运行结果表明,该系统能够及时显示部件的工作状态,满足检测系统的要求。