datasheet

基于DSP的高低速CAN总线汽车控制系统设计

2008-07-07来源: 汽车电子关键字:CAN总线  CAN网络  汽车  控制系统  CAN控制器  动作信号  电控行驶平稳系统

  随着现代汽车性能的不断提升,新的控制功能不断增加,如中央门锁、灯光控制、玻璃升降、后视镜调节、天窗控制、座椅调节和点火延时控制等。传统的控制系统多采用继电器和独立模式控制,使得车内线束过多且布线复杂,从而造成了严重的电磁干扰,导致系统的可靠性下降。目前,很多汽车采用CAN总线将整个汽车控制系统联系起来统一管理,实现数据共享和相互之间协同工作,使车内线束布线方便可靠,提高了汽车整体的安全性和性价比,增强了自身的竞争力。而各个控制单元对系统的响应时间要求不一样,如防抱死制动系统(ABS)、驱动防滑系统(ASR)、电控行驶平稳系统(ESP)、安全气囊(SRS)等对系统实时性要求较高;照明控制、空调控制等对系统的响应时间要求则相对较低。

  由于计算机控制单元越来越多,采用单网络CAN总线负荷越来越重,通过以DSP作为系统主控制器并兼作网关(对CAN总线间待传数据信息作智能化处理,确保只有某类特定的信息才能在网络间传输),对实时性要求较高的控制单元采用高速CAN网络传输,对实时性要求相对较低的控制单元采用低速CAN网络传输,不仅可以提高系统抗电磁干扰性,而且还可以简化传输线束,提高传输可靠性。

  1. 基于DSP的汽车计算机控制系统

  1.1 TMS320LF2407A功能简介

  选用TI公司的16位定点DSP TMS320LF2407A作为主控制器并兼作网关。该型DSP系统时钟可达40M,运算速度为40MIPS, 片内有高达32K字FLASH程序存储器,高达1.5K字的数据/程序RAM以及2K字的SARAM和544字的DARAM,内嵌16通道10位的A/D转换器、SPI/SCI/CAN2.0B模块以及看门狗定时器模块,资源丰富,接口方便,特别适合于象汽车计算机控制等实时性和可靠性要求很高、电磁干扰严重的场合。

  1.2 系统实现

  汽车计算机控制系统已经广泛涉及到动力、安全、环保、节能、舒适等诸多方面,各种控制系统的电控单元(ECU)相互紧密联系,需要进行大量数据的实时通信,而且为了满足各子系统的实时性要求必须对汽车公共数据进行共享。因此在构建CAN总线控制系统中,总是希望CAN通信控制网络具有较高的波特率和可靠性。但若整辆汽车的所有节点都挂在一个CAN网络上,众多节点通过一条CAN总线进行数据通信,就很容易出现总线负载过大,导致系统实时响应速率下降。因而在对汽车各节点的实时性进行分析后,设计了基于TMS320LF2407A的高低速CAN通信网络,将实时性要求较高的节点组成高速CAN通信网络,将实时性要求相对较低的节点组成低速CAN通信网络,并架设网关将这两种速率不同的CAN通信网络连接起来,实现全部节点之间的数据共享。整辆汽车的通信网络拓扑结构如图1所示。

  

  图1中的发动机控制、变速箱控制、ABS/ASR/ESP控制和SRS控制是现代汽车动作的核心部件,对时间响应要求严格,因而在本设计中采用传输速率为500Kbps的高速CAN通信网络;空调管理、仪表管理、照明管理和姿态管理(如玻璃升降、后视镜调节、天窗控制、座椅调节和雨刷管理等)的实时性要求相对较低,采用速率为125Kbps的低速CAN 通信网络,主控制器跨接高、低速两条总线,与各节点进行数据交换,兼起网关的作用。

  1.3 控制系统的电控单元与CAN总线接口设计

  根据系统设计要求,采用TMS320LF2407A作为主控制器,汽车计算机控制系统的电控单元与CAN总线连接方式如图2所示。

  

  通过TMS320LF2407A内嵌的CAN控制器可以很方便的实现物理层和数据链路层的功能。CANH和CANL是CAN总线的两条差分接收/发送复用线路,它们的端点各接一个Ω120的总线匹配电阻。当有节点占有CAN总线时,该节点的发送端(电平为3.5V)接CANH,接收端(电平为1.5V)接CANL;当无节点占有CAN总线时,CANH和CANL上的电平均为2.5V。在TMS320LF2407A和总线收发器PCA82C250之间采用高速光电隔离器6N137,可有效防止干扰信号通过PCA82C250传入主控制器;同时对整个系统还进行了金属屏蔽,传输线采用屏蔽双绞线,以减少电磁干扰。

  2. 硬件接口电路设计

  CAN通信网络接口由TMS320LF2407A的CAN控制器、CAN总线收发器PCA82C250以及光电隔离器6N137组成。CAN节点通信接口的硬件设计电路如图3所示。为了便于调试和演示,节点模块都包括CAN接口、RS232接口和液晶显示器。在调试过程中,液晶显示器用来将本地数据和通过CAN总线接收的数据直观地显示出来,RS232接口在需要的情况下可用来与PC机建立通信。总线数据信号通过高速光电隔离器6N137隔离,PCA82C250是CAN控制器和物理层之间的接口,可以提供对总线数据的差分接收和发送能力,具有在汽车环境下抗瞬间干扰、保护总线的能力。

  本系统软件由系统主程序和高低速CAN网络单元软件组成,软件流程如图4和5所示。

  

  高速CAN通信网络负责对实时性要求较高的控制单元动作的采集、处理和传送,一旦系统检测到有动作信号,将开放中断,调用相应的中断子程序,经DSP处理后通过高速CAN网络传送到相应控制单元的ECU,由控制单元ECU对控制对象进行控制。如果没有检测到高速CAN网络忙,就检测低速CAN网络,在没有高速CAN网络中断的前提下调用相应的子程序响应相应的动作。低速CAN网络单元软件流程与低速CAN网络单元类似,主要区别是低速CAN网络单元采用查询方式,数据广播用于实现控制系统中的数据共享。

  4. 结论

  CAN 总线作为一种可靠的汽车计算机网络总线已在许多先进汽车上得到应用,使得各汽车计算机控制单元能够通过CAN 总线共享所有信息和资源,达到简化布线、减少传感器数量、避免控制功能重复、提高系统可靠性、降低成本、更好地匹配和协调各个控制系统的目的。本设计采用了数字信号处理器TMS320LF2407A 作主控制器兼作网关, 可在不同节点间实现高效数据传输,提高了系统的实时性和可靠性,采用高低速CAN总线网络通信控制方式,可以较大提高总线的利用率和系统的响应速度,基本达到预期的目标。

  参考文献:

  [1] 宫江海,唐厚君,孔俊.CAN总线在电动汽车上的应用研究[J].工业控制计算机,2003,17(3):23~24

  [2] Texas Instruments Incorporation.TMS320LF2407A DSP Controller[M]. 2002, 7

  [3] 黄涛,周德恒.基于CAN总线的汽车内部网络系统研究[J]. 单片机与嵌入式系统应用,2005,9:19~21

关键字:CAN总线  CAN网络  汽车  控制系统  CAN控制器  动作信号  电控行驶平稳系统

编辑:孙树宾 引用地址:http://www.eeworld.com.cn/gykz/2008/0707/article_1061.html
本网站转载的所有的文章、图片、音频视频文件等资料的版权归版权所有人所有,本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如果本网所选内容的文章作者及编辑认为其作品不宜公开自由传播,或不应无偿使用,请及时通过电子邮件或电话通知我们,以迅速采取适当措施,避免给双方造成不必要的经济损失。

上一篇:视频模拟光纤传输系统解决方案
下一篇:在PSpice中仿真数字滤波器的传输线

关注eeworld公众号 快捷获取更多信息
关注eeworld公众号
快捷获取更多信息
关注eeworld服务号 享受更多官方福利
关注eeworld服务号
享受更多官方福利

推荐阅读

STM32的CAN总线使用

本次调试使用的是珠海鼎芯科技(D-Chip)的STM32核心板。这块核心板上包含了一个CAN总线驱动器。可以很方便的同时与多个种工业设备连接通讯。STM32处理器的CAN总线有多种工作模式,本次测试的是正常模式。要在正常模式下使用首先需要初始化寄存器和使能相关的功能部件。第一步是初始化GPIO和时钟,STM32F103C的CAN总线GPIO是GPIOA_PIN_11和GPIOA_PIN_12。RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA, ENABLE);//使能PORTA时钟                
发表于 2019-04-12

技术文章—CAN总线同步跳转宽度的作用

CAN总线一直以来以稳定、容错性高而著称。要想达到这样的效果,其独特的同步机制是非常重要的一点,本文将为大家讲解一下CAN总线的同步机制以及SJW 的作用所在。 CAN总线的同步共有两种方式:硬同步和重同步。 硬同步 在总线刚刚从空闲状态中走出来的时候,在帧头的位置都会进行一次同步。此时所有的节点位时间重新开始,就像所有的运动员都再一次回到了起跑线上。这种同步方式被称作硬同步。  重同步 硬同步时只是在有帧起始信号时起作用,无法确保后续一连串的位时序都是同步的,这个时候重同步就到了发挥作用的时候。具体来说,CAN总线的一个位时间中包含两个缓冲段BS1和BS2
发表于 2019-03-14
技术文章—CAN总线同步跳转宽度的作用

stm32 调试can总线丢帧的问题

问题出现的背景需要写一个新的电机的驱动,使用can通讯,驱动比较简单,很快就写好了。自己单独测试一个电机的时候没有问题,正反转测什么的都很正常。本以为事情会很顺利,但是在测两个电机的时候,却发现很严重的问题,经常左电机不装或者是右电机不转。问题的解决步骤方案一: 1. 遇到这种问题通常都是加上一个延时,觉得可能就是发的太快了,时许上可能有问题,但是我们的系统是一个实时的系统延时的时间不能太长。 2. 经过测试发现加延时可能较小出现这种问题的概率,但是不能解决这个问题,最终车子还是无法正常运行,没办法这个方案不行。分析: 既然加延时不行的话,只能去找为什么电机不装。使用can转usb将数据抓出来
发表于 2019-03-11
stm32 调试can总线丢帧的问题

STM32之CAN总线原理

;隐性电平对应逻辑0=总线电平为0V 显性电平具有优先权,只要有一个单元输出显性电平,总线上即为显性电平。而隐形电平则具有包容的意味,只有所有的单元都输出隐性电平,总线上才为隐性电平(显性电平比隐性电平更强)。另外,在CAN总线的起止端都有一个120Ω的终端电阻,来做阻抗匹配,以减少回波反射。帧种类介绍:帧种类帧作用数据帧用于发送单元向接收单元传送数据的帧遥控帧用于接收单元向具有相同 ID 的发送单元请求数据的帧错误帧用于当检测出错误时向其它单元通知错误的帧过载帧用于接收单元通知其尚未做好接收准备的帧间隔帧用于将数据帧及遥控帧与前面的帧分离开来的帧注:其中,数据帧和遥控帧有标准格式和扩展格式两种格式。 标准格式有11
发表于 2019-03-07
STM32之CAN总线原理

STM32之CAN总线例程

;NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 2; NVIC_InitStructure.NVIC_IRQChannelSubPriority = 2; NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE; NVIC_Init(&NVIC_InitStructure);}/* CAN总线配置 */void CAN_config(void){ CAN_InitTypeDef CAN_InitStructure; CAN_FilterInitTypeDef CAN
发表于 2019-03-07

如何测量CAN总线网络阻抗

在CAN应用中,有时会出现我们料想不到的问题,此时,为了准确的排查问题,我们需要通过测量CAN总线网络阻抗来确定是否满足CAN规范。本文将阐述测量CAN总线网络阻抗的原理以及具体方法。  一、什么是阻抗?  阻抗是指电路中的电子器件对通过它的特定频率的交流电流的阻碍作用。在数学上用矢量平面上的复数表示,即Z=R+jX,如图1所示,Z表示阻抗,实部R称为电阻,虚部X称为电抗。而电抗为容抗和感抗的总称,电容在电路中对交流电所起的阻碍作用称为容抗,电感在电路中对交流电所起的阻碍作用称为感抗。阻抗就是电阻、电容抗及电感抗在向量坐标上的矢量和。  图1 阻抗三角形  CAN总线网络阻抗是指总线间的阻抗。在用直流测量阻抗方法时,测量
发表于 2019-02-22
如何测量CAN总线网络阻抗

小广播

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号 电信业务审批[2006]字第258号函 京公海网安备110108001534 Copyright © 2005-2019 EEWORLD.com.cn, Inc. All rights reserved