- 常用命令
- 运行程序步骤
- (1) 一般情况
- (2) 多节点文件
- (3) Python文件
- 调试
- 实现
- 工具包
- 1.增
- 2.删
- 3.查
- 4.改
- 文件配置
- 配置C++文件
- 1. vscode配置
- 2. 配置CMakeList.txt
- 配置python文件
- 1. vscode配置
- 2. 设置权限
- 3. 配置CMakeList.txt
ROS华为源镜像 常用命令
- ctrl+h:调用隐藏文件
- ctrl + shift + b:可以编译程序
- ctrl+c:自动输出,表示程序结束的意思
- **ctrl(右手边的)+f:**自适应调整界面大小
- ros依赖:roscpp rospy std_msgs
- tab:补齐
- rqt_graph:启动计算图
- rostopic echo fang:打印当前发布者发布的数据
- pwd:找到文件的路径,需要点击该文件,然后右击选择在终端中打开,再输入pwd。
- 源文件名称和映射名称保持一致
- argc:代表传入的参数的总数量,在本例中,第1个参数是程序名,第2、3个参数是12,34。共3个参数(服务通信里面例子)。argc[0]一定是程序的名称,包含了程序所在的完整路径。
- char* argv[]:是一个数组,每个元素存储的一个指针,就是穿进去的参数的地址。
- cd demo02_ws:启动当前工作空间
roscore
source ./devel/setup.bash ——刷新环境变量
rosrun + (文件名)hello_vscode(映射名称) hello_vscode_c
修改完CMakeLists.txt之后
首先运行roscore
然后是cd demo02_ws/
最后是source ./devel/setup.bash
接着时rosrun+功能包名:rosrun plumbing_pub_sub demo01_pub(运行后没有任何日志输出)
在vscode里面使用launch文件同时启动多个结点:
source ./devel/setup.bash
roslaunch hello_vscode start_turtle.launch
scripts在完成python程序之后,需要添加可执行权限,右击scripts选择在终端中打开,执行以下操作
调试chmod +x *.py
ll
rosrun plumbing_pub_sub demo01_pub_p.py
rostopic echo che
rosrun plumbing_pub_sub demo01_pub_p.py
rosrun plumbing_pub_sub demo02_sub_p.py
find_package作用:如果编译自定义的功能包plumbing_pub_sub的话必须依赖find_package里面的功能包。同时find_package里面的功能包依赖于catkin_package里面的功能包,最好在后面添加message_runtime
在没有关闭的终端中,按向上的箭头可以使用之前输入的命令
输入main,然后选择第2个,自动补齐,去掉const修饰符,就可以了
鼠标指向空号内,ctrl+shift+空格可以看到里面的定义
新建功能包时,一定要添加依赖,就是****roscpp rospy std_msgs
add_dependencies(demo03_pub_person${PROJECT_NAME}_generate_messages_cpp)作用:先保证msg被编译,然后被主要程序调用
工具包 1.增catkin_create_pkg 自定义包名 依赖包 === 创建新的ROS功能包
sudo apt install xxx === 安装 ROS功能包
2.删sudo apt purge xxx ==== 删除某个功能包
3.查rospack list === 列出所有功能包
rospack find 包名 === 查找某个功能包是否存在,如果存在返回安装路径
roscd 包名 === 进入某个功能包
rosls 包名 === 列出某个包下的文件
apt search xxx === 搜索某个功能包
4.改rosed 包名 文件名 === 修改功能包文件
需要安装 vim
比如:rosed turtlesim Color.msg
文件配置 配置C++文件 1. vscode配置配置c_cpp_properies.json 文件,如果以前已经配置且没有变更工作空间,可以忽略
{
"configurations": [
{
"browse": {
"databaseFilename": "",
"limitSymbolsToIncludedHeaders": true
},
"includePath": [
"/opt/ros/noetic/include/**",
"/usr/include/**",
"/xxx/yyy工作空间/devel/include/**" //配置 head 文件的路径
],
"name": "ROS",
"intelliSenseMode": "gcc-x64",
"compilerPath": "/usr/bin/gcc",
"cStandard": "c11",
"cppStandard": "c++17"
}
],
"version": 4
}
这里在devel文件里,右击功能包选择在终端里打开,使用pwd可以找到文件路径。
2. 配置CMakeList.txt/home/rosnoetic/demo02_ws/devel/include/plumbing_server_client
一共有三个部分
add_executable(AddInts_Server src/AddInts_Server.cpp)
add_executable(AddInts_Client src/AddInts_Client.cpp)
add_dependencies(AddInts_Server ${PROJECT_NAME}_gencpp)
add_dependencies(AddInts_Client ${PROJECT_NAME}_gencpp)
target_link_libraries(AddInts_Server
${catkin_LIBRARIES}
)
target_link_libraries(AddInts_Client
${catkin_LIBRARIES}
)
配置python文件
1. vscode配置
进入settings.json 文件,如果以前已经配置且没有变更工作空间,可以忽略
{
"python.autoComplete.extraPaths": [
"/opt/ros/noetic/lib/python3/dist-packages",
]
}
2. 设置权限
右击scripts,选择进入终端执行
chmod +x *.py ll3. 配置CMakeList.txt
catkin_install_python(PROGRAMS
scripts/AddInts_Server_p.py
scripts/AddInts_Client_p.py
DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION}
)



