一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种整车SOA架构下基于SOMEIP协议的数据处理方法和装置与流程

2022-07-02 09:25:54 来源:中国专利 TAG:

技术特征:
1.一种整车soa架构下基于someip协议的数据处理方法,其特征在于,包括:基于车载网络通信中的通信业务需求发布对应业务数据;根据业务数据的类型判断业务数据需要序列化操作或者反序列化操作;若判定业务数据需要序列化操作,则生成与所述业务数据对应的序列化函数并对所述业务数据进行序列化操作;若判定业务数据需要反序列化操作,则生成与所述业务数据对应的反序列化函数并对业务数据进行反序列化操作。2.根据权利要求1所述的整车soa架构下基于someip协议的数据处理方法,其特征在于,所述业务数据具有详细的接口定义信息,所述接口定义信息包括接口类型、名称、端点标志位和传输标志位,所述端点标志位用于表明所述业务数据的执行器类型,所述执行器类型包括server端和client端,所述传输标志位用于表明所述业务数据的数据来源类型,所述数据来源类型包括输出数据和输入数据。3.根据权利要求2所述的整车soa架构下基于someip协议的数据处理方法,其特征在于,所述方法还包括:将所述接口定义信息存放于excel表格中,若所述业务数据包括成员变量,则存放于excel表格中的所述接口定义信息还包括成员变量名称相关信息;使用python语言基于pandas读取excel表格中业务数据接口定义信息;自动生成所有业务数据变量的定义;所述生成与所述业务数据对应的序列化函数包括:通过遍历存有接口定义信息的列表,判断数据类型为基础类型、结构体、数组或者字符串,使用write函数按照不同的数据类型自动编写适用对应类型的序列化函数;所述生成与所述业务数据对应的反序列化函数包括:通过遍历存有接口定义信息的列表,判断数据类型为基础类型、结构体、数组或者字符串,使用write函数按照不同的数据类型自动编写适用对应类型的反序列化函数。4.根据权利要求1所述的整车soa架构下基于someip协议的数据处理方法,其特征在于,所述对所述业务数据进行序列化操作包括:选出作为服务端或客户端需要发送的数据进行序列化,序列化函数的输入需要序列化的应用层数据和最小单位为uint8类型的vector,序列化操作包括如下四种情况:(1)对基础类型的数据进行序列化操作包括:在模板函数tobytes中,首先对传入的数据进行转换为char类型指针的强制类型转换,然后根据规定的大小端不同对vector进行push_back,最后对模板类型计算大小size并作为函数的返回值;(2)对结构体类型的数据进行序列化操作包括:判断结构体元素的类型是否为基础类型,若是基础类型,则依次使用基础类型的模板函数;若否,则根据不同的数据类型设计不同的序列化函数,所述不同的数据类型包括基础类型、结构体类型、数组类型、字符串类型;通过每一次序列化返回值累加计算并将计算结果添加得到length_field;(3)对数组类型的数据进行序列化操作包括:通过循环逐一对数组元素进行序列化并累加每一个数组元素的大小;通过添加累加的大小size赋值到length_field;(4)对字符串类型的数据进行序列化操作包括:对于中间报文内容通过字符按照大小端规则转换成字节流的形式;添加0xef bb bf的头和0x00的尾,对于中间报文内容序列化
则遍历字符串每个字符并加入到vector中。5.根据权利要求4所述的整车soa架构下基于someip协议的数据处理方法,其特征在于,所述对所述业务数据进行反序列化包括:解析各数据类型的someip协议的数据流,反序列化方法包括以下四种情况:(1)对于基础数据类型的反序列化操作包括:反序列化函数的输入需要解析二进制流和目标地址,使用模板函数totype通过指针的方式按照大小端原则进行重组,并通过memcpy内存拷贝的方式获取解析的数据;直接使用模板函数进行反序列化;(2)对于结构体数据类型的反序列化操作包括:首先去掉头部length_field,然后再进行反序列化;模板函数totype采用迭代器的方式,采用从前到后的原则,每一个成员变量反序列化后都删除相应长度的变量,对于基础数据类型的使用模板函数进行反序列化,对于复杂结构体类型的则判断复杂结构体中包含的不同的数据类型,基于不同的数据类型使用对应的反序列化方法,所述不同的数据类型包括基础类型、结构体类型、数组类型、字符串类型;(3)对于数组类型数据的反序列化操作包括:对于数组的反序列化,去掉头部,然后再遍历数组中的每个元素,对其进行反序列化;每进行一次反序列化则需要删除对应的长度,以准确实现下一个元素的反序列化;(4)对于字符串的反序列化操作包括:首先判断头部和尾部是否是按照规定的值,然后通过指针的方式对目标数组进行赋值,最后通过累加各个字符即可得到反序列化后的字符串。6.一种整车soa架构下基于someip协议的数据处理装置,其特征在于,包括:业务数据发布模块,用于基于车载网络通信中的通信业务需求发布对应业务数据;序列化或反序列化函数判断模块,用于判断业务数据需要序列化操作或者反序列化操作;序列化模块,用于在所述业务数据分析模块判定业务数据需要序列化操作时生成对应的序列化函数并对业务数据进行序列化;反序列化模块,用于在所述业务数据分析模块判定业务数据需要反序列化操作时生成对应的反序列化函数并对业务数据进行反序列化。7.根据权利要求6所述的整车soa架构下基于someip协议的数据处理装置,其特征在于,所述业务数据有详细的接口定义信息,所述接口定义信息包括接口类型、名称、端点标志位和传输标志位,所述端点标志位用于表明所述业务数据的执行器类型,所述执行器类型包括server端和client端,所述传输标志位用于表明所述业务数据的数据来源类型,所述数据来源类型包括输出数据和输入数据。8.根据权利要求7所述的整车soa架构下基于someip协议的数据处理装置,其特征在于,所述业务数据生成模块还用于将所述接口定义信息存放于excel表格中,若所述业务数据包括成员变量,则存放于excel表格中的所述接口定义信息还包括成员变量名称相关信息,还用于使用python语言基于pandas读取excel表格中业务数据接口定义信息,及自动生成所有业务数据变量的定义;所述序列化模块包括:序列化函数生成模块,用于通过遍历存有所述接口定义信息的列表,判断数据类型为基础类型、结构体、数组或者字符串,使用write函数按照不同的数据
类型自动编写适用对应类型的序列化函数;所述反序列化模块包括:反序列化函数生成模块,用于通过遍历存有所述接口定义信息的列表,判断数据类型为基础类型、结构体、数组或者字符串,使用write函数按照不同的数据类型自动编写适用对应类型的反序列化函数。9.一种计算机设备,其特征在于,包括:至少一个处理器;以及存储器,所述存储器存储有可在所述处理器上运行的计算机指令,所述指令由所述处理器执行时实现权利要求1-5任意一项所述方法的步骤。10.一种存储介质,其特征在于,所述存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至5任一项所述方法的步骤。

技术总结
本申请公开了一种整车SOA架构下基于SOMEIP协议的数据处理方法和装置,所述方法包括:基于车载网络通信中的通信业务需求发布对应业务数据;根据业务数据的类型判断业务数据需要序列化操作或者反序列化操作;若判定业务数据需要序列化操作,则生成与所述业务数据对应的序列化函数并对所述业务数据进行序列化操作;若判定业务数据需要反序列化操作,则生成与所述业务数据对应的反序列化函数并对业务数据进行反序列化操作。基于上述方案,本申请将基于SOMEIP协议的序列化和反序列化过程与基于业务需求的变更自动化生成所需代码的过程统一于智能驾驶汽车与外部进行以太网通信的过程,大大缩短开发时间,快速适应变更需求。求。求。


技术研发人员:赵堃腾 殷玮
受保护的技术使用者:智己汽车科技有限公司
技术研发日:2022.02.24
技术公布日:2022/7/1
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献