simulink中报错,An error occurred while running the simulation and the simulation was terminated Caused by: MATLAB System block 'AlvCmrAdpr/Subscribe/SourceBlock' error occurred when invoking 'stepImpl' method of 'ros.slros2.internal.block.Subscriber'. The error was thrown from ' '/home/byd/ADAS/adas/05_SongPlus-mex1/+bus_conv_fcns/+ros2/+msgToBus/+sim_msgs/CameraObjectList.m' at line 8 '/home/byd/Matlab/R2022b/toolbox/ros/slros2/+ros/+slros2/+internal/+block/Subscriber.m' at line 182'. Subscripted assignment between dissimilar structures. ,该怎么解决
时间: 2023-09-06 11:12:29 浏览: 374
Dynamic Simulations of Electric Machinery : Using MATLAB/SIMULINK:Modelling and Simulation of Electric Machines with matlab/simulink-matlab开发
3星 · 编辑精心推荐
这个错误的原因是您的 MATLAB System block “AlvCmrAdpr/Subscribe/SourceBlock” 中的 ROS Subscriber block 在运行 stepImpl 方法时出错。具体来说,这是由于“/home/byd/ADAS/adas/05_SongPlus-mex1/+bus_conv_fcns/+ros2/+msgToBus/+sim_msgs/CameraObjectList.m”第8行和“/home/byd/Matlab/R2022b/toolbox/ros/slros2/+ros/+slros2/+internal/+block/Subscriber.m”第182行之间发生了一个不同类型的结构体之间的下标分配。
要解决这个问题,您可以考虑以下步骤:
1. 检查您的代码中是否有与结构体相关的问题,例如不同类型的结构体之间的下标分配。
2. 检查您的 simulink 模型中是否存在错误,例如数据类型不匹配、大小不匹配等问题。
3. 如果以上两个步骤都没有解决问题,那么您可以考虑升级 ROS 和 MATLAB 版本,或者联系 MATLAB 技术支持来获取更多帮助。
希望这些步骤可以帮助您解决问题。
阅读全文