使用matlab生成ros的自定义消息
关于在mtalb中的操作,使用matlab生成ros的自定义消息时,既需要配置python,同时需要配置c++相关文件,查网上的资源都是安装matlab附加功能中的MinGW-w64编译器,可能对于2022b之前的matlab版本是适用的,我参考网上教程安装之后,发现这个编译器是不支持c语言编译的,但是matlab官网又说MinGW 8.1是只支持matlab2023a的,我参照教程安装了这个版本,依然无法解决编译的问题
然后,发现Visio studio 是可以支持matlab c语言编译的
我下载的是Visio studio 2017版本,因为很多其他软件也是需要这个版本的,为了避免后面的麻烦。下载的时候c++工具箱和python工具箱是需要勾选的,我记得是桌面开发,具体的我没截图。
然后在matlab中运行mex -setup cpp 命令配置Visio studio 2017 C++编译器,配置完之后运行如下命令
其中F:/newtrackingcircle/是存放自定义消息的文件夹,
carTop 是我的ros自定义消息
这里要注意的是,最初的文件夹下面可能有很多编译过后的文件,如src和cmakelist等文件,需要全部删除,只保留msg文件夹和package.xml这两个即可。
同时package.xml文件中需要以根目录的文件命名
最后运行rosgenmsg(folderpath)命令,可以开始编译,编译过程中如果有报错会出现bulid log ,可以参考该日志文件找具体哪里的问题。
参考编译完之后的步骤 进行自定义消息配置
matlab与ros链接命令
setenv(‘ROS_MASTER_URI’,‘http://192.168.31.182:11311’)
rosinit
其中192.168.31.182是ubuntu系统的地址,虚拟机也支持