[发明专利]一种基于DDS的动态数据类型通信方法及装置在审
申请号: | 202110430784.1 | 申请日: | 2021-04-21 |
公开(公告)号: | CN112989123A | 公开(公告)日: | 2021-06-18 |
发明(设计)人: | 徐庆;丁成;刘磊;董庆运 | 申请(专利权)人: | 知行汽车科技(苏州)有限公司 |
主分类号: | G06F16/81 | 分类号: | G06F16/81;G06F16/16 |
代理公司: | 南京常青藤知识产权代理有限公司 32286 | 代理人: | 高远 |
地址: | 215123 江苏省苏州市苏州工业园区*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 dds 动态 数据类型 通信 方法 装置 | ||
1.一种基于DDS的动态数据类型通信方法,其特征在于,包括:
编写动态数据类型对应的XML文件;
创建DDS监听器,所述DDS监听器加载XML文件,并构建相应的动态数据类型;所述动态数据类型包括类型描述符和类型内存对象,类型内存对象根据类型描述符通过递归方式为每个类型描述符的元素分配实例对象,直至元素为基本数据类型,并为实例对象提供序列化和反序列化的接口,从而实现内存二进制数据到实际动态类型变量之间的相互转换;
根据应用场景进行DDS总线数据监听、录制或者回放,其中,
在DDS总线数据监听模式中,配置需要订阅的DDS主题,进入监听状态,将收到的数据转换为对应的动态数据类型并进行格式化打印,持续监听直至收到退出指令;
在DDS总线数据录制模式中,配置需要订阅的DDS主题,新建数据库,在数据库中添加订阅的主题信息,将收到的数据转换为对应的动态数据类型,将数据序列化为字节流后写入数据库,持续录制直到收到退出指令;
在DDS总线数据回放模式中,配置需要发布/订阅的DDS主题,打开录制的数据库,判断是否达到数据库尾,若未到达数据库尾,则继续从数据库读取数据,通过DDS监听器向DDS总线发送数据,直至收到退出指令或者到达数据库尾时退出。
2.根据权利要求1所述的基于DDS的动态数据类型通信方法,其特征在于,在编写动态数据类型对应的XML文件过程中,包括以下步骤:
设置XML文件所在目录的环境变量,方便后续使用;
根据动态数据类型的嵌套关系,将各个XML文件进行数字化命名排序,保证调试工具在加载XML文件后能正确构建各动态数据类型。
3.根据权利要求2所述的基于DDS的动态数据类型通信方法,其特征在于,动态数据类型的类型描述符用于描述动态数据类型的构成方式,类型描述符的类型字段分为基本类型和非基本类型,基本类型只需使用语言提供的基本数据类型,非基本类型通过递归嵌套的方式单独构建,直至元素为基本数据类型。
4.根据权利要求1所述的基于DDS的动态数据类型通信方法,其特征在于,在构建相应的动态数据类型后,将动态数据类型保存到缓存中备份,避免重新创建。
5.根据权利要求1所述的基于DDS的动态数据类型通信方法,其特征在于,所述格式化打印的实现方法为:采用递归嵌套的方式访问动态数据类型的每个成员变量,并按照元素的层级进行格式化打印。
6.根据权利要求1所述的基于DDS的动态数据类型通信方法,其特征在于,数据监听和录制过程中,通过命令行参数传入需要订阅的DDS主题。
7.根据权利要求1所述的基于DDS的动态数据类型通信方法,其特征在于,当DDS监听器在DDS总线上发现需要发布/订阅的主题时,根据主题的数据类型名从动态数据类型缓存中查找匹配的动态数据类型,创建订阅/发布接口,开始接收/发送数据,否则给出告警提示。
8.根据权利要求1所述的基于DDS的动态数据类型通信方法,其特征在于,所述数据库为SQLite数据库。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于知行汽车科技(苏州)有限公司,未经知行汽车科技(苏州)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110430784.1/1.html,转载请声明来源钻瓜专利网。
- 上一篇:同轴摩擦磨损装置
- 下一篇:一种平稳性高的磁力泵