基于CAN/LIN息线的汽车混合网关设计

发布者:真诚相伴最新更新时间:2016-05-16 来源: eefocus关键字:CAN  LIN息线  汽车混合网关 手机看文章 扫描二维码
随时随地手机看文章
  引 言

  随着汽车电子的发展,传统的点对点的通信已经不能满足现代汽车通信的要求。汽车电子网络技术正成为实现汽车控制系统的首选,它使汽车电子技术进入一个全新的时代。

  20世纪 90年代,美国汽车工程师协会SAE(Society of AutomoTIve Engineers)将汽车数据传输网分成了A、B、C三类:A类网络主要面向传感器/执行器的低速网络,数据传输位速率一般小于10 kb/s,目前A类网的首选标准为LIN(LocalInterconnect Network)协议;B类网络主要面向独立模块间数据共享的中速网络,数据传输位速率在10~125 kb/s,目前B类网络主要采用低速容错CAN标准ISO11898-3;C类网络则主要面向高速、实时闭环控制的多路传输网,数据传输位速率在 125~1 Mb/s之间,欧洲的汽车制造商主要采用高速CAN标准ISO11898-2来实现该类网络。下面简要介绍一下CAN协议和LIN协议。

  1986 年2月,德国的Bosch公司在SAE大会上提出了CAN串行总线。时至今日,CAN已经形成国际标准,凭借自身的优点,不仅在汽车领域,而且在机械、数控机床及传感器等领域都得到广泛应用。CAN总线的主要特点有:多主机的工作方式;最大传输速率可达1 Mb/s(通信距离最长40 m),直接通信距离可达10 km(速率小于5 kb/s);采用短帧结构,传输时间短;良好的检错能力;非破坏总线仲裁技术;较高的性价比。

  LIN 是1998年由BMW等五家汽车制造商、一家软件工具制造商以及一家半导体厂商联合提出的一个协议。LIN通信是基于SCI(UART)数据格式,采用单主/多从模式以及低成本的单线连接方式,最高传输速率可达20kb/s。LIN的从节点不用晶振或陶瓷振荡器就能实现自同步。出于以上技术特点, LIN总线实现成本较低,且完全能够满足A类网络的通信需求。

  在实际的汽车电子网络中,A、B、C三类网络并不是完全独立的。为了完成车辆的控制及信息共享,不同网络间必须进行相应的数据交换。由于是三种不同的网络,它们之间的通信是不能直接进行的,而必须作相应的协议转换及数据处理后才能实现,这些工作是由网关来实现的。本文提出了一种网关的设计方案,用以实现高速CAN、低速CAN及LIN三种总线网络之间的通信。

  1 网关总体结构

  本文所讨论的网关其主要任务是解决车载网络中A、B、C三类网络的相互通信的问题,实现数据的存储转发及高、低速CAN协议之间或低速CAN与LIN协议之间的协议转换,以便在不同网络之间实现数据通信。网关主要分为4个部分:实现数据存储转发和协议转换的主控制器,用于与高速CAN网络连接的高速CAN 节点模块,与低速CAN网络连接的低速CAN节点模块以及与LIN网络连接的LIN节点模块。网关系统的电路框图如图1所示。

  网关中三个节点电路分别与各自的网络相连,且实现各自对应的网络与主控制器之间的数据交换。这个数据交换过程是双向的,既包括从网络上接收数据并将数据存到主控制器中,又包括从主控制器相应的缓存器中读取数据并将其发送到自己对应的网络中。主控制器主要负责数据的存储及协议的转换,即将各个节点接收来的数据根据其目的网络的不同,分别存入不同的缓冲区,并且根据目的网络的不同,将数据转化为能够在目的网络上传送的数据格式。

  2 网关电路设计

  如上所述,网关的硬件电路主要由主控制器、高速CAN节点模块、低速CAN节点模块、LIN节点模块4部分组成。为了满足网关的正常通信要求,必须考虑主控制器的数据处理能力。另外,由于网关的工作环境为电磁干扰非常严重的汽车内部,故还须考虑网关的抗噪声干扰性能。网关的硬件设计简图如图2所示, AT91SAM7A3为网关的主控制芯片,TJA1020为LIN总线收发器,CTM1054为低速CAN收发器,CTM1050为高速CAN收发器。

  2.1 主控制器的选择

  实现数据的高效率、高质量的存储转发是网关的重要目标,而主控制器是网关的核心器件,它的性能好坏直接决定了网关的效率高低。主控器对接收到的数据进行缓存,因此主控制器需要有较高的存储容量。主控器还要对它所接收与转发的数据进行协议转换等数据处理,因此还要有较强的运算能力。

  本设计选用了Atml公司的AT91SAM7A3作为网关的核心控制器。这是一颗基于ARM7TDMI内核的32位RISC处理器,具有执行速度快、效率高的特点,能够满足网关的数据处理要求。该芯片内置32 KB的SRAM和256 KB的高速Flash存储器,存储能力强,能够满足网关对数据存储的要求。另外,该芯片内部集成有2个功能强大的CAN2.OB的控制器,可以处理所有类型的帧结构(数据帧、远程帧、错误帧及过载帧),每个控制器有16个独立的缓存区(mailbox),十分有利于实现网关高速、大容量的数据处理。集成的 CAN控制器还能够减少器件数目和PCB布线数量,有利于提高系统的抗干扰性能。

 

  2. 2 CAN节点设计

  常用的 CAN节点电路如图3所示,它主要由MCU、CAN控制器及CAN收发器组成。为了增强电路的抗干扰性,还需要在控制器与收发器之间增加一个隔离电路。

  本网关中的CAN节点共有2个:高速CAN节点和低速CAN 节点。由于在汽车中电磁干扰现象非常严重,仅靠单个的CAN收发器难以满足通信品质的要求,需要加上适当的隔离电路以提高电路的抗干扰性。

  2 个节点的MCU的功能由主控制芯片AT91SAM7A3实现,且AT91SAM7A3中集成了两个高性能的CAN控制器,可以分别作为高低速CAN节点的控制器。

  常用的隔离电路采用高速光耦6N137实现CAN节点之间的信号隔离,并且采用电源隔离模块实现高速光耦的两个电源的隔离。但是这种设计无疑增加了PCB的走线,使电路的没计变得复杂,同时隔离电路的隔离效果也受到影响。

  本设计采用广州致远电子有限公司生产的 CTM系列的CTM1050和CTM1054,分别作为高低速CAN收发器。CTM系列的CAN收发器集成了CAN 收发器以及必需的隔离,即在一块芯片上实现了隔离电路和CAN收发器的功能。这样就不必单独设计隔离电路,提高了集成度,使得抗干扰性得到增强。

  高速CAN收发器CTM1050,最高速率可达1 Mb/s,完全符合ISO11898-2标准的高速CAN通信,用它作为高速CAN网络接口的收发器(电路连接方法见图2)。容错CAN收发器 CTM1054,最高通信速率可达125 kb/s,完全符合ISO11898-3标准,用它作为低速CAN网络接口的收发器(电路连接方法见图2)。需要注意的是,在CTM1054的连接中,有 2个电阻R1和R2的阻值要根据低速CAN网络中节点的个数来确定。具体值的算法见CTM1054使用手册。

  2.3 LIN接口设计

  LIN 总线是一主多从的总线连接方式,节点有主从之分。在本设计中,将LIN节点设计为主节点。LIN是一个基于单线串行的通信协议,对于硬件的要求比较简单。通常一个有SCI/UART接口的单片机和一个LIN收发器就可组成LIN节点。本设计利用AT91SAM7A3的UART口和LIN收发器 TJA1020组成一个LIN主节点。

  TJA1020使用的波特率可从2.4~20 kb/s,有较好的保护功能:总线终端和电池引脚可防止汽车环境下的瞬变、总线终端对电池和地的短路保护以及过热保护等,可以作为汽车通信中的LIN通信接口(具体电路连接见图2)。

  3 网关软件设计

  网关的软件系统主要包括主监控程序、数据的发送、数据的接收、数据的处理 (包括协议转换和缓冲区内数据的读写处理)等几部分。

  3.1 主监控程序

  如图4所示,在主控制器AT91SAM7A3中划出4块缓冲区BUF1~BUF4,每一块缓冲区中的数据都有明确而且唯一的来源和目的地。主监控程序主要通过循环依次查询BUF1~BUF4中的存储情况,来决定是否发送数据以及将数据发送给谁。



  当高速CAN网络上有数据需要接收的时候,通过高速CAN模块接收数据,对接收到的数据进行处理后,将其存到缓冲区BUF1中,再由低速CAN模块将其发送到低速CAN网络上;当LIN网络上有数据需要接收时,通过LIN总线模块接收数据,对接收到的数据进行数据格式转换(LIN格式的报文帧转换为CAN 格式的报文帧),再将其存入到缓冲区BUF4中,并由低速CAN模块将其发送到低速CAN网络上;当低速CAN网络上有数据需要接收时,先接收数据,然后判断数据是发送到高速CAN总线,还是发送到LIN总线,根据判断结果对数据进行处理,存入相应的缓冲区(如数据是发往高速CAN总线,则存入BUF2,否则存入BUF3)。

 

  3.2 数据的发送

  数据的发送由发送子程序完成,网关中主要有3个发送子程序,分别对应两路CAN 控制器以及一路 LIN发送器。高速CAN的发送子程序负责发送BUF1中的数据,LIN的发送子程序负责发送BUF3中的数据,低速CAN的发送子程序负责发送BUF2 和BUF4中的数据。数据的发送采用查询总线状态的发送方式:查询总线的忙闲情况,如果总线忙,则退出发送子程序,进行其他的工作;如果总线空闲,则发送数据。发送完1帧数据后,再检查与之相应的缓冲区的状态。如果为空,则退出发送子程序;如果非空,则再检查总线的忙闲状态。如果忙,则退出发送子程序;如果空闲,则发送数据。然后再开始新一轮的数据查询发送过程。图5为高速CAN向低速CAN发送的流程,其他的发送子程序过程与此类似。

关键字:CAN  LIN息线  汽车混合网关 引用地址:基于CAN/LIN息线的汽车混合网关设计

上一篇:基于CAN总线的电动汽车能量回收系统研究
下一篇:基于现场总线的工业机器人监控系统的研究

推荐阅读最新更新时间:2024-05-03 00:23

CANopen协议在伺服电机控制系统中的实现
基于现场总线的网络技术的研究是自动化领域发展的一个热点,CANopen协议是目前流行于欧洲的基于CAN总线应用层的标准协议,对工程设计者来说,研究现场总线的核心任务就是对控制节点进行开发,本文就是通过实现伺服电机控制模块的CANopen为协议,说明一个基于CANopen协议的控制网络的组态。 伺服电机控制器在自动控制领域里有着广泛的应用,如纺织机械和印刷机等,为了得到理想的速控效果,伺服电机模块除了要在分辨率、线性程度以及转换速率上达到一定的要求外,还应具有良好的在线可控性和实时在线状态检测功能,为此,利用CAN总线高层通信协议CANopen,结合陕西省教育厅“并条机自调匀整”项目对伺服电机控制模块参数的要求,开发了一个具有硬件
[应用]
CANCAN FD,汽车通信升级只差一颗集成型芯片
CAN是控制器局域网络(ControllerAreaNetwork,CAN)的简称,是由德国BOSCH公司开发的,并最终成为国际标准(ISO11898),在国际上应用最广泛。但是随着汽车应用的发展,汽车中总线通讯的数据量越来越大,例如电动汽车上,汽车内部出现更多的辅助系统和人机交互系统,传统的CAN总线在传输速率和带宽方面显得越来越力不从心,CAN-FD技术随之出现。 CAN FD和CAN主要的区别有两点:第一,可变速率,CAN-FD采用了两种位速率,从控制场中的BRS位到ACK场之前(含CRC分界符)为可变速率,其余部分为原CAN总线用的速率。两种速率各有一套位时间定义寄存器,它们除了采用不同的位时间单位TQ外,位时间各段的分
[嵌入式]
从<font color='red'>CAN</font>到<font color='red'>CAN</font> FD,<font color='red'>汽车</font>通信升级只差一颗集成型芯片
stm32HAL库之can操作
基于STM32CubeMx的CAN配置信息 volatile 1.系统时钟APB1=36MHZ 2.CAN计算通信率计算公式,参考数据手册, CAN bit timing register (CAN_BTR) 寄存器 NominalBitTime计算公式: NominalBitTime =1 t × q + tBS1 + tBS2 3.STM32CubeMx设置的Prescaler为8- 对应BRP=7,TimeSeg1=6- 对应TS1=5,TimeSeg2=2- 对应TB2=2,STM32F103ZE对应APB1设置为36M,即Time for one Bit的时间为(1 + TimeSeg1+ TimeSeg2)
[单片机]
stm32HAL库之<font color='red'>can</font>操作
蓝牙CAN总线分析仪的软硬件的设计与特点
针对CAN总线通信质量、测试和验证的需要,以及传统CAN分析仪的复杂性,且必须选择PC机作为显示终端的不足,论证了一种基于ARM单片机和智能手机的CAN总线分析仪设计。该分析仪采用以ARM单片机为核心的硬件电路完成对CAN网络的实时数据收集和监控;采用蓝牙通信方式实现分析仪与智能手机的通信并以智能手机为终端完成数据分析。文章对分析仪硬件、软件和智能手机页面进行了具体设计,提出了一种新的波特率自动检测方法,最后给出了所设计的CAN总线分析仪的实际试验结果,可实现CAN总线波特率自动检测、正常监测以及CAN总线状态分析的功能。 CAN(controller area network)控制器局域网络是一种实时性强、灵活性好、标准化程
[测试测量]
蓝牙<font color='red'>CAN</font>总线分析仪的软硬件的设计与特点
CAN分析软件在时序分析中的作用
1.概述 CAN 时序分析软件是一款能够自动测试 CAN 总线电气特性的插件,适用于所有 CAN 总线产品的硬件测试。测试标准遵循通用全球 CAN 总线测试规范GMW14241,软件可快速分析并输出测试结果(Pass/Fail),自动生成测试报表。目前仅在 ZDS4000 全系列示波器中支持。 1.1 主要特点 l 遵循通用全球 CAN 总线测试规范GMW14241 l 支持位时间(Bit Timing)测试 l 支持显性位和隐性位电压测试 l 具备标准帧、扩展帧 ID 筛选功能,可有针对性的测试特定节点 l 支持长时间压力统计,验证 CAN 设备的稳定性 l 自动生成测试报告 1.2 测量项目 CAN 时序分析软件的测试
[测试测量]
<font color='red'>CAN</font>分析软件在时序分析中的作用
汽车CAN隔离收发模块——CTD-CAN系列
一、产品简介 CAN 总线目前已经成为汽车电子行业首选的通信协议,原因在于CAN总线传输 布线 简单,利于汽车线束的设计、安装。另一方面CAN总线对外界扰动的抗扰能力强。 金升阳 依据市场应用需求,整合电源和CAN总线两大平台,推出汽车级产品新成员——CTD-CAN系列(CTD331SCANH/CTD531SCANH),该系列产品的设计、验证、生产过程完全按照IATF16949体系执行,产品整机符合AEC-Q100汽车标准,能更好地满足汽车行业对CAN隔离的需求。 CTD-CAN系列采用IC集成化技术,以小体积、SMD封装、高可靠、生产更高效为设计理念,集电源隔离、信号隔离、CAN 收发和总线保护于一体,能有效解决总
[汽车电子]
<font color='red'>汽车</font>级<font color='red'>CAN</font>隔离收发模块——CTD-<font color='red'>CAN</font>系列
如何用您的手机控制CAN总线
传统的CAN通信仅局限于PC机与电气导线连接的现场应用,面对当今移动设备大规模占据生活中的各个领域,我们CAN通信也不能固步自封,在无线与APP应用领域,使用手机等移动设备监控CAN总线成为未来一个趋势。 自1990年奔驰公司发布了第一辆使用CAN-bus通信的轿车之后,CAN-bus便成为了通讯界里一颗闪亮的星星,在车载设备的通讯中更是一枝独秀。但面对目前这快速发展的新世界,传统应用方案下的线缆组网,PC机监控已无法满足我们新时代的需求,限制了CAN-bus通信的应用场合。 如果说手机的使用拉近了人与人之间的距离,那么智能手机的出现,各种APP应用程序的深入用户群体,则是完全改变了新时代人类的生活方式。物联网、智能工厂、
[嵌入式]
如何用您的手机控制<font color='red'>CAN</font>总线
CAN(FD)总线协议转换原理及其在汽车行业的应用
2023年9月14日,CiA中国技术日直播活动在线上举行,该活动致力于开展与CAN总线相关领域的技术工作,演讲者都是CAN领域的专家。虹科首席工程师陈皓受邀参与活动,并带来以“CAN和CAN FD总线协议转换”为主题的演讲。 本次演讲内容主要分为三个部分:首先介绍了CAN和CAN FD总线的区别,并以此为切入点讲解了两种总线协议转化的基本原理与做法,在此基础上对总线协议转换在汽车行业的具体应用进行了延申介绍与未来展望。本文将带您回顾本次演讲,并对精彩内容“划重点”。 CAN和CAN FD总线的对比 CAN总线和CAN FD总线主要在四个方面存在差异: 1. 波特率不同:CAN总线最高支持1Mbit
[汽车电子]
<font color='red'>CAN</font>(FD)总线协议转换原理及其在<font color='red'>汽车</font>行业的应用
小广播
最新嵌入式文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved