CN101960789B - 具有can总线的通信系统和用于运行这种通信系统的方法 - Google Patents

具有can总线的通信系统和用于运行这种通信系统的方法 Download PDF

Info

Publication number
CN101960789B
CN101960789B CN200980107782.6A CN200980107782A CN101960789B CN 101960789 B CN101960789 B CN 101960789B CN 200980107782 A CN200980107782 A CN 200980107782A CN 101960789 B CN101960789 B CN 101960789B
Authority
CN
China
Prior art keywords
equipment
operational mode
frame
asc
communication system
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN200980107782.6A
Other languages
English (en)
Other versions
CN101960789A (zh
Inventor
F·哈特威克
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Robert Bosch GmbH
Original Assignee
Robert Bosch GmbH
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Robert Bosch GmbH filed Critical Robert Bosch GmbH
Publication of CN101960789A publication Critical patent/CN101960789A/zh
Application granted granted Critical
Publication of CN101960789B publication Critical patent/CN101960789B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4004Coupling between buses
    • G06F13/4027Coupling between buses using bus bridges
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/407Bus networks with decentralised control
    • H04L12/413Bus networks with decentralised control with random access, e.g. carrier-sense multiple-access with collision detection (CSMA-CD)

Abstract

本发明涉及一种通信系统(10),其具有一个CAN总线(20)、借助该CAN总线(20)相互连接的至少两个设备(30;40),其中至少一个设备(30;40)具有:ii.CAN控制单元(31),其适于在第一运行模式中借助第一物理协议通过CAN总线(20)来传输CAN数据帧(C);iii.异步串行通信(ASC)接口单元(32),其适于在第二运行模式中借助第二物理协议通过该CAN总线(20)来传输ASC数据帧(A);iv.第一开关装置(33),其适于根据在该设备(30;40)与至少另一设备(30;40)之间所适用的至少一个协议而在第一运行模式与第二运行模式之间进行切换;以及v.另一开关装置,其适于为了该设备(30;40)的启动将其切换到与该第一运行模式和第二运行模式不同的第三(受限)运行模式。

Description

具有CAN总线的通信系统和用于运行这种通信系统的方法
现有技术
本发明涉及一种根据权利要求1前序部分所述的具有CAN(Controller AreaNetwork,控制器局域网)总线的通信系统以及一种根据权利要求10前序部分所述的用于运行这种通信系统的方法。
在通过CAN总线传输数据时,总线的最大利用率在实践中通常约为50%。这尤其是由于由CAN总线所决定的物理协议的协议开销,也即CAN消息的报头部分可能大于消息的有用数据部分或有效载荷部分。如果比如DLC(Data Length Code,数据长度代码)等于8,那么相对于1+12+6+16+2+7=44个“报头”比特就存在64个“有效载荷”比特。填充比特可能使该比例更糟。
此外,由于物理限制条件以及尤其由于在CAN总线上的延迟,CAN总线当前可实现的最大传输速率局限为约1M比特/秒(106比特每秒)。这相应于1μ秒(10-6秒)的最小比特时间。在传输速率较高的情况下,在用于防止在消息之间冲突的CAN比特仲裁时可能导致产生问题,因为在相互距离最远的节点之间的信号传输时间则超过了比特时间。此外,较高的传输速率导致所传输信号的边缘更陡峭,这导致较高的辐射并从而导致该通信系统的EMV特性变差。
本发明的公开
根据本发明的具有权利要求1所述特征的通信系统以及根据本发明的具有权利要求10所述特征的用于运行通信系统的方法相对于已知的现有技术而相应具有的优点是,通过CAN总线相互连接的设备适于在一个第一运行模式中通过CAN总线传输CAN数据帧以及在一个第二运行模式中传输ASC(Asynchronous Serial Communication,异步串行通信)数据帧。
本发明的另一特殊优点在于,该ASC数据帧相对于CAN数据帧能够以较高的总线时钟通过该CAN总线来传输。另外该ASC数据帧相对于CAN数据帧具有明显较小的报头部分,并从而具有较大的有效载荷部分。在ASC数据传输中从而能够实现非常高的有效数据传输速率,因为协议开销是尤其小的。利用本发明尤其能够在CAN数据帧情况下把约55%的协议开销降低为约10%。
根据本发明而推荐了一种通信系统,该通信系统具有CAN总线和借助该CAN总线而耦合的至少两个设备。在此这种设备具有CAN控制单元(所谓的CAN控制器)、异步串行通信(ASC)接口单元和开关装置。
相应的CAN控制单元适于在第一运行模式或传输模式中借助第一物理协议通过该CAN总线来传输CAN数据帧。该ASC接口单元适于在第二运行模式或传输模式中借助第二物理协议通过该CAN总线来传输ASC数据帧。该开关装置适于根据在相应设备和至少另一设备之间所适用的至少一种协定来在该第一传输模式和该第二传输模式之间进行切换。该第一和第二物理协议优选地是不同的。
为了启动(Hochfahren)连接到该CAN总线的至少一个设备,该设备在启动期间被切换为第三运行模式,其中该第三运行模式与该第一运行模式和该第二运行模式不同。如果该设备单独地比如在一次崩溃之后必须再次重新启动,并且必须与通过该CAN总线而形成的通信连接相同步,或者该设备与连接到该CAN总线的其他所有设备一起在该通信系统起动时被启动,那么就可能需要把该设备切换到该第三运行模式。该第三运行模式(所谓的受限模式)如此来选择,使得该设备仅仅具有有限的功能。尤其在该通信周期的确定时间窗口(所谓的基本周期)中由该设备在第三运行模式中所传输的ASC数据帧不被损坏。这通过如下方式来实现,即既不利用显性(dominaten)总线电平来发送错误帧(或错误标志)也不用其来发送过载帧(或过载标志)。该CAN协议规定,在数据帧之后的“间歇”中接收显性比特的CAN节点利用过载标志来应答该显性比特。即使该节点是错误认可状态(Error-Passiv),其也看作为激活的错误标志。因此该过载功能在受限模式中也被限制。
仅仅因为该设备还不知道ASC数据帧在哪个时间窗口中被传输,并且它把该ASC数据帧错误地解释为有错的CAN数据帧,从而防止了在该ASC时间窗口中按规定传输的ASC数据帧被要启动的设备所损坏。当该设备已经同步于该通信系统的时基,那么该设备才能够知道ASC数据帧何时以及在哪个时间窗口中被传输。另外该设备的错误计数器在该第三运行模式持续时间中被冻结,也即它不被递增。这不仅可以适于发送(Tx)-错误计数器,而且可以适于接收(Rx)-错误计数器。从而防止了在该ASC时间窗口中所传输的ASC数据帧导致该错误计数器的迅速增加,并防止该设备还在同步于该通信系统的时基之前在超过错误界限值(所谓的错误等级)之后切换为“Error_passiv(错误认可)”状态(超过错误等级128:设备不发送错误帧,在重新发送消息之前强制暂停)以及“Bus_off(总线关断)”状态(超过错误等级256:设备不允许发送)。也即,该设备在第三运行状态中虽然能够假定地识别有错的、也即与CAN协议不相应的数据,但这无论如何都不导致该错误计数器的增加,和/或不导致对假定有错的数据帧的损坏。
此外还推荐了一种用于运行通信系统的方法,其具有CAN总线和通过该CAN总线相互连接的至少两个设备,该方法包含有以下的步骤:
a)把至少一个设备在不同的运行模式之间进行切换,其中
b)该设备的CAN控制单元适于在第一运行模式中借助第一物理协议通过该CAN总线来传输CAN数据帧,以及
c)该设备的异步串行通信(ASC)接口适于在第二运行模式中借助第二物理协议通过该CAN总线来传输ASC数据帧,以及
d)该设备为了启动而被切换到与该第一运行模式和第二运行模式不同的第三运行模式中。
本发明的有利的改进和扩展参见从属权利要求。
根据本发明的一个优选实施方案,用于该开关装置把该设备在该第一运行模式和第二运行模式之间进行切换的协定包含有对通信周期的至少一个时间窗口所进行的定义,在该时间窗口中传输该ASC数据帧。此外,该协定还可以包含有对一个或多个预定事件的定义,其中根据该事件来传输ASC数据帧。该开关装置从而根据当前的时间窗口和/或所出现的事件而把该设备在该第一和第二运行模式之间进行切换。
根据另一扩展方案,该协定表明了在哪个或哪些预定时间窗口中和/或根据哪个或哪些预定事件相应的开关装置把预定数量的设备切换到第二运行模式中,并说明了哪个设备在随后的一个或多个时间窗口中具有独占的发送授权。
根据另一扩展方案,该协定至少部分地作为可存储于相应设备中的控制程序的组成部分和/或至少部分地作为可通过该CAN总线传输的协定消息的组成部分来构造。
此外还推荐,在该第二传输协议中预先确定了用于传输数据帧、尤其ASC数据帧的时间窗口,在该时间窗口中至少一个预定的设备、预定数量的设备或者所有设备能够发送或接收。
尤其在该第二传输协议中预先确定了在TTCAN(Time Triggered CAN,时间触发CAN)中所定义的用于传输数据帧的时间窗口。通过设置预定的时间窗口,在该第二运行模式中能够有利地在该CAN总线上获得有保证的应答时间。该协定有利地构造为在TTCAN中所定义的至少一个时间窗口,或者集成在TTCAN中所定义的至少一个时间窗口中。优选地该第二运行模式优先于该第一运行模式。
根据本发明的另一优选实施方式,在该第二运行模式中要进行发送的设备借助该第二物理协议适于向预定数量的进行接收的设备在该CAN总线上建立点到点连接或点到多点连接,而不使用CAN比特仲裁。
该CAN控制单元有利地在第一运行模式中利用第一总线时钟通过该CAN总线来传输CAN数据帧,并且该ASC接口单元在第二运行模式中利用第二总线时钟通过该CAN总线来传输ASC数据帧,其中该第二总线时钟高于该第一总线时钟。优选地该第二总线时钟比该第一总线时钟高2到10之间的一个倍数,该倍数优选的是在5到10之间,尤其优选的是在8到10之间。
此外,CAN数据帧和ASC数据帧分别具有报头部分和有用数据部分,其中该ASC数据帧的报头部分小于该CAN数据帧的报头部分。优选地该ASC数据帧的报头部分比该CAN数据帧的报头部分小2到5之间的一个倍数,该倍数优选的是在3到5之间,尤其优选的是在4到5之间。
根据本发明的尤其优选的应用,所述至少两个借助该CAN总线而耦合的设备或者包含有车辆的测试装置和至少一个控制设备,或者包含有至少两个控制设备。
附图的简述
本发明的优选实施例在附图中示出,并在下文中来详细解释。其中:
图1示出了根据本发明的通信系统的一个第一优选实施例的示意性电路框图;
图2示出了根据本发明的通信系统的一个第二优选实施例的示意性电路框图;
图3示出了根据本发明的通信系统的一个第三优选实施例的示意性电路框图;
图4a示出了ASC数据帧的一个优选实施例的示意性框图;
图4b示出了CAN数据帧的一个优选实施例的示意性框图;
图5示出了用于通过通信系统的CAN总线来传输ASC数据帧的方法的示意性流程图;以及
图6示出了本发明方法的一个优选实施例的示意性流程图。
附图的说明
在附图中相同的参考符号表示相同的或功能相同的部件。
在图1中是本发明的通信系统,其整体用参考符号10来表示。该通信系统10包含有CAN总线20、借助该CAN总线20相耦合的至少两个设备30、40(所谓的节点)和一个开关装置33。
借助该CAN总线20相耦合的至少两个设备30、40比如或者包含有一个测试装置和至少一个控制设备,或者包含有至少两个控制设备。该测试装置优选地设置于车间内。该控制设备优选地设置在车辆中。显然本发明也可以应用于除车辆之外的其他领域中,比如飞机、航天器或机床中。
在图1和2中参考符号30和40比如表示两个构造相同的控制设备。出于简明的原因,相应仅具体示出了第一控制设备30。但该第二控制设备40可以以相应的方式来构造,而不再详细阐述。
该第一控制设备30具有CAN控制单元31(所谓的CAN控制器)、异步串行通信(ASC)接口单元32(所谓的ASC控制器)和开关装置33。该开关装置33和CAN控制单元31通过第一导线L1相耦合。该CAN控制单元31另外还设置用于在第一运行模式或传输模式中借助第一物理协议通过该CAN总线20来传输CAN数据帧C。为此该CAN控制单元31把CAN数据帧C通过第一导线L1传输到该开关装置33,该开关装置然后可以把所接收的CAN数据帧C通过该CAN总线20传输到该第二控制设备40。相应地同样适用于由该CAN控制单元31接收通过该CAN总线20所传输的CAN数据帧C。
该ASC接口单元32借助一个第二导线L2与该开关装置33相耦合。该ASC接口单元32设置用于在第二运行模式或传输模式中借助第二物理协议通过该CAN总线20来传输ASC数据帧A。为此,该ASC接口单元32把该ASC数据帧A通过第二导线L2传输给该开关装置33,该开关装置然后可以把所接收的ASC数据帧A通过该CAN总线20传输到该第二控制设备40。相应地同样适用于该ASC接口单元32接收通过该CAN总线20所传输的ASC数据帧A。
该开关装置33设置用于根据在该第一控制设备30和至少另一设备、按照图1和2的例子是该第二控制设备40之间所适用的至少一个协定而在该第一运行模式和第二运行模式之间进行切换。该协定在此优选地包含有如下定义:即相应的开关装置33在哪个或哪些预定时间窗口中和/或根据哪个或哪些预定事件把预定数量的设备、比如按照图1和2的实施例的两个控制设备30、40、各个设备30、40切换到第一运行模式中或切换到第二运行模式中。另外该协定还可包含有如下定义:也即相应的开关装置33在哪个或哪些预定时间窗口中和/或根据哪个或哪些预定事件把预定数量的设备、比如按照图1和2的实施例的两个控制设备30、40、各个设备30、40切换到第二运行模式或切换到第二运行模式,以及哪个控制设备30、40在该通信周期(所谓的基本周期)的随后的一个或多个时间窗口中获得独占的发送授权。该协定尤其还可以作为在TTCAN中所定义的至少一个时间窗口来构造,或者集成在TTCAN中所定义的至少一个时间窗口中。TTCAN表示所谓的“在CAN上的时间触发通信”。TTCAN在CAN总线上作为特有的协议来设置,并在较高的协议层上实现了通过CAN总线对数据传输的时间上的过程控制,尤其实现了该通信系统的实时控制。
此外该第二运行模式优选优先于该第一运行模式,也即,只要允许该技术限制条件,那么相应的开关装置33就总是按照可预定的设定而切换到该第二运行模式。
此外在该第二传输协议中进行发送的设备、比如该第一控制设备30借助该第二物理协议适于或被设置用于向预定数量的接收设备、比如该第二控制设备40和其他的设备(未示出)构建点到点连接或点到多点连接,以防止在该CAN总线20上的非对称延迟。
优选地,在第一运行模式中该CAN控制单元31利用第一总线时钟通过该CAN总线20传输CAN数据帧C。另外,在第二运行模式中该ASC接口单元32利用第二总线时钟通过该CAN总线20来传输ASC数据帧A。该第二总线时钟优选高于该第一总线时钟,由此能够通过该CAN总线20来提高平均传输速率。该第二总线时钟尤其比该第一总线时钟高2到10之间的一个倍数,该倍数优选的是在5到10之间,尤其优选的是在8到10之间。
图2示出了根据本发明的通信系统10的第二优选实施例的示意性电路框图。该第二实施例与在图1中所示的第一实施例不同之处尤其在于:在该CAN总线20和相应开关装置33之间设置有驱动装置35和接口装置或通信接口36。该驱动装置35借助一个第三导线L3与该开关装置33相连接,并借助一个第四导线L4与该接口装置36相连接。该接口装置36另外还借助该CAN总线20与该第二控制设备40和/或其他的控制设备(未示出)或测试装置(未示出)相耦合。该驱动装置35尤其作为CAN驱动器来构造,该CAN驱动器利用所期望的电平实现了与接口装置36的双向连接。
该开关装置33尤其作为一种程序控制的接口切换器或者作为多路复用器来构造,其实现了在CAN控制单元31与ASC接口单元32之间的切换。此外,按照附图2,用于在第一和第二运行模式之间进行切换的该协定还能够至少部分地构造为在相应设备30、40中、在图2的例子中在第一控制设备30中可存储的协定消息VN的组成部分。为了存储控制程序SP,在相应控制设备30中集成了比如存储装置34。该存储装置34比如构造为RAM存储器或者EEPROM存储器。该控制程序被编程和协调以实施根据本发明的方法,并且如果它在计算设备上、尤其在相应设备30及开关装置33的微处理器(未示出)上被处理时,该控制程序就对根据本发明方法的过程进行控制。
图3示出了根据本发明的通信系统10的一个第三实施例。其示出了CAN总线20的两个导线CAN_High(CANH)和CAN_Low(CANL)。在导线CANH和CANL的末端通过终端电阻(所谓的Terminating Resistor;RT)相互连接。该系统10除了这两个设备30、40之外还具有其他的设备,其中比如仅示出了设备50。在此也适用的是,至少另一设备40、50同样如设备30一样利用CAN控制器31、ASC控制器32和开关装置33来构造,以在设备30和40;50之间在所选择的时间窗口中通过CAN总线20来实现异步串行通信。在该CAN协议上设置有TTCAN协议37,这在图3中通过在该CAN控制器31上侧面地边缘设置TTCAN协议37来表示。在该CAN控制器31与该开关装置33之间构造有连接导线L6,在CAN控制器31与ASC控制器32之间构造有导线L7。该导线L6和L7用于通过TTCAN协议37来控制该开关装置33及ASC控制器32。在内部在协议37和CAN控制器31之间不用额外的导线就对该CAN控制器31进行控制。
图4a示出了ASC数据帧A的实施例的示意性框图,图4b示出了CAN数据帧C的实施例的示意性框图。该CAN数据帧C和ASC数据帧A分别具有报头部分CH、AH和有用数据部分CL、AL。该ASC数据帧A的报头部分小于该CAN数据帧C的报头部分CH。从而该ASC数据帧A的有用数据部分AL能够大于该CAN数据帧C的有用数据部分CL。从而根据本发明由于能够通过CAN总线20在所定义的通信周期时间窗口中传输ASC数据帧A而实现了数据传输速率的提高。优选地该ASC数据帧A的报头部分AH比该CAN数据帧C的报头部分CH小2到5之间的一个倍数,该倍数优选地在3到5之间,尤其优选地在4到5之间。
在图5中示出了用于在通信系统10的通信周期的所选择时间窗口中通过CAN总线20传输ASC数据帧A的一种方法的示意性流程图。下面参照在图3中所示的通信系统10来详细解释该方法。
在第一方法步骤S1中,相应的设备30、40、50配备有CAN控制单元31(CAN控制器)。该CAN控制单元31设置用于在第一运行模式中借助第一物理协议通过该CAN总线20来传输CAN数据帧C。
在第二方法步骤S2中,各个设备30、40、50配备有异步串行通信(ASC)接口单元32(ASC控制器)。该ASC单元32设置用于在第一运行模式中借助第二物理协议通过该CAN总线20来传输ASC数据帧A。
在第三方法步骤S3中,预定数量的设备30、40、50根据在预定数量的设备30、40、50之间所适用的至少一个协议而在第一运行模式和第二运行模式之间被切换。优选地通过开关装置33来进行在第一和第二运行模式之间的切换。
按照本发明以以下方式通过该CAN总线20来进行数据传输:在该CAN协议上设置有(aufgesetzt)另一协议层,所谓的TTCAN协议37。通过TTCAN经过该CAN总线20以重复的通信周期(所谓的基本周期)时间受控地并确定性地进行数据传输。一个通信周期被划分为多个时间窗口,其中在每个时间窗口中连接到该CAN总线20的设备30、40之一获得独占的发送授权。那么任何时间都可以预测某一设备30、40下次何时允许传输消息。各个设备30、40的访问授权、也即哪个设备30、40何时允许进行发送在一个矩阵中被定义,该矩阵的内容存储在各个设备30、40中。
为了实现通过CAN总线20的异步数据传输,通信周期的至少一个时间窗口被定义为ASC窗口,在该ASC窗口中允许传输ASC数据帧A。理论上可以除了用于参考消息的时间窗口之外而把通信周期的所有时间窗口定位为ASC窗口,并用于ASC通信。该TTCAN控制器37通过导线L6来控制该开关装置33,以在CAN控制单元31和ASC接口单元32之间进行切换。视该开关装置33的开关位置而定,该CAN控制器31的或者该ASC控制器32的数据为了传输到其他设备而被提供到该CAN总线20上,或者从CAN总线20所接收的数据被引导到该CAN控制器31或该ASC控制器32以进一步处理。该TTCAN协议37也激活以及去激活该CAN控制器31和/或通过导线L7来激活以及去激活该ASC控制器32。尤其在ASC窗口期间被切换到ASC接口单元32。在其他的时间窗口期间该通信系统10被转换到该CAN控制单元31,并如同一个完全常规的TTCAN通信系统来运行。能够通过CAN总线20来进行ASC通信需要扩展迄今的传统TTCAN协议。
在ASC窗口期间,不允许CAN控制器看到ASC数据帧A。因此在ASC窗口期间CAN的错误检测(所谓的Error Detektion)被去激活。该CAN协议控制器仅看到在CAN总线20上的“1”,这对应于总线空闲状态。在ASC窗口期间则进行通过该CAN总线20的串行通信。
本发明所涉及的情况是,设备30、40之一在该通信系统10运行期间暂时故障或者被关闭,并且必须被复位或重新启动。尤其涉及将临时关机的节点的无干扰地集成到运行的通信系统10中。在复位或启动过程期间,该设备必须首先再次与整个网络相同步。为此,该设备监听该CAN总线20,并等待包含有时间信息的参考消息(所谓的ReferenceMessage)。该参考消息在一个通信周期的开头由其中具有当前时间主机功能(所谓的actual Time Master)的设备30、40之一通过总线20来传输。当然不同步的设备不具有时间信息,并从而还不能在ASC窗口期间由TTCAN控制器切换到ASC接口单元32。同样几乎不能够在ASC窗口期间去激活CAN的错误检测。
这导致被复位或重新启动的设备30、40仅仅运行于第一运行模式,并在ASC窗口期间不被切换为第二运行模式。因此该CAN控制器看到ASC数据帧A,将其认为是有错的CAN数据帧,并且错误计数器被递增。此外该设备30、40会损坏该ASC数据帧A-如在CAN协议中在接收到有错的CAN数据帧C时所确定的。最终,该设备30、40导致通过通信系统10的通信的敏感干扰,并且完全不能同步到整个网络上或仅仅以有限的功能(仅接收授权,无发送授权)同步到整个网络上。如果整个通信系统10被启动并且必须弄清楚哪个时间主机或备份时间主机发送参考消息(时间信息),并且多个设备必须被同步到预给定的时间,那么也可能出现相同的问题。在此本发明可以提供帮助。
根据本发明而推荐,被复位或启动的设备30、40在同步过程期间被切换到第三运行模式(所谓的受限模式),在该模式中设备30、40的错误计数器(Tx错误计数器和/或RX错误计数器)被“冻结”,并且通过该设备30、40发送显性的错误帧(所谓的Error Frame)是非激活或阻塞的。当然,如果该设备30、40在CAN总线20上已收听到一个无错误的CAN数据帧C,那么它可以在第三运行模式中发送一个CAN消息,尤其一个确认消息(ACK)。另外也可以考虑的是,如果该设备30、40在一个预给定的时长内、尤其在该CAN总线20的一个通信周期内没有从连接到该CAN总线20的其他设备30、40接收到参考消息(REF),那么该设备30、40可以在第三运行模式中通过该CAN总线20发送一个CAN消息,尤其一个参考消息(REF)。
为了把被复位或启动的设备30、40切换到第三运行模式,可以考虑软件或硬件解决方案。在软件解决情况下,可以由该CAN控制单元31在该设备30、40的同步过程期间来置位确定的比特(所谓的配置比特)。在硬件解决情况下,在第三运行模式与其他运行模式(比如第一或第二运行模式)之间的切换可以与设备30、40的运行状态(所谓的同步模式)相关联(verknuepft)。作为设备30、40的运行状态根据TTCAN协议而定义为状态“Sync_Off”、“Synchronising(同步中)”、“In_Gap”和“In_Schedule”。如果该设备30、40处于运行状态Sync_Mode=“Sync_Off”或Sync_Mode=“Synchronising”,那么优选地该设备30、40就被切换到第三运行模式。此外,如果该设备30、40处于运行状态Sync_Mode=“In_Gap”或Sync_Mode=“In_Schedule”,那么该设备30、40被转换到与第三运行模式不同的运行模式中。
为了实现把暂时关闭的节点30、40无干扰地集成到运行的多路(Multiplex)通信系统10中,允许把迄今的传统TTCAN协议扩展一些功能。具有扩展TTCAN协议的节点30、40可以在常规的CAN和TTCAN系统10中运行。如果新的扩展的协议功能被暂时关闭或者被去激活,那么就可以通过标准化的CAN一致性测试(CAN-Conformance-Test;SIO16845)。在多路系统10中在不访问应用软件的情况下来进行通信,由此使该应用CPU不用承载时间严苛的、经常重复的任务。
在新定义的第三(受限)运行模式中,仅允许TTCAN节点30、40发送参考消息(所谓的Reference Message)和确认消息(Acknowledge Bit (确认比特))。错误帧(ErrorFrame)允许与错误计数器(Error Counter)的状态无关地仅仅利用错误认可状态标志而被发送,过载帧与错误帧类似利用错误认可状态标志而不是过载标准而被发送。在受限运行模式中,错误计数器又被递增或递减。这与迄今的CAN(ISO 11898-1)和TTCAN(ISO 11898-4)标准是明显不同的。
尤其推荐的是,给TTCAN协议的帧同步实体(FSE)增加了功能:除了CAN消息的TTCAN触发之外,通过配置时间标记并基于TTCAN协议的周期时间(所谓的Cycle Time)来生成一个开关信号,该开关信号一方面把收发器的开关装置33(多路复用器)在CAN和ASC之间进行切换,另一方面把TTCAN节点30、40在通过CAN总线20的异步串行通信有效的时间段内转换到第三(受限)运行模式。可选地,也可以附加地切换该收发器本身,以比如在ASC运行中实现更高的比特速率。
利用本发明,保证了应该被同步到运行的TTCAN多路系统10中的TTCAN节点30、40理解所有的CAN消息以及CAN数据帧C,并忽视所有的ASC消息及ASC数据帧A。一旦该节点30、40同步得足够好,也即已经接收了至少两个彼此相继的参考消息,那么它也可以发送其他的消息以及在ASC时间窗口中参与异步串行通信。
上述的第三(受限)运行模式也可以应用于单纯的CAN多路系统中,其中则必须通过其他的工具、比如通过应用软件来进行切换。
在图6中示出了根据一个优选实施例的本发明方法的示意性流程图。下面参照在图3中所示的通信系统10来详细解释该方法。
在第一方法步骤S4中,设备30、40、50之一被转换到第三(受限)运行模式,其中该设备已暂时停止并应该被集成到运行的通信系统10中。这导致该设备30、40、50在与运行的通信系统10相同步时理解所有的CAN消息C,并忽略所有的ASC消息A。可以借助该CAN控制器31的配置比特或者根据该设备的运行状态来进行该设备30、40、50至第三运行模式的切换。
在第二方法步骤S5中,该设备30、40、50监听该总线20,并等待CAN消息C,尤其等待参考消息REF,其中该参考消息相应指示了一个通信周期的开头。ASC消息A被设备30、40、50忽略,因为其处于第三运行模式中。如果该设备30、40、50已经接收到一个CAN消息,那么它就在第三运行模式期间在随后的方法步骤S11中通过该CAN总线20发送一个确认消息ACK,以对消息的顺序接收进行确认,尤其用于向当前时间主机通知该时间信息的顺序接收。每次无错误接收的CAN消息在受限模式中都利用一个ACK比特来确认,好像它是一个参考消息REF、校准消息或其他任意的消息。
在之后的询问步骤S6中,检验是否接收到一个参考消息REF。如果不是,那么在另一询问步骤S7中就检验是否已经经过了一个预给定的时间段,优选是一个通信周期(cycle)的时间(t)。如果不是,那么就再次分支到方法步骤S5,并继续监听CAN总线20。
如果在询问步骤S7中确定已经经过了一个通信周期的时间,那么就可以认定:或者没有其他的设备连接到该CAN总线20上,或者其他所连接的设备不是时间主机,也即不能给定时间信息。因此在方法步骤S8中该设备30、40、50自己尝试承担时间主机功能,并自己发送一个参考消息REF。那么一旦该设备30、40、50在方法步骤S9中从连接到该CAN总线20的其他设备之一接收到一个确认消息ACK(在该设备接收到该参考消息REF之后),那么它就知道其为当前的时间主机。
如果在该询问步骤S6中确定接收到一个参考消息REF,那么在之后的询问步骤S10中就检验其是否已经是彼此相继地接收的第二参考消息REF。如果不是,那么就再次分支到方法步骤S5,并继续监听CAN总线20。但是如果在方法步骤S5中所接收的CAN消息已经是相继的第二个参考消息REF,那么就在方法步骤S12中过渡到常规运行模式以进行数据传输。
在方法步骤S12中通过该CAN总线20以如下方式来进行数据传输,即在通信周期的时间窗口中按照CAN协议来传输数据(在第一运行模式),并在所选择的通信周期时间窗口中不按照CAN协议、而是异步和串行地(在第二运行模式)、可能甚至以更高的总线时钟速率来传输。已被集成在运行的通信系统10中的该设备30、40、50在此或者作为常规的节点(图6的流程图的左支路)或者作为时间主机节点(右支路)来运行。

Claims (15)

1.一种通信系统(10),具有:
a.CAN总线(20);
b.借助该CAN总线(20)相互连接的至少两个设备(30,40),其中所述设备中的至少一个(30;40)具有:
i.CAN控制单元(31),其适于在第一运行模式中借助第一物理协议通过CAN总线(20)来传输CAN数据帧(C);
ii.异步串行通信(ASC)接口单元(32),其适于在第二运行模式中借助第二物理协议通过该CAN总线(20)来传输ASC数据帧(A);
iii.第一开关装置(33),其适于根据在该设备(30;40)与至少另一设备(30;40)之间所适用的至少一种协定而在第一运行模式与第二运行模式之间进行切换,其中第一开关装置被控制为使得通过CAN总线(20)的数据传输以重复的通信周期时间受控地进行,其中该通信周期被划分为多个时间窗口,其中在每个时间窗口中连接到所述CAN总线(20)的设备(30;40)之一获得独占的发送授权,以及其中在至少一个被定义为ASC窗口的时间窗口中传输ASC数据帧(A);以及
iv.另一开关装置,其适于为了该设备(30;40)的启动而将其切换到与该第一运行模式和第二运行模式不同的第三运行模式,其中在所述第三运行模式中所述设备(30;40)的错误计数器被冻结,并且通过所述设备(30;40)对显性的错误帧的发送是非激活或被阻塞的。
2.根据权利要求1所述的通信系统(10),其特征在于,在第三运行模式中既不利用显性的总线电平来发送错误帧也不利用其来发送过载帧。
3.根据权利要求1或2所述的通信系统(10),其特征在于,该设备(30;40)在第三运行模式中在该CAN总线(20)上监听来自连接到该CAN总线(20)上的其他设备(40;30)的CAN消息(C)。
4.根据权利要求3所述的通信系统(10),其特征在于,所述CAN消息(C)是参考消息。
5.根据权利要求3所述的通信系统(10),其特征在于,如果该设备(30;40)在该CAN总线(20)上已经收听到无错误的CAN消息,那么它就在第三运行模式中发送CAN消息(C)。
6.根据权利要求5所述的通信系统(10),其特征在于,在第三运行模式中发送的CAN消息为确认消息。
7.根据权利要求5所述的通信系统(10),其特征在于,所述无错误的CAN消息是无错误的CAN数据帧。
8.根据权利要求1至2之一所述的通信系统(10),其特征在于,如果该设备(30;40)在预给定的持续时间内没有从连接到该CAN总线(20)的其他设备(30;40)接收到参考消息,那么它就在第三运行模式中通过该CAN总线(20)发送CAN消息(C)。
9.根据权利要8所述的通信系统(10),其特征在于,所述CAN消息(C)是参考消息。
10.根据权利要8所述的通信系统(10),其特征在于,所述预给定的持续时间是该CAN总线(20)的一个通信周期。
11.根据权利要求1至2之一所述的通信系统(10),其特征在于,所述另一开关装置借助特定的配置比特把该设备(30;40)切换到第三运行模式中。
12.根据权利要求1至2之一所述的通信系统(10),其特征在于,所述另一开关装置根据该设备(30;40)的运行状态自动地把该设备(30;40)切换到第三运行模式。
13.根据权利要求12所述的通信系统(10),其特征在于,如果该设备(30;40)处于运行状态Sync_Mode=“Sync_Off”或Sync_Mode=“Synchronising”中,那么所述另一开关装置就把该设备(30;40)切换到第三运行模式。
14.根据权利要求12所述的通信系统(10),其特征在于,如果该设备(30;40)处于运行状态Sync_Mode=“In_Gap”或Sync_Mode=“In_Schedule”中,那么所述另一开关装置就把该设备(30;40)切换到第一或第二运行模式。
15.一种用于运行通信系统(10)的方法,其中该通信系统具有CAN总线(20)和通过该CAN总线(20)相互连接的至少两个设备(30;40),该方法包含有以下的步骤:
a) 将所述设备中的至少一个(30;40)依据在该设备(30;40)与至少另一设备(30;40)之间所适用的至少一种协定在不同的运行模式之间进行切换,其中通过CAN总线(20)的数据传输以重复的通信周期时间受控地进行,其中该通信周期被划分为多个时间窗口,其中在每个时间窗口中连接到所述CAN总线(20)的设备(30;40)之一获得独占的发送授权,其中
b)通过该设备(30;40)的CAN控制单元(31)在第一运行模式中借助第一物理协议通过该CAN总线(20)来传输CAN数据帧(C),以及
c) 通过该设备(30;40)的异步串行通信(ASC)接口单元(32)适于在第二运行模式中借助第二物理协议通过该CAN总线(20)来传输ASC数据帧(A),其中在至少一个被定义为ASC窗口的时间窗口中传输ASC数据帧(A),其中
该设备(30;40)为了启动而被切换到与该第一运行模式和第二运行模式不同的第三运行模式中,其中在所述第三运行模式中所述设备(30;40)的错误计数器被冻结,并且通过所述设备(30;40)对显性的错误帧的发送是非激活或被阻塞的。
CN200980107782.6A 2008-03-07 2009-03-04 具有can总线的通信系统和用于运行这种通信系统的方法 Active CN101960789B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
DE102008000561A DE102008000561A1 (de) 2008-03-07 2008-03-07 Kommunikationssystem mit einem CAN-Bus und Verfahren zum Betreiben eines solchen Kommunikationssystems
DE102008000561.4 2008-03-07
PCT/EP2009/052527 WO2009109590A1 (de) 2008-03-07 2009-03-04 Kommunikationssystem mit einem can-bus und verfahren zum betreiben eines solchen kommunikationssystems

Publications (2)

Publication Number Publication Date
CN101960789A CN101960789A (zh) 2011-01-26
CN101960789B true CN101960789B (zh) 2016-10-19

Family

ID=40548760

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200980107782.6A Active CN101960789B (zh) 2008-03-07 2009-03-04 具有can总线的通信系统和用于运行这种通信系统的方法

Country Status (7)

Country Link
US (1) US8819327B2 (zh)
EP (1) EP2283616B1 (zh)
JP (1) JP5166558B2 (zh)
CN (1) CN101960789B (zh)
AT (1) ATE526755T1 (zh)
DE (1) DE102008000561A1 (zh)
WO (1) WO2009109590A1 (zh)

Families Citing this family (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102007051657A1 (de) * 2007-10-26 2009-04-30 Robert Bosch Gmbh Kommunikationssystem mit einem CAN-Bus und Verfahren zum Betreiben eines solchen Kommunikationssystems
DE102010003558A1 (de) 2010-03-31 2011-10-06 Robert Bosch Gmbh Verfahren zum Ansteuern einer Anzahl an Modulen
DE102010041363A1 (de) * 2010-09-24 2012-03-29 Robert Bosch Gmbh Vorrichtung und Verfahren zur Bereitstellung einer globalen Zeitinformation in ereignisgesteuerter Buskommunikation
DE102012011483A1 (de) 2012-06-09 2013-12-12 Volkswagen Aktiengesellschaft Verfahren zur Aktivierung oder Deaktivierung von Funktionen und Vorrichtung zur Beeinflussung von Funktionen in einem Kraftfahrzeug
CN103888329A (zh) * 2012-12-20 2014-06-25 中国北车股份有限公司 铁路车辆ttcan信号转换装置及方法
US9280501B2 (en) * 2013-01-31 2016-03-08 Infineon Technologies Ag Compatible network node, in particular, for can bus systems
JP5811140B2 (ja) 2013-05-29 2015-11-11 株式会社デンソー 通信システム
TWI489114B (zh) * 2013-07-05 2015-06-21 Univ China Sci & Tech CAN-BUS communication method and system for embedded oscilloscope
DE102013225882A1 (de) * 2013-12-13 2015-06-18 Robert Bosch Gmbh Master-Slave-Kommunikationssystem mit Standbybetrieb
WO2016038816A1 (ja) * 2014-09-12 2016-03-17 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 車両用通信装置、車載ネットワークシステム及び車両用通信方法
CN104660372B (zh) * 2015-02-09 2018-03-20 重庆华数机器人有限公司 一种基于单片机异步串行端口多通道数据传输方法及系统
DE102015204714A1 (de) * 2015-03-16 2016-09-22 Robert Bosch Gmbh Teilnehmerstation für ein Bussystem und Verfahren zur Datenübertragung in einem Bussystem
DE102015219999A1 (de) * 2015-10-15 2017-04-20 Robert Bosch Gmbh Verfahren zur Generierung eines Geheimnisses in einem Netzwerk mit mindestens zwei an ein Übertragungsmedium angeschlossenen Teilnehmern
DE102015220014A1 (de) * 2015-10-15 2017-04-20 Robert Bosch Gmbh Verfahren zur Generierung eines Geheimnisses in einem Netzwerk
DE102015220008A1 (de) * 2015-10-15 2017-04-20 Robert Bosch Gmbh Verfahren zur Generierung eines Geheimnisses in einem Netzwerk mit wenigstens zwei Übertragungskanälen
TWI694741B (zh) * 2018-04-11 2020-05-21 國立勤益科技大學 基於控制器區域網路的多協定確認方法
JP7133022B2 (ja) * 2018-08-24 2022-09-07 日立Astemo株式会社 車載通信装置及び車載システム
DE102019200907A1 (de) * 2019-01-24 2020-07-30 Robert Bosch Gmbh Teilnehmerstation für ein Bussystem und Verfahren zur Datenübertragung in einem Bussystem
US10860503B2 (en) 2019-05-02 2020-12-08 Keyssa Systems, Inc. Virtual pipe for connecting devices
DE102019207174A1 (de) 2019-05-16 2020-11-19 Robert Bosch Gmbh Sende-/Empfangseinrichtung und Kommunikationssteuereinrichtung für eine Teilnehmerstation eines seriellen Bussystems und Verfahren zur Kommunikation in einem seriellen Bussystem
EP3742680B1 (de) * 2019-05-22 2022-03-16 Lisa Dräxlmaier GmbH Verteilervorrichtung und entsprechendes verfahren
US10496575B1 (en) 2019-06-12 2019-12-03 National Chin-Yi University Of Technology Multi-protocol determining method based on CAN bus
CN112087410B (zh) * 2019-06-12 2022-05-13 勤益科技大学 基于控制器区域网络的多协定确认方法
US11824935B2 (en) 2019-10-07 2023-11-21 Nathan Sindel Universally mountable modular data and power network
DE102020205257A1 (de) * 2020-04-24 2021-10-28 Robert Bosch Gesellschaft mit beschränkter Haftung Kommunikationssteuereinrichtung und Sende-/Empfangseinrichtung für eine Teilnehmerstation eines seriellen Bussystems und Verfahren zur Kommunikation in einem seriellen Bussystem
EP3917100A1 (en) * 2020-05-26 2021-12-01 Nxp B.V. Controller area network controller and transceiver
DE102020214129A1 (de) 2020-11-10 2022-05-12 Volkswagen Aktiengesellschaft Verfahren und System zum Kommunizieren über einen Kommunikationsbus
DE102021205719A1 (de) 2021-06-07 2022-12-08 Robert Bosch Gesellschaft mit beschränkter Haftung Sende-Empfangseinrichtung für eine Teilnehmerstation eines seriellen Bussystems und Verfahren zur Kommunikation in einem seriellen Bussystem

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1620058A (zh) * 2003-11-19 2005-05-25 华为技术有限公司 异步传输模式反向复用协议中参考链路选择切换的方法
DE202006007689U1 (de) * 2006-05-13 2007-09-20 Dr.Staiger, Mohilo + Co Gmbh Drehmomentsensor
US7299098B2 (en) * 2001-10-30 2007-11-20 Robert Bosch Gmbh Method and device for programming a control unit

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE4131133B4 (de) * 1991-09-19 2005-09-08 Robert Bosch Gmbh Verfahren und Vorrichtung zum Austausch von Daten in Datenverarbeitungsanlagen
GB9207909D0 (en) * 1992-04-10 1992-05-27 Rolls Royce Motor Cars Vehicle electronic control apparatus
US6882924B2 (en) * 2003-05-05 2005-04-19 Precision Engine Controls Corp. Valve flow control system and method
JP2005058175A (ja) 2003-08-20 2005-03-10 Yanmar Co Ltd 作業車両における制御装置
US7403844B2 (en) * 2005-08-31 2008-07-22 Invacare Corporation Method and apparatus for programming parameters of a power driven wheelchair for a plurality of drive settings
DE102005060665A1 (de) * 2005-12-19 2007-06-21 Robert Bosch Gmbh Verfahren und Teilnehmer zum Austausch von Informationen zwischen Teilnehmern eines Kommunikationssystems in einem Kraftfahrzeug
JP3872504B1 (ja) 2006-04-07 2007-01-24 富士重工業株式会社 車両のエンジン制御装置
DE102006019305A1 (de) * 2006-04-26 2007-10-31 Robert Bosch Gmbh Verfahren zur Datenübertragung von und zu einem Steuergerät
US8156269B2 (en) * 2008-11-04 2012-04-10 Renesas Electronics America Inc. Reference distribution bus

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7299098B2 (en) * 2001-10-30 2007-11-20 Robert Bosch Gmbh Method and device for programming a control unit
CN1620058A (zh) * 2003-11-19 2005-05-25 华为技术有限公司 异步传输模式反向复用协议中参考链路选择切换的方法
DE202006007689U1 (de) * 2006-05-13 2007-09-20 Dr.Staiger, Mohilo + Co Gmbh Drehmomentsensor

Also Published As

Publication number Publication date
WO2009109590A1 (de) 2009-09-11
DE102008000561A1 (de) 2009-09-10
EP2283616A1 (de) 2011-02-16
JP2011514772A (ja) 2011-05-06
EP2283616B1 (de) 2011-09-28
US20100293315A1 (en) 2010-11-18
ATE526755T1 (de) 2011-10-15
JP5166558B2 (ja) 2013-03-21
CN101960789A (zh) 2011-01-26
US8819327B2 (en) 2014-08-26

Similar Documents

Publication Publication Date Title
CN101960789B (zh) 具有can总线的通信系统和用于运行这种通信系统的方法
US6990540B2 (en) Method and device for transmitting information on a bus system, and a bus system in which different information is uniquely assigned different information identifiers
JP4331777B2 (ja) 自動車内の情報を伝送する方法および通信システム
KR101956949B1 (ko) 직렬 데이터 전송의 올바른 기능을 체크하기 위한 방법 및 장치
CN103370700B (zh) 用于具有附加插入的数据的串行数据传输的方法和装置
US20110128855A1 (en) Data communication network system
JP2011500430A (ja) Canバスを備える通信システム、およびこのような通信システムを駆動する方法
CN105324960A (zh) 控制器局域网络灵活的数据率
US20050094674A1 (en) Method and circuit arrangement for the monitoring and management of data traffic in a communication system with several communication nodes
CN101690009A (zh) 通信系统和通信方法
KR20090091171A (ko) 이중 링 네트워크 시스템, 그 통신 제어 방법, 전송국, 및 이중 링 네트워크 시스템의 통신 제어 프로그램
CN105512081A (zh) 用于以可转换的数据速率进行串行数据传输的方法和装置
KR20170040326A (ko) 버스 시스템의 가입자국용 통신 제어 장치, 프로그래밍 툴, 그리고 상이한 프로토콜에 따라 통신하는 가입자국들을 포함하는 버스 시스템에서 가입자국들의 프로그래밍 방법
CN104995874A (zh) 具有协议异常状态的数据传输协议
KR20140107502A (ko) 버스 시스템의 가입자 국, 그리고 버스 시스템의 가입자 국들 간의 메시지 전송 방법
US7743273B2 (en) Serial communication system and method for transmitting and receiving data in synchronization with a clock signal
KR20200013723A (ko) 마이크로 컨트롤러와 트랜시버 모듈 간의 통신 방법, 마이크로 컨트롤러 및 트랜시버 모듈
US20140297913A1 (en) Slave control device and method for programming a slave control device
AU2020310454B2 (en) Method and data network for communicating data content, in particular in an elevator system
US11909553B2 (en) Frame screening unit, user station for a serial bus system, and method for communicating in a serial bus system
JP2008213718A (ja) 車両用制御装置
US11831466B2 (en) User station for a serial bus system, and method for transmitting a message in a serial bus system
US11115236B2 (en) Subscriber station for a bus system and method for transmitting data in a bus system
KR101987890B1 (ko) 통신모듈의 버스에의 연결을 매개하기 위해 그 통신모듈의 전송속도를 확인하는 방법과 그 방법을 위한 기기
JP5586760B2 (ja) ネットワークシステム、ネットワークシステムの制御方法、伝送局、伝送局のプログラム

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant