主要内容

机器人系统工具箱的凉亭模拟如何工作

机器人系统工具箱™提供了一个联合仿真框架,使您能够在MATLAB中使用机器人算法®和仿真软金宝app件®并在虚拟模拟环境中可视化他们的表现。这个环境使用Gazebo Simulator。

了解此模拟环境的工作方式可以帮助您排除问题并自定义模型。

与三维仿真环境通信

当您使用Robotics System Toolbox来运行算法时,MATLAB或Simulink将在仿真环境中共同模拟算法。金宝app

在主机上,Simulink或MATLAB将驱金宝app动数据和设置命令发送到目标Linux机器上的Gazebo Co-Simulation Plugin。插件将这些信息传递给Gazebo模拟器,后者通过插件将传感器数据和模型信息返回给主机上的Simulink或MATLAB。金宝app

该图概述了MATLAB或Simulink与仿真环境之间的通信。金宝app

MATLAB或Sim金宝appulink与凉亭模拟器通信

时间同步

在联合仿真过程中,您可以随时使用pause暂停Simulink和凉亭模拟金宝app器。凉亭在模拟开始前暂停一段时间。

Simulink与凉亭模拟器的时间同步金宝app

差距是由联合模拟时间序列造成的:

金宝appSimulink和Gazebo联合仿真时间序列

传感器数据和驱动命令在正确的时间步长交换。首先执行Gazebo,然后是Simulink。金宝app暂停时,模拟执行仍处于Gazebo执行的时间步骤,但Simulink仍处于前一个步骤时间,直到恢复模型为止。金宝app

提高性能的建议

  • 实时的因素-增加实时因子(对于Gazebo GUI或。world文件)大于1如果准确性不是要求的话。

  • 金宝appSimulink采样时间-在Gazebo Simulink块中增加采样时间大于金宝app1Msec获得更快的模拟。

  • 使用自定义消息来提高Simulink块减少的性能金宝app-如果几个Gazebo Read或Gazebo Apply块正在执行类似的任务,那么通过使用自定义消息将它们组合成一个或几个Subscribe和Publish块来减少块的数量。

  • 在同一台机器上运行MATLAB和Gazebo—为了提高仿真性能,可以在同一台机器上运行MATLAB和Gazebo。

相关的话题