MATLAB与ROS通信:引用自定义ROS消息

系统:Ubuntu 20.04

MATLAB版本:R2019b

ROS版本:ROS noetic

必须事先安装ROS Toolbox interface for ROS Custom Messages 

一、自定义消息必须在MATLAB路径

打开MATLAB,在MATLAB终端输入

folderpath = fullfile('/home/abc/catkin_ws','src');
rosgenmsg('/home/abc/catkin_ws/src/message_master')
addpath('/home/abc/catkin_ws/src/matlab_gen/msggen')
savepath
rosmsg list

注:路径仅代表个人举例,后续需要进行对应修改。

此时可以看到自定义消息已添加,重启MATLAB。

二、生成的jar文件必须在java类路径

然后在终端输入:

javaclasspath

MATLAB与ROS通信:引用自定义ROS消息_第1张图片底部没有自定义消息对应的jar文件路径。

然后在终端输入:

cd(prefdir)
edit('javaclasspath.txt')

将下面内容加入:

/home/abc/catkin_ws/src/message_master/matlab_gen/jar/common_msgs-0.0.0.jar

保存文件,重启MATLAB。

然后在终端输入:

javaclasspath

 MATLAB与ROS通信:引用自定义ROS消息_第2张图片

 可以看到路径已添加。

三、检查

在终端输入:

rosmessage('common_msgs/Vehicle_Feedback')

MATLAB与ROS通信:引用自定义ROS消息_第3张图片

出现以上内容,大功告成。

四、参考网址

Create Custom Messages from ROS Package- MATLAB & Simulink- MathWorks 中国

Why do I get the error "Cannot find a MATLAB message class for type /" for my custom ROS... - MATLAB Answers - MATLAB Central

你可能感兴趣的:(matlab,ubuntu,开发语言)