没错,澡盆开始了ROS(机器人控制系统)的学习。
在完成了几天的环境配置之后,澡盆开始写代码了。
在ROS里写代码有点麻烦。
注:本文编辑器使用vscode,所以会有红色的报错
一、准备工作&&代码编写
首先,需要创造一个文件夹当作工作空间,(就是这里的helloworld大文件夹)
用指令:
mkdir -p helloworld/src//src必须 cd helloworld catkin_make
在最后一个指令使用后,会出现与src平行的两个文件夹。
之后,进入src文件夹,创建一个工作包
cd src catkin_create_pkg hw roscpp rospy std_msgs//hw位置的名字随意
这时src里会出现hw文件夹,其中有两个文件夹,其中src文件夹就是存放代码的地方。
之后写好代码:
#include"ros/ros.h" using namespace ros; int main(int argc, char *argv[]) { init(argc, argv, "hello_node");//初始化ros节点 ROS_INFO("hello world!");//输出日志 return 0; }
然后,修改与第二个src文件夹同级的CMakeLists.txt(就是后面有个2的那个)
需要修改两个地方:
删掉#,再做些修改
# add_executable(${PROJECT_NAME}_node src/hw_node.cpp) add_executable(haha src/helloworld.cpp)//两个参数,前面那个自定义名字,用来映射cpp文件
//后面那个要改成cpp文件名
# target_link_libraries(${PROJECT_NAME}_node
# ${catkin_LIBRARIES}
# )
target_link_libraries(haha//两个参数,第一个要改成前一步的那个自定义名字
${catkin_LIBRARIES}
)
二、编译&&运行
进入最开始的文件夹,就是那个helloworld,(当然是终端里进入)
然后
catkin_make
(界面与当年的cmake指令差不多)
然后就是运行了
先打开另外一个终端,运行ROS核心,
roscore
然后以下
source ./devel/setup.bash//改变环境变量
rosrun hw haha
运行成功。
(完)