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

网站搭建设计方案诸城网站建设的文章

网站搭建设计方案,诸城网站建设的文章,小米应用商店下载,平面图怎么画ROS2 入门应用 引用自定义消息#xff08;C#xff09;1. 查看自定义消息2. 修改话题发布3. 修改话题订阅4. 修改依赖关系5. 修改编译信息6. 编译和运行1. 查看自定义消息 引用在《ROS2 入门应用 创建自定义接口》中自定义的消息Sphere.msg ros2 interface show tutorial_i… ROS2 入门应用 引用自定义消息C1. 查看自定义消息2. 修改话题发布3. 修改话题订阅4. 修改依赖关系5. 修改编译信息6. 编译和运行1. 查看自定义消息 引用在《ROS2 入门应用 创建自定义接口》中自定义的消息Sphere.msg ros2 interface show tutorial_interfaces/msg/Sphere# geometry_msgs/Point center # float64 x # float64 y # float64 z # float64 radius需要对《ROS2 入门应用 发布和订阅C》中创建的发布者/订阅者功能包稍作修改 cd ~/ros2_ws/src/cpp_pubsub/src将把数值的字符串更改为球体半径 2. 修改话题发布 修改publisher_member_function.cpp话题发布源文件涉及话题类型变更和应用变化 #include chrono #include memory#include rclcpp/rclcpp.hpp #include tutorial_interfaces/msg/sphere.hpp // CHANGE/* 方便表示时间 */ using namespace std::chrono_literals;/* 继承rclcpp:: node创建节点类MinimalPublisher */ class MinimalPublisher : public rclcpp::Node {public:/* 公共构造函数将节点命名为minimal_publisher并将count_初始化为0 */MinimalPublisher(): Node(minimal_publisher), count_(0){/* 初始化发布者publisher_ 使用Sphere消息类型、主题名称topic和在发生备份时限制消息所需的队列大小10 */publisher_ this-create_publishertutorial_interfaces::msg::Sphere(topic, 10); // CHANGE/* 初始化timer_设置timer_callback函数每500ms执行一次 */timer_ this-create_wall_timer(500ms, std::bind(MinimalPublisher::timer_callback, this));}private:/* 定义定时器回调函数 */void timer_callback(){/* 打印并发布球体半径信息 */auto message tutorial_interfaces::msg::Sphere(); // CHANGEmessage.radius this-count_; // CHANGERCLCPP_INFO_STREAM(this-get_logger(), Publishing: message.radius ); // CHANGEpublisher_-publish(message);}/* 计时器、发布者和计数器字段的声明 */rclcpp::TimerBase::SharedPtr timer_;rclcpp::Publishertutorial_interfaces::msg::Sphere::SharedPtr publisher_; // CHANGEsize_t count_; };int main(int argc, char * argv[]) {/* 初始化ROS2 */rclcpp::init(argc, argv);/* 运行节点MinimalPublisher */rclcpp::spin(std::make_sharedMinimalPublisher());/* 退出ROS2 */rclcpp::shutdown();return 0; }3. 修改话题订阅 修改subscriber_member_function.cpp话题订阅源文件涉及话题类型变更和应用变化 #include memory#include rclcpp/rclcpp.hpp #include tutorial_interfaces/msg/sphere.hpp // CHANGE/* 占位符代替回调函数中的第一个参数 */ using std::placeholders::_1;/* 继承rclcpp:: node创建节点类MinimalSubscriber */ class MinimalSubscriber : public rclcpp::Node {public:/* 公共构造函数将节点命名为minimal_subscriber */MinimalSubscriber(): Node(minimal_subscriber){/* 初始化订阅者subscription_ 使用Sphere消息类型、主题名称topic和在发生备份时限制消息所需的队列大小10订阅话题回调函数topic_callback */subscription_ this-create_subscriptiontutorial_interfaces::msg::Sphere( // CHANGEtopic, 10, std::bind(MinimalSubscriber::topic_callback, this, _1));}private:/* 定义订阅话题回调函数 */void topic_callback(const tutorial_interfaces::msg::Sphere msg) const // CHANGE{/* 打印话题消息的球体半径信息 */RCLCPP_INFO_STREAM(this-get_logger(), I heard: msg.radius );}/* 订阅者字段的声明 */rclcpp::Subscriptiontutorial_interfaces::msg::Sphere ::SharedPtr subscription_; // CHANGE };int main(int argc, char * argv[]) {/* 初始化ROS2 */rclcpp::init(argc, argv);/* 运行节点MinimalSubscriber*/rclcpp::spin(std::make_sharedMinimalSubscriber());/* 退出ROS2 */rclcpp::shutdown();return 0; } 4. 修改依赖关系 在package.xml清单文件中添加对自定义消息的依赖项的声明 dependtutorial_interfaces/depend5. 修改编译信息 在CMakeLists.txt编译文件中 更换搜索库 tutorial_interfaces更换可执行文件目标依赖关系 tutorial_interfaces #...find_package(ament_cmake REQUIRED) find_package(rclcpp REQUIRED) find_package(tutorial_interfaces REQUIRED) # CHANGEadd_executable(talker src/publisher_member_function.cpp) ament_target_dependencies(talker rclcpp tutorial_interfaces) # CHANGEadd_executable(listener src/subscriber_member_function.cpp) ament_target_dependencies(listener rclcpp tutorial_interfaces) # CHANGEinstall(TARGETStalkerlistenerDESTINATION lib/${PROJECT_NAME})ament_package()6. 编译和运行 进入工作空间根目录 cd ~/ros2_ws编译 colcon build --packages-select cpp_pubsub打开一个新终端运行话题发布节点 ros2 run cpp_pubsub talker# [INFO] [minimal_publisher]: Publishing: 0 # [INFO] [minimal_publisher]: Publishing: 1 # [INFO] [minimal_publisher]: Publishing: 2打开一个新终端运行话题订阅节点 ros2 run cpp_pubsub listener# [INFO] [minimal_subscriber]: I heard: 10 # [INFO] [minimal_subscriber]: I heard: 11 # [INFO] [minimal_subscriber]: I heard: 12谢谢
http://www.dnsts.com.cn/news/194849.html

相关文章:

  • 福建工程建设网站给企业建设网站的流程图
  • c 怎么做网站wordpress 除了
  • 吉林做网站的公司淘客网站佣金建设
  • 那些外国网站设计图多企业所得税的优惠政策
  • 辣妹子影院电视剧免费播放长沙优化网站哪家公司好
  • 彩票站自己做网站技能培训机构排名前十
  • 网站建设基本要素临淄网站建设公司
  • 如何选择电商网站建设龙江建站技术
  • 城乡建设网站投稿查域名价格
  • 网站备案需要提交什么资料wordpress怎么二次开发
  • 外贸网站如何做做织带的网站
  • 网页网站设计公司有哪些网站图片代码怎么做的
  • 网站密码如何找回如何帮公司做网站
  • 商城网站开发合同电子商务网站建设策划报告
  • 网络营销网站网站建设与管理 pdf
  • p2p网站制作wordpress开启目录
  • 网站内容优化的主要方法wordpress登录机制
  • 自学网站开发要多久公司做的网站费用如何做账
  • 教育局建设网站的必要性防雷整改久久建筑网
  • 做ipo尽调需要用到的网站wordpress图下一篇
  • 做网站要学哪些程序高性能网站建设指南 京东
  • 网站开发代理合同国内外网站建设比较
  • 手机端做的优秀的网站设计无货源一件代发平台
  • 建设网站用哪个主机好33ee紧急页面访问升级
  • 住房与城乡建设部网站职责阿里云轻量应用服务器wordpress
  • 胶州市经济技术开发区建设局网站网站404怎么做
  • 网站设计目标 优帮云网络营销推广的
  • 网站开发询价方案asp做微网站
  • 上网行为管理系统seo的主要工作是什么
  • 有些网站下方只有版权没有ICP烟台网站排行榜