当前位置: 首页 > news >正文

朝阳企业网站建设方案省厅建设信息网网站

朝阳企业网站建设方案,省厅建设信息网网站,wordpress添加左侧菜单,中国银行全球门户网站在单个进程中组合多个节点 目录 背景 运行演示 发现可用组件 使用 ROS 服务 (1.) 与发布者和订阅者的运行时组合 使用 ROS 服务 (1.) 与服务器和客户端的运行时组合 使用 ROS 服务的编译时组合 (2.) 使用 dlopen 的运行时组合 使用启动动作组合 高级主题 卸载组件 重新…在单个进程中组合多个节点 目录 背景 运行演示 发现可用组件 使用 ROS 服务 (1.) 与发布者和订阅者的运行时组合 使用 ROS 服务 (1.) 与服务器和客户端的运行时组合 使用 ROS 服务的编译时组合 (2.) 使用 dlopen 的运行时组合 使用启动动作组合 高级主题 卸载组件 重新映射容器名称和命名空间 重新映射组件名称和命名空间 作为共享库的可组合节点 背景 请参阅概念文章。 运行演示 演示使用来自rclcpp_components、ros2component和组合包的可执行文件可以使用以下命令运行。 发现可用组件 要查看工作区中已注册和可用的组件请在 shell 中执行以下命令 $ ros2 component types compositioncomposition::Talkercomposition::Listenercomposition::Servercomposition::Client使用 ROS 服务 (1.) 与发布者和订阅者的运行时组合 在第一个 shell 中启动组件容器 ros2 run rclcpp_components component_containerros2通过命令行工具验证容器是否正在运行 $ ros2 component list /ComponentManager在第二个 shell 中参见talker源代码。该命令将返回加载组件的唯一 ID 以及节点名称。 $ ros2 component load /ComponentManager composition composition::Talker Loaded component 1 into /ComponentManager container node as /talker现在第一个 shell 应该显示一条消息表明组件已加载以及用于发布消息的重复消息。 第二个 shell 中的另一个命令参见监听器源代码 $ ros2 component load /ComponentManager composition composition::Listener Loaded component 2 into /ComponentManager container node as /listener命令行实用程序ros2现在可用于检查容器的状态 $ ros2 component list /ComponentManager1 /talker2 /listener现在第一个 shell 应该显示每条接收到的消息的重复输出。 使用 ROS 服务 (1.) 与服务器和客户端的运行时组合 服务器和客户端的示例非常相似。 在第一个外壳中 ros2 run rclcpp_components component_container在第二个 shell 中参见服务器和客户端源代码 ros2 component load /ComponentManager composition composition::Server ros2 component load /ComponentManager composition composition::Client在这种情况下客户端向服务器发送请求服务器处理请求并回复响应客户端打印收到的响应。 使用 ROS 服务的编译时组合 (2.) 该演示表明可以重复使用相同的共享库来编译运行多个组件的单个可执行文件。可执行文件包含上面的所有四个组件说话者和听众以及服务器和客户端。 在 shell 调用中参见源代码 ros2 run composition manual_composition这应该显示来自双方的重复消息说话者和听众以及服务器和客户端。 笔记 手动组合的组件不会反映在命令行工具输出中。ros2 component list 使用 dlopen 的运行时组合 该演示通过创建通用容器进程并显式传递要加载的库而不使用 ROS 接口来提供 1. 的替代方法。该过程将打开每个库并在库源代码中为每个“rclcpp::Node”类创建一个实例。 ros2 run composition dlopen_composition ros2 pkg prefix composition/lib/libtalker_component.so ros2 pkg prefix composition/lib/liblistener_component.so现在 shell 应该显示每条发送和接收消息的重复输出。 笔记 dlopen 组合的组件不会反映在命令行工具输出中。ros2 component list 使用启动动作组合 虽然命令行工具对于调试和诊断组件配置很有用但同时启动一组组件通常更方便。要自动执行此操作我们可以使用 中的功能。ros2 launch ros2 launch composition composition_demo.launch.py高级主题 现在我们已经了解了组件的基本操作我们可以讨论一些更高级的主题。 卸载组件 在第一个 shell 中启动组件容器 ros2 run rclcpp_components component_containerros2通过命令行工具验证容器是否正在运行 $ ros2 component list /ComponentManager在第二个 shell 中参见talker源代码。该命令将返回加载组件的唯一 ID 以及节点名称。 $ ros2 component load /ComponentManager composition composition::Talker Loaded component 1 into /ComponentManager container node as /talker $ ros2 component load /ComponentManager composition composition::Listener Loaded component 2 into /ComponentManager container node as /listener使用唯一 ID 从组件容器中卸载节点。 $ ros2 component unload /ComponentManager 1 2 Unloaded component 1 from /ComponentManager container Unloaded component 2 from /ComponentManager container在第一个 shell 中验证来自 talker 和 listener 的重复消息是否已停止。 重新映射容器名称和命名空间 组件管理器名称和命名空间可以通过标准命令行参数重新映射 ros2 run rclcpp_components component_container --ros-args -r __node:MyContainer -r __ns:/ns在第二个 shell 中可以使用更新后的容器名称加载组件 ros2 component load /ns/MyContainer composition composition::Listener笔记 Namespace remappings of the container do not affect loaded components. Remap component names and namespaces Component names and namespaces may be adjusted via arguments to the load command. In the first shell, start the component container: ros2 run rclcpp_components component_containerSome examples of how to remap names and namespaces: # Remap node name ros2 component load /ComponentManager composition composition::Talker --node-name talker2 # Remap namespace ros2 component load /ComponentManager composition composition::Talker --node-namespace /ns # Remap both ros2 component load /ComponentManager composition composition::Talker --node-name talker3 --node-namespace /ns2The corresponding entries appear in ros2 component list: $ ros2 component list /ComponentManager1 /talker22 /ns/talker3 /ns2/talker3Note Namespace remappings of the container do not affect loaded components. Composable nodes as shared libraries If you want to export a composable node as a shared library from a package and use that node in another package that does link-time composition, add code to the CMake file which imports the actual targets in downstream packages. Then install the generated file and export the generated file. A practical example can be seen here: ROS Discourse - Ament best practice for sharing libraries
http://www.tj-hxxt.cn/news/225462.html

相关文章:

  • 做一张简单的app网站多钱手机网站常用代码
  • 高清logo网站网站维护建设招标
  • 坑梓网站建设咨询广州市 优化推广
  • 网站架构的优化涡阳哪里有做网站的
  • 网站开发周期定义郑州网站建设微信小程序
  • iis 新建网站 要登录物流网站哪个好
  • 东兴网站建设做网站项目前怎么收集需求
  • wordpress喜欢seo引擎优化专员
  • 自适应网站系统吗php网站 mysql数据库配置文件
  • 做网站群的公司一键建站哪家信誉好
  • 百度搜索不到自己的网站做网页公司
  • 河南省建设工程标准定额管理网站做化妆品销售网站如何
  • 肥东网站建设要给公司做一个网站怎么做的吗
  • 如何破解网站管理员登陆密码做蛋糕哪个教程网站好
  • 潍坊关键词优化平台网站seo入门
  • 手机网投网站建设网站建设中 动画
  • 西安网站开发招聘文字字体是什么网站
  • 北京网站建设qq群工作牌
  • 汽车精品设计网站建设it运维管理平台软件
  • 四川网站开发公司谷歌chrome浏览器下载
  • 网站维护会导致打不开网页吗?东凤镇做网站公司
  • 环球资源的服务种类seo扣费系统
  • 在您的网站首页添加标签做网站教程视频
  • 做网站商业欺骗赔多少网站建设公司专业公司哪家好
  • 群团网站建设最新wordpress模板
  • 团购网站及域名做网站需要用什么软件
  • 多肉建设网站前的市场分析pantone色卡官网入口
  • 宠物主题网站模板网站建设后台管理登陆代码
  • 东莞网站建设服务有什网站开发开票交税
  • 网站建设好了怎么进行推广科技公司网页