汽RN员及(qing)通用模拟行RNpȝ设计
发表旉Q?009-08-31
引言
汽RN模拟?/A>是一U能正确模拟汽R的驾驶操U动作,获得实RN感觉的仿真系l。目前的汽RN模拟?/A>集合了传感器、计机三维实时动画、计机接口、h工智能、数据通信、网l、多媒体{多U先q技术,主要用于N员的培训Q也可以对微观交通进行仿真,Ҏ(gu)车的控制Ҏ(gu)进行研I[1]?A href="http://zthing.cn/asp/product_detail.asp?id=254">汽RN模拟?/A>h安全性高、再现性好的特炏V利用驾驶模拟器来进行研I和训练Q可方便地模拟各U道路环境、天气状况,分析汽R的技术性能指标Q从而可以节省大量的自然资源Q具有很高的l济价倹{?
?A >汽RN模拟?/A>中,传感控制pȝ的性能直接影响到整个汽车驾驶模拟系l的交互性和实时性,是衡?A >汽RN模拟?/A>实用性能的重要指标。传感控制系l主要由各种传感器、数据采集和处理pȝ、以?qing)接口?sh)路等l成。其中,数据采集和处理系l是整个传感控制pȝ的核心。目前,很多汽RN模拟器采用数据采集卡实现操纵数据的采集,q种Z数据采集卡的数据采集和处理系l成本相对较高,采集模拟量时不是很稳定,必须在仿真程序中采用专门的算法对模拟量进行处理,同时接口的数量也很有限,qؓ(f)后箋的开发带来了一些困难。而基于单片机的数据采集系l虽然开发周期较长,但成本相对较低,接口的可扩展性好Q同Ӟ模拟量和开关量的预处理工作也可以由单片机来完成Q完全可以满x拟器pȝ的交互性和实时性要求。下面介l?A >汽RN模拟?/A>单片机系l的设计思\?
1pȝ的工作原?
在模拟汽车运动时Q传感器采集N员的操纵数据Q通过接口?sh)\对这些信可行放大和滤LQƈ对其中的模拟信号q行A/D转换Q最后单片机pȝ控制信号通过RS-232接口传送给L计算机。在仿真E序中,计算机根据控制信受汽车的q动状态、驾驶操作规则等来控制视景系l、音响系l、A表系l、评L(fng)l。利用单片机pȝ驱动E序中相应的功能函数Q可以将单片机系l采集的信号转换为控制汽车运动状态和位置的参数。当N员进行模拟驾驶时Q单片机pȝ采集的数据会(x)Ҏ(gu)N员的N操作实时地发生变化,从而实现对汽RN模拟?/A>视景pȝ中汽车运动状态和位置的控Ӟ控制pȝ的精度由仿真E序内部的算法保证?
汽RN模拟?/A>Nq程的基本操U部件是方向盘、a(b)门、离合器、刹车和位Q另外还有点火开兟뀁{向指C灯{辅助性操U部件。与实RN相同Q这些操U部件的协同工作可以对虚拟视景中的汽车模型进行控ӞN训练者与视景的变化是实时的、交互的。驾驶训l者对操纵部g的操作通过传感器被pȝ感知后,pȝl过处理和运得到汽车模型的控制参数Q最后根据这些参数控制视景系l的渲染输出Q驾驶训l者就在虚拟视景中实时地观察到所N车辆的运行情c(din)系l的工作程如图1所C?
2 单片机系l的设计
2.1 传感器的选择
汽RN模拟?/A>主要有方向盘、离合器、制动器、a(b)门?个挡位、手刹等信号需要采集,使用的传感器包括开关传感器、位UM感器、角位移传感器三c[3]。方向盘采用角位UM感器Q离合器、刹车、a(b)门采用位UM感器Q点火、手刏V换等采用开关传感器?l过l合考察与比较后Q选用TWZ型直位UM感器、QXJ-BZ-V型角位移传感器、ITR8102型对式光电(sh)开兛_别作为线位移量、角位移量以?qing)开关量传感器。其中,TWZ型直位UM感器的分辨率?0μmQQXJ-BZ-V型角位移传感器的分L率ؓ(f)0.01oQITR8102型对式光电(sh)开关的响应旉?0μs。实践证明,所选的传感器完全满了汽RN模拟?/A>的控制要求,取得了较好的效果? 2.2g?sh)\的设?BR> 汽RN模拟器传感控制系l需要完成开关量和模拟量的采集与处理Q指C灯与A表的昄控制Q以?qing)与L计算Z间进行数据传输等功能。根据以上要求,L芯片选用Atmel公司生的AT89C52, AT89C52是一U低?sh)压Q高性能的CMOS 8位单片机Q与标准MCS-51产品的引脚和指o(h)pȝ完全兼容?
AT89C52片内?K的闪烁可~程可擦除只d储器QF(tun)PEROMQ,256 B的内部随机数据存储器(RAM),已经可以满本系l程序设计的需要,因此不需要进行外部程序存储器和数据存储器的扩展?
׃本系l中需要处理的开关量和模拟量较多Q因此选用8255对输入输出接口进行了扩展。将AT89C52的P1口作为A/D、D/A转换接口Q用于模拟量的输入和输出QA/D、D/A转换芯片分别选用ADC0809和DAC0832,片选信L(fng)高位地址UP2口提供?255的扩展接口用作开关量的输入和输出Q?255的端口选择和片选信L(fng)l?4LS373锁存后的低位地址U提供?
另外QAT89C52q提供了一个具有多U?通讯功能的全双工串行接口Q可以用作与L计算Z间进行通讯。由于RS-232串行通信端口是PC机的标准接口Q而且RS-232用作双向数据通信时接U十分简z,因此选用RS-232作ؓ(f)通讯接口[4]。但是,RS-232的输Z号不但有正电(sh)压,q有负电(sh)压,所以选用半导体公司的RS-232接口芯片MAX232实现信号转换。图2?A >汽RN模拟?/A>单片机系l硬件电(sh)路简图?
2.3软gpȝ的设?
汽RN模拟?/A>单片Y件系l需要完成模拟量和开关量的采集和处理、串行数据的发送与接收、控制信L(fng)输出与显C、故障的监控与保护等功能。Y仉用模块化设计思想Q通过汇编语言~制而成Q主要由ȝ序、定时器中断服务E序、串行口中断服务E序、数据采集和处理E序、信L(fng)输出与显C程序等几部分构成?
ȝ序主要完成系l的初始化工作;定时器中断服务程序主要完成看门狗功能Q在单片机发生异常情冉|Q能使程序及(qing)时复位,保证单片机系l能够正常工作;串行口中断服务程序主要实现单片机与主控计机之间的通讯Q数据采集和处理E序主要完成模拟量和开关量的采集,获取N员的操控数据Q信L(fng)输出与显C程序将L计算机的控制信息传送给单片机,用于控制指示灯和仪表的显C出。图3为汽车驾驶模拟器单片Y件系l的E序程图?
3l论
Z单片机的数据采集pȝ成本相对较低Q接口的可扩展性好Q同Ӟ模拟量和开关量的预处理工作也可以由单片机来完成。系l完全可以满x车驾驶模拟器的交互性和实时性要求,已在所开发的汽RN模拟?/A>中得C应用Q取得了较好的效果? 信息来源Q?/div>
相关信息
|