内容为学长笔记,参考ros官网(待放链接)
常用工具栏:
单击Tab:自动补充代码行
Ctrl + Shift + T:打开终端
Ctrl + Z:关闭节点/进程
7.6
1.1基础功能
打开终端(梦开始的地方):$ roscore
工作空间(写代码的地方):
source /opt/ros/kinetic/setup.bash
source ~/catkin_ws/devel/setup.bash –extend
source ~/tianbot_ws/devel/setup.bash –extend
source ~/study_ws/devel/setup.bash –extend
source ~/turtlebot_ws/setup.bash –extend
source ~/manipulation_ws/setup.bash –extend
打开小海龟节点:$ rosrun turtlesim turtlesim_node
使用键盘控制小海龟:$ rosrun turtlesim turtle_teleop_key
1.2Turtlebot gazebot仿真演示
打开gazebo地图:$ roslaunch turtlebot_gazebo turtlebot_world.launch
打开相应键盘控制程序:$ roslaunch turtlebot_teleop keyboard_teleop.launch
1.3Turtlebot gazebo建图演示
打开乌龟地图:$ roslaunch turtlebot_gazebo turtlebot_world.launch
打开机器人建图程序:$ roslaunch turtlebot_gazebo gmapping_demo.launch
打开rviz可视化界面:$roslaunch turtlebot_rviz_launchers view_navigation.launch
启动键盘控制节点:$ roslaunch turtlebot_teleop keyboard_teleop.launch
保存地图:rosrun map_server map_saver -f mymap
1.4ROS导航演示
打开乌龟地图:$ roslaunch turtlebot_gazebo turtlebot_world.launch
启动乌龟机器人定位导航节点:
$ roslaunch turtlebot_gazebo amcl_demo.launch
$ roslaunch turtlebot_gazebo amcl_demo.launch map_file:=/home/tianbot/mymap.yaml
打开rviz可视化界面:
$ roslaunch turtlebot_rviz_launchers view_navigation.launch
(使用2D Nav Goal 进行目标点的移动)
1.5 Turtlebot Stage仿真演示
参考网站:
http://wiki.ros.org/turtlebot_stage/Tutorials/indigo/Customizing%20the%20Stage%20Simulator
1.6 Turtlebot3 Gazebo仿真演示
打开终端启动仿真环境:
$ roslaunch turtlebot3_gazebo turtlebot3_world.launch
或者
$ roslaunch turtlebot3_gazebo turtlebot3_house.launch
启动键盘控制节点:
$ roslaunch turtlebot3_teleop turtlebot3_teleop_key.launch
1.7 Turtlebot3 Gazebo建图演示
启动仿真环境:
$ roslaunch turtlebot3_teleop turtlebot3_teleop_key.launch
启动建图功能节点:
$ roslaunch turtlebot3_slam turtlebot3_slam.launch slam_methods:=gmapping
(slam的算法有很多,这里我们使用的是gmapping,如果想使用其他的slam算法,修改启动命令中的对应参数。)
启动键盘控制节点:
$ roslaunch turtlebot3_teleop turtlebot3_teleop_key.launch
保存地图:
$ rosrun map_server map_saver -f ~/map
1.8 Turtlebot3 Gazebo导航演示
启动Gazebo仿真环境:
$ roslaunch turtlebot3_gazebo turtlebot3_world.launch
启动导航功能节点
$ roslaunch turtlebot3_navigation turtlebot3_navigation.launch map_file:=/home/tianbot/map.yaml
(这里加载的地图文件是上一章节保存的,这里一定要写绝对路径,如果你写map_file:=~/map.yaml,将不会运行成功。)
1.9 Husky Gazebo仿真演示
启动Gazebo仿真环境:
$ roslaunch husky_gazebo husky_playpen.launch
发布控制命令:
(husky接收的速度控制话题是/cmd_vel,我们在这里使用终端循环发送指令的方式进行控制,如果您感兴趣可以自己写控制节点,也可以购买手柄控制器来进行控制。)
$ rostopic pub -r 10 /cmd_vel geometry_msgs/Twist “linear:
x: 0.0
y: 0.0
z: 0.0
angular:
x: 0.0
y: 0.0
z: 1.0″
(前三个xyz:各坐标轴的线速度;后三个xyz:角速度)
1.10 Franka Panda仿真演示
Franka Panda是一个六轴工业机械臂,ROS2GO中已经预置安装包,本示例提供一完整的仿真演示例程,给ROS机械臂开发学习提供借鉴。
启动rviz可视化操作环境:
$ roslaunch panda_moveit_config demo.launch rviz_tutorial:=true
根据以下步骤配置rviz环境
点击’add’添加’MotionPlanning’可视化选项;
2.修改’Global Options’可视化选项中’Fixed Frame’值为’panda_link0′;
3.修改’MotionPlanning’可视化选项中’Robot Description’值为’robot_description’;
4.修改’MotionPlanning’可视化选项中’Planning Scene Topic’值为’/planning_scene’;
5.修改’MotionPlanning’可视化选项中’Planning Request’中的’Planning Group’值为’panda_arm’;
6.修改’MotionPlanning’可视化选项中’Planned Path’中的’Trajectory Topic’ 为’/move_group’;
第一步执行完后,并不会自动加载’MotionPlanning’插件,需要我们点击’add’添加,并且修改相关配置。用鼠标拖拽rviz机械臂末端来指定规划位置,点击‘Plan’按钮规划,点击’Plan and Execute‘规划后即刻执行。
(六自由度机械臂官网)
http://docs.ros.org/en/kinetic/api/moveit_tutorials/html/doc/quickstart_in_rviz/quickstart_in_rviz_tutorial.html