通信状态的实现
1 一般要求
通信状态通过LIN或CAN串行网络协议实现,以便传输信号和消息。
2 数据总线信号的编码
2.1 一般要求
数据总线信号的数据长度应为8字节。
车辆请求和酒精锁响应信号周期应至少至少为200ms,以确保有效通信。信号周期最大不得超过每20ms。
2.2 车辆到酒精锁
从车辆到酒精锁的消息请求应由8字节数据组成,如下表所示。
第一个字节Data 1应为状态字节,包含表示车辆通信状态的值。
第二个到第八个字节Data 2到Data 8应包含附加信息作为有效载荷,或设置为0xFF。
表, 从车辆到酒精锁的帧结构
| 状态 | 有效载荷 | Data 1 | Data 2 | Data 3 | Data 4 | Data 5 | Data 6 | Data 7 | Data 8 |
|---|---|---|---|---|---|---|---|---|---|
| 状态 | 有效载荷字节1 | 有效载荷字节2 | 有效载荷字节3 | 有效载荷字节4 | 有效载荷字节5 | 有效载荷字节6 | 有效载荷字节7 |
2.3 酒精锁到车辆
从酒精锁到车辆的消息响应应由8字节数据组成,如表3所示。
第一个字节Data 1应为状态字节,包含表示酒精锁通信状态的值。
第二个和第三个字节Data 2和Data 3应提供以小端编码的锁定信息。
第四个到第八个字节Data 4到Data 8应包含附加信息作为有效载荷,或设置为0xFF。
下表, 从酒精锁到车辆的帧结构
| 状态 | 有效载荷 | Data 1 | Data 2 | Data 3 | Data 4 | Data 5 | Data 6 | Data 7 | Data 8 |
|---|---|---|---|---|---|---|---|---|---|
| 状态 | 锁定字节1 | 锁定字节2 | 有效载荷字节1 | 有效载荷字节2 | 有效载荷字节3 | 有效载荷字节4 | 有效载荷字节5 |
3 信号验证和错误处理
3.1 一般要求
保留的信号值和不可信的数据值应导致车辆终止当前的酒精锁通信过程,除非另有规定。终止后,酒精锁通信过程应重新启动。酒精锁应检查通信过程的一致性。
3.2 总线唤醒
酒精锁不得唤醒车辆的数据总线。
3.3 车辆重启
在不进行酒精锁电气重启(即不关闭和重新打开酒精锁的电源线)的情况下,车辆通过进入其通信状态<PROTOCOL_VALIDATION>来重启通信过程。
酒精锁应能够在酒精锁的内存中记录此类车辆重启。
注:酒精锁电气重启后的行为与正常启动过程相同。
3.4 酒精锁重启
酒精锁通过进入其初始通信状态<ACTIVATED>来重启通信过程。
酒精锁应能够在数据内存中记录此类重启。
4 LIN标识符和服务
4.1 标识符
用于车辆与酒精锁之间通信的数据帧应具有唯一标识符。从车辆到酒精锁的数据帧的默认标识符应为0x3A,从酒精锁到车辆的数据帧的默认标识符应为0x3B。酒精锁状态帧的默认标识符应为0x39。
注1:对于LIN上的酒精锁协议通信,可以定义一个调度表,其中包含两条消息(0x3A和0x3B),或者至少定义两个调度表,分别包含请求和响应消息,车辆LIN主节点在这些调度表之间切换,以便每条消息频繁重复。
4.2 酒精锁状态帧
出于LIN一致性原因,酒精锁节点应具有一个额外的传输帧,长度为4字节,ID为0x39。一位状态信号响应错误位于字节0的最低有效位。帧的其他位可以由酒精锁制造商自行定义。
4.3 分配帧标识符
为了适应使用的默认LIN帧标识符,每个酒精锁应支持一组最低限度的LIN节点配置和识别服务。