本发明涉及仿真通信,特别涉及一种基于udp与dds架构的半实物仿真通信系统。
背景技术:
1、随着无人机技术的逐渐成熟,无人机集群化成为了未来一种新的模式。而对于无人集群相关的仿真研究,有传统的数字仿真、半实物仿真以及实物飞行试验等。数字仿真通过matlab等数字仿真软件进行建模,半实物仿真在数字的基础上,将仿真硬件加入到了仿真回路中。相较于数字仿真,半实物仿真更加贴近于实物飞行效果,并且半实物仿真在实验研究成本方面较实物飞行试验低。
2、udp是osi参考模型中一种无连接的传输层协议,提供面向事务的简单不可靠信息传送服务,传输效率高,适用于可靠性比较高的局域网。dds标准是omg推出的为分布式实时计算环境提供数据交互的服务模型,具有灵活性、实时性与可拓展性等。
3、现有半实物仿真通信方式,在无人集群半实物仿真中,多个节点仿真存在通信延时高、通信质量不稳定以及实时性的问题,仿真试验效果不好。
技术实现思路
1、为解决上述问题,本发明提供了一种基于udp与dds架构的半实物仿真通信系统,利用了udp、dds通信协议的优势,解决虚拟系统对于实物系统的仿真调度以及仿真过程中的数据交互问题,实现了数字系统与半实物系统间的数据交互。
2、本发明提供了一种基于udp与dds架构的半实物仿真通信系统,具体技术方案如下:
3、包括数字仿真系统和半实物系统;
4、所述数字仿真系统与半实物系统之间通过dds中间件进行数据传输,所述半实物系统内部通过udp进行数据通信;
5、所述数字仿真系统与所述半实物系统的数据通信包括半实物系统订阅监听和半实物系统发布请求。
6、进一步的,所述数字仿真系统与半实物系统之间,所述数据传输的格式为json格式;所述半实物系统内部的数据传输格式为数据报文。
7、进一步的,所述半实物系统订阅监听,具体如下:
8、半实物系统开启dds通信订阅监听端口,监听所有通过dds接口发送到该端口的json传输格式定义的数据。
9、进一步的,所述半实物系统发布请求,具体如下:
10、半实物系统将需要发送的消息封装为json数据传输格式,通过dds封装的通信接口,将数据发送给已建立dds通信通道的所述数字仿真系统。
11、进一步的,半实物系统内部数据通信包括udp请求和udp监听;
12、所述udp请求为仿真管理机通过udp的send函数,将数据发送给实时仿真机;
13、所述udp监听为仿真管理机开启udp通信监听端口,监听通过udp的send函数发送到该监听端口的数据报文格式。
14、进一步的,所述半实物系统内部数据通信,具体步骤如下:
15、a1:在半实物系统中创建仿真管理类,用于半实物系统的仿真控制;
16、a2:在半实物系统中创建线程管理类,用于步骤a1中仿真过程的数据通信;
17、a3:创建udp请求类调用数据发送函数,创建udp监听类调用数据接收函数。
18、进一步的,步骤a1中,所述仿真管理类中包括初始化函数、运行函数以及退出函数。
19、进一步的,所述半实物系统订阅监听,具体步骤如下:
20、s1:创建订阅监听基类;
21、s2:创建监听dds通信接口类,所述监听dds通信接口类中包括dds通道函数和数据接收函数;
22、s3:创建订阅监听实例和dds通信实例;
23、s4:调用数据接收函数接收数据;
24、s5:解析json数据。
25、进一步的,所述解析json数据,为将接收到的数据,通过半实物系统中的qjsondocument类、qjsonobject类,将json键值对解析为string类型。
26、进一步的,所述半实物系统发布请求,具体步骤如下:
27、m1:打包json数据;
28、m2:创建发布dds通信接口类,所述发布dds通信接口类包括dds通道函数和数据发送函数;
29、m3:创建发布请求基类,用于管理多种dds发布请求的数据服务;
30、m4:创建发布请求实例和dds通信实例,所述发布请求实例用于管理具体数据服务,所述dds通信实例用于调用dds通道函数和数据发送函数;
31、m5:发送json数据。
32、本发明的有益效果如下:
33、本发明数字仿真系统与半实物系统之间采用dds分布式实时通信方式,采用json作为数据传输格式,支持全类型数据传输;半实物系统内采用udp协议;同时采用多线程机制无阻塞的监听半实物系统内部的通信数据;采用点对点的通信方法并使用dds通信作为半实物系统与数字仿真系统之间数据传输的通信方式,保证了数字仿真系统与半实物系统实时的数据通信;采用udp通信作为半实物系统内部数据传输的通信方式,实现了半实物系统内部高效的数据通信。
1.一种基于udp与dds架构的半实物仿真通信系统,其特征在于,包括数字仿真系统和半实物系统;
2.根据权利要求1所述的基于udp与dds架构的半实物仿真通信系统,其特征在于,所述数字仿真系统与半实物系统之间,所述数据传输的格式为json格式;所述半实物系统内部的数据传输格式为数据报文。
3.根据权利要求1所述的基于udp与dds架构的半实物仿真通信系统,其特征在于,所述半实物系统订阅监听,具体如下:
4.根据权利要求1所述的基于udp与dds架构的半实物仿真通信系统,其特征在于,所述半实物系统发布请求,具体如下:
5.根据权利要求1所述的基于udp与dds架构的半实物仿真通信系统,其特征在于,半实物系统内部数据通信包括udp请求和udp监听;
6.根据权利要求5所述的基于udp与dds架构的半实物仿真通信系统,其特征在于,所述半实物系统内部数据通信,具体步骤如下:
7.根据权利要求6所述的基于udp与dds架构的半实物仿真通信系统,其特征在于,步骤a1中,所述仿真管理类中包括初始化函数、运行函数以及退出函数。
8.根据权利要求1所述的基于udp与dds架构的半实物仿真通信系统,其特征在于,所述半实物系统订阅监听,具体步骤如下:
9.根据权利要求8所述的基于udp与dds架构的半实物仿真通信系统,其特征在于,所述解析json数据,为将接收到的数据,通过半实物系统中的qjsondocument类、qjsonobject类,将json键值对解析为string类型。
10.根据权利要求1所述的基于udp与dds架构的半实物仿真通信系统,其特征在于,所述半实物系统发布请求,具体步骤如下: