"ros/node_handle.h No such file"为Arduino添加ROS包出现问题的解决办法(官网似乎有错)

尽管网上有许多教程,但是我发现很多的表达都非常不清晰,甚至有些错误,在这里为大家纠正.
实名diss官方文档http://wiki.ros.org/rosserial_arduino/Tutorials/Arduino IDE Setup

1.使用二进制/apt-get方式安装

sudo apt-get install ros-kinetic-rosserial-arduino
sudo apt-get install ros-kinetic-rosserial

2.复制到sketchbook的目录下

注意:在Arduino目录下,我发现了一个叫sketchbook的文件夹,但实际目录并不是这个。请以Arduino->File->Preferences->Sketchbook location:中的地址为准

2.1 错误操作

"ros/node_handle.h No such file"为Arduino添加ROS包出现问题的解决办法(官网似乎有错)

这时,官网推荐直接使用使用命令

cp -r ros_lib [你的sketchbook地址]

但是你会发现ros_lib中只有很少文件
"ros/node_handle.h No such file"为Arduino添加ROS包出现问题的解决办法(官网似乎有错)
当在Arduino IDE中编译的时候会发现错误ros/node_handle.h No such file

2.2 正确操作

此时你应该使用以下命令进行操作

rosrun rosserial_arduino make_libraries.py [PathToYourSketchbookLibraries]

然后进入sketchbook中的ros_lib目录,可以发现出现了许多文件,且基本与ROS功能包相符合
"ros/node_handle.h No such file"为Arduino添加ROS包出现问题的解决办法(官网似乎有错)

重新进行编译,编译通过

参考:https://answers.ros.org/question/96811/rosnode_handleh-no-such-file-error-in-arduino-hellow-world-tutorial/