ZCANȝ的Rw电(sh)器控制系l网l实验台设计
发表旉Q?011-02-13
ZCANȝ的Rw电(sh)器控制系l网l实验台设计
汽R上的?sh)子装置随着汽R?sh)子的发展日益增多,仍采用传l的通信模式必然D汽R?sh)器布线复杂Q维修检困隄问题。而CANȝ的提Zؓ解决此问题提Z可能。CAN(C0ntmllerAreaNetwork)ȝ?0世纪80q代德国Bosch公司为实现现代汽车上众多?sh)子模块怺间的通信而提出的一U串行通信协议Q是目前唯一h国际l一标准的ȝ。但׃国内关于CANȝ的研Iv步很晚,至今国化的产品不多。因此文献基于科研教学及产品开发的多重目的Q研制开发了自动变速器实训?/FONT>ZCANȝ的Rw电(sh)器控制系l实验台。该实验CCANȝ为基Q以某汽车Rw电(sh)器ؓ对象化了汽R车n?sh)器的控制网l,减少了线束,实验也证明了所开发系l的正确性和CANȝ取代传统车nU束的可行性。该实验台的成功开发其现实意义很重要,但也存在以下不之处应加以改q:1)试验台将车灯控制节点分ؓ前灯、后?个节点,q样在通信中不仅没有完全利用单片机的接口,q要考虑前后节点的优先权Q把软g的设计复杂化?)单片机引脚电(sh)过不以驱动大功率的汽R发动机实训台车灯和R门电(sh)机等功率器gQ该试验台选用驱动芯片、?sh)器和保险丝来实现功能,q样设计接口?sh)\使节点的M体积偏大Q不便R载。本文主要针对以?个问题提?A href="http://m.psipog.com/asp/product_detail.asp?id=251" target=_blank>中央I实验讑֤Ҏ(gu)Q先从M上对节点重新分类设计Q基于AT89S52微处理器和CAN控制器SJAl000重新构徏g环境Q然后以AT89S52为核心,l合所选器件的q行环境改进E序? 1车n?sh)器控制pȝ节点分类及其功能 该控制系l将车n?sh)器分ؓ上位{换节炏V开x制节炏VR灯控?A href="http://m.psipog.com/asp/product_detail.asp?id=174" target=_blank>汽R发动机实验台节点、R门控制节?cR各c节Ҏ(gu)包含的电(sh)器设备及要传输的信号如下Q?)上位{换节点:CAN协议信号转换为RS232协议信号输出Q由上位机的串口接收Q?)开x制节点:灯具开兌炚w要的各开兌入,通过单片机将物理的开关信可{换ؓ数据信号Q?)车灯控制节点Q接收ȝ上传来的可控数据Qƈ数据{换后控制车灯各灯L状态,控制的Rw电(sh)器主要是q光灯、近光灯、雾灯、{向灯、倒R灯、刹车灯{灯P4)车门控制节点Q控制R门的开兌入及ȝ升降甉|的输出?A href="http://m.psipog.com/asp/product_detail.asp?id=174" target=_blank>汽R发动验台节点的分cd功能如图1所C?BR>2pȝg?sh)\设计 g通讯?sh)\部分由单片机AT89S52、CAN控制器SJAl000、CAN收发器PCA82C250q接l成。Q何类型的节点其硬件设计中都由该通讯?sh)\和接口电(sh)路组成,CAN控制器及收发器与单片接电(sh)路如?所C。ؓ使ȝ上有信号Ӟpȝ能够快速响应,单片ZSJAl000采用独立的晶振。SJAl000的晶振频率ؓ16MHzQ单片机的晶振频率ؓ12MHzQ这样可使CAN控制器接收或发送数据速度快于单片机的处理速度Qȝ传来的数据或待发送到汽a发动机实验台ȝ的数据可暂存于SJA1000的缓冲器中,{待单片机处理或自动向ȝ发送?BR>2Q?上位{换节Ҏ(gu)口电(sh)?BR>上位{换节点中Q接口电(sh)路的功能主要是将数据转换为符合RS232?sh)^协议的数据,可供上位Z口接收。由于单片机输出的数据中逻辑?sh)^?”和?”分别用5V和OV表示Q而]RS232?sh)^的逻辑?”电(sh)q围ؓ-5?5VQ逻辑?”的?sh)^范围?5?15VQ因此这?A href="http://m.psipog.com/asp/product_detail.asp?id=186" target=_blank>本田发动机实训台选用MAX232q行?sh)^转换Q完成上位机转换节点接口?sh)\的功能,?所CZؓ上位{换节Ҏ(gu)口电(sh)路? 2Q?开x制节Ҏ(gu)口电(sh)?BR>开x制节点中Q接口电(sh)路的功能主要是将家电(sh)实验?/FONT>节点?sh)器中的多\开关状态{换ؓ数字信号Qƈ且实现由汽R自动变速器实训?/FONT>车蝲甉|12V到单片机使用?V甉|的{换。该接口?sh)\选用?4HC244是一ƾCMOS?位ȝ收发器,主要用在开关的输入Ӟ开兛_SJA1000q单片机P0端口时的切换Q电(sh)源{换主要通过E_LM7805实现。图4为开x制节Ҏ(gu)口电(sh)路?BR>2Q?车灯控制节点接口?sh)\ 车灯控制节点中,接口?sh)\的功能主要是实现通过CANȝ的传输数据控制R灯功率电(sh)器。从单片机引脚流出的甉|很小Q无法直接驱动R灯,若采?A href="http://m.psipog.com/asp/product_detail.asp?id=194" target=_blank>汽RI实验?/FONT>驱动?sh)\和?sh)器来完成R灯的驱动作用Q必然会D车灯控制节点偏大Q不够实用和观。该接口?sh)\选用MC33888器g。该器g内部集成?路高端驱动器?路?sh)器或发光二极管驱动器,是一个可控制|络Q具有在U诊断、与微控制器通信报错能力及故障Y化等优点。图5所CZؓ车灯控制节点接口?sh)\?BR>2Q?车门控制节点接口?sh)\ 车门控制节点接口?sh)\的功能和车灯控制节点接口?sh)\的功能类|也是单片机输出的小甉|信号转换成可驱动大功率电(sh)器的?sh)信P完成相应工作。该?sh)\采用MC33887器g。该器g功耗低Q在{待汽R自动I实验?/FONT>模式下电(sh)ؓ25mAQ输出电(sh)超q?A自动短\x。图6R门控制节Ҏ(gu)口电(sh)路?BR>3pȝ软g设计 MCANȝpȝ的通信协议都由物理层协议?A href="http://m.psipog.com/asp/product_detail.asp?id=222" target=_blank>钛_实验室设?/FONT>数据链\层协议和应用层协议组成。SJAl000和PCA82C250的硬件结构保证了协议的物理层和数据链路层。对于应用层Q在不同的应用领域,Z制定了不同的协议Q包括CANopen、DeviceNet及SAEJ1939{。应用层协议军_了CANȝpȝ的可扩展性。将CAN应用层合理分配后应用于Y件结构中可提高Y件的兼容性?BR>本设计各c?A href="http://m.psipog.com/asp/product_detail.asp?id=202" target=_blank>柴a发动机实验台节点可将E序分ؓȝ序和子程序。主E序的目的是监控本节点中各电(sh)器的状态,采用查询方式~程Q子E序分ؓ接收子程序和发送子E序Q采用模块化~程Q将节点的功能分成各U模块ƈ形成文gQ在~写各节点程序时直接调用各个模块E序函数卛_。这里参考SAEJ1939的编码规则对CANpȝ的应用层q行分配Qƈ介绍各节点的软gl构?BR>3Q?节点ȝ?BR>上位{换节点主E序的作用是Q查询ȝ上的数据Qƈ?A href="http://m.psipog.com/asp/product_detail.asp?id=212" target=_blank>全R?sh)器实验?/FONT>依据CAN协议的数据{换ؓ依据RS232?sh)^标准的数据。图7Z位机转换节点程Q开x制节点主E序用于查询开关的闭合或断开状态ƈ开关状态存储到单片机的寄存器中。图8所CZؓ开x制节点的E序程Q其车灯控制节点ȝ序用于查询CANȝ上的数据以控制相应的?sh)器。图9所CZؓ车灯控制节点的程序流E,其R门控制节Ҏ(gu)要查询开关的状态存人单片机汽RN模拟?/FONT>Q又要查询CANȝ的数据控制相应的甉|Q其ȝ序包含开x制节点和车灯控制节点ȝ序的功能?BR>3Q?节点子程?BR>接收子程序的作用是将CANȝ上传来的数据存储到单片机中合适的位置Q需?A href="http://m.psipog.com/asp/product_detail.asp?id=234" target=_blank>安保监控pȝ实验实训装置用时QCPU直接从该位置查询卛_。在q行接收函数前,需先检查CAN控制器SJAl000的寄存器中是否有传来的数据,如果有则q行此程序;如果无,则放弃或l箋查询。发送子E序的作用是所要发送的数据包装q发送到CAN控制器。在ȝ序中Q系l不断查询SJAl000的状态,一旦空ԌCPU待发送的数据发送到CAN控制器? 4l束?BR>通过对基于CANȝ的Rw电(sh)器控制系l的整体优化设计Q得出结论:对Rw节点进行优化后Q资源得到合理用,q增Z节点的实用和观性,使节点的接口?sh)\设计更加灉|。本Ҏ(gu)侧重于对实验台实用性的改进。通信q程中存在的q扰、基于时间触发的CAN(即TTCAN)?A href="http://m.psipog.com/asp/product_detail.asp?id=256" target=_blank>心肺复苏模拟?/FONT>应用问题待q一步的研究?/FONT>
信息来源Q?/div>
相关信息
|