ros

ROS物理仿真环境学习 gazebo + rviz【问题记录】

一世执手 提交于 2020-01-30 10:11:21
Turtlebot3与仿真-仿真环境搭建 # 一个命令安装所有TurtleBot3依赖项 sudo apt-get install ros-kinetic-joy ros-kinetic-teleop-twist-joy ros-kinetic-teleop-twist-keyboard ros-kinetic-laser-proc ros-kinetic-rgbd-launch ros-kinetic-depthimage-to-laserscan ros-kinetic-rosserial-arduino ros-kinetic-rosserial-python ros-kinetic-rosserial-server ros-kinetic-rosserial-client ros-kinetic-rosserial-msgs ros-kinetic-amcl ros-kinetic-map-server ros-kinetic-move-base ros-kinetic-urdf ros-kinetic-xacro ros-kinetic-compressed-image-transport ros-kinetic-rqt-image-view ros-kinetic-gmapping ros-kinetic-navigation # 安装TurtleBot3

ROS常用命令汇总

流过昼夜 提交于 2020-01-30 01:14:04
原文地址:: https://www.cnblogs.com/saneri/p/10162629.html ROS系统也是通过命令行操作,总结了下平时工作中使用的命令工具,以后使用多会陆续添加. 查看ROS_PACKAGE_PATH环境变量 $ echo $ROS_PACKAGE_PATH /home/saneri/catkin_ws/src:/opt/ros/kinetic/share roscore 命令是你在运行所有ROS程序前首先要运行的命令。 $ roscore rosrun 命令 rosrun 允许你使用包名直接运行一个包内的节点(而不需要知道这个包的路径)。 用法: $ rosrun [package_name] [node_name] 现在我们可以运行turtlesim包中的 turtlesim_node节点,你会看到打开了一个 turtlesim 窗口: $ rosrun turtlesim turtlesim_node rosls 命令 rosls是rosbash命令集中的一部分,它允许你直接按软件包的名称而不是绝对路径执行ls命令(罗列目录). 用法: # rosls [ 本地包名称[/子目录] ] 示例: $ rosls beginner_tutorials/ CMakeLists.txt include package.xml src roscd 命令

ROS与Arduino:利用CMake编译代码并上传到arduino

梦想的初衷 提交于 2020-01-29 17:56:25
为什么要利用CMake编译代码并上传到arduino? 当需要开发大点的软件项目,Arduino IDE对代码的管理就变得比较笨拙。 如果你经常想要从命令行或能自动完成的eclipse编译代码 最后你可以通过rosserial_client的CMake基础架构,你利用ROS buildfarm构建和分发固件 这个blog只说一个简单的示例。 老样子,给大家我整理好的包: 下载地址 1. 创建工作空间等,此处略 在catkin工作空间下src目录下 $ cd ~/catkin_ws_cmake/src/ $ catkin_create_pkg helloworld rosserial_arduino rosserial_client std_msgs 使用catkin_create_pkg创建helloworld包,依赖rosserial_arduino(需要Arduino的工具链)和rosserial_client(客户端库生成macros),最后打算使用std_msgs/String,需要依赖std_msgs。 2. 在helloworld包,建立firmware/chatter.cpp,复制粘贴如下示例代码内容: # include <ros.h> # include <std_msgs/String.h> //Arduino.h头文件,它包含了所有的Arduino函数

ros多线程数据处理方法(在主函数中循环处理消息与回调函数循环冲突解决方法)

一曲冷凌霜 提交于 2020-01-29 11:36:13
在ros节点中,主函数中不能设置长时间的循环,否则会影响回调函数的执行 主函数如下 #include <iostream> #include "senser_bridge.h" #include "nav.h" int main(int argc, char *argv[]) { ros::init(argc,argv,"nav_test"); ROS_INFO("*******"); SenserBridge senser_bridge; while(true){ cout << "主函数" <<endl; sleep(1); } ros::spin(); } SenserBridge类如下 SenserBridge::SenserBridge() { imu_sub_ = nh_.subscribe("/insprobe/imu0", 200, &SenserBridge::ImuDataCollect, this); pose_pub_ = nh_.advertise<sensor_msgs::PointCloud2>("/pose",200); } //回调函数 void SenserBridge::ImuDataCollect(const sensor_msgs::Imu::ConstPtr &msg) { sensor_msgs::Imu imu_data; imu

Cartographer报错

此生再无相见时 提交于 2020-01-29 05:05:49
according to B2的SLAM之旅 's TB2 RplidarA3 cartographer here comes the issue asber@asber-X550VX:~$ roslaunch cartographer_turtlebot turtlebot_lidar_2d.launch ... logging to /home/asber/.ros/log/e92a60e4-2c98-11ea-ba19-74dfbfcbcc4c/roslaunch-asber-X550VX-10602.log Checking log directory for disk usage. This may take awhile. Press Ctrl-C to interrupt Done checking log file disk usage. Usage is <1GB. xacro: Traditional processing is deprecated. Switch to --inorder processing! To check for compatibility of your document, use option --check-order. For more infos, see http://wiki.ros.org/xacro

Gazebo的卸载与重装

邮差的信 提交于 2020-01-29 03:14:12
1、卸载过程 $ dpkg -l | grep gazebo 这条指令是查找当前安装的gazebo包,出现如下界面: $ sudo apt-get remove gazebo7 gazebo7-common gazebo7-plugin-base libgazebo7:amd64 libgazebo7-dev:amd64 ros-kinetic-gazebo-* 这样就完成了卸载。 2、安装gazebo9 (1)添加源 $ sudo sh -c 'echo "deb http://packages.osrfoundation.org/gazebo/ubuntu-stable `lsb_release -cs` main" > /etc/apt/sources.list.d/gazebo-stable.list' (2)查询源是否添加 $ cat /etc/apt/sources.list.d/gazebo-stable.list deb http://packages.osrfoundation.org/gazebo/ubuntu-stable xenial main 输入cat指令后,下面正常显示,说明添加源成功! (3)设置Keys $ wget http://packages.osrfoundation.org/gazebo.key -O - | sudo apt-key

ros之参数的使用与编程方法

ぃ、小莉子 提交于 2020-01-28 21:24:55
参数模型 ROS Master (Parameter Server) /robot_name: "my_robot" ----{Node A Node B} /robot_radius:0.4 ----{Node C} /robot_height :0.5 ----{Node D} 参数服务器 Parameter Server 用于保存各个节点之间的数据参数 因此我们可以将Parameter Server理解为全局变量存储空间,只要在同一ros环境里面都可以通过参数服务器发送请求去查询相关的参数。 参数命令行使用(以小海龟为例) YAML参数文件 (多参数文件) background_b : 255 background_b : 86 background_b : 69 rosdistro : 'melodic' roslaunch: uris: {host_hcx_vpc__43763: 'http://hcx-vpc :43763/'} rosversion :'1.14.3' run_id: 07708de-a38b-11e9-818b-000c29d22e4d rosparam *列出当前多个参数 $ rosparam list *显示某个参数值 $ rosparam get param_key *设置某个参数值 $ rosparam set param_key param

机器人ROS系统学习随笔->8《ROS机器人系统设之ROS2.0》

倖福魔咒の 提交于 2020-01-28 21:11:58
为什么要有ROS2—ROS1是什么 ROS1的局限 ROS1的困境 ROS2的曙光 ROS2的版本进化 ROS2是什么 ROS2的目标 ROS2的架构 DDS是什么 ROS1的通信模型 ROS2的通信模型 ROS2的质量服务原则QoS ROS2的编译系统 如何安装ROS2 最新的ros2安装: https://index.ros.org/doc/ros2/Installation/#installationguide 。根据指示安装,推荐Debian安装。支持官网同步更新。 可以在ros2官网上找。 ROS2安装功能包 ROS2结构目录 我安了最新的eloquent版本 ROS2 帮助信息 添加ros2路径:source /opt/ros/eloquent/setup.bash 会出现警告:说是当前目录是ros1的。忽略就行。 命令行工具 ROS2运行talker与listener ROS2更新较快: https://index.ros.org/doc/ros2/ 有详细教程 ROS2与ROS1的集成 课程总结与展望 来源: https://www.cnblogs.com/vcan123/p/12238781.html

ROS 安装教程

邮差的信 提交于 2020-01-28 13:31:25
ROS 不能再详细的安装教程 版权声明:本文为博主原创文章,转载请标明出处: http://www.cnblogs.com/liu-fa/p/5779206.html 关于ROS(Robot OS 机器人操作系统),估计看这个博文的大兄弟之前已经都知道是啥了,我就不咋呼了… 对于ROS的安装,在它的官方网站: http://wiki.ros.org/ROS/Installation 中也有详细说明。但是对于像博主这样先天英语发育不全的人来说,直接看官网还是有点困难的。 所以博主痛定思痛,经过一番呕心沥血与含辛茹苦的调研后(其实就是看了几篇相关博客),终于在博主的电脑上成功安装了ROS,下面就是博主安装的全过程及所遇到的坑坑包包… 1 版本选择 ROS 虽说也叫操作系统,但它是寄生在 LINUX 操作系统之下的,所以要求大兄弟你的电脑里至少要先有一个 LINUX 操作系统。 而对 ROS 兼容性最好的当属 Ubuntu 操作系统了,所以大兄弟,嘿嘿嘿,你自己看着办! 首先有一点需要说明,ROS是用来干“大事业”的,所以不推荐也不认同更不接受大家使用虚拟机。之前博主抱着玩一玩ROS的态度,在虚拟机里装了Ubuntu, 然后装ROS,结果,结果,结果被ROS给玩了… 1.1 Ubuntu 和 ROS 版本对应 即便是大兄弟用了Ubuntu,也是不能随便找一个版本的ROS装滴… 为啥呢

fatal error: No such file or directory

非 Y 不嫁゛ 提交于 2020-01-28 08:24:24
在fase_ws中编译ground_car包,遇如下报错: /home/gordon/fase_ws/src/fsae/ground_car/plugins/gazebo_ros_block_laser.cpp:27:45: fatal error: gazebo_plugins/gazebo_ros_utils.h: No such file or directory compilation terminated 在同工作空间的路径下找到ros包——gazabo_plugins,在其中找到gazebo_ros_utils.h。 尝试解决方法一: 先单独编译gazebo_plugins包,再编译ground_car包,遇相同报错。 尝试解决方法二: 在CMakeLists.txt的include_directories选项中添加${GAZEBO-ROS-UTILS_INCLUDE_DIRS},遇相同报错。 尝试解决方法三: 找到gazebo_ros_utils.h,将其复制到ground_car包的include文件夹中。问题解决! 来源: https://www.cnblogs.com/gdut-gordon/p/10388488.html