论文部分内容阅读
摘 要:车辆电子测控系统由测控模块和驾驶终端组成,测控模块主要完成车辆底盘信息的采集、处理、控制,而驾驶终端则是接收信息并对其进行虚拟显示。各测控模块之间以及测控模块和驾驶终端之间均采用CAN总线进行网络通信。
关键词:车辆综合电子信息系统;CAN;C8051F系列单片机
在车辆测控子系统中,将电子设备按一定的协议联网加以有效的综合,使之达到资源和功能共享已成为一种必然的趋势。机动平台上的联网技术不同于一般的计算机网络,它既要满足各个功能子系统的实时性要求,还要通过信息的交联达到功能综合的目的;特别强调网络的可靠性和实时性,且对通信有特殊要求,如实时性、高安全性和容错能力等。因此,选择合适的协议网络成了解决车辆测控系统信息交换的关键。
一、国内外研究发展状况
1.车辆通信网络。军用车辆测控系统的核心之一是通信网络。适合该应用的通信网络主要有1553B、MIC及CAN三种。1553B为美国国防部制定的国内、国际陆、海、空三军和航天工业控制系统广泛应用的数据总线,为电子系统的标准信息传输和互联接口系统。MIC总线系统是专门为解决恶劣军事环境中的电力及数据分配及管理问题而开发的一种高可靠性现场总线,美国M1A2主战坦克的电源分配管理系统中采用了MIC总线。它们都是异步传输的主从式网络,即只有主站轮询到某一从站时该从站才有权发送信息,否则要等待下轮查询。信息的传输采用平衡式差动传输,灵敏度高,抗干扰能力强,传输速率高,传输距离远。1553B采用高频脉冲变压器隔离,进一步提高了抗干扰能力。实际应用时,1553B及MIC都是双总线传输,一条总线为冗余。但是,这两种协议控制器受控于美国,价格较高,且供货得不到保证。
2.仪表显示技术的发展。在传统意义上,仪表仅仅是作为一个测量、数据处理、显示结果的工具。多年来,传统仪表在精度、功能、可操作性、可靠性等方面都有了很大的提高。计算机的发展产生了虚拟仪表。虚拟仪表的概念是由美国国家仪器(National Instruments,简称NI)公司首先提出的,是对传统仪器概念的重大突破。传统仪表基本上都是由三大功能模块组成:信号的采集与控制、信号的分析与处理、结果的表达与输出。由于这些功能块全是以硬件(或固化的软件)的形式存在的,从而决定了传统仪表只能由仪表厂家来定义、制造,用户无法改变。而且,传统仪表一般都是独立使用、手动操作,对于较为复杂、测试参数较多的场合,使用起来很不方便,其局限性明显。而虚拟仪表则克服了传统仪表的这些缺陷,它把仪表的三大功能模块全部用计算机来实现,在计算机上通过数据采集,用软件在屏幕上生成仪器面板,用软件来进行信号的分析与处理、以各种形式输出检测结果。可见,虚拟仪表是充分利用计算机技术,并可由用户自己设计、自己定义的仪表。
二、军用车辆测控系统中测控模块的设计
1.测控模块的硬件设计。由于C8051F040有64个I/O数字端口,完全满足了系统对输入输出开关量通道的要求,因此不需通过扩展I/O接口就能满足开关量信号的输入输出。但是,为了保证系统的可靠性,一般应采用光电隔离技术。C8051F040的数字输入是+5V兼容的,但是它的输出最大电压值为VDD(2.7~3.6V)。为使其能驱动+5V器件,必须增加额外的配置。为了提供一个比VDD高的输入电压值,可以将端口输出方式设置为漏极开路,并将输出端上拉到+5V电源上。这样,C8051F040的逻辑1输出将被提升到+5V,而逻辑0为地电平。由于设计是逻辑上的,所以未涉及具体的输入输出电路。
2.嵌入式操作系统μCOS-II的移植。要使μCOS-Ⅱ正常运行,处理器必须满足以下要求:
(1)处理器的C编译器能产生可重入代码;
(2)用C语言就可以打开和关闭中断;
(3)处理器支持中断,并且能产生定时中断(通常在10至100Hz之间);
(4)处理器支持能够容纳一定量数据(可能是几千字节)的硬件堆栈;
(5)处理器有将堆栈指针和其他CPU寄存器读出和存储到堆栈或内存中的指令。
C8051F040微控制器有64KB的程序空间,4KB的数据空间(满足μCOS-Ⅱ对硬件堆栈的要求)和256字节的片内RAM区和5个定时器/计数器,20个中断矢量。程序的堆栈可以位于256字节内部数据存储器中的任何位置,堆栈深度最大为256字节,由于部分变量要存放在内部存储器,因此,每个任务占用的空间要小于256字节,设计时设置每个任务的空间为100字节。另外,可以使用PUSH和POP指令入栈和出栈。因此,C8051F040满足μCOS-Ⅱ移植的处理器要求。
三、军用车辆综合电子系统中测控系统实验平台的建立及系统测试
1.测控系统实验平台的建立。由于研究、设计的是测控系统的实验平台,因此不涉及军用车辆系统中具体的开关量、模拟量等。实验平台包括两个具有CAN接口的测控模块和一台带有CAN接口卡的PC104嵌入式计算机。
2. 测试内容及测试结果。虚拟仪表的系统开机启动时间在14s以内(基于Windows98的同样系统的这一时间在120s以上),系统运行非常稳定,操作系统加应用程序一起的代码在1.5MB左右(基于Windows98的同样系统其大小在200MB以上),综合性能(实时性、可靠性等)远远优于在其他操作系统(Window98、嵌入式Linux等)上实现的同类软件系统。在解决了WindML媒体库上实现虚拟仪表的技术难点后,在VxWorks上实现的虚拟仪表在视觉效果上与Windows操作系统上用控件开发出来的系统相同,而系统的响应速度则大为提高。另外,CAN接口卡的驱动程序是重新编写的,因此,CAN通信的调试也比Windows98下的调试简单。从整个系统看,软件的可维护性、代码的可复用性、功能的可扩展性都比较好。
四、结语
文章在总结了已参与研制的前一轮基于CAN总线的车载虚拟仪表显控系统和基于CAN总线的车辆底盘综合电子系统的设计经验的基础上,以嵌入式实时系统为关键技术,对车辆综合电子信息系统中车辆测控系统进行了具体的设计研究。嵌入式实时系统的应用,大大提高了测控系统的可靠性、实时性,同时减少了系统的空间大小,简化了系统结构。开发的军用车辆测控系统实验平台为整个车辆综合电子信息系统的实现提供了重要的技术参考。
参考文献:
[1] 许海燕,蒋国中,赵立娟.基于CAN总线车辆底盘综合电子系统的虚拟仪表终端设计[J].河海大学常州分校学报,2004,18(1):53-54.
[2] 石绍应,张玘,罗诗途.基于嵌入式操作系统VxWorks的战车虚拟仪表显示技术研究[J].微计算机信息,2005,21(4):136-137.
[3] 李焱,毛继志,许家栋.基于PC104 Plus总线和 DSP 系统的高速数传系统[J].计算机工程与应用,2005(11):91-92.
关键词:车辆综合电子信息系统;CAN;C8051F系列单片机
在车辆测控子系统中,将电子设备按一定的协议联网加以有效的综合,使之达到资源和功能共享已成为一种必然的趋势。机动平台上的联网技术不同于一般的计算机网络,它既要满足各个功能子系统的实时性要求,还要通过信息的交联达到功能综合的目的;特别强调网络的可靠性和实时性,且对通信有特殊要求,如实时性、高安全性和容错能力等。因此,选择合适的协议网络成了解决车辆测控系统信息交换的关键。
一、国内外研究发展状况
1.车辆通信网络。军用车辆测控系统的核心之一是通信网络。适合该应用的通信网络主要有1553B、MIC及CAN三种。1553B为美国国防部制定的国内、国际陆、海、空三军和航天工业控制系统广泛应用的数据总线,为电子系统的标准信息传输和互联接口系统。MIC总线系统是专门为解决恶劣军事环境中的电力及数据分配及管理问题而开发的一种高可靠性现场总线,美国M1A2主战坦克的电源分配管理系统中采用了MIC总线。它们都是异步传输的主从式网络,即只有主站轮询到某一从站时该从站才有权发送信息,否则要等待下轮查询。信息的传输采用平衡式差动传输,灵敏度高,抗干扰能力强,传输速率高,传输距离远。1553B采用高频脉冲变压器隔离,进一步提高了抗干扰能力。实际应用时,1553B及MIC都是双总线传输,一条总线为冗余。但是,这两种协议控制器受控于美国,价格较高,且供货得不到保证。
2.仪表显示技术的发展。在传统意义上,仪表仅仅是作为一个测量、数据处理、显示结果的工具。多年来,传统仪表在精度、功能、可操作性、可靠性等方面都有了很大的提高。计算机的发展产生了虚拟仪表。虚拟仪表的概念是由美国国家仪器(National Instruments,简称NI)公司首先提出的,是对传统仪器概念的重大突破。传统仪表基本上都是由三大功能模块组成:信号的采集与控制、信号的分析与处理、结果的表达与输出。由于这些功能块全是以硬件(或固化的软件)的形式存在的,从而决定了传统仪表只能由仪表厂家来定义、制造,用户无法改变。而且,传统仪表一般都是独立使用、手动操作,对于较为复杂、测试参数较多的场合,使用起来很不方便,其局限性明显。而虚拟仪表则克服了传统仪表的这些缺陷,它把仪表的三大功能模块全部用计算机来实现,在计算机上通过数据采集,用软件在屏幕上生成仪器面板,用软件来进行信号的分析与处理、以各种形式输出检测结果。可见,虚拟仪表是充分利用计算机技术,并可由用户自己设计、自己定义的仪表。
二、军用车辆测控系统中测控模块的设计
1.测控模块的硬件设计。由于C8051F040有64个I/O数字端口,完全满足了系统对输入输出开关量通道的要求,因此不需通过扩展I/O接口就能满足开关量信号的输入输出。但是,为了保证系统的可靠性,一般应采用光电隔离技术。C8051F040的数字输入是+5V兼容的,但是它的输出最大电压值为VDD(2.7~3.6V)。为使其能驱动+5V器件,必须增加额外的配置。为了提供一个比VDD高的输入电压值,可以将端口输出方式设置为漏极开路,并将输出端上拉到+5V电源上。这样,C8051F040的逻辑1输出将被提升到+5V,而逻辑0为地电平。由于设计是逻辑上的,所以未涉及具体的输入输出电路。
2.嵌入式操作系统μCOS-II的移植。要使μCOS-Ⅱ正常运行,处理器必须满足以下要求:
(1)处理器的C编译器能产生可重入代码;
(2)用C语言就可以打开和关闭中断;
(3)处理器支持中断,并且能产生定时中断(通常在10至100Hz之间);
(4)处理器支持能够容纳一定量数据(可能是几千字节)的硬件堆栈;
(5)处理器有将堆栈指针和其他CPU寄存器读出和存储到堆栈或内存中的指令。
C8051F040微控制器有64KB的程序空间,4KB的数据空间(满足μCOS-Ⅱ对硬件堆栈的要求)和256字节的片内RAM区和5个定时器/计数器,20个中断矢量。程序的堆栈可以位于256字节内部数据存储器中的任何位置,堆栈深度最大为256字节,由于部分变量要存放在内部存储器,因此,每个任务占用的空间要小于256字节,设计时设置每个任务的空间为100字节。另外,可以使用PUSH和POP指令入栈和出栈。因此,C8051F040满足μCOS-Ⅱ移植的处理器要求。
三、军用车辆综合电子系统中测控系统实验平台的建立及系统测试
1.测控系统实验平台的建立。由于研究、设计的是测控系统的实验平台,因此不涉及军用车辆系统中具体的开关量、模拟量等。实验平台包括两个具有CAN接口的测控模块和一台带有CAN接口卡的PC104嵌入式计算机。
2. 测试内容及测试结果。虚拟仪表的系统开机启动时间在14s以内(基于Windows98的同样系统的这一时间在120s以上),系统运行非常稳定,操作系统加应用程序一起的代码在1.5MB左右(基于Windows98的同样系统其大小在200MB以上),综合性能(实时性、可靠性等)远远优于在其他操作系统(Window98、嵌入式Linux等)上实现的同类软件系统。在解决了WindML媒体库上实现虚拟仪表的技术难点后,在VxWorks上实现的虚拟仪表在视觉效果上与Windows操作系统上用控件开发出来的系统相同,而系统的响应速度则大为提高。另外,CAN接口卡的驱动程序是重新编写的,因此,CAN通信的调试也比Windows98下的调试简单。从整个系统看,软件的可维护性、代码的可复用性、功能的可扩展性都比较好。
四、结语
文章在总结了已参与研制的前一轮基于CAN总线的车载虚拟仪表显控系统和基于CAN总线的车辆底盘综合电子系统的设计经验的基础上,以嵌入式实时系统为关键技术,对车辆综合电子信息系统中车辆测控系统进行了具体的设计研究。嵌入式实时系统的应用,大大提高了测控系统的可靠性、实时性,同时减少了系统的空间大小,简化了系统结构。开发的军用车辆测控系统实验平台为整个车辆综合电子信息系统的实现提供了重要的技术参考。
参考文献:
[1] 许海燕,蒋国中,赵立娟.基于CAN总线车辆底盘综合电子系统的虚拟仪表终端设计[J].河海大学常州分校学报,2004,18(1):53-54.
[2] 石绍应,张玘,罗诗途.基于嵌入式操作系统VxWorks的战车虚拟仪表显示技术研究[J].微计算机信息,2005,21(4):136-137.
[3] 李焱,毛继志,许家栋.基于PC104 Plus总线和 DSP 系统的高速数传系统[J].计算机工程与应用,2005(11):91-92.