ROS笔记
文章平均质量分 51
ROS学习历程
小XiaXia
沉迷学习,不能自拔
展开
-
launch启动文件的使用方法
Launch文件语法1、<launch> launch文件中的根元素采用<launch>标签定义2、<node>• pkg:节点所在的功能包名称• type:节点的可执行文件名称• name:节点运行时的名称• output 、respawn 、required 、ns 、args3、<param> / <rosparam>设置ROS系统运行中的参数,存储在参数服务器中。 <param name="output_frame.原创 2021-01-11 10:05:19 · 2911 阅读 · 0 评论 -
tf坐标系广播与监听的编程实现
创建功能包cd ~/catkin_ws/srccatkin_create_pkg learning_tf roscpp rospy tf turtlesim创建tf广播器代码(C++)learning_tf/src/turtle_tf_broadcaster.cpplearning_tf/src/turtle_tf_listener.cpp配置tf广播器与监听器代码编译规则编译并运行cd ~/catkin_wscatkin_makesource devel/setup.bashr原创 2021-01-10 22:14:11 · 203 阅读 · 0 评论 -
ROS中的坐标系管理系统
TF有一个时间属性,默认会记录10s之内,机器人所有坐标之间的位置关系机器人中的坐标变换sudo apt-get install ros-noetic-turtle-tfroslaunch turtle_tf turtle_tf_demo.launchrosrun turtlesim turtle_teleop_keyrosrun tf view_frames运行roslaunch turtle_tf turtle_tf_demo.launch时有一个错误:ImportError: N..原创 2021-01-10 20:33:33 · 227 阅读 · 0 评论 -
参数的使用与编程方法
1、创建功能包cd ~/catkin_ws/srccatkin_create_pkg learning_parameter roscpp rospy std_srvs2、参数命令行使用YAML参数文件⚫ 列出当前多有参数 rosparam list⚫ 显示某个参数值 rosparam get param_key⚫ 设置某个参数值 rosparam set param_key param_value⚫ 保存参数到文件 rosparam dump file_name⚫ 从文件读取参数.原创 2021-01-10 16:39:02 · 565 阅读 · 0 评论 -
服务数据的定义与使用
1、自定义服务数据通过编译Person.srv,产生固定的头文件,三个横线之上,request的内容,之下,response的内容进入learning_service/srv下,运行touch Person.srv,再把内容粘贴进去把代码粘贴进去运行catkin_make产生3个,但是person.h是一个整体,头文件只需要一个即可2、创建服务器代码(C++)learning_service/src3、配置服务器/客户端代码编译规则4、编译并运行客户端和服务端cd ~.原创 2021-01-10 15:32:57 · 178 阅读 · 1 评论 -
服务端Server的编程实现
ROS当中针对服务的标准定义Trigger,相当于一个触发信号,运动还是停止 创建服务器代码(C++) learning_service/src ros::spinOnce()查看有没有消息进来了,有服务数据进来就进入到回调函数中,标志位pubCommand为true就发布指令,海龟就会动起来 三个横线之上,request的内容,之下,response的内容2. 配置服务器代码编译规则3 .编译并运行服务器cd ~/catkin_wscatkin_ma...原创 2021-01-10 12:44:37 · 318 阅读 · 0 评论 -
客户端Client的编程实现
Client发布产生海龟的一个Request请求,发给Server端(小海龟仿真器),Server端收到请求后会产生一个新的海龟,回馈一个Response给Client,service名字为/spawn,用到service的消息结构叫做turtlesim::Spawn,在turtlesim的功能包自定义的一个消息结构在工作空间下创建一个learning_servicecatkin_create_pkg learning_service roscpp rospy std_msgs geometry_.原创 2021-01-10 11:43:38 · 553 阅读 · 0 评论 -
话题消息的定义与使用
自定义话题消息在learning_topic中创建msg文件夹,存放消息的相关定义进入msg,右键,打开终端touch Person.msg即可创建Person.msg文件ros根据定义把它变成不同的C++和Python文件这里的package.xml和CMakeLists.txt在learning_topic功能包下编译选项解读:图片中带省略号的那部分,意思是在函数括号最后面加上省略号后的部分编译依赖:依赖动态产生message的一个功能包运行依赖:依赖动态..原创 2021-01-10 10:32:25 · 225 阅读 · 0 评论 -
ROS安装与配置中问题汇总
安装ROS1.添加软件源sudo sh -c ‘echo “deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main” > /etc/apt/sources.list.d/ros-latest.list’ 22. 添加密钥 sudo apt-key adv --keyserver ‘hkp://keyserver.ubuntu.com:80’ --recv-key C1CF6E31E6BADE8868B172B4F42ED6FBAB原创 2021-01-09 17:01:59 · 601 阅读 · 0 评论 -
订阅者Subscriber的编程实现
把pose_subscriber.cpp放进learning_topic的src文件中原创 2021-01-09 12:05:40 · 292 阅读 · 1 评论 -
创建工作空间与功能包
创建工作空间打开所在文件位置,右键,可打开当前终端src:代码空间(如.cpp)build:编译空间devel:开发空间install:安装空间mkdir catkin_init_workspace原创 2021-01-09 09:44:19 · 194 阅读 · 0 评论 -
发布者Publisher的编程实现
创建工作原创 2021-01-09 10:50:34 · 203 阅读 · 0 评论 -
命令行工具的使用
小海龟启动ROS Master:roscore启动小海龟仿真器rosrun turtlesim turtlesim_node启动海龟控制节点rosrun turtlesim turtle_teleop_key功能rosnode回车查看信息列出所有的活动节点rosnode list打印有关节点信息rosnode info NODE...原创 2021-01-07 21:10:14 · 130 阅读 · 0 评论