一、实现一个代码步骤
1. C++代码实现步骤
在catkin_ws/src/内创建功能包的步骤
其实可以任意创建工作空间,比如创建一个新的空间名为catkin_ws_new
那么就在此工作空间下进行编译,和放置代码
-
在
catkin_ws/src/
下打开终端 -
终端输入
catkin_create_pkg [XXX] roscpp rospy std_msgs...
[XXX]
为自己定义的功能包名字,方便后面输入功能包名字,执行已编译的功能包
-
创建功能包后进入到功能包的src内,把代码复制进去(注意后缀)
-
回到
catkin_ws/src/[XXX]/
(即回到刚创建的功能包的CMakeLists.txt)进入CMakeLists.txt
,配置所复制代码的编译规则
如:
add_executable(velocity_publisher src/velocity_publisher.cpp) target_link_libraries(velocity_publisher ${catkin_LIBRARIES})
这里要注意:放置的代码如velocity_publisher.cpp,那么对应上述两行编译规则需要一一对应,否则编译出错。
增添进“Build”最后,“Install”之前
配置代码的编译规则主要有两个要点:
设置需要编译的代码和生成的可执行文件;
设置链接库。
- 编译并运行代码
回到catkin_ws/
打开终端,输入
catkin_make
(6. 设置环境变量source devel/setup.bash)
(7. roscore)
2. python代码实现步骤
- 在
catkin_ws/src/
创建功能包(即在catkin_ws/src/
下打开终端)
终端输入
catkin_create_pkg [XXX] roscpp rospy std_msgs...
[XXX]
为自己定义的功能包名字,方便后面输入功能包名字,执行已编译的功能包
- 创建功能包后,在
catkin_ws/src/[XXX]/
创建一个新的文件夹,名为scripts
,此文件夹专门放python代码文件 - 到路径
catkin_ws/src/[XXX]/scripts/
下打开终端,输入
python [XXXXXXX].py
[XXXXXX].py即为要执行的python代码文件
疑问:[pkg名] [py文件]
rosrun demo_py hello.py
二、已编译代码运行步骤
-
在终端下
cd ~/catkin_ws
-
随后输入
rosrun [XXXXXXX] [XXXXXXX]
第一个[XXXXXXX]
:输入的是catkin_ws/src/
里面所创建的功能包名,如“learning_test
”
第一个[XXXXXXX]
:输入的是catkin_ws/src/
的第一个[XXXXXX]/src/
里面已编译完成的CPP代码的名称。如“offb_node.cpp
”代码文件,那么第二个[XXXXXX]
则为“offb_node
”