从rosserial_arduino可以使用代码使用一个arduino ROS节点。Matlab最初复杂化的问题通过使用USB外部模式,从而防止活性氧在rosserial发布或订阅。
这是规避使用# define USE_STM32_HW_SERIAL ROS利用Arduino兆串口1。注意,一个额外的串口电缆等需要解锁83116提供第二个连接。
由于内存需求,这个目前仅适用于Arduino大型2560。
编译:
之前部署软件Arduino sfun_ros_interface。mexw64需要。在Matlab命令窗口运行:
“墨西哥人sfun_ros_interface.cpp”
测试:
假设您已经安装了ROS WSL或Linux,(我用ROS WSL没有任何问题),启动三个终端与ROS安装和柔荑花序工作区采购,然后在三个终端运行:
在1。
“roscore”
在2。
“sudo chmod 666 /dev/ttyS11”
“rosrun rosserial_python serial_node。py /dev/ttyS11”
/dev/ttyS11哪里需要修改计算机串行端口正在使用的连接的串口1 Arduino兆吗
当一切都工作正常
在3。
“rostopic回声adc”
订阅和视图的值6 adc频道发表ROS
“rostopic酒吧toggle_led std_msgs /空——一次”
激活arduino的领导,使伺服输出
“rostopic酒吧robot_link_1 std_msgs / UInt16 300——一次”
设置输出到伺服1到300。
注1:这仅仅是一个演示程序来展示如何使用ROS与仿真软件的其他部分如一个状态机。金宝app
注2:软件与ROS动能准备。如果你想使用它与其他ROS的版本,或添加自定义消息,您将需要修补的文件与你在ROS生成:
“rosrun rosserial_arduino make_libraries。py。”见rosserial_arduino教程。
http://wiki.ros.org/rosserial_arduino/Tutorials/Arduino%20IDE%20Setup
注意,这些文件不能直接复制过但需要修改,比如删除所有系列。印刷要求,防止ROS试图使用相同的串口是MATLAB。
从rosserial_arduino这个提交包括代码,由迈克尔•弗格森亚当Stambler和BSD下发表。
引用作为
SMEAC (2023)。ROS在仿真软件部署在Arduino在外部模式下运行金宝app(//www.tatmou.com/matlabcentral/fileexchange/69554-ros-deployed-on-arduino-running-in-external-mode-in-金宝appsimulink), MATLAB中央文件交换。检索。
版本 | 发表 | 发布说明 | |
---|---|---|---|
1.0.3 | 墨西哥人编译文件删除,并添加评论如何编译墨西哥人文件。 |