CN103176796A - 一种在autosar中实现复杂数据到信号组的映射方法 - Google Patents
一种在autosar中实现复杂数据到信号组的映射方法 Download PDFInfo
- Publication number
- CN103176796A CN103176796A CN2013100483271A CN201310048327A CN103176796A CN 103176796 A CN103176796 A CN 103176796A CN 2013100483271 A CN2013100483271 A CN 2013100483271A CN 201310048327 A CN201310048327 A CN 201310048327A CN 103176796 A CN103176796 A CN 103176796A
- Authority
- CN
- China
- Prior art keywords
- signal
- data element
- data
- list
- type
- 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.)
- Pending
Links
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了在AUTOSAR中实现复杂数据到信号组的映射方法,该方法包括以下步骤:(1)对复杂数据元素递归获得其简单数据元素,并将该简单数据元素存于数据元素列表中;(2)获得信号组包含的信号并将其存于信号列表中;(3)对于数据元素列表和信号列表,取每一个简单数据元素与每一个信号进行比较,根据是否匹配来完成二分图的构造;(4)对此二分图使用最大匹配算法求最大匹配,判断映射关系是否成功;(5)映射关系成功时,对于最大匹配得到的信号匹配列表,建立简单数据元素到信号的映射关系。该映射方法能自动帮助用户生成复杂数据包含的数据元素到信号组内信号的映射关系,提高了用户开发AUTOSAR的效率。
Description
技术领域
本发明涉及汽车电子软件开发技术,尤其是一种在AUTOSAR系统配置模型中实现复杂数据到信号组的映射方法。
背景技术
AUTOSAR(AUTomotive Open System ARchitecture)是汽车电子开放系统架构,系统配置(System Configuration)是AUTOSAR方法论中的一个重要环节,它定义了系统中硬件拓扑、网络通信和系统映射等配置信息,其中系统映射规定了系统中软件组件到电控单元的映射关系,数据元素到网络信号的映射关系,电控单元端口发送接收网络信号关系等,实现了软硬件的解耦。
在AUTOSAR系统配置模型中,数据元素到网络信号模型的映射关系分为两大类:发送者接收者通信数据SenderReceiver到网络信号的映射关系,客户端服务器通信数据ClientServer到网络信号的映射关系ClientServerToSignalGroupMapping。发送者接收者通信方式到网络信号的映射关系又分为两种:简单数据PrimitiveType到信号Signal的映射SenderReceiverToSignalMapping和复杂数据CompositeType到信号组SignalGroup的映射SenderReceiverToSignalGroupMapping(附图1为其UML静态结构图)。对于SenderReceiver简单通信数据的映射关系表现为数据元素DataElementPrototype到系统信号SystemSignal的映射关系;对于SenderReceiver复杂通信数据的映射关系表现为数据元素DataElementPrototype到系统信号组SystemSignalGroup的映射关系。简单映射和复杂映射的区别表现为DataElementPrototype的数据类型是简单类型PrimitiveType还是复杂类型CompositeType。
在AUTOSAR模型中,复杂类型分为两种数据类型ArrayType数组类型和RecordType结构体类型。ArrayType有数组长度和数组元素ArrayElement,每个数组元素都有一个数据类型DataType;结构体类型有一到多个结构体元素RecordElement,每个结构体元素都有一个数据元素类型DataType(附图2为其UML静态结构图)。
在复杂数据到信号组的映射关系中,AUTOSAR模型不仅要求生成复杂数据到信号组的映射关系,同时复杂数据包含的元素到信号组里每个信号对应的映射关系也要同时生成,对于用户来说,由于有些数据元素比较复杂,信号组包含的信号很多,如果定义了DataElement到信号组的映射关系,能够自动生成复杂数据包含的数据到信号的映射关系,将大大减轻用户工作量,提高采用AUTOSAR开发的效率。
综合以上考虑,面对使用AUTOSAR方法开发汽车电子产品的用户,需要提供一种能够正确快速的建立复杂数据内部数据到信号组内部信号的映射关系的方法。
发明内容
本发明提供了一种在AUTOSAR中实现复杂数据到信号组的映射方法,该映射方法能不仅能产生复杂数据到信号组的映射关系,还能正确快速地建立复杂数据内部数据到信号组内部信号的映射关系。
一种在AUTOSAR中实现复杂数据到信号组的映射方法,包括以下步骤:
(1)对复杂数据进行递归得到简单数据元素,然后将所述简单数据元素存于空的数据元素列表中,得到数据元素列表;
(2)获得信号组包含的所有信号,存于信号列表中;
(3)对于数据元素列表和信号列表,将所述简单数据元素作为二分图的左子图,将信号作为二分图的右子图,以简单数据元素能映射到信号上作为连接条件,完成二分图的构造;
(4)对所述的二分图使用最大匹配算法求最大匹配,如果所得到的最大匹配值等于信号列表的长度,则转到步骤(5),否则放弃;
(5)对于得到的信号匹配列表,在AUTOSAR系统配置模型中建立简单数据元素到信号的映射关系,完成复杂数据到信号组的映射。
其中,步骤(1)中所述的递归根据AUTOSAR数据模型的UML静态结构关系进行。
作为优选,步骤(1)中,对复杂数据进行递归得到简单数据元素的步骤包括:
(2.1)建立一个空的数据元素列表,对复杂数据中的数据元素类型进行如下判断和操作:
(2.2)如果数据元素类型是简单类型,将其加入数据元素列表中;
(2.3)如果数据元素类型是数组类型,获得数组元素和数组长度length,将length个数组元素进行步骤(2.2)的操作;
(2.4)如果数据元素类型是结构体类型,获得所有的结构体元素,将所有的结构体元素进行步骤(2.2)的操作。
作为优选,步骤(3)中,所述连接条件的判断方法如下:
取每一个简单数据元素与每一个信号进行比较,若简单数据元素的类型能够容纳下信号的长度,则能够连接;
否则不能连接。
作为优选,所述的复杂数据的类型为数组类型;
步骤(5)中,在AUTOSAR系统配置模型中建立简单数据元素到信号的映射关系包括:
(5.1)初始i=0;
(5.2)获得所述复杂数据的数组元素和数组长度length;
(5.3)遍历数组中的每个数组元素,对于第k个数组元素,建立IndexedArrayElement,index设为k,ArrayElement设为数组元素,信号为最大匹配对应的第i个信号,建立SenderRecArrayElementMapping,i++。
作为优选,所述的复杂数据的类型为结构体类型;
步骤(5)中,在AUTOSAR系统配置模型中建立简单数据元素到信号的映射关系包括:
(5.1)初始i=0;
(5.2)获得所述复杂数据包含的所有结构体元素;
(5.3)对于第j个结构体元素,建立SenderRecRecordElementMapping,设置其RecordElement为第j个结构体元素,信号为最大匹配对应的第i个信号,i++。
同现有技术相比,本发明的有益效果体现在:自动帮助用户生成复杂数据包含的数据元素到信号组内信号的映射关系,提高了用户开发AUTOSAR的效率,抛弃了数据元素到信号一对一进行匹配的蛮力、低效实现方案;将映射关系抽象成为一个二分图,利用最大匹配算法求的两者之间的映射关系,实现起来简单高效。
附图说明
图1为AUTOSAR发送者接收者通信方式复杂映射的UML静态结构图。
图2为AUTOSAR数据模型的UML静态结构图。
图3为复杂数据到信号组映射案例结构体数据和信号组的结构。
图4为结构体struct_error和信号组errorSigGroup建立的二分图。
图5为结构体struct_error和信号组errorSigGroup建立的二分图的最大匹配。
图6为数据元素列表建立流程图。
图7为利用最大匹配算法求数据元素到信号的最大匹配流程图。
图8为建立数据元素到信号的映射关系的流程图。
具体实施方式
本发明中,在AUTOSAR中实现复杂数据到信号组的映射方法,包括以下步骤:
(1)根据AUTOSAR数据模型的UML静态结构关系,对于复杂数据元素递归获得其包含的简单数据元素,将得到的简单数据元素存于数据元素列表中;
(2)对于信号组,获得其包含的所有信号,存于信号列表中;
(3)对于数据元素列表和信号列表,取每一个简单数据元素与每一个信号进行比较,若简单数据元素的类型能够容纳下信号的长度,那么此简单数据元素就与此信号匹配,进而将简单数据元素与信号相关联即构造二分图,然后在二分图中将此简单数据元素的节点和与它相匹配的信号的节点相连接,完成二分图的构造;
(4)对此二分图使用最大匹配算法求最大匹配,如果最大匹配的值等于信号列表的长度即信号组中包含的信号个数,说明该复杂数据元素能够映射到该信号组上,否则说明映射关系不成功;
(5)映射关系成功时,对于最大匹配得到的信号匹配列表,建立简单数据元素到信号的映射关系。
图6为步骤(1)中建立数据元素列表的流程图,如图6所示,数据元素列表的建立包括:
(1.1)建立一个空的数据元素列表;
(1.2)如果数据元素类型是简单类型,将其加入数据元素列表中,返回;
(1.3)如果数据元素类型是数组类型,获得数组元素和数组长度length,对length个数组元素进行(1.2)步骤的操作;
(1.4)如果数据元素类型是结构体类型,获得所有的结构体元素,对每个结构体元素进行(1.2)步骤的操作。
图7为步骤(3)中利用最大匹配算法求数据元素到信号的最大匹配流程图,具体包括:
数据元素位于二分图的左子图,信号位于二分图的右子图,数据元素能映射到某个信号上作为可以相关联的条件,然后利用最大匹配算法求的数据元素到信号的映射关系。
图8为步骤(5)中建立数据元素到信号的映射关系的流程图,如图8所示,具体步骤包括:
(5.1)初始i=0;
(5.2)对于该复杂数据元素,如果其是结构体类型,建立SenderRecRecordTypeMapping,获得其包含的所有结构体元素,到步骤(5.3);
如果其类型是数组类型,建立SenderRecArrayTypeMapping,获得数组元素和数组长度,到步骤(5.4);
(5.3)对于第j个结构体元素,建立SenderRecRecordElementMapping,设置该结构体元素为该数据元素,信号为最大匹配对应的第i个信号,i++;如果该结构体元素的类型是复杂类型,回到步骤(5.2),否则退出;
(5.4)对于第k个数组元素,建立SenderRecArrayElementMapping,建立IndexedArrayElement,index设为k,ArrayElement设为数组元素,信号为最大匹配对应的第i个信号,i++;如果该数组元素的类型是复杂类型,回到步骤(5.2),否则退出。
下面结合附图和实施例对本发明作进一步说明:
实施例1
本实施例所使用的复杂数据为DataElement类型为结构体struct_error,信号组为信号组errorSigGroup,他们的组成情况见附图3,具体的映射步骤如下:
(1)获得struct_error包含的数据元素列表dataList(包含status_1,status_2,status_3,cellOnVolt_i3,cellOffVolt_i2,leakage_i2,timer_i4),如附图3的左半部分所示;
(2)对于信号组errorSigGroup,获得其包含的所有信号的信号列表signalList(包含statusSig_1,statusSig_3,statusSig_3,cellOnVoltSig,cellOffSig,leakageSig,timerSig),如附图3的右半部分所示;
(3)取dataList中每一个数据元素与signalList中的每一个信号进行比较,若数据元素的类型能够容纳下信号的长度,那么此数据元素就与此信号匹配,进而将数据元素与信号相关联即构造二分图,在二分图中将此数据元素节点和与它相匹配的信号节点相连接,这样二分图构造完成,如附图4所示;
(4)对此二分图使用最大匹配算法求最大匹配,如果最大匹配的值为7等于信号列表的长度,说明struct_error能够映射到errorSigGroup上;
(5)得到的最大匹配信号列表maxMatchSignalList,元素为statusSig_1,statusSig_3,statusSig_3,cellOnVoltSig,cellOffSig,leakageSig,timerSig;
(6)根据maxMatchSignalList,建立映射关系,对于struct_error中的第k个结构体元素,建立一个SenderRecRecordElementMapping,设置其信号为maxMatchSignalList的第k个元素,完成映射关系的新建,如附图5所示。
虽然通过上述具体实例对本发明进行了说明,但是本发明并不局限于上述实例,对于本领域的相关人员,可以根据本发明的技术方案和思想,作出其他各种改变和变形,而所有这些都应该属于本发明权利要求的保护范围内。
Claims (5)
1.一种在AUTOSAR中实现复杂数据到信号组的映射方法,其特征在于,包括以下步骤:
(1)对复杂数据进行递归得到简单数据元素,然后将所述简单数据元素存于空的数据元素列表中,得到数据元素列表;
(2)获得信号组包含的所有信号,存于信号列表中;
(3)对于数据元素列表和信号列表,将所述简单数据元素作为二分图的左子图,将信号作为二分图的右子图,以简单数据元素能映射到信号上作为连接条件,完成二分图的构造;
(4)对所述的二分图使用最大匹配算法求最大匹配,如果所得到的最大匹配值等于信号列表的长度,则转到步骤(5),否则放弃;
(5)对于得到的信号匹配列表,在AUTOSAR系统配置模型中建立简单数据元素到信号的映射关系,完成复杂数据到信号组的映射。
2.根据权利要求1所述的在AUTOSAR中实现复杂数据到信号组的映射方法,其特征在于,步骤(1)中,对复杂数据进行递归得到简单数据元素的步骤包括:
(2.1)建立一个空的数据元素列表,对复杂数据中的数据元素类型进行如下判断和操作:
(2.2)如果数据元素类型是简单类型,将其加入数据元素列表中;
(2.3)如果数据元素类型是数组类型,获得数组元素和数组长度length,将length个数组元素进行步骤(2.2)的操作;
(2.4)如果数据元素类型是结构体类型,获得所有的结构体元素,将所有的结构体元素进行步骤(2.2)的操作。
3.根据权利要求1所述的在AUTOSAR中实现复杂数据到信号组的映射方法,其特征在于,步骤(3)中,所述连接条件的判断方法如下:
取每一个简单数据元素与每一个信号进行比较,若简单数据元素的类型能够容纳下信号的长度,则能够连接;
否则不能连接。
4.根据权利要求1所述的在AUTOSAR中实现复杂数据到信号组的映射方法,其特征在于,所述的复杂数据的类型为数组类型;
步骤(5)中,在AUTOSAR系统配置模型中建立简单数据元素到信号的映射关系包括:
(5.1)初始i=0;
(5.2)获得所述复杂数据的数组元素和数组长度length;
(5.3)遍历数组中的每个数组元素,对于第k个数组元素,建立IndexedArrayElement,index设为k,ArrayElement设为数组元素,信号为最大匹配对应的第i个信号,建立SenderRecArrayElementMapping,i++。
5.根据权利要求1所述的在AUTOSAR中实现复杂数据到信号组的映射方法,其特征在于,所述的复杂数据的类型为结构体类型;
步骤(5)中,在AUTOSAR系统配置模型中建立简单数据元素到信号的映射关系包括:
(5.1)初始i=0;
(5.2)获得所述复杂数据包含的所有结构体元素;
(5.3)对于第j个结构体元素,建立SenderRecRecordElementMapping,设置其RecordElement为第j个结构体元素,信号为最大匹配对应的第i个信号,i++。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2013100483271A CN103176796A (zh) | 2013-02-04 | 2013-02-04 | 一种在autosar中实现复杂数据到信号组的映射方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2013100483271A CN103176796A (zh) | 2013-02-04 | 2013-02-04 | 一种在autosar中实现复杂数据到信号组的映射方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN103176796A true CN103176796A (zh) | 2013-06-26 |
Family
ID=48636701
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2013100483271A Pending CN103176796A (zh) | 2013-02-04 | 2013-02-04 | 一种在autosar中实现复杂数据到信号组的映射方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103176796A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2015051736A1 (zh) * | 2013-10-09 | 2015-04-16 | 电信科学技术研究院 | 一种网络节点的报文传输的容错方法及网络节点 |
CN109117121A (zh) * | 2018-05-08 | 2019-01-01 | 宁波央腾汽车电子有限公司 | 一种autosar软件架构实现方法 |
KR20200072443A (ko) * | 2018-12-12 | 2020-06-22 | 현대오트론 주식회사 | Autosar 송신기-수신기 통신을 위한 데이터 매핑 항목 생성 방법 |
CN115657634A (zh) * | 2022-09-30 | 2023-01-31 | 成都赛力斯科技有限公司 | 汽车软件架构、模块关联方法、计算机设备和存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102231107A (zh) * | 2011-06-09 | 2011-11-02 | 浙江大学 | 基于autosar的电控单元通信数据格式的自动生成方法 |
US20120072198A1 (en) * | 2010-09-17 | 2012-03-22 | International Business Machines Corporation | Coupling architectural and implementation/behavioral models of a computer-based system |
CN102662829A (zh) * | 2012-03-16 | 2012-09-12 | 北京邮电大学 | 一种复杂数据结构在代码静态测试中的处理方法和装置 |
CN102880469A (zh) * | 2012-09-12 | 2013-01-16 | 浙江大学 | 一种实现AUTOSAR中ExclusiveArea到OSResource映射的方法 |
-
2013
- 2013-02-04 CN CN2013100483271A patent/CN103176796A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120072198A1 (en) * | 2010-09-17 | 2012-03-22 | International Business Machines Corporation | Coupling architectural and implementation/behavioral models of a computer-based system |
CN102231107A (zh) * | 2011-06-09 | 2011-11-02 | 浙江大学 | 基于autosar的电控单元通信数据格式的自动生成方法 |
CN102662829A (zh) * | 2012-03-16 | 2012-09-12 | 北京邮电大学 | 一种复杂数据结构在代码静态测试中的处理方法和装置 |
CN102880469A (zh) * | 2012-09-12 | 2013-01-16 | 浙江大学 | 一种实现AUTOSAR中ExclusiveArea到OSResource映射的方法 |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2015051736A1 (zh) * | 2013-10-09 | 2015-04-16 | 电信科学技术研究院 | 一种网络节点的报文传输的容错方法及网络节点 |
CN104581772A (zh) * | 2013-10-09 | 2015-04-29 | 电信科学技术研究院 | 一种网络节点的报文传输的容错方法及网络节点 |
CN104581772B (zh) * | 2013-10-09 | 2018-04-17 | 电信科学技术研究院 | 一种网络节点的报文传输的容错方法及网络节点 |
CN109117121A (zh) * | 2018-05-08 | 2019-01-01 | 宁波央腾汽车电子有限公司 | 一种autosar软件架构实现方法 |
CN109117121B (zh) * | 2018-05-08 | 2022-05-27 | 宁波央腾汽车电子有限公司 | 一种autosar软件架构实现方法 |
KR20200072443A (ko) * | 2018-12-12 | 2020-06-22 | 현대오트론 주식회사 | Autosar 송신기-수신기 통신을 위한 데이터 매핑 항목 생성 방법 |
KR102275139B1 (ko) * | 2018-12-12 | 2021-07-08 | 현대오트론 주식회사 | Autosar 송신기-수신기 통신을 위한 데이터 매핑 항목 생성 방법 |
CN115657634A (zh) * | 2022-09-30 | 2023-01-31 | 成都赛力斯科技有限公司 | 汽车软件架构、模块关联方法、计算机设备和存储介质 |
CN115657634B (zh) * | 2022-09-30 | 2024-06-04 | 重庆赛力斯凤凰智创科技有限公司 | 汽车软件架构、模块关联方法、计算机设备和存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102231107B (zh) | 基于autosar的电控单元通信数据格式的自动生成方法 | |
CN108365967A (zh) | 动态配置通讯参数的方法、系统、终端及计算机可读存储介质 | |
CN103176796A (zh) | 一种在autosar中实现复杂数据到信号组的映射方法 | |
CN111340456A (zh) | 基于物联网的边云协同数据处理方法、装置及设备 | |
CN104539502A (zh) | 一种自定义添加modbus设备的方法 | |
CN103617255A (zh) | 一种用于电力信息系统的业务数据交换同步系统及方法 | |
US11997438B2 (en) | Declarative IoT data control | |
CN102611741B (zh) | 从autosar系统配置模型中提取通信矩阵的方法 | |
CN111512332B (zh) | 一种联盟链共识下满足分区容忍性的拓扑构造方法及系统 | |
CN106373279B (zh) | 用于多表集抄系统的智能ic卡水表的通信方法 | |
CN105590436A (zh) | 一种点对点抄表方法 | |
CN102710656A (zh) | 基于汽车网关系统的通信协议逆向解析方法 | |
CN106446169A (zh) | 一种终端设备中用户信息的管理方法和装置 | |
CN104050291A (zh) | 一种账户余额数据的并行处理方法和系统 | |
CN103763098A (zh) | 一种用于诊断的安全验证方法 | |
CN103746894B (zh) | 一种基于地理位置约束的批量虚拟网络映射方法 | |
CN102710479A (zh) | 用于通信协议逆向解析的汽车网关系统 | |
CN104201515A (zh) | 一种远程智能插座 | |
CN109446146B (zh) | 一种应用层通信协议的状态转换序列生成方法 | |
CN103188117B (zh) | 信息交互服务器仿真测试装置及方法 | |
CN105704210A (zh) | 充电桩信息更新方法和系统 | |
CN107800738B (zh) | 数据更新的方法与装置 | |
CN108683547A (zh) | 一种软件定义的无线传感网络配置方法 | |
CN110248306A (zh) | 一种源节点的协作节点确定方法、装置、电子设备及介质 | |
CN109638845B (zh) | 输电线路投切组合方案建立方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C12 | Rejection of a patent application after its publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20130626 |