博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
ROS相关资料及常用代码总结
阅读量:4126 次
发布时间:2019-05-25

本文共 2877 字,大约阅读时间需要 9 分钟。

1.相关资料

走弓字形参考代码

走三角形代码
节点控制与通信部分可参考
turtlebot基于已知地图的自主导航
学习move_base包
用move_base控制自己的机器人
move_base navigation教程
使用ros实现navigation导航
最后的速度插值处理(流程就是订阅 “cmd_vel”topic 然后将速度做处理,发送给下位机执行)
turtlebot主从机网络配置
航迹推演原理
rosplan机器人路径规划
ros串口通信教程
/cmd_vel控制

2.常用命令总结

创建一个功能包:

catkin_create_pkg ros_tutorials

启动turtlebot :

roslaunch turtlebot_bringup minimal.launch

启动建图:

roslaunch turtlebot_navigation gmapping_demo.launch

启动rviz:

roslaunch turtlebot_rviz_launchers view_navigation.launch

启动键盘:

rosrun turtlebot_teleop turtlebot_teleop_key

is not a launch file :报错解决方案

$   cd ~/catkin_ws/$   catkin_make$   source devel/setup.bash

创建一个功能包

cd ~/catkin_ws/srccatkin_create_pkg beginner_tutorials std_msgs rospy roscpp

启动turtlebot机器人

roslaunch rbx1_bringup  fake_turtlebot.launch

空白地图启动move_base节点

roslaunch rbx1_nav fake_move_base_blank_map.launch

发布一条前进指令

rostopic pub /move_base_simple/goal  geometry_msgs/PoseStamped \ '{header: {frame_id: "map"},pose: {position:{x: 1.0,y: 0,z: 0},orientation: {x: 0,y: 0,z: 0,w: 1}}}'

使用rviz观察

rosrun rviz rviz -d `rospack find rbx1_nav`/nav.rviz

再发一个返回起点的指令

rostopic pub /move_base_simple/goal  geometry_msgs/PoseStamped \ '{header: {frame_id: "map"},pose: {position:{x: 0.0,y: 0,z: 0},orientation: {x: 0,y: 0,z: 0,w: 1}}}'

运行rqt_reconfigure,可以用可视化的方法调节各个参数


用move_base简单的移动机器人

1.首先启动turtlebot机器人。

roslaunch rbx1_bringup fake_turtlebot.launch

2.在另一个终端运行:

roslaunch rbx1_nav fake_move_base_blank_map.launch

3.打开rviz视图查看机器人。

rosrun rviz rviz -d `rospack find rbx1_nav`/nav.rviz

4.运行move_base_square.py脚本移动机器人。

rosrun rbx1_nav move_base_square.py

1、首先运行ArbotiX节点,并且加载机器人的URDF文件。

roslaunch rbx1_bringup fake_turtlebot.launch

2、然后运行move_base和加载空白地图的launch文件

(fake_move_base_blank_map.launch):roslaunch rbx1_nav fake_move_base_blank_map.launch

3、然后调用rviz就可以看到机器人了。

rosrun rviz rviz -d `rospack find rbx1_nav`/nav_fuerte.vcg

使用github源代码步骤

创建一个程序包

roscreate-pkg move_base

更新ros查找路径

export ROS_PACKAGE_PATH=./:$ROS_PACKAGE_PATH

确认路径已经添加

rospack find PACKAGE_NAME

roscore 命令无反应

sudo gedit ~/.bashrc
将主从机名字和address去掉


工具的下载与安装

git clone https://github.com/jbeder/yaml-cpp

到下载的yaml-cpp 目录下,build

git clone https://github.com/jbeder/yaml-cpp.gitmkdir buildcd buildcmake -DBUILD_SHARED_LIBS=ON ..makesudo make install

Ros cpp文件编译方法

$cd ~/catkin_ws/src$roscreate-pkg beginner_tutorials$cd src$vim talker.cpp$vim listener.cpp$cd ..$ gedit CMakeLists.txt

添加如下代码

dd_executable(talker src/talker.cpp)target_link_libraries(talker ${catkin_LIBRARIES})add_dependencies(talker beginner_tutorials_generate_messages_cpp)add_executable(listener src/listener.cpp)target_link_libraries(listener ${catkin_LIBRARIES})add_dependencies(listener beginner_tutorials_generate_messages_cpp)

然后切换到工作目录进行编译

$ cd ~/catkin_ws$ catkin_make

编译完成后进行一下步骤

启动ros 核心运行环境roscore
注册程序

$ cd ~/catkin_ws$ source ./devel/setup.bash

运行talker节点

rosrun beginner_tutorials talkerrosrun beginner_tutorials listener

转载地址:http://zeqpi.baihongyu.com/

你可能感兴趣的文章
Java的Properties配置文件用法【续】
查看>>
JAVA操作properties文件的代码实例
查看>>
IPS开发手记【一】
查看>>
Java通用字符处理类
查看>>
文件上传时生成“日期+随机数”式文件名前缀的Java代码
查看>>
Java代码检查工具Checkstyle常见输出结果
查看>>
北京十大情人分手圣地
查看>>
Android自动关机代码
查看>>
Android中启动其他Activity并返回结果
查看>>
2009年33所高校被暂停或被限制招生
查看>>
GlassFish 部署及应用入门
查看>>
iWatch报错: Authorization request cancled
查看>>
iWatch报错: Authorizationsession time out
查看>>
如何运行从网上下载的iWatch项目详细步骤.
查看>>
X-code7 beta error: warning: Is a directory
查看>>
Error: An App ID with identifier "*****" is not avaliable. Please enter a different string.
查看>>
X-code beta 开发iWatch项目,运行没有错误,但是某些操作一点就崩,而且找不错误的原因场景一
查看>>
Xcode 报错: Extra argument in call
查看>>
iTunes Connect 上传APP报错: Communication error. please use diagnostic mode to check connectivity.
查看>>
#import <Cocoa/Cocoa.h> 报错 Lexical or Preprocessor Issue 'Cocoa/Cocoa.h' file not found
查看>>