基于AUTOSAR架构的通信系统的研究摘要:AUTOSAR是由全球汽车制造商、部件供应商及其他电子、半导体和软件系统公司联合建立,各成员保持开发合作伙伴关系。自2003年起,各伙伴公司携手合作,致力于为汽车工业开发一个开放的、标准化的软件架构。AUTOSAR这个架构有利于车辆电子系统软件的交换与更新,并为高效管理愈来愈复杂的车辆电子、软件系统提供了一个基础。此外,AUTOSAR在确保产品及服务质量的同时,提高了成本效率,在汽车电子控制器系统开发过程中具有重要地位。其中AUTOSARCOM通信规范为汽车电子通信系统的构建提供了依据和参考。本文介绍了AUTOSAR体系架构,对AUTOSARCOM规范基于信号的通信机制及其特有的传输模式切换系统进行了研究,并实现了一种基于AUTOSAR架构的通信系统,试验结果表明该系统能够提供基本通信服务,且符合AUTOSARCOM规范。关键词:AUTOSAR标准;AUTOSARCOM;通信系统;汽车电子1.引言汽车电子技术,一般是指汽车上应用的电子化和电子信息技术及相关电子技术的总称。通信技术的发展促使汽车进入网络化、数字化时代,汽车网络已经成为汽车电子的重要组成部分。现代汽车上的许多电控单元,如控制系统、信息系统、驾驶系统和传感器执行系统等,都通过如CAN总线联系在一起,形成汽车网络。目前在汽车控制领域有多种总线标准,各侧重点有所不同。尽管总线通信速度越来越高,但是还没有通信网络可以完全满足未来汽车的所有成本和性能要求,因此需要能够基于多种总线和底层协议的通信协议和规范。AUTOSARCOM在一定程度上能够满足未来汽车的要求。2.AUTOSAR体系架构AUTOSAR即汽车开放系统构架(AutomotiveOpenSystemArchitecture),是汽车制造商、部件供应商及其他相关行业共同合作,为汽车电子提出的开放式标准和架构,以便应用于不同的汽车和平台,提高软件复用性,降低开发成本。当前的汽车电子软件开发大多采用私有的解决方案,很少能在不同制造商之间进行交换,随着功能的发展,对软件标准化的需求越来越迫切。AUTOSAR使得不同的开发者能够“在标准上合作,在实现上竞争”。AUTOSAR采用分层的体系架构,如图1所示,从上至下依次为应用层、RTE层、服务层、ECU抽象层和微控制器抽象层,还有一个复杂驱动模块。一般情况下,每一层只能使用下一层的接口,并向上一层提供接口。图1AUTOSAR体系架构3.AUTOSARCOM简介AUTOSARCOM是AUTOSAR标准的一部分,它是从OSEKCOM标准的基础上发展而来的。AUTOSARCOM提供了一种标准化的访问汽车通讯系统和ECU(ElectronicControlUnit)通讯的方式,提出了一个在不同速率的总线网络之间进行数据交换的方法。它为汽车控制单元应用软件提供了一个统一的通信环境,为内部和外部通信定义了公共的软件通信接口和行为,增强了应用软件模块的可移植性。AUTOSARCOM提供了基本的通信服务,它有明确的上层模块RTE(RuntimeEnvironment)和下层模块PDURouter。在发送过程中,应用层调用COM层提供的信号或信号组发送函数,根据配置,信号或信号组的数据经过字节顺序转换后被更新到I-PDU(InteractionLayerProtocolDataUnit)中相应的位置中。AUTOSARCOM规范中同一I-PDU可以设置两种发送模式,对其中各信号的传输模式条件进行计算,I-PDU选择其中一种发送模式进行发送。然后启动发送死限监控,调用PduR_ComTransmit()函数将I-PDU发送到底层。在接收过程中,当底层接收到I-PDU时,底层将调用COM层提供的指示函数Com_RxIndication(),取消并重启接收死限监控,将I-PDU的数据从底层拷贝到COM中。调用信号或信号组的接收函数后,该I-PDU中的信号或信号组将经过字节顺序转换、符号扩展和接收过滤后,数据被拷贝到应用层。4.通信系统核心模块的实现通信系统主要实现信号或信号组的收发功能,以下主要介绍信号发送的实现。首先我们先简要介绍一下AUTOSARCOM中特有的传输模式切换。4.1传输模式切换AUTOSARCOM规范定义了4种信号传输模式:直接/N次传输模式,周期传输模式,混合传输模式和None传输模式。在AUTOSARCOM规范中允许为每个I-PDU静态配置两种不同的传输模式。在AUTOSARCOM规范中通过传输模式切换,来选择I-PDU中的其中一种传输模式进行传输。首先使用过滤机制判断I-PDU中各信号的发送模式条件,同时更新I-PDU中的信号,再通过各信号的判断结果来计算该I-PDU的TMS(transmissionmodeselector)。若至少有一个C(Si,IPDUk)为True,则TMS为True;若所有C(Si,IPDUk)都为False,则TMS为False。其中C(Si,IPDUk)为传输模式条件该条件与IPDUk中的信号Si相关。传输模式的选择计算过程如图2所示。下面通过一个用例简要说明传输模式的切换。在该用例中进行周期传输和直接/N次传输之间的切换(N=3)。根据I-PDU的传输配置,当TMS(transmissionmodeselector)图2传输模式选择判断为真时,设置传输模式为周期传输,反之为直接/N次传输。上层给定值V=a(此时TMS判断为真),进行周期传输;当值V更新为b时(此时TMS判断为假),进行直接/N次传输模式,传输三次。由图3可知,随着V值的更新该I-PDU的传输模式在这两种传输模式之间切换。图3传输模式选择用例4.2信号发送的实现信号发送时,首先根据该信号的相关配置,判定其是内部消息还是外部消息。对于内部发送,直接将信号数据复制到接收信号数据区,并执行通知操作;对于外部发送,若该信号发送属性为触发,则该信号所属的I-PDU将立即发送(除非该I-PDU发送模式为周期传输模式),若该信号发送属性为延迟,则不进行传输,发送时,信号经过字节顺序转换后数据被复制到I-PDU中,同时设置相关更新位信息,然后根据该I-PDU的TMS切换传输模式,进行传输并设置启动相关定时器。各传输模式的传输过程与OSEKCOM中大致相同。信号发送流程如图4所示。图4信号发送流程4.3信号接收的实现信号接收时,首先判定是内部信号还是外部信号。对于内部接收,直接将信号数据复制到接收信号数据区;对于外部接收,首先判断对于的I-PDU组是否启动,若启动,返回E_OK,否则返回COM_STOP,取消并重启该I-PDU的相关死限监控定时器,将数据复制到I-PDU数据区,I-PDU中的信号经过字节书序转换、符号扩展和过滤机制后,复制到接收信号数据区,再执行通知操作,通知上层软件调用相关API函数接收信号。信号接收流程如图5所示。图5信号接收流程5.结束语虽然AUTOSAR组织成立时间不长,但是由于AUTOSAR标准其自身的层次化、模块化、灵活性等优点,越来越多的主流汽车厂商、零配件商、芯片和软件厂商加盟到该组织,AUTOSAR必然成为未来汽车电子方面应用广泛的标准。开发具有自主知识产权的符合该标准的系统,对于我国汽车电子行业的发展有着重要意义。本文对基于AUTOSAR架构的通信系统的研究与实现进行了初步的尝试,该系统能够提供基本通信服务,包括信号的收发等。下一步工作是深化对AUTOSAR标准的理解,使得该通信系统能更好地支持AUTOSAR标准。参考文献:[1]韩志学,张兴周,田金超.一种高可靠与实时性CAN总线通讯网络的设计[J].计算机测量与控制,2006,14(8):1079-1081.[2]AUTOSARDevelopmentPartnership.AUTOSAR–ChallengesandAchievements2005[C].ElectronicSystemsforVehicles2005,VDICongress,Baden-Baden,2005,395-408.[3]AUTOSARAdministration.LayeredSoftwareArchitectureV2.2.2[EB/OL].[4]AUTOSARAdministration.SpecificationofCommunicationV3.0.3[EB/OL].[5]OSEKgroup.OSEK/VDXCommunicationV3.0.3[EB/OL].