CN102854850B - 消息传输控制系统和方法 - Google Patents
消息传输控制系统和方法 Download PDFInfo
- Publication number
- CN102854850B CN102854850B CN201210217225.3A CN201210217225A CN102854850B CN 102854850 B CN102854850 B CN 102854850B CN 201210217225 A CN201210217225 A CN 201210217225A CN 102854850 B CN102854850 B CN 102854850B
- Authority
- CN
- China
- Prior art keywords
- message
- predetermined period
- transmit queue
- value
- less
- 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.)
- Expired - Fee Related
Links
- 238000000034 method Methods 0.000 title claims description 60
- 230000005540 biological transmission Effects 0.000 title description 11
- 238000004891 communication Methods 0.000 claims abstract description 16
- 230000000694 effects Effects 0.000 claims description 6
- 238000013507 mapping Methods 0.000 claims description 3
- 238000010586 diagram Methods 0.000 description 8
- 238000004590 computer program Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 238000002485 combustion reaction Methods 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 238000010304 firing Methods 0.000 description 1
- 239000000446 fuel Substances 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 230000007935 neutral effect Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000001502 supplementing effect Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L12/403—Bus networks with centralised control, e.g. polling
-
- A—HUMAN NECESSITIES
- A01—AGRICULTURE; FORESTRY; ANIMAL HUSBANDRY; HUNTING; TRAPPING; FISHING
- A01K—ANIMAL HUSBANDRY; AVICULTURE; APICULTURE; PISCICULTURE; FISHING; REARING OR BREEDING ANIMALS, NOT OTHERWISE PROVIDED FOR; NEW BREEDS OF ANIMALS
- A01K97/00—Accessories for angling
- A01K97/10—Supports for rods
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B63—SHIPS OR OTHER WATERBORNE VESSELS; RELATED EQUIPMENT
- B63B—SHIPS OR OTHER WATERBORNE VESSELS; EQUIPMENT FOR SHIPPING
- B63B17/00—Vessels parts, details, or accessories, not otherwise provided for
-
- F—MECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
- F16—ENGINEERING ELEMENTS AND UNITS; GENERAL MEASURES FOR PRODUCING AND MAINTAINING EFFECTIVE FUNCTIONING OF MACHINES OR INSTALLATIONS; THERMAL INSULATION IN GENERAL
- F16L—PIPES; JOINTS OR FITTINGS FOR PIPES; SUPPORTS FOR PIPES, CABLES OR PROTECTIVE TUBING; MEANS FOR THERMAL INSULATION IN GENERAL
- F16L3/00—Supports for pipes, cables or protective tubing, e.g. hangers, holders, clamps, cleats, clips, brackets
- F16L3/14—Hangers in the form of bands or chains
-
- F—MECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
- F16—ENGINEERING ELEMENTS AND UNITS; GENERAL MEASURES FOR PRODUCING AND MAINTAINING EFFECTIVE FUNCTIONING OF MACHINES OR INSTALLATIONS; THERMAL INSULATION IN GENERAL
- F16L—PIPES; JOINTS OR FITTINGS FOR PIPES; SUPPORTS FOR PIPES, CABLES OR PROTECTIVE TUBING; MEANS FOR THERMAL INSULATION IN GENERAL
- F16L3/00—Supports for pipes, cables or protective tubing, e.g. hangers, holders, clamps, cleats, clips, brackets
- F16L3/26—Supports for pipes, cables or protective tubing, e.g. hangers, holders, clamps, cleats, clips, brackets specially adapted for supporting the pipes all along their length, e.g. pipe channels or ducts
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L12/40006—Architecture of a communication node
- H04L12/40026—Details regarding a bus guardian
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L12/40052—High-speed IEEE 1394 serial bus
- H04L12/40084—Bus arbitration
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L12/40143—Bus networks involving priority mechanisms
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/50—Queue scheduling
- H04L47/62—Queue scheduling characterised by scheduling criteria
- H04L47/625—Queue scheduling characterised by scheduling criteria for service slots or service orders
- H04L47/6275—Queue scheduling characterised by scheduling criteria for service slots or service orders based on priority
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L2012/40208—Bus networks characterized by the use of a particular bus standard
- H04L2012/40215—Controller Area Network CAN
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/50—Queue scheduling
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- General Engineering & Computer Science (AREA)
- Mechanical Engineering (AREA)
- Environmental Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biodiversity & Conservation Biology (AREA)
- Animal Husbandry (AREA)
- Chemical & Material Sciences (AREA)
- Combustion & Propulsion (AREA)
- Ocean & Marine Engineering (AREA)
- Small-Scale Networks (AREA)
- Supports For Pipes And Cables (AREA)
Abstract
消息产生模块产生消息,所述消息每一第一预定周期要传输到车辆的串行数据总线一次。队列管理器模块在所述消息添加到传输队列时重置计时值,且在满足以下条件时将消息选择性地添加到传输队列:传输队列中的消息数量小于第一预定值;计时值大于第一预定周期;以及(i)第一预定周期小于第二预定周期或(ii)第一预定周期大于第二预定周期且传输队列中的消息数量小于第二预定值。第二预定值小于第一预定值。通信控制模块将消息从传输队列选择性地传输到串行数据总线。
Description
相关申请的交叉引用
本申请要求于2011年6月28日提交的美国临时申请No. 61/501,973的权益。上述申请的公开内容在此作为参考全文引入。
技术领域
本发明涉及车辆通信,且更具体地涉及用于车辆的消息传输控制系统和方法。
背景技术
在此提供的背景说明是为了总体上介绍本发明背景的目的。当前所署名发明人的工作(在背景技术部分描述的程度上)和本描述中否则不足以作为申请时的现有技术的各方面,既不明显地也非隐含地被承认为与本发明相抵触的现有技术。
车辆包括分别控制各个车辆系统的各个控制模块。仅作为示例,发动机控制模块(ECM)控制车辆的发动机系统,变速器控制模块(TCM)控制车辆的变速器系统,等等。
第一控制模块可从传感器接收信号,而第二控制模块不从该传感器接收信号。第一控制模块可确定一参数,而第二控制模块不确定该参数。车辆的控制模块可经由一个或多个串行数据总线(例如,控制器局域网(CAN)总线)通信。控制模块可通信以例如共享由一个控制模块接收或确定但是未由一个或多个其他控制模块接收或确定的数据。
发明内容
一种用于车辆的系统,包括消息产生模块、队列管理器模块和通信控制模块。所述消息产生模块产生消息,所述消息每一第一预定周期要传输到车辆的串行数据总线一次。所述队列管理器模块在所述消息添加到传输队列时重置计时值,且在满足以下条件时将消息选择性地添加到传输队列:传输队列中的消息数量小于第一预定值;计时值大于第一预定周期;以及(i)第一预定周期小于第二预定周期或(ii)第一预定周期大于第二预定周期且传输队列中的消息数量小于第二预定值。第二预定值小于第一预定值。所述通信控制模块将消息从传输队列选择性地传输到串行数据总线。
在其他特征中,一种用于车辆的系统,包括消息产生模块、计时器模块、队列管理器模块和通信控制模块。所述消息产生模块产生消息,所述消息每一第一预定周期要传输到车辆的串行数据总线一次。所述计时器模块累增计时值。所述队列管理器模块在所述消息添加到传输队列时重置计时值。当传输队列中的消息数量小于预定值时,所述队列管理器模块基于以下步骤将消息选择性地添加到传输队列:计时值与第一预定周期的第一比较;以及第一预定周期与第二预定周期的第二比较。所述通信控制模块将消息从传输队列选择性地传输到串行数据总线。
一种用于车辆的方法,包括:产生消息,所述消息每一第一预定周期要传输到车辆的串行数据总线一次;在所述消息添加到传输队列时重置计时值;在满足以下条件时将消息选择性地添加到传输队列:传输队列中的消息数量小于第一预定值;计时值大于第一预定周期;以及(i)第一预定周期小于第二预定周期或(ii)第一预定周期大于第二预定周期且传输队列中的消息数量小于第二预定值。第二预定值小于第一预定值。所述方法还包括将消息从传输队列选择性地传输到串行数据总线。
方案1. 一种用于车辆的系统,包括:
消息产生模块,所述消息产生模块产生消息,所述消息每一第一预定周期要传输到车辆的串行数据总线一次;
队列管理器模块,所述队列管理器模块在所述消息添加到传输队列时重置计时值,且在满足以下条件时将消息选择性地添加到传输队列:
传输队列中的消息数量小于第一预定值;
计时值大于第一预定周期;以及
以下中的一个:
第一预定周期小于第二预定周期;和
第一预定周期大于第二预定周期且传输队列中的消息数量小于第二预定值,
其中,第二预定值小于第一预定值;以及
通信控制模块,所述通信控制模块将消息从传输队列选择性地传输到串行数据总线。
方案2. 根据方案1所述的系统,还包括第二消息产生模块,所述第二消息产生模块产生第二消息,所述第二消息每一第三预定周期要传输到串行数据总线一次,
其中,所述队列管理器模块基于第二计时值、传输队列中的消息数量、第一预定值、第二预定周期、第三预定周期和第二预定值而将第二消息选择性地添加到传输队列。
方案3. 根据方案2所述的系统,其中,所述队列管理器模块在满足以下条件时将第二消息添加到传输队列:
传输队列中的消息数量小于第一预定值;
第二计时值大于第三预定周期;以及
以下中的一个:
第三预定周期小于第二预定周期;以及
第三预定周期大于第二预定周期且传输队列中的消息数量小于第二预定值。
方案4. 根据方案3所述的系统,其中,第一和第三预定周期不同。
方案5. 根据方案3所述的系统,其中,第一和第三预定周期是第四预定周期的倍数。
方案6. 根据方案1所述的系统,其中,消息产生模块产生具有消息标识符的消息,所述消息标识符对于该消息是唯一的,以及
其中,所述队列管理器模块基于消息标识符来确定第一预定周期。
方案7. 根据方案6所述的系统,其中,所述队列管理器模块从由消息标识符索引的预定周期的映射来确定第一预定周期。
方案8. 根据方案1所述的系统,其中,当第一预定周期大于第二预定周期且传输队列中的消息数量大于第二预定值时,所述队列管理器模块选择性地抑制将消息添加到传输队列。
方案9. 根据方案1所述的系统,其中,当计时值小于第一预定周期时,所述队列管理器模块抑制将消息添加到传输队列。
方案10. 根据方案1所述的系统,其中,当传输队列中的消息数量大于或等于第一预定值时,所述队列管理器模块抑制将消息添加到传输队列。
方案11. 一种用于车辆的系统,包括:
消息产生模块,所述消息产生模块产生消息,所述消息每一第一预定周期要传输到车辆的串行数据总线一次;
计时器模块,所述计时器模块累增计时值;
队列管理器模块,所述队列管理器模块在所述消息添加到传输队列时重置计时值,当传输队列中的消息数量小于预定值时,所述队列管理器模块基于以下步骤将消息选择性地添加到传输队列:
计时值与第一预定周期的第一比较;以及
第一预定周期与第二预定周期的第二比较;和
通信控制模块,所述通信控制模块将消息从传输队列选择性地传输到串行数据总线。
方案12. 一种用于车辆的方法,包括:
产生消息,所述消息每一第一预定周期要传输到车辆的串行数据总线一次;
在所述消息添加到传输队列时重置计时值;
在满足以下条件时将消息选择性地添加到传输队列:
传输队列中的消息数量小于第一预定值;
计时值大于第一预定周期;以及
以下中的一个:
第一预定周期小于第二预定周期;和
第一预定周期大于第二预定周期且传输队列中的消息数量小于第二预定值,
其中,第二预定值小于第一预定值;以及
将消息从传输队列选择性地传输到串行数据总线。
方案13. 根据方案12所述的方法,还包括:
产生第二消息,所述第二消息每一第三预定周期要传输到串行数据总线一次;以及
基于第二计时值、传输队列中的消息数量、第一预定值、第二预定周期、第三预定周期和第二预定值而将第二消息选择性地添加到传输队列。
方案14. 根据方案13所述的方法,还包括:在满足以下条件时将第二消息添加到传输队列:
传输队列中的消息数量小于第一预定值;
第二计时值大于第三预定周期;以及
以下中的一个:
第三预定周期小于第二预定周期;以及
第三预定周期大于第二预定周期且传输队列中的消息数量小于第二预定值。
方案15. 根据方案14所述的方法,其中,第一和第三预定周期不同。
方案16. 根据方案14所述的方法,其中,第一和第三预定周期是第四预定周期的倍数。
方案17. 根据方案12所述的方法,还包括:
产生具有消息标识符的消息,所述消息标识符对于该消息是唯一的;以及
基于消息标识符来确定第一预定周期。
方案18. 根据方案12所述的方法,还包括:当第一预定周期大于第二预定周期且传输队列中的消息数量大于第二预定值时,选择性地抑制将消息添加到传输队列。
方案19. 根据方案12所述的方法,还包括:当计时值小于第一预定周期时,抑制将消息添加到传输队列。
方案20. 根据方案12所述的方法,还包括:当传输队列中的消息数量大于或等于第一预定值时,抑制将消息添加到传输队列。
从下文所提供的详细描述可清楚本发明的其他应用领域。应当理解,这些详细描述和特定示例仅仅旨在用于说明目的,而不旨在限制本发明的范围。
附图说明
通过详细描述和附图将更完整地理解本发明,其中:
图1是根据本发明的示例性车辆系统的功能框图;
图2是根据本发明的示例性发动机控制模块的功能框图;和
图3是图示根据本发明的将消息选择性地添加到传输队列的示例性方法的流程图。
具体实施方式
以下描述在本质上仅仅是说明性的,且绝不旨在限制本发明、其应用或者使用。为清楚起见,在附图中将使用相同的附图标记,以表示类似的元件。如本文使用的,短语“A、B和C中的至少一个”应当被理解为表示使用非排他逻辑“或”的逻辑(A或B或C)。应当理解,方法中的各步骤可在不改变本发明的原理的情况下以不同的顺序执行。
如本文所使用的,措辞“模块”可以指代以下项、是以下项的一部分、或者包括以下项:专用集成电路(ASIC);电子电路;组合逻辑电路;现场可编程门阵列(FPGA);执行代码的处理器(共享、专用或者群组);提供所述功能的其它合适部件;或者上述中的一些或全部的组合,例如在系统级芯片中。措辞“模块”可以包括存储由处理器执行的代码的存储器(共享、专用或者群组)。
如上使用的措辞“代码”可以包括软件、固件和/或微码,可指程序、例程、函数、类和/或对象。如上使用的措辞“共享”表示可使用单个(共享)处理器执行来自多个模块的一些或全部代码。另外,来自多个模块的一些或全部代码可由单个(共享)存储器存储。如上使用的措辞“群组”表示可使用一组处理器或一组执行引擎执行来自单个模块的一些或全部代码。例如,处理器的多个核和/或多个线程可被认为是执行引擎。在各个实施方式中,执行引擎可以跨过处理器、跨过多个处理器、以及跨过处于多个位置的处理器(例如,处于并行处理设置的多个服务器)成组。另外,来自单个模块的一些或全部代码可使用一组存储器来存储。
本文所述的设备和方法可通过由一个或多个处理器执行的一个或多个计算机程序来实施。计算机程序包括存储在非临时性有形计算机可读介质上的处理器可执行指令。计算机程序还可包括存储数据。非临时性有形计算机可读介质的非限制性示例为非易失性存储器、磁性存储器和光存储器。
车辆的控制模块产生多个消息。每个消息都要以预定周期传输到车辆的串行数据总线。仅作为示例,第一消息可在均由第一预定周期隔开的第一多次传输到串行数据总线。第二消息可在均由第二预定周期隔开的第二多次传输到串行数据总线,等等。所述预定周期中的一些可相同,所述预定周期中的一些可不同。因而,一些消息可能比其他消息更频繁地传输到串行数据总线。预定周期的长度可以例如基于消息内容和其他因素来设定。
控制模块将消息选择性地添加到传输队列。控制模块将传输队列中的消息选择性地传输到串行数据总线。在控制循环期间,控制模块确定是否将消息中的一个或多个添加到传输队列。
然而,在某些情况下,传输队列可能满了。控制模块可在传输队列满时跳过将一个或更多消息添加到传输队列。另一个控制模块可在控制模块在一周期内不将消息中的预定一个传输到串行数据总线时指示存在故障。
当传输队列未满时,根据本发明的控制模块基于消息多频繁地传输到串行数据总线来确定是否将消息添加到传输队列。当消息要比预定周期更频繁地传输到串行数据总线时,控制模块将该消息添加到传输队列。当消息要比预定周期更不频繁地传输到串行数据总线时,如果传输队列中的消息数量小于预定值,控制模块将该消息添加到传输队列。预定值小于或等于在传输队列满时传输队列中的消息数量。
现在参考图1,阐述了车辆的示例性分布式控制系统的功能框图。虽然显示和描述混合动力车辆,但是本发明还可应用于非混合动力车辆。发动机102燃烧空气/燃料混合物以产生驱动扭矩。发动机控制模块(ECM)106控制发动机102。
发动机102可将扭矩输出到变速器110。变速器控制模块(TCM)114控制变速器110的操作。仅作为示例,TCM 114可控制变速器110内的档位选择和一个或多个扭矩传递装置(例如,变矩器、一个或多个离合器等)。
变速器110可包括一个或多个电动机或电动机发电机单元(MGU)。仅作为示例,第一MGU(MGU-A)118和第二MGU(MGU-B)122可包括在图1的示例中。MGU可以在给定时间用作发电机或电动机。在用作发电机时,MGU将机械能转换为电能。电能可以例如用于经由功率控制装置130给蓄电池126充电。在用作电动机时,MGU产生扭矩,扭矩可用于例如补充或取代由发动机102输出的扭矩。在各个实施方式中,对每个MGU都可设置功率控制装置。
功率逆变器控制模块(PIM)134可控制MGU-A 118、 MGU-B 122和功率控制装置130。在各个实施方式中,PIM 134可称为变速器功率逆变器模块(TPIM)或牵引功率逆变器模块(TPIM)。PIM 134可以包括混合动力控制处理器(HCP)模块138、第一电动机控制处理器(MCP-A)模块142和第二电动机控制处理器(MCP-B)模块146。HCP模块138可产生用于MGU-A 118和 MGU-B 122的第一和第二扭矩请求。MCP-A模块142和MCP-B模块146分别基于第一和第二扭矩请求控制MGU-A 118和 MGU-B 122。
电子制动控制模块(EBCM)150可选择性地控制车辆的制动器154。用户接口模块(UIM)158将一个或多个驾驶员输入提供给控制器局域网(CAN)总线162。CAN总线162还可以称为汽车局域网总线。CAN总线162可以是串行数据总线。车辆的控制模块可经由CAN总线162彼此通信。
驾驶员输入可包括例如加速踏板位置(APP)166和一个或多个其他合适驾驶员输入。制动踏板位置(BPP)170可提供给EBCM 150。驻车、倒档、空档、驱动档杆(PRNDL)的位置174可提供给TCM 114。在各个实施方式中,PRNDL位置174还可以提供给PIM 134。点火状态178可提供给车身控制模块180。仅作为示例,点火状态178可通过驾驶员经由点火钥匙、按钮或开关输入。在给定时间,点火状态178可以是关闭、附件、运行或发动中的一个。
车辆可包括未示出的一个或多个附加控制模块,例如,底盘控制模块、蓄电池组控制模块等。在各个车辆中省去可所述控制模块中的一个或多个。控制模块可经由CAN总线162选择性地传输和接收数据。在各个实施方式中,两个或更多控制模块可经由一个或多个附加CAN总线(未示出)通信。
现在参考图2,阐述了ECM 106的示例性实施方式的功能框图。虽然本发明结合ECM 106讨论,但是本发明还可应用于将消息传输给CAN总线的车辆其他控制模块。
ECM 106可包括N个消息产生模块,其中,N是大于1的整数。仅作为示例,ECM 106可包括第一消息产生模块204、第二消息产生模块208、…和第N个消息产生模块212。
N个消息产生模块分别产生要传输到CAN总线162的N个消息。第一消息产生模块204基于第一组信号220产生第一消息216。第一消息产生模块204使用用于第一消息216的第一预定消息标识符(消息ID)产生第一消息216。
第二消息产生模块208基于第二组信号228产生第二消息224。第二消息产生模块208使用用于第二消息224的第二预定消息ID产生第二消息224。第N个消息产生模块212基于第N组信号236产生第N个消息232。第N个消息产生模块212使用用于第N个消息232的第N个预定消息ID产生第N个消息232。第一、第二、…和第N个预定消息ID不同。
N个消息中的每个在每一预定周期都要传输到CAN总线162一次。仅作为示例,第一消息216每一第一预定周期要传输到CAN总线162一次。第二消息224每一第二预定周期要传输到CAN总线162。第N个消息232每一第N个预定周期要传输到CAN总线162。
第一、第二、…和第N个预定周期中的一个或多个可以相同,第一、第二、…和第N个预定周期中的一个或多个可以不同。第一、第二、…和第N个预定周期可以均是控制循环周期的倍数。仅作为示例,在各个实施方式中,控制循环周期可以是25毫秒(ms)。25 ms控制循环周期的倍数包括25 ms、50 ms、75 ms、100 ms、250 ms、500 ms、1000 ms和25 ms的其他倍数。
队列管理器模块240在传输队列未满时将N个消息中的一个或多个选择性地添加到传输队列模块244的传输队列。仅作为示例,传输队列可包括先进先出(FIFO)缓冲器或其他合适类型的传输队列。
传输队列模块244确定当前存储在传输队列中的消息数量248且将消息数量248提供给队列管理器模块240。例如,当消息数量248大于或等于第一预定值时,传输队列可以是满的。例如,当消息数量248小于第一预定值时,传输队列可以是未满的。第一预定值可以是大于1的整数。仅作为示例,在各个实施方式中,第一预定值可以是大约20。
在每个控制循环周期期间,队列管理器模块240评估是否将N个消息添加到传输队列。队列管理器模块240以预定顺序评估是否将N个消息添加到传输队列。仅作为示例,预定顺序可以是第一消息216、第二消息224、…和第N个消息232。队列管理器模块240可在下一个控制循环期间重复该预定顺序。
N个计时器分别与N个消息相关联。仅作为示例,第一计时器模块252与第一消息216相关联。第一计时器模块252可包括在时间经过时累增第一计时值256的第一计时器。第二计时器模块260与第二消息224相关联。第二计时器模块260可包括在时间经过时累增第二计时值264的第二计时器。第N个计时器模块268与第N个消息232相关联。第N个计时器模块268可包括在时间经过时累增第N个计时值272的第N个计时器。
队列管理器模块240在消息添加到传输队列时重置计时值。由此,N个计时值分别跟踪自N个消息上一次添加到传输队列以来已经经过的周期。仅作为示例,第一计时值256跟踪自第一消息216上一次添加到传输队列以来的周期。
队列管理器模块240基于传输队列是否满、消息的预定周期、和消息的计时值来评估是否将消息添加到传输队列。队列管理器模块240可基于消息的消息ID来确定消息的预定周期。仅作为示例,队列管理器模块240可以根据由消息ID索引的预定周期的映射来确定消息的预定周期。虽然在下文提供是否将第一消息216添加到传输队列的决策作为示例,但是队列管理器模块240可以类似地或者相同地确定是否添加N个消息中的其他消息。
队列管理器模块240可基于第一计时值256、第一预定周期、以及传输队列是否满来确定是否将第一消息216添加到传输队列。队列管理器模块240可确定第一计时值256是否大于第一预定周期。如果第一计时值256小于第一预定周期,那么队列管理器模块240可决定不将第一消息216添加到传输队列。如果第一计时值256大于第一预定周期,那么队列管理器模块240可确定传输队列是否满。
如果传输队列满,那么队列管理器模块240可决定不将第一消息216添加到传输队列。如果传输队列未满,那么队列管理器模块240可确定第一预定周期是否小于或等于预定高频率消息周期。仅作为示例,预定高频率消息周期可以是控制循环周期的大约1倍、2倍、3倍或4倍、或者大于N个预定周期中的最小一个且小于N个预定周期中的最大一个的其他合适值。
如果第一预定周期小于或等于预定高频率消息周期,那么队列管理器模块240可将第一消息216添加到传输队列。如果第一预定周期大于预定高频率消息周期,那么队列管理器模块240可基于传输队列中的消息数量248选择性地将第一消息216添加到传输队列。仅作为示例,当消息数量248小于第二预定值时,队列管理器模块240可将第一消息216添加到传输队列。当消息数量248大于或等于第二预定值时,队列管理器模块240可决定不将第一消息216添加到传输队列。
第二预定值是大于零且小于第一预定值的整数。第二预定值可以例如设定在第一预定值的大约一半和大约四分之三之间(包括)。第二预定值还大于N个预定周期中的小于或等于预定高频率消息周期的数量。
总之,当满足以下条件时,队列管理器模块240可在控制循环期间将消息添加到传输队列:
(i)消息的计时值大于消息的预定周期;
(ii)传输队列未满(例如,消息数量248小于第一预定值);以及
(iii)以下中的至少一个:
(a)消息的预定周期小于或等于预定高频率消息周期;以及
(b)消息数量248小于第二预定值。
否则,队列管理器模块240可在控制循环期间抑制将消息添加到传输队列。
通信控制模块276经由输入/输出(I/O)接口280将消息从传输队列选择性地传输到CAN总线162。当消息传输到CAN总线162时,消息从传输队列移除。通信控制模块276可在通信控制模块276尝试将一个或多个消息从传输队列传输到CAN总线162的同时判定一个或多个其他控制模块何时试图将消息传输到CAN总线162。
现在参考图3,阐述了图示将N个消息中的消息选择性地添加到传输队列的示例性方法的流程图。控制方法可在304开始,其中,控制方法设定i=1,i可以是大于零且小于或等于N的整数。
在308,控制方法接收与第i个消息(N个消息中的第i个消息)有关的第i个计时值和第i个预定周期。控制方法可例如基于第i个消息的消息ID确定第i个预定周期。在312,控制方法确定第i个计时值是否大于或等于第i个预定周期。如果为真,那么控制方法继续316;如果为假,那么控制方法转到336,在下文详细讨论。
在316,控制方法确定当前传输队列中的消息数量248是否等于第一预定值。如果为真,那么传输队列满,且控制方法转到336。如果为假,那么传输队列未满,且控制方法继续320。在320,控制方法可确定第i个预定周期是否小于或等于预定高频率消息周期。如果为真,那么控制方法继续328,在下文详细讨论。如果为假,那么控制方法继续324。
在324,控制方法确定消息数量248是否小于第二预定值。如果为真,那么控制方法继续328;如果为假,那么控制方法转到336。第二预定值是小于或等于第一预定值的整数。
在328,控制方法将第i个消息放置(添加)到传输队列中。在332,控制方法重置第i个计时值为零,且控制方法继续336。随着时间经过,第i个计时器累增第i个计时值,从而第i个计时值跟踪自控制方法上一次将第i个消息添加到传输队列以来已经经过的周期。
在336,控制方法确定i是否小于N。如果为真,那么N个消息中的至少一个在当前控制循环期间还没有评估以便添加到传输队列,从而控制方法在340累增i(i=i+1),且控制方法返回308。如果为假,那么N个消息中的每一个在当前控制循环期间已经被评估以便添加到传输队列,且控制方法可结束。在下一个控制循环期间,控制方法可再次以304开始。
由于消息的计时值仅仅在消息添加到传输队列时重置,因而如果消息例如由于传输队列满或者消息数量248大于第二预定值而在当前控制循环期间未添加,那么消息可在下一个或未来控制循环期间添加。允许消息在下一个或未来控制循环期间添加可减少一直在传输队列中的消息数量。当消息在下一个或未来控制循环期间添加时,消息将从先前已经添加的控制循环偏移。消息偏移可有助于避免遇到传输队列满或者高时消息要在未来添加到传输队列的情形。允许消息在下一个或未来控制循环期间添加还可减少传输所述传输队列中的消息所需的CAN总线162部分(即,带宽)。
本发明的广泛教导可以以多种形式实施。因此,尽管本发明包括特定示例,但是本发明的实际范围不应当如此限制,因为通过对附图、说明书和所附权利要求的研究,其它修改对于技术人员是显而易见的。
Claims (20)
1.一种用于车辆的系统,包括:
第一消息产生模块,所述第一消息产生模块产生第一消息,所述第一消息每一第一预定周期要传输到车辆的串行数据总线一次;
队列管理器模块,所述队列管理器模块在所述第一消息添加到传输队列时重置第一计时值,且在满足以下条件时将第一消息选择性地添加到传输队列:
传输队列中的消息数量小于第一预定值;
第一计时值大于第一预定周期;以及
以下中的一个:
第一预定周期小于第二预定周期;和
第一预定周期大于第二预定周期且传输队列中的消息数量小于第二预定值,
其中,第二预定值小于第一预定值;以及
通信控制模块,所述通信控制模块将消息从传输队列选择性地传输到串行数据总线。
2.根据权利要求1所述的系统,还包括第二消息产生模块,所述第二消息产生模块产生第二消息,所述第二消息每一第三预定周期要传输到串行数据总线一次,
其中,所述队列管理器模块基于第二计时值、传输队列中的消息数量、第一预定值、第二预定周期、第三预定周期和第二预定值而将第二消息选择性地添加到传输队列。
3.根据权利要求2所述的系统,其中,所述队列管理器模块在满足以下条件时将第二消息添加到传输队列:
传输队列中的消息数量小于第一预定值;
第二计时值大于第三预定周期;以及
以下中的一个:
第三预定周期小于第二预定周期;以及
第三预定周期大于第二预定周期且传输队列中的消息数量小于第二预定值。
4.根据权利要求3所述的系统,其中,第一和第三预定周期不同。
5.根据权利要求3所述的系统,其中,第一和第三预定周期是第四预定周期的倍数。
6.根据权利要求1所述的系统,其中,消息产生模块产生具有消息标识符的消息,所述消息标识符对于该消息是唯一的,以及
其中,所述队列管理器模块基于消息标识符来确定第一预定周期。
7.根据权利要求6所述的系统,其中,所述队列管理器模块从由消息标识符索引的预定周期的映射来确定第一预定周期。
8.根据权利要求1所述的系统,其中,当第一预定周期大于第二预定周期且传输队列中的消息数量大于第二预定值时,所述队列管理器模块选择性地抑制将消息添加到传输队列。
9.根据权利要求1所述的系统,其中,当第一计时值小于第一预定周期时,所述队列管理器模块抑制将第一消息添加到传输队列。
10.根据权利要求1所述的系统,其中,当传输队列中的消息数量大于或等于第一预定值时,所述队列管理器模块抑制将消息添加到传输队列。
11.根据权利要求1所述的系统,还包括:
计时器模块,所述计时器模块累增计时值。
12.一种用于车辆的方法,包括:
产生第一消息,所述第一消息每一第一预定周期要传输到车辆的串行数据总线一次;
在所述第一消息添加到传输队列时重置第一计时值;
在满足以下条件时将第一消息选择性地添加到传输队列:
传输队列中的消息数量小于第一预定值;
第一计时值大于第一预定周期;以及
以下中的一个:
第一预定周期小于第二预定周期;和
第一预定周期大于第二预定周期且传输队列中的消息数量小于第二预定值,
其中,第二预定值小于第一预定值;以及
将消息从传输队列选择性地传输到串行数据总线。
13.根据权利要求12所述的方法,还包括:
产生第二消息,所述第二消息每一第三预定周期要传输到串行数据总线一次;以及
基于第二计时值、传输队列中的消息数量、第一预定值、第二预定周期、第三预定周期和第二预定值而将第二消息选择性地添加到传输队列。
14.根据权利要求13所述的方法,还包括:在满足以下条件时将第二消息添加到传输队列:
传输队列中的消息数量小于第一预定值;
第二计时值大于第三预定周期;以及
以下中的一个:
第三预定周期小于第二预定周期;以及
第三预定周期大于第二预定周期且传输队列中的消息数量小于第二预定值。
15.根据权利要求14所述的方法,其中,第一和第三预定周期不同。
16.根据权利要求14所述的方法,其中,第一和第三预定周期是第四预定周期的倍数。
17.根据权利要求12所述的方法,还包括:
产生具有消息标识符的消息,所述消息标识符对于该消息是唯一的;以及
基于消息标识符来确定第一预定周期。
18.根据权利要求12所述的方法,还包括:当第一预定周期大于第二预定周期且传输队列中的消息数量大于第二预定值时,选择性地抑制将消息添加到传输队列。
19.根据权利要求12所述的方法,还包括:当第一计时值小于第一预定周期时,抑制将第一消息添加到传输队列。
20.根据权利要求12所述的方法,还包括:当传输队列中的消息数量大于或等于第一预定值时,抑制将消息添加到传输队列。
Applications Claiming Priority (4)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US201161501973P | 2011-06-28 | 2011-06-28 | |
| US61/501973 | 2011-06-28 | ||
| US13/232,269 US9002533B2 (en) | 2011-06-28 | 2011-09-14 | Message transmission control systems and methods |
| US13/232269 | 2011-09-14 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| CN102854850A CN102854850A (zh) | 2013-01-02 |
| CN102854850B true CN102854850B (zh) | 2015-08-19 |
Family
ID=47355347
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN201210217225.3A Expired - Fee Related CN102854850B (zh) | 2011-06-28 | 2012-06-28 | 消息传输控制系统和方法 |
Country Status (3)
| Country | Link |
|---|---|
| US (2) | US9002533B2 (zh) |
| CN (1) | CN102854850B (zh) |
| DE (1) | DE102012210722B4 (zh) |
Families Citing this family (9)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US9232778B1 (en) * | 2011-08-27 | 2016-01-12 | Thomas Joseph De Sernia | Gimbal cover and method of use |
| EP3825886B1 (en) | 2012-03-29 | 2024-10-02 | Arilou Information Security Technologies Ltd. | Protecting a vehicle electronic system |
| KR102181650B1 (ko) * | 2013-10-04 | 2020-11-23 | 엘지전자 주식회사 | 복수 개의 압축기를 구동하기 위한 인버터 모듈 |
| US20150115111A1 (en) * | 2013-10-28 | 2015-04-30 | Tim Smith | Hose Support Device |
| DE102014210505A1 (de) * | 2014-06-03 | 2015-12-03 | Robert Bosch Gmbh | Übertragungseinheit mit Prüffunktion |
| DE102014210698A1 (de) * | 2014-06-05 | 2015-12-17 | Schaeffler Technologies AG & Co. KG | Terminierung eines Bussystems, vorzugsweise für einen Einsatz in einem Doppelkupplungsgetriebe |
| US11596136B2 (en) * | 2018-11-06 | 2023-03-07 | II Thomas Dwight Kurz | Reactive fishing rod holder |
| CN109450818B (zh) * | 2018-12-25 | 2022-07-29 | 中国移动通信集团江苏有限公司 | 物联网信息下发的方法、装置、设备和介质 |
| US11490608B1 (en) * | 2021-10-07 | 2022-11-08 | Ethan Klawansky | Gimbal for a fishing rod butt |
Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6665601B1 (en) * | 1998-12-22 | 2003-12-16 | Case Corporation | Communications system for managing messages across a vehicle data bus |
| CN1790201A (zh) * | 2004-12-15 | 2006-06-21 | 通用汽车公司 | 车辆的双处理器监控系统 |
Family Cites Families (18)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US1787106A (en) * | 1927-03-26 | 1930-12-30 | Glazener Carolyn Mcfall | Cord hanger |
| US2984445A (en) * | 1959-06-29 | 1961-05-16 | Berg Airlectro Products Compan | Movable hose support |
| US3312434A (en) * | 1965-04-28 | 1967-04-04 | Prosit Service Corp | Cord holder |
| US4881163A (en) * | 1986-09-19 | 1989-11-14 | Amdahl Corporation | Computer system architecture employing cache data line move-out queue buffer |
| US4823723A (en) * | 1988-01-20 | 1989-04-25 | Brooks Kenneth J | Trolling rig for fishing boats |
| US20040010349A1 (en) * | 2002-07-12 | 2004-01-15 | Larry Perez | Device and method for monitoring a genset using a controller area network bus interface |
| US7895273B1 (en) * | 2003-01-23 | 2011-02-22 | Sprint Spectrum L.P. | System and method for sorting instant messages |
| US8271681B2 (en) * | 2004-02-25 | 2012-09-18 | Teamon Systems, Inc. | Communications system using hierarchical queue structure for email message delivery and related methods |
| US7606154B1 (en) * | 2004-04-01 | 2009-10-20 | Juniper Networks, Inc. | Fair bandwidth allocation based on configurable service classes |
| GB0425309D0 (en) * | 2004-11-17 | 2004-12-15 | Ibm | Deleting expired items in queue data structure |
| JP4648833B2 (ja) * | 2005-12-28 | 2011-03-09 | 富士通株式会社 | 帯域管理装置 |
| JP4926648B2 (ja) * | 2006-10-27 | 2012-05-09 | 富士通セミコンダクター株式会社 | 車載ゲートウェイ装置 |
| US8111707B2 (en) * | 2007-12-20 | 2012-02-07 | Packeteer, Inc. | Compression mechanisms for control plane—data plane processing architectures |
| GB0709527D0 (en) * | 2007-05-18 | 2007-06-27 | Surfcontrol Plc | Electronic messaging system, message processing apparatus and message processing method |
| US20090157919A1 (en) * | 2007-12-18 | 2009-06-18 | Plx Technology, Inc. | Read control in a computer i/o interconnect |
| CN101394405B (zh) * | 2008-10-22 | 2012-08-08 | 金蝶软件(中国)有限公司 | 一种数据请求处理的方法和装置 |
| DE102009015197A1 (de) * | 2009-03-31 | 2010-10-14 | Volkswagen Ag | Steuergerät für ein Fahrzeugnetzwerk und Verfahren zum Betreiben eines Fahrzeugnetzwerkes |
| CN102195885A (zh) * | 2011-05-27 | 2011-09-21 | 成都市华为赛门铁克科技有限公司 | 报文处理方法及装置 |
-
2011
- 2011-09-14 US US13/232,269 patent/US9002533B2/en not_active Expired - Fee Related
-
2012
- 2012-06-25 DE DE201210210722 patent/DE102012210722B4/de not_active Expired - Fee Related
- 2012-06-28 CN CN201210217225.3A patent/CN102854850B/zh not_active Expired - Fee Related
-
2014
- 2014-08-21 US US14/464,833 patent/US20140366427A1/en not_active Abandoned
Patent Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6665601B1 (en) * | 1998-12-22 | 2003-12-16 | Case Corporation | Communications system for managing messages across a vehicle data bus |
| CN1790201A (zh) * | 2004-12-15 | 2006-06-21 | 通用汽车公司 | 车辆的双处理器监控系统 |
Also Published As
| Publication number | Publication date |
|---|---|
| US9002533B2 (en) | 2015-04-07 |
| US20140366427A1 (en) | 2014-12-18 |
| US20130006441A1 (en) | 2013-01-03 |
| DE102012210722A1 (de) | 2013-01-03 |
| CN102854850A (zh) | 2013-01-02 |
| DE102012210722B4 (de) | 2015-05-13 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN102854850A (zh) | 消息传输控制系统和方法 | |
| CN104627172B (zh) | 混合动力车辆及其控制方法 | |
| US8617028B2 (en) | System for managing torque in a vehicle driveline coupled to an internal combustion engine and an electric motor | |
| US9114806B2 (en) | System and method for controlling battery power based on predicted battery energy usage | |
| US12115970B2 (en) | Powertrain controls for an electric motor and an automated manual transmission | |
| CN105460001A (zh) | 电动汽车的四轮驱动系统的扭矩分配方法和装置 | |
| US9014892B2 (en) | Control system and method for hybrid vehicle | |
| CN103863304A (zh) | 用于控制混合动力车的方法和系统 | |
| CN105313881A (zh) | 用于控制混合动力车的速度变化的方法和装置 | |
| CN106004459B (zh) | 用于控制车辆中的再生制动的系统和方法 | |
| CN114962624B (zh) | 分动器控制方法、装置、存储介质、电子设备及车辆 | |
| CA2991379A1 (en) | Method for the anticipatory starting of a heat engine | |
| CN107487321B (zh) | 混合动力汽车的离合器控制方法及装置 | |
| CN105730434B (zh) | 用于控制混合动力车的充电的系统和方法 | |
| CN103204155B (zh) | 一种汽车混合动力系统换挡模式的控制方法和控制装置 | |
| CN108569293B (zh) | 用于将所需扭矩分流的方法 | |
| CN114954008B (zh) | 车辆充电扭矩的控制方法、装置、车辆及存储介质 | |
| CN115789239A (zh) | 一种车辆档位硬止点的位置调整方法、装置及车载控制器 | |
| CN113135176B (zh) | 混合动力车辆的模式切换控制方法、装置和车辆 | |
| US12304453B2 (en) | Shift control method for a hybrid vehicle | |
| EP3383715B1 (en) | A method and system for gear shifting in a hybrid powertrain | |
| CN109625079A (zh) | 汽车电动助力转向系统(eps)的控制方法及控制器 | |
| CN117261861A (zh) | 车辆预调速控制的方法、装置、车辆及存储介质 | |
| US12358511B2 (en) | Vehicle engine torque reduction system | |
| CN119872686B (zh) | 基于多种驱动形式的转向系统控制方法、装置及车辆 |
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 | ||
| CF01 | Termination of patent right due to non-payment of annual fee | ||
| CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20150819 |