CN108880965A - 一种用于自动驾驶汽车的动力can网关及其实现方法 - Google Patents

一种用于自动驾驶汽车的动力can网关及其实现方法 Download PDF

Info

Publication number
CN108880965A
CN108880965A CN201810509794.2A CN201810509794A CN108880965A CN 108880965 A CN108880965 A CN 108880965A CN 201810509794 A CN201810509794 A CN 201810509794A CN 108880965 A CN108880965 A CN 108880965A
Authority
CN
China
Prior art keywords
node
data
gateway
ram
cpu
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.)
Granted
Application number
CN201810509794.2A
Other languages
English (en)
Other versions
CN108880965B (zh
Inventor
秦民
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.)
Individual
Original Assignee
Individual
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 Individual filed Critical Individual
Priority to CN201810509794.2A priority Critical patent/CN108880965B/zh
Publication of CN108880965A publication Critical patent/CN108880965A/zh
Application granted granted Critical
Publication of CN108880965B publication Critical patent/CN108880965B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • 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/40052High-speed IEEE 1394 serial bus
    • H04L12/40097Interconnection with other networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/12Avoiding congestion; Recovering from congestion
    • 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
    • H04L2012/40208Bus networks characterized by the use of a particular bus standard
    • H04L2012/40215Controller Area Network CAN
    • 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
    • H04L2012/4026Bus for use in automation systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Small-Scale Networks (AREA)

Abstract

一种用于自动驾驶汽车的动力CAN网关及其实现方法,涉及自动驾驶通信领域,本发明的一种用于自动驾驶汽车的动力CAN网关包括:8路CAN物理收发模块,8路CAN节点,8个高速处理CPU通过防冲突方式共享访问一片存储区域即多口RAM,PII过程影像区,Cut‑Through方式,并通过先打通通信链路后,建立和实时通道链路,最后网关以太网接口通过通信序列和驾驶脑建立数据链接,并发送制定格式的以太网报文,之后网关并监控和驾驶脑之间的数据通信实时性,一旦不满足条件发送报警。本发明的网关及实现方法具有较高的准确性,能够保证数据传输的唯一性和排他性,能够提高自动驾驶汽车的安全性和可靠性,提高安全系数。

Description

一种用于自动驾驶汽车的动力CAN网关及其实现方法
技术领域
本发明涉及自动驾驶通信技术领域,具体涉及一种用于自动驾驶汽车的动力CAN网关及其实现方法。
背景技术
传统汽车上,通过CAN总线传输各种车辆传感器数据和控制信号,通常分为动力CAN、舒适CAN、信息CAN、娱乐CAN等。这些CAN通信方式遵循不同的电气标准和车企的通信协议。这些CAN种类繁多但是通信速率限制在1Mbps以下,通常为500kbps。近些年出现一些速率较高的底盘CAN通信系统如FlexRay速率可达5Mbps,但是对于新一代自动驾驶车辆来说5Mbps数据带宽仍显得捉襟见肘,原因是驾驶脑对数据采集频率要求很高,各种车身传感器不仅需要高速大数据采集,并且要求所有数据同步采集,高实时性数据采集,才能达到多种传感器数据融合同步的较好效果。类似的这种并行同步采集传感器如、力矩、轮速、毫米波雷达、激光雷达、矩阵摄像头等。
发明内容
为了解决现有技术存在的问题,本发明提供一种用于自动驾驶汽车的动力CAN网关及其实现方法。
本发明为解决技术问题所采用的技术方案如下:
本发明的一种用于自动驾驶汽车的动力CAN网关,包括:8路CAN物理收发模块,8路CAN节点,8个高速处理CPU通过防冲突方式共享访问一片存储区域即多口RAM,PII过程影像区,Cut-Through方式,并通过先打通通信链路后,建立和实时通道链路,最后网关以太网接口通过通信序列和驾驶脑建立数据链接,并发送制定格式的以太网报文,之后网关并监控和驾驶脑之间的数据通信实时性,一旦不满足条件发送报警。
进一步的,8路CAN物理层收发模块为低速或高速,支持协议如下:SAE J1939-11、SAE J1939-12、SAE J2284、SAE J24111、NMEA-2000;支持的波特率如下:33.3k、62.5k、83.3k、125k、250k、500k、1M;通信介质为屏蔽或非屏蔽双绞线;低速类CAN物理层收发模块支持车载灯光类、电动窗、门锁、电动椅、遥控门锁、电子仪表、驾驶信息、自动空调、故障诊断;高速类CAN物理层收发模块支持发动机控制、变速器控制、刹车控制、悬挂控制、ABS。
进一步的,8路CAN节点分别通过8路CAN物理层收发模块与车辆自身的CAN单元相连接,8路CAN节点的数据通过后端对应的8个高速处理CPU采集后分别存储到连续的一片存储区域即多口RAM中,在多口RAM的末端存在一个隐形的容量大小完全一致、4倍读写速度的PII过程映像区,该PII过程映像区实现的功能在单个千兆以太网数据访问之前通过ENT状态机锁存多口RAM中所有数据,这些数据保证是最后一次多口RAM未被CPU读写访问之后的状态,若千兆以太网访问瞬间,多口RAM区处于某一CPU读写访问状态,则ENT状态机锁存的PII过程影像区数据不会发生改变,直到此次CPU访问结束。
进一步的,所述CAN物理层收发模块采用的核心芯片是NXP公司的PCA82C250。
本发明的一种用于自动驾驶汽车的动力CAN网关的实现方法,包括以下步骤:
步骤一、一种轿车包含如下6种车身CAN单元,这些电源分别引出对应CAN总线接口且包含TVS、EBD总线保护模块:
6种车身CAN单元分别为:
(1)Engine单元,通信速率500kbps;
All Kinds Sensor
EPS
ESP
ABS
SAS
ETM
ECM
(2)Climate Control单元,通信速率19.2kbps;
A Motor control
B Center Unit
(3)Cluster单元,通信速率125kbps;
A Cluster control
B Wiper control
C Winker control
D Car audio
E Light control
F Column switch
G Automobile phone
(4)Seat单元,通信速率19.2kbps;
A Motor control
B Passenger detetion
C Switch control
(5)Door单元,通信速率9.6kbps;
A Side mirror
B Door lock
C Power window
D Door switch
(6)Roof单元;
A Rain sensor
B Sunroof
其中以总线型拓扑连接的单元是Door单元、Roof单元和Seat单元;
其中以星型拓扑连接单元是Engine单元;
其中以树形拓扑连接的单元是Climate Control单元和Cluster单元;
步骤二、A网关的CAN节点1通过CAN物理层收发模块和Climate Control单元联接在一起;
B网关的CAN节点2通过CAN物理层收发模块和Cluster单元联接在一起;
C网关的CAN节点3通过CAN物理层收发模块和Engine单元联接在一起;
D网关的CAN节点4通过CAN物理层收发模块和Seat单元联接在一起;
E网关的CAN节点5通过CAN物理层收发模块和Door单元联接在一起;
F网关的CAN节点6通过CAN物理层收发模块和Roof单元联接在一起;
步骤三、将CAN节点1,CAN节点2,CAN节点3,CAN节点4,CAN节点5,CAN节点6设置成2个独立域:域A和域B,其中CAN节点1、CAN节点2、CAN节点3在域A下,CAN节点4、CAN节点5、CAN节点6在域B下;
通过网关ENET接口配置,接收的EPS转向控制CAN信息可同步转发给CAN节点2Center Unit上和CAN节点3Light control上。其中CAN节点1设置为广播节点,在域A中,CAN节点1总线的数据被CAN节点2、CAN3节点和CAN节点4监听,而无需通过ACK字段确认其数据,而CAN节点2、CAN节点3、CAN节点4的数据不会被CAN节点1监听到,相当于单向传输;CAN节点4既是域A的监听节点,又有是域B的发送节点;
步骤四、CAN节点1、CAN节点2、CAN节点3、CAN节点4、CAN节点5、CAN节点6、CAN节点7、CAN节点8的数据通过后端对应的高速处理CPU采集后分别存储到连续的一片存储区域中,CAN节点1对应CPU1,CPU1对应存储区1,以此类推;多个CPU对多口RAM的访问方式是串行多口RAM方式,在一个网关时钟周期1ns只有一个CPU可访问多口RAM区,数据存储带宽64位,单次1ns可读写64字节的多口RAM数据;当所有CPU读取完数据后,会把OE信号置高TTL电平,多口RAM会释放对应请求,把所有CPU输入信号RDY置为TTL高电平,此时8个CPU都会知晓多口RAM可读取并写入数据,此时8个CPU能够随时写入或读取数据,在写入过程中若2个或多个CPU同时申请访问多口RAM及CPU的输出引脚OE同时为低电平时,此时多口RAM会根据已经设定的CPU优先级设定访问次序,及在同一时间多口RAM只会给8个CPU的其中唯一的一个最高优先级的CPU输出RDY为TTL低的信号,以保证冯诺伊曼串行数据访问的排他性原则;
步骤五、在多口RAM的末端,存在一个隐形的容量大小完全一致、4倍读写速度的PII过程映像区,该影像区实现的功能在单个千兆以太网,数据访问之前通过ENT状态机锁存多口RAM中所有数据,这些数据保证是最后一次多口RAM未被CPU读写访问之后的状态,若千兆以太网访问瞬间,多口RAM区处于某一CPU读写访问状态,则ENT状态机锁存的PII过程影像区数据不会发生改变,直到此次CPU访问结束;若千兆以太网对PII过程影像区进行影像写入数据操作,那么ENT状态机,会待到单时钟周期刷新完毕后,回写数据到多口RAM,保证单时钟周期数据的唯一性;
步骤六、ENT状态机除实现过程影像数据外,还会产生以太网通信的实时控制以便和驾驶脑进行实时通信;
千兆以太网通信方式采用CSMA/CD方式,同时采用实时性较高的PROFINET协议,要求驾驶脑的处理系统支持PROFINET协议,且与之连接的交换机不但要支持PROFINET协议,且需要工作在CUT-Through刺穿模式,且交换机端到端传输延时小于4us;
步骤七、与驾驶脑通信之前,首先设定RT循环时间为2ms,整个通信过程采用RTIRT混合传输,单报文帧最长5000个字节,所有网关与驾驶脑通信;
步骤八、网关与驾驶脑整个通信链路建立过程如下:
1、识别驾驶脑设备名称;
2、解析IP地址;
3、设置IP地址;
4、建立连接关系;
5、写入数据记录;
6、参数化结束;
7、应用准备好;
步骤九、建立好与驾驶脑的链路后,网关与驾驶脑需要确定准确的时间间隔,用以发送实时循环数据;
步骤十、驾驶脑给网关发送数据时,网关会启动一个硬件看门狗监视器,用以监控实时通信的可靠性。
进一步的,步骤四中,每个存储区域的大小可独立设定,但总的大小不能超过16MBYTES RAM最大容量限制,所有存储区采用FIFO存储方式,每个CPU的数据都会循坏写入缓冲区中,当数据超过RAM对应CAN节点存储区域最大容量和地址空间时,立即覆盖最老的数据。
进一步的,步骤七中,所有网关与驾驶脑通信,遵循以下数据通信规则和步骤:
(1)链路层握手,首先打通链路通道;
(2)网络层握手,打通标准通道通道;
(3)通过标准通道,发送实时通道建立请求,建立实时通道。
进一步的,步骤九中,单次传输最大支持150个RT报文或总长度不大于5000字节;数据格式如下:数据字节40~4440,不满40字节补零。
进一步的,步骤九中,时间间隔实际根据传输的RT、ART、NRT三种实时数据长度来确定,一旦建立信任关系,大小相等的时间段SendClock不会改变。
进一步的,步骤十中,每次千兆以太网的通信数据都会被计算本次和上一次的通信时间间隔,一旦超时,且超过单位时间内最大设定次数时,网关启动报警程序,通过CAN总线通知CAN节点关键安全设备,以便触发安全链路,产生稳定的安全驾驶措施和动作。
本发明的有益效果是:
本发明的一种用于自动驾驶汽车的动力CAN网关由8路CAN物理收发模块,8路CAN节点,8个高速处理CPU通过防冲突方式共享访问一片RAM区,PII过程影像区,Cut-Through方式,并通过先打通通信链路后,建立和实时通道链路。最后网关以太网接口通过特殊通信序列和驾驶脑建立数据链接,并发送制定格式的以太网报文,之后网关并监控和驾驶脑之间的数据通信实时性,一旦不满足条件发送报警。
本发明的网关及实现方法具有较高的准确性,能够保证数据传输的唯一性和排他性,能够提高自动驾驶汽车的安全性和可靠性,提高安全系数。
附图说明
图1是网关简述功能框图。
图2是CAN节点之间拓扑关系。
图3是CAN节点和CPU和多口RAM之间的拓扑关系。
图4是多口RAM和PII过程影像区和千兆以太网之间的关系图。
图5是Cut-Through和Store&Forward关系对比图。
图6是通信链路建立逻辑图。
图7是网关以太网接口和驾驶脑之间通信关系图。
图8是网关和以太网之间通信数据包。
图9是驾驶脑和网关对通信数据可靠性监控图。
具体实施方式
以下结合附图对本发明作进一步详细说明。
如图1所示,本发明的一种用于自动驾驶汽车的动力CAN网关(以下简称网关),包含如下结构:(1)8路低速或高速CAN物理层收发模块,支持协议如下:SAE J1939-11、SAEJ1939-12、SAE J2284、SAE J24111、NMEA-2000。支持的波特率如下:33.3k、62.5k、83.3k、125k、250k、500k、1M。通信介质为屏蔽或非屏蔽双绞线。低速类CAN物理层收发模块支持车载灯光类、电动窗、门锁、电动椅、遥控门锁、电子仪表、驾驶信息、自动空调、故障诊断。高速类CAN物理层收发模块支持发动机控制、变速器控制、刹车控制、悬挂控制、ABS。(2)8路AISC级别处理单元(包括8路CAN节点、8个高速处理CPU、一片多口RAM、网关ENET接口、ENT状态机),能实现无延时5种CAN帧(数据帧、遥控帧、错误帧、过载帧、帧间隔)的处理。当遇到数据帧(标准或扩展)时将同步读取仲裁段的ID,自动根据网关预设的Identifier进行联通过滤。若为网关内部其它内部CAN分组节点分组时,只缓冲1帧数据段数据,并根据对应CAN节点数据速率进行实时转发,只改变对应CAN接口速率并不改变其数据段、CRC段内容;若为CAN接口和千兆以太网端口之间通信时,AISC级别处理单元将无延时提取数据段内容写入多口RAM中,与此同时千兆以太网自动控制机,将根据对应的RAM映射关系写入对应以太网节点缓冲区。
本实施方式中,CAN物理层收发模块采用的核心芯片是NXP公司PCA82C250。
本发明的一种用于自动驾驶汽车的动力CAN网关的实现方法,主要包括以下步骤:
步骤一、某一种小型轿车,包含如下6种车身CAN单元,这些电源分别引出对应CAN总线接口且包含TVS、EBD总线保护模块:
6种车身CAN单元分别为:
(1)Engine单元,通信速率500kbps。
All Kinds Sensor
EPS
ESP
ABS
SAS
ETM
ECM
(2)Climate Control单元,通信速率19.2kbps。
A Motor control
B Center Unit
(3)Cluster单元,通信速率125kbps。
A Cluster control
B Wiper control
C Winker control
D Car audio
E Light control
F Column switch
G Automobile phone
(4)Seat单元,通信速率19.2kbps。
A Motor control
B Passenger detetion
C Switch control
(5)Door单元,通信速率9.6kbps。
A Side mirror
B Door lock
C Power window
D Door switch
(6)Roof单元
A Rain sensor
B Sunroof
其中以总线型拓扑连接的单元是Door单元、Roof单元和Seat单元。
其中以星型拓扑连接单元是Engine单元。
其中以树形拓扑连接的单元是Climate Control单元和Cluster单元。
步骤二、如图1所示,A网关的CAN节点1通过CAN物理层收发模块和ClimateControl单元联接在一起。
B网关的CAN节点2通过CAN物理层收发模块和Cluster单元联接在一起。
C网关的CAN节点3通过CAN物理层收发模块和Engine单元联接在一起。
D网关的CAN节点4通过CAN物理层收发模块和Seat单元联接在一起。
E网关的CAN节点5通过CAN物理层收发模块和Door单元联接在一起。
F网关的CAN节点6通过CAN物理层收发模块和Roof单元联接在一起。
步骤三、如图2所示,CAN节点1,CAN节点2,CAN节点3,CAN节点4,CAN节点5,CAN节点6,CAN节点7,CAN节点8,可划分成最多3个独立域,本实施方式中使用了6个CAN节点,设置成2个独立域(域A和域B),其中CAN节点1、CAN节点2、CAN节点3在域A下,CAN节点4、CAN节点5、CAN节点6在域B下。
通过网关ENET接口配置,接收的EPS转向控制CAN信息可同步转发给CAN节点2CenterUnit上和CAN节点3Light control上。其中CAN节点1设置为广播节点,在域A中,CAN节点1总线的数据可以被CAN节点2、CAN3节点和CAN节点4监听,而无需通过ACK字段确认其数据,而CAN节点2、CAN节点3、CAN节点4的数据不会被CAN节点1监听到,相当于单向传输。CAN节点4既是域A的监听节点,又有是域B的发送节点,也就是说CAN节点4可以监听到CAN节点1的数据,但是不能转发给CAN节点5和CAN节点6。CAN节点5和CAN节点6也只能监听到CAN节点4的数据,而不能监听到域A中的数据。这种域的划分的目的是隔离CAN通信,防止数据在总线冲突,仲裁。同时避免数据分发影响实时性。
步骤四、如图1和图3所示,CAN节点1,CAN节点2,CAN节点3,CAN节点4,CAN节点5,CAN节点6,CAN节点7,CAN节点8的数据通过后端对应的高速处理CPU采集后分别存储到连续的一片存储区域(多口RAM)中,CAN节点1对应CPU1,CPU1对应存储区1,以此类推。每个存储区域的大小可独立设定,但总的大小不能超过16MBYTES RAM最大容量限制,所有存储区采用FIFO存储方式,每个CPU的数据都会循坏写入缓冲区中,当数据超过RAM对应CAN节点存储区域最大容量和地址空间时,立即覆盖最老的数据。多个CPU对RAM的访问方式是串行多口RAM方式,在一个网关时钟周期1ns只有一个CPU可以访问多口RAM区,数据存储带宽64位,单次1ns可以读写64字节的多口RAM数据。当所有CPU读取完数据后,会把OE信号置高TTL电平,多口RAM会释放对应请求,把所有CPU输入信号RDY置为TTL高电平,此时8个CPU都会知晓多口RAM可以读取并写入数据。此时8个CPU可以随时写入或读取数据。在写入过程中若2个或多个CPU同时申请访问多口RAM,及CPU的输出引脚OE同时为低电平时,此时多口RAM会根据已经设定的CPU优先级设定访问次序,及在同一时间多口RAM只会给8个CPU的其中唯一的一个最高优先级的CPU输出RDY为TTL低的信号,以保证冯诺伊曼串行数据访问的排他性原则。
步骤五、如图4所示,在多口RAM的末端,存在一个隐形的容量大小完全一致、4倍读写速度的PII过程映像区,该影像区实现的功能在单个千兆以太网数据访问之前通过ENT状态机锁存多口RAM中所有数据,这些数据保证是最后一次多口RAM未被CPU读写访问之后的状态,若千兆以太网访问瞬间,多口RAM区处于某一CPU读写访问状态,则ENT状态机锁存的PII过程影像区数据不会发生改变,直到此次CPU访问结束。若千兆以太网对PII过程影像区进行影像写入数据操作,那么ENT状态机,会待到单时钟周期刷新完毕后,回写数据到多口RAM,保证单时钟周期数据的唯一性。
步骤六、如图5所示,ENT状态机除了实现过程影像数据以外,还会产生以太网通信的实时控制以便和驾驶脑进行实时通信。千兆以太网通信方式仍然采用传统的CSMA/CD方式,即Carrier Sense通信介质是否在空闲状态。当介质空闲时,设备试图发送数据,当冲突出现时,每一个设备会识别出这个冲突,并停止发送报文,在各自的随机时间后重新发送。因为有冲突作用域的概念,故此传统以太网ISO/OSI模型协议如TCP UDP已经无法满足驾驶脑的高实时性要求,故此采用实时性较高的PROFINET协议。前提是驾驶脑的处理系统支持PROFINET协议,且与之连接的交换机不但要支持PROFINET协议,且工作在CUT-Through刺穿模式,且交换机端到端传输延时小于4us。通常情况下交换机工作方式是Store andForward存储转发模式,端到端的传输延时大于10us。如图5所示,1链路是刺穿模式,2和3链路是存储转发模式,存储转发模式多了一个中间Checking节点,因此CUT-Through和Storeand Forward模式的最大差别是没有对单帧进行校验检测,处理延时几乎为零,故此驾驶脑需要具备数据校验的能力异适应刺穿模式交换机的使用。
步骤七、如图6所示,与驾驶脑通信之前,首先设定RT循环时间:2ms,整个通信过程采用RT IRT混合传输,单报文帧最长5000个字节,所有网关与驾驶脑通信,遵循以下数据通信规则和步骤:
1、链路层握手,首先打通链路通道。
2、网络层握手,打通标准通道(主要为UDP/IP)通道。
3、通过标准通道,发送实时通道建立请求,建立实时通道。
步骤八、如图7所示,网关与驾驶脑整个通信链路建立如下过程:
1、识别驾驶脑设备名称。
2、解析IP地址。
3、设置IP地址。
4、建立连接关系。
5、写入数据记录。
6、参数化结束。
7、应用准备好。
步骤九、如图8所示,建立好与驾驶脑的链路后,网关与驾驶脑需要确定准确的时间间隔,用以发送实时循环数据。时间间隔根据实际传输的RT、ART、NRT三种实时数据长度来确定,一旦建立信任关系,大小相等的时间段SendClock不会改变。
单次传输最大支持150个RT报文或总长度不大于5000字节。数据格式如下:数据字节40~4440,不满40字节补零。
步骤十、如图9所示,驾驶脑给网关发送数据时,网关会启动一个硬件看门狗监视器,用以监控实时通信的可靠性。每次千兆以太网的通信数据都会被计算本次和上一次的通信时间间隔,一旦超时,且超过单位时间内最大设定次数时,网关启动报警程序,通过CAN总线通知CAN节点关键安全设备,以便触发安全链路,产生稳定的安全驾驶措施和动作。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

Claims (10)

1.一种用于自动驾驶汽车的动力CAN网关,其特征在于,包括:8路CAN物理收发模块,8路CAN节点,8个高速处理CPU通过防冲突方式共享访问一片存储区域即多口RAM,PII过程影像区,Cut-Through方式,并通过先打通通信链路后,建立和实时通道链路,最后网关以太网接口通过通信序列和驾驶脑建立数据链接,并发送制定格式的以太网报文,之后网关并监控和驾驶脑之间的数据通信实时性,一旦不满足条件发送报警。
2.根据权利要求1所述的一种用于自动驾驶汽车的动力CAN网关,其特征在于,8路CAN物理层收发模块为低速或高速,支持协议如下:SAE J1939-11、SAE J1939-12、SAE J2284、SAE J24111、NMEA-2000;支持的波特率如下:33.3k、62.5k、83.3k、125k、250k、500k、1M;通信介质为屏蔽或非屏蔽双绞线;低速类CAN物理层收发模块支持车载灯光类、电动窗、门锁、电动椅、遥控门锁、电子仪表、驾驶信息、自动空调、故障诊断;高速类CAN物理层收发模块支持发动机控制、变速器控制、刹车控制、悬挂控制、ABS。
3.根据权利要求1所述的一种用于自动驾驶汽车的动力CAN网关,其特征在于,8路CAN节点分别通过8路CAN物理层收发模块与车辆自身的CAN单元相连接,8路CAN节点的数据通过后端对应的8个高速处理CPU采集后分别存储到连续的一片存储区域即多口RAM中,在多口RAM的末端存在一个隐形的容量大小完全一致、4倍读写速度的PII过程映像区,该PII过程映像区实现的功能在单个千兆以太网数据访问之前通过ENT状态机锁存多口RAM中所有数据,这些数据保证是最后一次多口RAM未被CPU读写访问之后的状态,若千兆以太网访问瞬间,多口RAM区处于某一CPU读写访问状态,则ENT状态机锁存的PII过程影像区数据不会发生改变,直到此次CPU访问结束。
4.根据权利要求1所述的一种用于自动驾驶汽车的动力CAN网关,其特征在于,所述CAN物理层收发模块采用的核心芯片是NXP公司的PCA82C250。
5.如权利要求1至4中任意一项所述的一种用于自动驾驶汽车的动力CAN网关的实现方法,其特征在于,包括以下步骤:
步骤一、一种轿车包含如下6种车身CAN单元,这些电源分别引出对应CAN总线接口且包含TVS、EBD总线保护模块:
6种车身CAN单元分别为:
(1)Engine单元,通信速率500kbps;
AllKinds Sensor
EPS
ESP
ABS
SAS
ETM
ECM
(2)Climate Control单元,通信速率19.2kbps;
A Motor control
B Center Unit
(3)Cluster单元,通信速率125kbps;
A Cluster control
B Wiper control
C Winker control
D Car audio
E Light control
F Column switch
G Automobile phone
(4)Seat单元,通信速率19.2kbps;
A Motor control
B Passenger detetion
C Switch control
(5)Door单元,通信速率9.6kbps;
A Side mirror
B Door lock
C Power window
D Door switch
(6)Roof单元;
A Rain sensor
B Sunroof
其中以总线型拓扑连接的单元是Door单元、Roof单元和Seat单元;
其中以星型拓扑连接单元是Engine单元;
其中以树形拓扑连接的单元是Climate Control单元和Cluster单元;
步骤二、A网关的CAN节点1通过CAN物理层收发模块和Climate Control单元联接在一起;
B网关的CAN节点2通过CAN物理层收发模块和Cluster单元联接在一起;
C网关的CAN节点3通过CAN物理层收发模块和Engine单元联接在一起;
D网关的CAN节点4通过CAN物理层收发模块和Seat单元联接在一起;
E网关的CAN节点5通过CAN物理层收发模块和Door单元联接在一起;
F网关的CAN节点6通过CAN物理层收发模块和Roof单元联接在一起;
步骤三、将CAN节点1,CAN节点2,CAN节点3,CAN节点4,CAN节点5,CAN节点6设置成2个独立域:域A和域B,其中CAN节点1、CAN节点2、CAN节点3在域A下,CAN节点4、CAN节点5、CAN节点6在域B下;
通过网关ENET接口配置,接收的EPS转向控制CAN信息可同步转发给CAN节点2CenterUnit上和CAN节点3Light control上。其中CAN节点1设置为广播节点,在域A中,CAN节点1总线的数据被CAN节点2、CAN3节点和CAN节点4监听,而无需通过ACK字段确认其数据,而CAN节点2、CAN节点3、CAN节点4的数据不会被CAN节点1监听到,相当于单向传输;CAN节点4既是域A的监听节点,又有是域B的发送节点;
步骤四、CAN节点1、CAN节点2、CAN节点3、CAN节点4、CAN节点5、CAN节点6、CAN节点7、CAN节点8的数据通过后端对应的高速处理CPU采集后分别存储到连续的一片存储区域中,CAN节点1对应CPU1,CPU1对应存储区1,以此类推;多个CPU对多口RAM的访问方式是串行多口RAM方式,在一个网关时钟周期1ns只有一个CPU可访问多口RAM区,数据存储带宽64位,单次1ns可读写64字节的多口RAM数据;当所有CPU读取完数据后,会把OE信号置高TTL电平,多口RAM会释放对应请求,把所有CPU输入信号RDY置为TTL高电平,此时8个CPU都会知晓多口RAM可读取并写入数据,此时8个CPU能够随时写入或读取数据,在写入过程中若2个或多个CPU同时申请访问多口RAM及CPU的输出引脚OE同时为低电平时,此时多口RAM会根据已经设定的CPU优先级设定访问次序,及在同一时间多口RAM只会给8个CPU的其中唯一的一个最高优先级的CPU输出RDY为TTL低的信号,以保证冯诺伊曼串行数据访问的排他性原则;
步骤五、在多口RAM的末端,存在一个隐形的容量大小完全一致、4倍读写速度的PII过程映像区,该影像区实现的功能在单个千兆以太网,数据访问之前通过ENT状态机锁存多口RAM中所有数据,这些数据保证是最后一次多口RAM未被CPU读写访问之后的状态,若千兆以太网访问瞬间,多口RAM区处于某一CPU读写访问状态,则ENT状态机锁存的PII过程影像区数据不会发生改变,直到此次CPU访问结束;若千兆以太网对PII过程影像区进行影像写入数据操作,那么ENT状态机,会待到单时钟周期刷新完毕后,回写数据到多口RAM,保证单时钟周期数据的唯一性;
步骤六、ENT状态机除实现过程影像数据外,还会产生以太网通信的实时控制以便和驾驶脑进行实时通信;
千兆以太网通信方式采用CSMA/CD方式,同时采用实时性较高的PROFINET协议,要求驾驶脑的处理系统支持PROFINET协议,且与之连接的交换机不但要支持PROFINET协议,且需要工作在CUT-Through刺穿模式,且交换机端到端传输延时小于4us;
步骤七、与驾驶脑通信之前,首先设定RT循环时间为2ms,整个通信过程采用RT IRT混合传输,单报文帧最长5000个字节,所有网关与驾驶脑通信;
步骤八、网关与驾驶脑整个通信链路建立过程如下:
1、识别驾驶脑设备名称;
2、解析IP地址;
3、设置IP地址;
4、建立连接关系;
5、写入数据记录;
6、参数化结束;
7、应用准备好;
步骤九、建立好与驾驶脑的链路后,网关与驾驶脑需要确定准确的时间间隔,用以发送实时循环数据;
步骤十、驾驶脑给网关发送数据时,网关会启动一个硬件看门狗监视器,用以监控实时通信的可靠性。
6.根据权利要求5所述的实现方法,其特征在于,步骤四中,每个存储区域的大小可独立设定,但总的大小不能超过16MBYTES RAM最大容量限制,所有存储区采用FIFO存储方式,每个CPU的数据都会循坏写入缓冲区中,当数据超过RAM对应CAN节点存储区域最大容量和地址空间时,立即覆盖最老的数据。
7.根据权利要求5所述的实现方法,其特征在于,步骤七中,所有网关与驾驶脑通信,遵循以下数据通信规则和步骤:
(1)链路层握手,首先打通链路通道;
(2)网络层握手,打通标准通道通道;
(3)通过标准通道,发送实时通道建立请求,建立实时通道。
8.根据权利要求5所述的实现方法,其特征在于,步骤九中,单次传输最大支持150个RT报文或总长度不大于5000字节;数据格式如下:数据字节40~4440,不满40字节补零。
9.根据权利要求5所述的实现方法,其特征在于,步骤九中,时间间隔实际根据传输的RT、ART、NRT三种实时数据长度来确定,一旦建立信任关系,大小相等的时间段SendClock不会改变。
10.根据权利要求5所述的实现方法,其特征在于,步骤十中,每次千兆以太网的通信数据都会被计算本次和上一次的通信时间间隔,一旦超时,且超过单位时间内最大设定次数时,网关启动报警程序,通过CAN总线通知CAN节点关键安全设备,以便触发安全链路,产生稳定的安全驾驶措施和动作。
CN201810509794.2A 2018-05-24 2018-05-24 一种用于自动驾驶汽车的动力can网关及其实现方法 Expired - Fee Related CN108880965B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810509794.2A CN108880965B (zh) 2018-05-24 2018-05-24 一种用于自动驾驶汽车的动力can网关及其实现方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810509794.2A CN108880965B (zh) 2018-05-24 2018-05-24 一种用于自动驾驶汽车的动力can网关及其实现方法

Publications (2)

Publication Number Publication Date
CN108880965A true CN108880965A (zh) 2018-11-23
CN108880965B CN108880965B (zh) 2020-08-18

Family

ID=64333802

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810509794.2A Expired - Fee Related CN108880965B (zh) 2018-05-24 2018-05-24 一种用于自动驾驶汽车的动力can网关及其实现方法

Country Status (1)

Country Link
CN (1) CN108880965B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111510359A (zh) * 2020-03-23 2020-08-07 许昌中科森尼瑞技术有限公司 一种基于can总线的低时延端对端通讯方法
CN112963251A (zh) * 2020-12-18 2021-06-15 南岳电控(衡阳)工业技术股份有限公司 一种发动机转矩与转速的协调控制方法

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101123592A (zh) * 2007-05-24 2008-02-13 谢步明 基于arm7核微处理器的mvb-can网关
CN101350756A (zh) * 2007-12-04 2009-01-21 奇瑞汽车股份有限公司 一种can总线通讯系统
CN101515178A (zh) * 2009-04-08 2009-08-26 南京航空航天大学 基于can总线的主从负担式余度无人飞机自动驾驶仪
CN104363168A (zh) * 2014-12-05 2015-02-18 中国北车集团大连机车研究所有限公司 机车车载通用数据通信网关
CN204392284U (zh) * 2015-03-05 2015-06-10 武汉杭久电气有限公司 一种基于arm7的can总线网关
CN106427827A (zh) * 2015-08-13 2017-02-22 天津迈森西朗科技有限公司 一种汽车计算机控制系统
CN106553644A (zh) * 2015-09-28 2017-04-05 丰田自动车株式会社 自动驾驶设备和自动驾驶系统
CN106945564A (zh) * 2017-05-08 2017-07-14 中车资阳机车有限公司 一种蓄电池供电的列车、列车网络控制系统

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101123592A (zh) * 2007-05-24 2008-02-13 谢步明 基于arm7核微处理器的mvb-can网关
CN101350756A (zh) * 2007-12-04 2009-01-21 奇瑞汽车股份有限公司 一种can总线通讯系统
CN101515178A (zh) * 2009-04-08 2009-08-26 南京航空航天大学 基于can总线的主从负担式余度无人飞机自动驾驶仪
CN104363168A (zh) * 2014-12-05 2015-02-18 中国北车集团大连机车研究所有限公司 机车车载通用数据通信网关
CN204392284U (zh) * 2015-03-05 2015-06-10 武汉杭久电气有限公司 一种基于arm7的can总线网关
CN106427827A (zh) * 2015-08-13 2017-02-22 天津迈森西朗科技有限公司 一种汽车计算机控制系统
CN106553644A (zh) * 2015-09-28 2017-04-05 丰田自动车株式会社 自动驾驶设备和自动驾驶系统
CN106945564A (zh) * 2017-05-08 2017-07-14 中车资阳机车有限公司 一种蓄电池供电的列车、列车网络控制系统

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111510359A (zh) * 2020-03-23 2020-08-07 许昌中科森尼瑞技术有限公司 一种基于can总线的低时延端对端通讯方法
CN112963251A (zh) * 2020-12-18 2021-06-15 南岳电控(衡阳)工业技术股份有限公司 一种发动机转矩与转速的协调控制方法

Also Published As

Publication number Publication date
CN108880965B (zh) 2020-08-18

Similar Documents

Publication Publication Date Title
US20220224777A1 (en) System and method for data compression based on data position in frames structure
US10382221B2 (en) Communication method based on automotive safety integrity level in vehicle network and apparatus for the same
US11233750B2 (en) Method and apparatus for allocating transmission opportunities in vehicle network
US10574348B2 (en) Method for time synchronization between communication nodes in network
KR102589373B1 (ko) 차량 네트워크에서 통신 노드의 웨이크업 방법 및 장치
CN106878124A (zh) 用于控制车辆内大容量诊断通信的方法和车辆控制器
CN105388858A (zh) 网络中通信节点的操作方法
US10050864B2 (en) Operation mode transition method in network
WO2018196655A1 (zh) 一种车载电子处理单元系统公共网络通讯方法
CN209030252U (zh) 一种新能源汽车用通讯网络结构
CN108880965A (zh) 一种用于自动驾驶汽车的动力can网关及其实现方法
US6229817B1 (en) System and method for programming late collision slot time
US11343359B2 (en) Data transmission and reception method in vehicle network, and apparatus for the same
CN110311954A (zh) 车用传感器的数据读取系统及其读取方法
CN107579894A (zh) 一种基于fpga的ebr1553总线协议实现装置
KR102431489B1 (ko) 차량 네트워크에서 다중 도메인을 활용한 통신 노드의 동기화 방법 및 장치
US10749707B2 (en) Method and apparatus for reproducing contents based on presentation time in automotive network
CN207926623U (zh) 车载网络系统及汽车
CN112437024A (zh) 一种基于时间敏感网络的无人车辆通信系统
CN210168057U (zh) 一种多功能车载网关
CN113254036A (zh) 利用以太网刷新车载控制器的刷新设备以及方法
Elżbieta Communication in Automotive Networks Illustrated with an Example of Vehicle Stability Program: Part I-Control Area Network
JP2770281B2 (ja) データ伝送方法
CN114650194B (zh) 数据通信的方法、装置、电子设备及存储介质
JP2000078141A (ja) 走行記録装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20200818