《全汽车控制器CAN网络管理解析及测试方法OSEK.docx》由会员分享,可在线阅读,更多相关《全汽车控制器CAN网络管理解析及测试方法OSEK.docx(7页珍藏版)》请在第一文库网上搜索。
1、汽车控制器CAN网络管理解析及 测试方法(OSEK)一.网络管理功能的目的解决蓄电池电量有限,如果整车控制器同时工作会造成电池亏电的问题。 通过网络管理功能,当用户需要请求相关功能时,参与该功能的相关 ECU节点才需要启动起来。协调各ECU同时进入网络睡眠模式;车载控制器网络管理功能就是通 过在各个ECU的网络上,发送一些命令制定一套规则,来实现整车各 个ECU的协同睡眠和唤醒。按照唤醒方式,我们可以将ECU网络节点 类型划分为本地唤醒与远程唤醒。本地唤醒:唤醒源来源于自身模块, 比如KL15硬线唤醒;远程唤醒:唤醒源来源于自身ECU节点所在的 网络报文,该节点可以处于完全休眠状态;二、结合硬
2、件电路说说网络管理功能为了支持睡眠和唤醒,ECU的芯片必须支持彳氐功耗模式和正常工作模式 的切换。低功耗模式(ECU睡眠)指一个ECU断电或者处于极少数的 外围器件工作的模式;唤醒指的是ECU处于全工作模式。休眠机制:控制器在一段时间接收不到CAN网络管理帧,控制器的主芯片MCU通过GPIO 口控制TJA1043 CAN芯片管脚STB.N为低电平和管脚EN为高电平,经过最小保持时间后芯片进 入休眠模式,CAN芯片INH管脚置低。TLE8366电源芯片使能管 脚EN置低(INH连接至电源管理芯片EN脚),停止输出主5V 电源,主芯片不工作,整个控制器断电不再工作。TJA1043进入低 功耗状态,
3、仅由汽车电池对管脚VBAT提供基础工作电源。唤醒机制:控制器收到CAN网络管理帧,TJA1043短时唤醒, INH管脚置高。电源芯片使能管脚EN置高(INH连接至电源管理 芯片EN脚)开始输出主5V电源,主芯片开始工作,MCU进入工 作状态后立即控制CAN TJA1043芯片管脚STB_N为高电平和EN 为高电平,使TJA1043从休眠模式进入待机模式后开始正常工作。三、网络管理功能的工作原理所有参与直接网络管理的ECU ,建立逻辑环的通信机制:是由若干个节 点组成的环状结构,每个节点都有一个逻辑上的后继节点,而最后一个 节点的后继节点又是第一个节点,这样就组成了一个环状的结构。NM 报文以这
4、种令牌环机制依次发送形成逻辑环;网络管理报文ID从小到 大发送,然后从最大节点到最小节点依次建成逻辑环。唤醒后建立逻辑环过程:申请和传递的路径。1)控制器唤醒后想参与网络的节点会先发Alive报文申请加入逻辑环。2)逻辑环建成后,各节点按顺序发Ring报文向后续节点传递令牌。每个参与网络管理报文包括ID和目标地址、操作码、用户数据部 分组成。ECU都有一个特定的网络管理地址;网络管理报文类型分 为Alive报文、Ring报文和LimpHome报文,通过操作码的组 合形式实现;当建立逻辑环,ECU发送Ring报文,接收到Ring报文的其它 ECU监控目标地址判断是否被跳过若被跳过则发送AliVe
5、报文, 提示其它ECU更新逻辑后继,重新建立逻辑环;逻辑环稳定时,ECU不需要CAN通信时,该ECU将发送的 Ring报文中设置SIeePInd ,以通知网络中其它ECUo当逻辑环中 所有的ECU都发送了设置SIeepJnd的Ring报文,总线上所有 ECU都满足睡眠条件的ECU会发送SIeepAck的Ring报文, 网络中所有的ECU接收到设置Sleep,Ack的Ring报文后同步 进入等待睡眠状态;如果在进入等待睡眠状态后t WaitBusSIeep 时间内,网络中所有ECU没有检测到中断事件,将同步进入睡眠 状态。如果ECU监测到中断事件,则ECU重新发送Alive报文, 重新建立逻辑环
6、;如果应用程序需要CAN通信,睡眠指示位将被 复位,此时ECU睡眠条件不满足,即SIeepJnd=O ;当应用程序不再需要CAN通信,此时ECU睡眠条件满足,在下次发送NM报文时会将其睡眠指示位置位,即SIeepJnd=Io四、网络管理报文格式OSEK网络管理报文规则:ID : 4xx ,其中4代表此帧报文为网络管理报文,XX代表当前节点的基 地址。在OSEK网络管理中会给每个节点分配一个基地址(00FF ) oByteO:网络管理报文发送的目标地址。表明网络管理报文是发送给哪 个控制器节点。Bytel :代表发送的网络管理报文的类型即是ring报文还是Alive报文 或者LimpHome报文
7、;Ol :代表Alive报文,在总线上声明自己的存 在,请求其他节点与自己建环。02 :代表Ring报文;12 :代表当前节 点已无通讯请求(睡眠标志位置位SIeepInd=I),即告知其他节点我 已满足睡眠条件;32 :睡眠应答请求(SIeepAck =1),当检测到其他 节点都在发送12的ring报文后,最后节点发送此应答报文,此时进入 睡眠等待状态。04 :代表跛行报文,如果网络管理报文接收计数器和发 送计数器超限后,发送跛行报文即无其他节点与此节点建环,只有一个 节点存在。Byte2-Byte7 :用户定义的数据。五、网络管理功能测试方法测试工具主要包括CANoe工具、CANStreS
8、S工具、VNI640工具及其 上位机软件。测试项目主要包括:逻辑环测试、睡眠状态测试、Limphome状态测 试、逻辑环中新节点加入测试、本地唤醒请求测试、远程唤醒请求测试、 结束唤醒测试、网络管理报文格式测试、TTypeAMaxAerrorWaitBusSIeep等时间参数测试、网络管理错误 处理测试。 逻辑环测试CANOE工具模拟其它节点,通过KL15唤醒网络,通过CANOE模拟 总线其它节点,与该节点进行建立逻辑环。睡眠状态测试CANOE工具模拟其它节点,通过KL15唤醒网络,通过CANOE模拟 总线其它节点,并设置睡眠标志位为真,检测睡眠标志位为真,经过t 时间后,总线进入睡眠模式。
9、LimPhome状态测试CANOE工具模拟其它节点,通过KL15唤醒网络,被测节点进入 LimPhOme 模式。 逻辑环中新节点加入测试CANOE工具模拟其它节点,通过KL15唤醒网络,通过CANOE模拟 总线其它节点,与该节点进行建立逻辑环,通过CANOE再模拟一个新 的节点加入到逻辑环中。 逻辑环中某节点退出测试CANOE工具模拟其它节点,通过KL15唤醒网络,通过CANOE模拟 总线其它节点,与该节点进行建立逻辑环,通过CANoE停止模拟其中 一个节点退出逻辑环。 本地唤醒请求测试CANOE工具模拟其它节点,通过KL15唤醒网络,检查是否发出Alive 及Ring报文远程唤醒请求测试CA
10、NOE工具模拟其它节点通过CANOE模拟总线其它网络节点报文, 检查是否有AIiVe报文发出。 结束唤醒测试CANOE工具模拟其它节点通过CANoE模拟总线其它网络节点报文, Alive报文发出后,进入Limphome模式,并发送SIeepInd标志位。 网络管理报文格式测试CANOE工具模拟其它节点,通过KL15唤醒网络,检查是报文格式及 IDo 包含 Alive、Ring、Limphomes SIeepIndx SIeepAckx DeSt 等 报文组合形式。 TType/TMax/Terror/TWaitBusSleep 等时间参数测试测试的Alive报文与Ring报文之间的时间参数TTyP、测试的Ring和 下一帧AliVe报文之间的时间参数TMaxx测量时间参数TError是否满 足协议要求的网络管理时间参数,NMNormaI状态下TWaitBusSIeep 时间参数测试。 网络管理错误处理测试使用CANOE模拟节点网络管理报文,让总线进入睡眠模式,通过本地 唤醒 使用CANStreSS干扰DUT发送报文RTR bit位 确保进入busoff 状态,通过canoe trace窗口检查Tbusoff的时间。