OpenDDS 在两台机器上实现通讯

2021/6/10 10:23:38

本文主要是介绍OpenDDS 在两台机器上实现通讯,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

OpenDDS 在两台机器上实现通讯

  • 通过Ip和Port通信
    • 在A机器上运行DCPSInfoRepo程序
    • 修改subscriber和publisher的配置文件sub.ini 和 pub.ini
    • 在A机器上运行subscriber
    • 在B机器上运行publisher
    • 小Tips

通过Ip和Port通信

打开命令行切换到上一节创建的测试文件夹目录下

在A机器上运行DCPSInfoRepo程序

执行命令

DCPSInfoRepo -ORBListenEndpoints iiop://172.16.0.63:12345 -ORBDebugLevel 10 -ORBLogFile DCPSInfoRepo.log

注:这个IP地址为当前DCPSInfoRepo运行的机器的IP地址,端口号可以随意配置,只要没有被占用就行.

修改subscriber和publisher的配置文件sub.ini 和 pub.ini

[common]
DCPSDebugLevel=0
DCPSInfoRepo=corbaloc::172.16.0.63:12345/DCPSInfoRepo
DCPSChunks=20
DCPSChunkAssociationMutltiplier=10
DCPSLivelinessFactor=80
DCPSBit=0
DCPSGlobalTransportConfig=$file

[transport/t1]
transport_type=udp

A机器的sub.ini 文件内容要与B机器的pub.ini内容保持一致
(偷偷告诉你,其实直接复制过去就行啦)

在A机器上运行subscriber

执行命令

.\subscriber -DCPSConfigFile sub.ini

在B机器上运行publisher

执行命令

.\publisher -DCPSConfigFile pub.ini

这样我们就可以在一台机器上进行订阅,另一台机器上进行发布了

小Tips

如果说发布运行成功,订阅方无反应,需要自行检查下发布订阅代码中关于domain id的设置以及主题名称的设置。实在不行你可以在一台机器上跑通发布订阅之后,把发布的代码拷贝到另一台电脑上去,这样就好啦。



这篇关于OpenDDS 在两台机器上实现通讯的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程