1.相关资料
走弓字形参考代码
https://www.ncnynl.com/archives/201703/1479.html
走三角形代码
https://blog.csdn.net/ywj447/article/details/53318411
节点控制与通信部分可参考
https://blog.csdn.net/under_maple/article/details/49430765
学习move_base包
https://blog.csdn.net/haorenhaoren123/article/details/51439046
用move_base控制自己的机器人
https://blog.csdn.net/heyijia0327/article/details/41823809
move_base navigation教程
https://www.ncnynl.com/archives/201708/1898.html
使用ros实现navigation导航
https://blog.csdn.net/ganbaoni9yang/article/details/50560310
最后的速度插值处理(流程就是订阅 “cmd_vel”topic 然后将速度做处理,发送给下位机执行)
http://wiki.ros.org/yocs_velocity_smoother
turtlebot主从机网络配置
https://blog.csdn.net/qq_32005213/article/details/80227179
https://blog.csdn.net/lovedarling/article/details/78470680
https://www.ncnynl.com/archives/201609/793.html
https://blog.csdn.net/qq_32005213/article/details/80227179
航迹推演原理
https://robotics.stackexchange.com/questions/106/what-is-a-suitable-model-for-two-wheeled-robots/134#134
rosplan机器人路径规划
https://blog.csdn.net/philthinker/article/details/74937601
ros串口通信教程
https://blog.csdn.net/qq_30299913/article/details/77868738
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/src
catkin_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.git
mkdir build
cd build
cmake -DBUILD_SHARED_LIBS=ON ..
make
sudo 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 talker
rosrun beginner_tutorials listener
版权声明
本文仅代表作者观点,不代表百度立场。
本文系作者授权百度百家发表,未经许可,不得转载。


