ROS基础入门——实操教程
前言
本教程实操为主,少说书。可供参考的文档中详细的记录了ROS的实操和理论,只是过于详细繁杂了,看得脑壳疼,于是做了这个笔记。
本文初编辑于2024年10月4日
CSDN主页:https://blog.csdn.net/rvdgdsva
博客园主页:https://www.cnblogs.com/hassle
前人栽树,后人乘凉
此处参考(选看)
在ubuntu主界面按下(ctrl + alt + T)打开命令行,然后依次输入下面的命令
mkdir -p test(这是自定义空间名称,爱叫什么叫什么)/src cd test(这是自定义空间名称,爱叫什么叫什么) catkin_make
生成了下面的文件树
.... └── test(文件夹,意为工作空间,第一行代码运行时被创建) ├── build(文件夹,意为编译空间,第三行代码运行时被创建) │ ├── ... ├── devel(文件夹,意为开发空间,第三行代码运行时被创建) │ ├── setup.bash │ ├── setup.sh │ ├── ... └── src(文件夹,第一行代码运行时被创建) └── CMakeLists.txt (别动这个)
生成一个基于三个库的ROS包,其中:roscpp是使用C++实现的库,rospy是使用python实现的库,std_msgs是标准消息库
cd src catkin_create_pkg testpkg(这是ROS包名,爱叫什么叫什么) roscpp rospy std_msgs
此时src文件树变动
.... └── test ├── build │ ├── ... ├── devel │ ├── setup.bash │ ├── setup.sh │ ├── ... └── src └── CMakeLists.txt (别动这个!!!动的是下面那个同名文件,别搞错了) └── testpkg ├── CMakeLists.txt(执行cpp和py代码需要修改此处)(2.4涉及此处) ├── include │ └── testpkg ├── package.xml └── src(此处存放cpp代码)(2.3涉及此处)
Cpp详细教程(教程浓缩成下面一句话了,看完教程感觉脑子很乱的话照着下面的话去做就行)
一句话概括:需要在src(源文件空间)······> testpkg(ROS包名,爱叫什么叫什么)······> src文件夹(用于存放cpp文件)中存放编写好的cpp文件
Py详细教程(同上)
一句话概括:需要在src(源文件空间)······> testpkg(ROS包名,爱叫什么叫什么)······> scripts文件夹(用于存放py文件,需要手动创建该文件夹)中存放编写好的py文件
在自定义命名包的 CMakeLists.txt(执行cpp和py代码需要修改此处)内修改第136行和第149-151行 为
具体行数因版本不同可能有所变动
注意映射名(映射名就是随便写的名,别写test就行)可与cpp源文件名相同
add_executable(映射名 src/源文件名.cpp ) target_link_libraries(映射名 ${catkin_LIBRARIES} )
在自定义命名包的 CMakeLists.txt(执行cpp和py代码需要修改此处)内修改第162-165行 为
具体行数因版本不同可能有所变动
注意这里Py程序是不需要映射名的
catkin_install_python(PROGRAMS scripts/源文件名.py DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION} )
在自定义空间名称(2.1中创建的)中按下(ctrl + alt + T)打开命令行,依次输入
catkin_make roscore
在自定义空间名称(2.1中创建的)中按下(ctrl + alt + T)打开另一个命令行,依次输入
source ./devel/setup.bash rosrun 包名(2.2中创建的) 映射名(2.4中创建的)
在自定义空间名称(2.1中创建的)中按下(ctrl + alt + T)打开命令行,依次输入
chmod +x 源文件名.py catkin_make roscore
在自定义空间名称(2.1中创建的)中按下(ctrl + alt + T)打开另一个命令行,依次输入
source ./devel/setup.bash rosrun testpkg(ROS包名,爱叫什么叫什么,2.2中创建的) 源文件名.py(2.4中创建的)