OSEK网络管理系统
- 格式:docx
- 大小:56.95 KB
- 文档页数:2
OSEK 网络管理系统运行机制分析2。
1 OSEK 网络管理系统的体系结构OSEK网络管理系统应用于嵌入式汽车通信网络,管理网络当中各个ECU之间的通信,提高网络的通信效率。
该系统运行于OSEK操作系统平台,并且兼容各符合类的OSEK操作系统[2]。
OSEK网络管理系统为用户提供了标准的系统调用,它支持两种接口来使用这些系统调用:应用程序和站管理任务。
2。
1.1 OSEK 网络管理系统与其它OSEK 组件关系OSEK/VDX 技术委员会目前所制定的OSEK 规范,主要是OSEK 操作系统、OSEK COM 通信系统、网络管理。
图2-1 描述了OSEK 的结构模型及OSEK 网络管理组件与之交互接口。
图2-1 网络管理接口环境1。
站管理它通过依赖于系统的算法,应用程序可以查询NM组件当前网络的状态和配置。
一般情况下,用户需要定义一个专门的站管理组件作为应用程序与网络管理之间的接口。
如果一个NM标识的网络节点是无效的,那么站管理组件能够提供一个缺省值消息给应用程序,以便应用程序能够在缩减的功能的模式下能够继续工作。
NM规范没有定义特定的站管理组件。
2。
网络管理应用程序接口NM组件提供了许多标准的API服务,站管理组件通过这些标准的API服务可以对NM组件状态进行初始化、控制和查询.标准的API服务分为通用服务、直接NM服务、间接NM服务. 3。
交互层接口这个接口是由COM组件的交互层提供的,它只向间接网络管理提供服务,并且对应用程序来说是不可见的.4.网络管理特定协议算法网络管理可以应用于基于CAN,VAN,J1850,K-BUS等的物理网络,对每一种物理网络都有一种特定协议算法与之对应。
2。
1.2 OSEK 网络管理系统的分类应用程序功能需求的多样化和具体系统通信能力要求的不同,要求网络管理系统也呈现多样性,来满足不同系统的网络通信管理要求.根据OSEK网络管理标准,把OSEK网络管理系统分为两个类型:(1)直接网络管理,支持网络配置管理,网络状态管理,网络睡眠协商,数据管理,错误管理,操作模式管理等(2)间接网络管理,包括统一监控周期的间接网络管理和非统一监控周期的间接网络管理,支持网络配置管理,网络状态管理,错误管理,操作模式管理等,不支持网络睡眠协商而采用主从方式广播睡眠。
OSEK OS标准简介1 、OSEK 简介随着社会的进步和汽车工业的飞速发展,汽车在降低能耗、提高安全性和舒适度以及环保等方面的要求越来越高.这些要求刺激了电了技术在汽车_L的应用.而且比重不断增加,其结果是汽车在零部件控制技术、通信和网络方面的复杂性大大增加。
在这个强大的市场需求和激烈竞争的环境下,汽车电子的软硬件产品不断发展并出现多元化格局。
这时一些问题凸显出来,比如,由于处理器( CPU)不断升级导致不同的CPU间的软件移植滞后,由于不同实时操作系统的应用程序接日是口(API)不同,导致应用程序的移植性差等为了改变这种状况,1993年德国汽车工业界提出了OSEK(德文:Offene Systeme and deren Schnittstellen fur die Elektronik im Kraftfahr-zeug)体系,其含义是汽车电子开放式系统及其接口。
这个体系的最早倡导者有:宝马、博世、戴姆勒克莱斯勒、欧宝、西门子、大众和卡尔斯鲁厄大学的工业信息技术研究所,法国的汽车制造商标致和雷诺于1994年加人了OSEK体系,并将法国汽车工业使用的汽车分布式运行系统(Vehicle DistributedeX-ecutivr, V DX)也纳人这一体系,VDX的作用与OSEK相似。
在1995年召开的研讨会上,众多的厂商对OSEK和VDX的认识达成了共识,产生了OSEK/VDX规范(1997年发布),本文简称OSEK规范。
它主要由四部分组成:操作系统规范(OSEK OperatingSystem,OSEK OS)、通信规范(OSEK Communication , OSEK COM )、网络管理规范( OSEK Net Management, OSEK NM)和OSEK实现语言(OSEK Implementation Language,OIL)。
此后,各软件生产厂商都相继推出了符合OSEK规范的产品,比较典型的有WINDRIVER公司的OSEKWorks ,ETAS公司的ERCOSEK,MOTOROLA的OSEKturbo和美国密西根大学的EMERALDS-OSEK等。
OSEK直接网络管理(NM)介绍OSEK直接网络管理(NM)赋予节点“消息地址”的概念,即每个网络上的节点有唯一的标识号。
NM规范没有定义最大的节点标识号,但建议采用8位地址(0-255 )。
虽然底层物理网络不支持消息地址,但直接NM要求间接实现对消息地址的支持。
一个网关节点可连接不同的网络,并且在每一网络中它的消息地址可能是不同的。
如图32所示:图3 2两个总线网络中的逻辑环结构在图3 2中,子网1的3个节点在逻辑上形成一个环,称之逻辑环(LogicaIRi ng)。
逻辑环通过环消息(Ring Message序列实现消息传输。
环消息自低地址节点(ID号小)向高地址节点(ID号大)发送,再由最高节点传回最低节点,形成一个环。
逻辑环上的消息交换机制如图33所示:图3 3逻辑环上的消息交换机制直接NM还要求网络广播的实现,允许异步广播Alive消息和limpHome消息Alive 消息指定网络上一个新的节点;ImpHomd肖息指定一个不再能工作的节点。
NM通过传输NM消息来确定网络的内部状态,状态反映了NM当前运行时的信息。
状态是分层级的,总的内部状态如图 3 4所示:图3 4 OSEK网络管理总的内部状态当系统复位时,NM进入NMOf状态;调用StartNM()使得NM1入NMO状态;调用StopNM()使得NIM进入NMShutdow狀态。
函数StartNM()和StopNM()是NM 的核心API。
StartNM()初始化一个NM逻辑环;StopNM()改变NM的状态为NMShutdowp 执行清除操作,然后进入NMOff状态。
其中,NMO状态又有如下子状态(表 3.1):表3.1 NMOn的子状态NMO存在两组并行子状态:NMInit、NMAwak e NMBusSleep和NMActive、NMPassiva NMO的并行子状态如图3 5所示:图3 5 NMOn的并行子状态当NM进入NMO状态时,NMInit和NMActive是其缺省的初始化状态。
CAN总线直接OSEK网络管理规范培训资料概述CAN总线是一种串行通信协议,广泛应用于汽车电子系统和工业控制等领域。
OSEK是针对分布式实时嵌入式系统设计的开放式操作系统规范,提供了一套标准化的任务调度、进程间通信、网络管理等机制,被广泛用于汽车电子系统中。
本文档面向初学者,介绍CAN总线直接OSEK网络管理规范的基本概念和实现细节。
CAN总线数据帧格式CAN总线使用数据帧进行通信,每个数据帧包含一个ID、一个控制位和8个数据位。
ID是11位或29位,用于标识发送方和接收方。
控制位包括一个RTR位和一个IDE位,用于标识数据是否是远程请求或扩展帧。
帧发送和接收CAN总线的通信基于广播的方式,所有节点都能够接收到所有的数据帧。
发送端将数据帧发送到总线上,接收端通过ID过滤器选出感兴趣的数据帧进行接收。
如果多个节点同时发送数据帧,则会发生冲突,此时会采用非常规算法进行冲突解决。
性能参数CAN总线的性能参数包括通信速率、错误检测、事件触发等。
通信速率可以达到1Mbps,错误检测包括CRC检验和ACK确认,若出现错误会触发错误标志。
事件触发包括总线错误、总线超时和总线关闭等。
OSEK网络管理OSEK网络体系结构OSEK网络体系结构分为基础体系结构和扩展体系结构两部分。
基础体系结构包括任务管理、队列管理、事件管理和消息管理等,扩展体系结构包括内存管理、定时器管理、网络协议等。
任务是OSEK中最基本的执行单元,每个任务都有一个优先级和一个固定的执行周期。
任务可以在任何时候被抢占,根据优先级高低进行调度。
任务可以通过事件标志、定时器和消息队列等机制进行通信和同步。
进程间通信OSEK中的进程间通信有多种方式,包括信号量、事件标志、消息队列、共享内存和邮箱等。
每种方式都有其特定的使用场景和限制,需要根据具体情况选择合适的方法。
网络管理OSEK网络管理规范定义了一套标准化的网络管理机制,包括网络节点的定义、节点状态的管理、多节点通信的管理等。
OSEK OS标准简介1 、OSEK 简介随着社会的进步和汽车工业的飞速发展,汽车在降低能耗、提高安全性和舒适度以及环保等方面的要求越来越高.这些要求刺激了电了技术在汽车_L的应用.而且比重不断增加,其结果是汽车在零部件控制技术、通信和网络方面的复杂性大大增加。
在这个强大的市场需求和激烈竞争的环境下,汽车电子的软硬件产品不断发展并出现多元化格局。
这时一些问题凸显出来,比如,由于处理器( CPU)不断升级导致不同的CPU间的软件移植滞后,由于不同实时操作系统的应用程序接日是口(API)不同,导致应用程序的移植性差等为了改变这种状况,1993年德国汽车工业界提出了OSEK(德文:Offene Systeme and deren Schnittstellen fur die Elektronik im Kraftfahr-zeug)体系,其含义是汽车电子开放式系统及其接口。
这个体系的最早倡导者有:宝马、博世、戴姆勒克莱斯勒、欧宝、西门子、大众和卡尔斯鲁厄大学的工业信息技术研究所,法国的汽车制造商标致和雷诺于1994年加人了OSEK体系,并将法国汽车工业使用的汽车分布式运行系统(Vehicle DistributedeX-ecutivr, V DX)也纳人这一体系,VDX的作用与OSEK相似。
在1995年召开的研讨会上,众多的厂商对OSEK和VDX的认识达成了共识,产生了OSEK/VDX规范(1997年发布),本文简称OSEK规范。
它主要由四部分组成:操作系统规范(OSEK OperatingSystem,OSEK OS)、通信规范(OSEK Communication , OSEK COM )、网络管理规范( OSEK Net Management, OSEK NM)和OSEK实现语言(OSEK Implementation Language,OIL)。
此后,各软件生产厂商都相继推出了符合OSEK规范的产品,比较典型的有WINDRIVER公司的OSEKWorks ,ETAS公司的ERCOSEK,MOTOROLA的OSEKturbo和美国密西根大学的EMERALDS-OSEK等。
OSEK直接网络管理(NM)介绍OSEK直接网络管理(NM)赋予节点“消息地址”的概念,即每个网络上的节点有唯一的标识号。
NM规范没有定义最大的节点标识号,但建议采用8位地址(0-255)。
虽然底层物理网络不支持消息地址,但直接NM要求间接实现对消息地址的支持。
一个网关节点可连接不同的网络,并且在每一网络中它的消息地址可能是不同的。
如图3 2所示:图3 2 两个总线网络中的逻辑环结构在图3 2中,子网1的3个节点在逻辑上形成一个环,称之逻辑环(LogicalRi ng)。
逻辑环通过环消息(Ring Message)序列实现消息传输。
环消息自低地址节点(ID号小)向高地址节点(ID号大)发送,再由最高节点传回最低节点,形成一个环。
逻辑环上的消息交换机制如图3 3所示:图3 3 逻辑环上的消息交换机制直接NM还要求网络广播的实现,允许异步广播Alive消息和limpHome消息。
Alive消息指定网络上一个新的节点;ImpHome消息指定一个不再能工作的节点。
NM通过传输NM消息来确定网络的内部状态,状态反映了NM当前运行时的信息。
状态是分层级的,总的内部状态如图3 4所示:图3 4 OSEK网络管理总的内部状态当系统复位时,NM进入NMOff状态;调用StartNM()使得NM进入NMOn状态;调用StopNM()使得NM进入NMShutdown状态。
函数StartNM()和StopNM()是NM 的核心API。
StartNM()初始化一个NM逻辑环;StopNM()改变NM的状态为NMShutdown,执行清除操作,然后进入NMOff状态。
其中,NMOn状态又有如下子状态(表3.1):表3.1 NMOn的子状态NMOn存在两组并行子状态:NMInit、NMAwake、NMBusSleep和NMActive、NMPassive。
NMOn的并行子状态如图3 5所示:图3 5 NMOn的并行子状态当NM进入NMOn状态时,NMInit和NMActive是其缺省的初始化状态。
OSEK直接网络管理(NM)规范————————————————————————————————作者:————————————————————————————————日期:OSEK直接网络管理(NM)介绍OSEK直接网络管理(NM)赋予节点“消息地址”的概念,即每个网络上的节点有唯一的标识号。
NM规范没有定义最大的节点标识号,但建议采用8位地址(0-255)。
虽然底层物理网络不支持消息地址,但直接NM要求间接实现对消息地址的支持。
一个网关节点可连接不同的网络,并且在每一网络中它的消息地址可能是不同的。
如图3 2所示:图3 2 两个总线网络中的逻辑环结构在图3 2中,子网1的3个节点在逻辑上形成一个环,称之逻辑环(LogicalRi ng)。
逻辑环通过环消息(Ring Message)序列实现消息传输。
环消息自低地址节点(ID号小)向高地址节点(ID号大)发送,再由最高节点传回最低节点,形成一个环。
逻辑环上的消息交换机制如图3 3所示:图3 3 逻辑环上的消息交换机制直接NM还要求网络广播的实现,允许异步广播Alive消息和limpHome消息。
Alive消息指定网络上一个新的节点;ImpHome消息指定一个不再能工作的节点。
NM通过传输NM消息来确定网络的内部状态,状态反映了NM当前运行时的信息。
状态是分层级的,总的内部状态如图3 4所示:图3 4 OSEK网络管理总的内部状态当系统复位时,NM进入NMOff状态;调用StartNM()使得NM进入NMOn状态;调用StopNM()使得NM进入NMShutdown状态。
函数StartNM()和StopNM()是NM 的核心API。
StartNM()初始化一个NM逻辑环;StopNM()改变NM的状态为NMShutdown,执行清除操作,然后进入NMOff状态。
其中,NMOn状态又有如下子状态(表3.1):表3.1 NMOn的子状态NMOn存在两组并行子状态:NMInit、NMAwake、NMBusSleep和NMActive、NMPassive。
OSEK 网络管理系统运行机制分析
2.1 OSEK 网络管理系统的体系结构
OSEK网络管理系统应用于嵌入式汽车通信网络,管理网络当中各个ECU之间的通信,提高网络的通信效率。
该系统运行于OSEK操作系统平台,并且兼容各符合类的OSEK操作系统[2]。
OSEK网络管理系统为用户提供了标准的系统调用,它支持两种接口来使用这些系统调用:应用程序和站管理任务。
2.1.1 OSEK 网络管理系统与其它OSEK 组件关系OSEK/VDX 技术委员会目前所制定的OSEK 规范,主要是OSEK 操作系统、OSEK COM 通信系统、网络管理。
图2-1 描述了OSEK 的结构模型及OSEK 网络管理组件与之交互接口。
图2-1 网络管理接口环境
1.站管理
它通过依赖于系统的算法,应用程序可以查询NM组件当前网络的状态和配置。
一般情况下,用户需要定义一个专门的站管理组件作为应用程序与网络管理之间的接口。
如果一个NM标识的网络节点是无效的,那么站管理组件能够提供一个缺省值消息给应用程序,以便应用程序能够在缩减的功能的模式下能够继续工作。
NM规范没有定义特定的站管理组件。
2.网络管理应用程序接口
NM组件提供了许多标准的API服务,站管理组件通过这些标准的API服务可以对NM组件状态进行初始化、控制和查询。
标准的API服务分为通用服务、直接NM服务、间接NM服务。
3.交互层接口
这个接口是由COM组件的交互层提供的,它只向间接网络管理提供服务,并且对应用程序来说是不可见的。
4.网络管理特定协议算法
网络管理可以应用于基于CAN,VAN,J1850,K-BUS等的物理网络,对每一种物理网络都有一种特定协议算法与之对应。
2.1.2 OSEK 网络管理系统的分类
应用程序功能需求的多样化和具体系统通信能力要求的不同,要求网络管理系统也呈现多样性,来满足不同系统的网络通信管理要求。
根据OSEK网络管理标准,把OSEK网络管理系统分为两个类型:
(1)直接网络管理,支持网络配置管理,网络状态管理,网络睡眠协商,数据管理,错误管理,操作模式管理等
(2)间接网络管理,包括统一监控周期的间接网络管理和非统一监控周期的间接网络管理,支持网络配置管理,网络状态管理,错误管理,操作模式管理等,不支持网络睡眠协商而采用主从方式广播睡眠。
两者具有相同的网络管理功能,都是基于对应用程序消息的监控,其区别在于,非统一周期的间接网络管理在监控应用程序消息时,监控周期采用各个应用程序对应OSEK COM里的IPDU的死限监控周期[3],而统一周期的间接网络管理在一个周期内对所有的应用程序消息进行监控。
一个ECU节点可以同时具有以上两个版本的网络管理或多个同一版本的网络管理并存,用来管理多个网络,而各个网络管理系统相互独立且互不影响。
2.2.7 直接网络管理的睡眠协商
一般情况下ECU 有正常操作和节电模式。
为了保护电池的能量,NM必须决定何时关闭节点。
直接NM 提供一个协商机制负责与网络相连的所有节点在同一时刻进入睡眠,如图2-11 所示。
切换到睡眠模式需发送睡眠请求消息和睡眠应答消息来同步完成,但只需一个节点来发送睡眠应答。
(1) 应用程序调用GotoMode(BusSleep)要求总线进入睡眠。
节点下一次接收ring 消息时,NM 组件将发送睡眠请求域为真的ring 消息,进入NMNormalPreSleep 睡眠前准备状态。
(2) 如果在LimpHome 模式下接收,则发送睡眠请求域为真的limphome 消息,进入NMLimpHomePreSleep 睡眠前准备状态。
(3) 当睡眠协商正在进行时,如果必须发送alive 消息,那么发送的alive 消息的睡眠请求域置为真,进入睡眠前准备状态NMNormalPreSleep。
(4) 当ring 消息已经在逻辑环中完成一周传输,所有接收网络管理消息的睡眠请求域都为真,并且当前网络状态允许睡眠时,发出睡眠请求的第一个节点开始发送睡眠请求和睡眠应答都为真的ring 消息,并设置睡眠等待报警,其余节点如果都进行了睡眠请求,当收到睡眠应答为真的消息时,也要设置睡眠等待报警。
(5) 当各个节点的睡眠报警出现时则进入睡眠状态。
(6) 当前节点处在睡眠等待状态NMTwbsNormal 或NMTwbsLimpHome,如果收到睡眠请求域不为真的消息,则返回睡眠前准备状态。
(7) 当应用程序调用GotoMode(Awake)或收到数据链路层的唤醒信号,则睡眠节点将被唤醒。