ROS
文章平均质量分 76
ʚVVcatɞ
时光难留,只有一去不返。
展开
-
使用Visual Studio Code 运行ROS
Visual Studio Code下载:https://code.visualstudio.com/docs?start=trueVisual Studio Code 历史版本下载链接: https://code.visualstudio.com/updates选择 .deb 64bit2.vscode 安装与卸载2.1 安装方式1:双击安装即可(或右击选择安装)方式2:sudo dpkg -i xxxx.debsudo dpkg -i code_1.59.0-1628120042原创 2021-08-13 22:41:51 · 4934 阅读 · 9 评论 -
树莓派4B装载ROS系统启动摄像头
安装 ros-kinetic-usb-cam 功能包sudo apt-get install ros-kinetic-usb-camroslaunch usb_cam usb_cam-test.launchrqt_image_view原创 2021-07-12 20:41:14 · 1091 阅读 · 2 评论 -
E: Unable to locate package ros-kinetic-usb-cam
sudo apt-get install ros-kinetic-usb-cam解决方法:进入到工作空间cd catkin_ws/src从 github 上下载usb-cam到本地的工程中git clone https://github.com/bosch-ros-pkg/usb_cam.gitcd ~/catkin_ws对下载的usb-cam进行编译cd ~/catkin_wscatkin_make...原创 2021-07-12 19:55:23 · 2061 阅读 · 2 评论 -
树莓派 4B安装ubuntu18.04与melodic版ROS
使用的树莓派 Raspberry Pi 4 —— 8GB在这个连接中http://old-releases.ubuntu.com/releases/bionic/找到该镜像:ubuntu-18.04.4-preinstalled-server-arm64+raspi4.img.xz下载后解压然后使用 SDFormatter 格式化SD卡SD卡放入读卡器,插进电脑,打开win32 磁盘映像工具,选取ubuntu-18.04.5-preinstalled-server-armhf+raspi4.原创 2021-07-12 16:39:54 · 478 阅读 · 0 评论 -
ROS 分布式通信
ROS是一种分布式软件框架,节点之间通过松耦合的方式进行组合。如何实现分布式多机通信(1)设置IP地址,确保底层链路的联通ifconfig在树莓派的终端中输入如下指令sudo vi /etc/hostsUbuntu vi文本编辑器使用方法:https://blog.csdn.net/qq_44989881/article/details/115870950添加ubuntu的ip地址 和名称测试配置的地址是否联通ping [配置的计算机名称]例如:ping ubuntu然原创 2021-07-10 23:14:07 · 2386 阅读 · 4 评论 -
ROS系统 动作编程
什么是动作一种问答通信机制带有连续反馈可以在任务过程终止运行基于ROS的消息机制实现。Action的接口:goal:发布任务目标cancel:请求取消任务status:通知客户端当前的状态feedback:周期反馈任务运行的监控数据result:向客户端发送任务的执行结果,只发布一次。创建功能包cd ~/catkin_ws/srccatkin_create_pkg learning_action std_msgs roscpp rospy 定义 action 文件原创 2021-07-10 13:42:51 · 1169 阅读 · 0 评论 -
ROS系统 通过服务编程实现两个数相加并返回
创建功能包cd ~/catkin_ws/srccatkin_create_pkg learning_communication roscpp rospy std_msgs geometry_msgs turtlesim定义 srv 文件cd ~/catkin_ws/src/learning_communicationmkdir srv创建 AddTwoInts.srv 文件cd ~/catkin_ws/src/learning_communication/srvtouch Ad原创 2021-07-10 00:28:58 · 1761 阅读 · 4 评论 -
ROS系统 常用可视化工具的使用
QT工具箱启动ROS Masterroscore启动小海龟仿真器rosrun turtlesim turtlesim_node启动日志可视化工具rqt_console启动海龟键盘控制节点rosrun turtlesim turtle_teleop_key当使用键盘去控制海龟碰到边缘时,日志可视化工具会打印出信息。绘制数据曲线rqt_plot显示摄像头图像rqt_image_view集成ros中rqt相关工具的集合rqt机器人开发过程中的数据可视化界面Rvi原创 2021-07-09 20:41:22 · 558 阅读 · 2 评论 -
ROS系统 launch启动文件的使用方法
launch文件:通过XML文件实现多节点的配置和启动(可以自动启动ROS Master)launch文件语法:<launch> launch文件中的根元素采用<llaunch>标签定义启动节点<node pkg=“package-name” type=“executable-name” name=“node-name”>pkg :节点所在的功能包名称type:节点的可执行文件名称name:节点运行时的名称output、respawn、required原创 2021-07-09 19:10:11 · 939 阅读 · 0 评论 -
ROS系统实现 tf坐标系广播与监听
安装Ros中 tf 相关功能包sudo apt-get install ros-melodic-turtle-tf启动launch文件,这个launch文件相当于一个脚本,可以一次性启动很多节点roslaunch turtle_tf turtle_tf_demo.launch启动海龟控制节点rosrun turtlesim turtle_teleop_key能够监听当前时刻所有通过ROS广播的tf坐标系,并绘制出树状图表示坐标系之间的连接关系保存到离线文件中,监听5秒后,保存5秒内坐原创 2021-07-09 14:05:52 · 662 阅读 · 3 评论 -
ROS系统 参数的获取和设置
cd ~/catkin_ws/srccatkin_create_pkg learning_parameter roscpp rospy std_srvsrosparam列出当前所有参数:rosparam list显示某个参数值:rosparam get param_key设置某个参数值:rosparam set param_key param_value保存参数到文件:rosparam dump file_name从文件读取参数:rosparam load file_name删除参.原创 2021-07-09 11:30:30 · 2165 阅读 · 0 评论 -
ROS系统 服务数据的定义与使用
如何自定义服务数据定义srv文件在package.xml中添加功能包依赖在CMakeLists.txt添加编译选项编译生成语言相关文件cd ~/catkin_ws/src/learning_servicemkdir srvcd srvtouch Person.srvPerson.srv 文件内容string nameuint8 ageuint8 sexuint8 unknown = 0uint8 male = 1uint8 female = 2原创 2021-07-08 21:04:40 · 188 阅读 · 1 评论 -
ROS系统 实现客户端Client和服务端Server
创建功能包cd ~/catkin_ws/srccatkin_create_pkg learning_service roscpp rospy std_msgs geometry_msgs turtlesim如何实现一个客户端初始化ROS节点创建一个Client实例发布服务请求数据等待Server处理之后的应答结果在刚创建的 learning_service 目录中的src文件夹下创建一个 cpp文件cd ~/catkin_ws/src/learning_service/src原创 2021-07-08 18:57:47 · 878 阅读 · 1 评论 -
ROS系统 C++或Python实现话题消息的定义与使用
如何自定义话题消息定义msg文件在package.xml中添加功能包依赖在CMakeLists.txt添加编译选项编译生成语言相关文件创建 msg 文件cd ~/catkin_ws/src/learning_topicmkdir msg 在 msg目录中创建 Person.msg 文件cd msgtouch Person.msg在 Person.msg 文件中添加以下代码:string nameuint8 sexuint8 ageuint8原创 2021-07-08 16:51:18 · 484 阅读 · 2 评论 -
ROS系统 C++或Python实现订阅者Subscriber
在刚创建的 learning_topic 目录中的src文件夹下创建一个 cpp文件cd ~/catkin_ws/src/learning_topic/srctouch pose_subscriber.cpp将下面代码写入到 pose_subscriber.cpp 文件中。以下代码的功能:订阅/turtle1/pose话题,消息类型turtlesim::Pose#include <ros/ros.h>#include "turtlesim/Pose.h"// 接收到订阅的消原创 2021-07-08 14:59:49 · 667 阅读 · 0 评论 -
ROS系统 用Python或C++实现发布者Publisher
cd ~/catkin_ws/src创建功能包catkin_create_pkg learning_topic roscpp rospy std_msgs geometry_msgs turtlesim例如在刚创建的 learning_topic 目录中的src文件夹下创建一个 cpp文件cd ~/catkin_ws/src/learning_topic/srctouch velocity_publisher.cpp如何实现一个发布者初始化ROS节点。向 ROS Master原创 2021-07-08 11:55:14 · 859 阅读 · 2 评论 -
ROS系统 创建工作空间与功能包
工作空间是一个存放工程开发相关文件的文件夹。src:代码空间build:编译空间devel:开发空间install:安装空间创建工作空间mkdir -p ~/工作空间名称/src例如:创建一个名称为 catkin_ws 的工作空间mkdir -p ~/catkin_ws/src进入到创建的catkin_ws工程目录中cd ~/catkin_ws/src将当前文件夹进行属性初始化。catkin_init_workspace会在src目录中生成一个 CMakeLists.原创 2021-07-08 10:22:17 · 2309 阅读 · 1 评论 -
ROS系统 常用命令行工具的使用
启动ROS Masterroscore启动小海龟仿真器启动还贵控制节点在这里插入代码片使用rqt_graph可视化工具查看系统汇总运行的计算图查看话题列表rosnode list话题记录rosbag record -a -O cmd_record话题复现肉食榜playcmd_record.bag...原创 2021-07-08 00:43:26 · 327 阅读 · 0 评论 -
ROS系统的安装 ubuntu 18.04.5 LTS
ubuntu使用版本:ubuntu 18.04.5 LTS1.添加ROS软件源sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list'2.设置秘钥sudo apt-key adv --keyserver 'hkp://keyserver.ubuntu.com:80' --recv-key C1CF6原创 2021-07-07 19:00:44 · 413 阅读 · 2 评论