• ROS消息, 服务, 主题, 订阅 5


    #include "ros/ros.h"
    #include "geometry_msgs/Twist.h"
    #include "geometry_msgs/Vector3.h"
    
    int main(int argc, char ** argv){
        ros::init(argc, argv, "sendCMD2Turtule");
        ros::NodeHandle nodeHandle;
        ros::Publisher cmdPub = nodeHandle.advertise<geometry_msgs::Twist>("/turtle1/cmd_vel" , 1000);
        ros::Rate loop_rate(1);
    
        while(ros::ok()){
            geometry_msgs::Twist twist;
            geometry_msgs::Vector3 setLinear;
            setLinear.x = 1.0f;
            twist.linear = setLinear;
            
            ROS_INFO("liner x: %f, moving!", 1.0f); 
            cmdPub.publish(twist);
            ros::spinOnce();
            loop_rate.sleep();
        }
        
        return 0;
    }
    

    My turtlesim control node.

    and CMakeLists.txt:

    find_package(catkin REQUIRED COMPONENTS
      roscpp
      rospy
      std_msgs
      message_generation
      geometry_msgs
    )
    
    catkin_package(
    #  INCLUDE_DIRS include
    #  LIBRARIES beginner_tutorials
       CATKIN_DEPENDS message_runtime roscpp rospy std_msgs geometry_msgs
    #  DEPENDS system_lib
    )
    
    
    generate_messages(
       DEPENDENCIES
       std_msgs
       geometry_msgs
    )
    ...
    add_executable(sendCmd2TurtleSim src/sendCmd2TurtleSim.cpp)
    target_link_libraries(sendCmd2TurtleSim ${catkin_LIBRARIES})
    add_dependencies(sendCmd2TurtleSim beginner_tutorials_generate_messages_cpp) 
    

    package.xml:

      <build_depend>geometry_msgs</build_depend>
      <run_depend>geometry_msgs</run_depend>
    
  • 相关阅读:
    QT多个UI文件加入一个项目
    【Go语言】学习资料
    MVC如何在Pipeline中接管请求的?
    ASP.NET MVC路由(5)
    C# dll 事件执行 js 回调函数
    初识Identity
    SpringMVC拦截器
    UrlRouting的理解
    ASP.NET MVC路由
    ASP.NET MVC Module
  • 原文地址:https://www.cnblogs.com/Montauk/p/6866904.html
Copyright © 2020-2023  润新知