• 在ros中集成Fast-rtps库并运行hello world 程序


    1.介绍

    ROS:自行百度

    Fast-RTPS:是eProsima公司对RTPS标准的一个实现,也就是函数库。RTPS是DDS标准中的一个子集。RTPS:Real Time Publish Subscribe,是DDS标准中的通讯协议部分。其实ROS 2用到的DDS就是这个部分,所以Fast RTPS足够支持ROS 2的需求。简单来说Fast RTPS就是ROS 2中用来订阅发布消息的组件(前提是你的ROS 2选择它作为DDS实现)。(http://https://blog.csdn.net/fang_chuan/article/details/82152514)

    2. 实验目的

    在kubernetes集群中运行ROS集成Fast-RTPS的应用程序,测试k8s集群中各个pod可以正常接收通过Fast-RTPS发送的消息,可单播、可组播

    kubernetes网络插件——Weave ,本身支持 单播和组播

    3. 基本Dockerfile文件内容

    4. 通过Dockerfile文件生成Docker 镜像,并在该镜像中进行Fast-rtps的安装和测试

    5. 进入docker 镜像 ,启动容器,然后进行下面的安装

    第一步:安装JDK

    第二步:安装SDK man

    PS: curl 要多试几次,总是下载不下来,我试了第四遍的时候,开始正常下载了

    第三步:安装Gradle

    第四步:安装Gstreamer-1.12.3 库

    然后执行完进行 make install

    第五步:安装Fast—RTPS  (make的时候走的有点慢)

    6. 通过FastRtpsGen工具将IDL文件生成C++代码进行hello world 实验小程序

    写 Helloworld.idl文件

     

    7. 将容器打包成镜像,并 在kubernets 中进行安装和测试,启用了三个pod ,一个pub 消息,两个sub 消息

     

    大功告成,收发正常!!!

  • 相关阅读:
    扁平化设计五大原则
    扁平化
    如何调试PHP程序
    Java中的协变与逆变
    Java的equals方法实现及其细节
    Java的clone方法效率问题
    Mac的Terminal中无法使用mvim解决方案
    SC.Lab3对于Factory的构建过程(from HIT)
    关于Lab3中对于正则表达式的应用
    关于Java构造类与对象的思考
  • 原文地址:https://www.cnblogs.com/yytlmm/p/10274218.html
Copyright © 2020-2023  润新知