1. MATLAB Simulink Robotics Systems Toolbox™
功能:
RSTB是MATLAB和Simulink的一个扩展,专为设计、仿真、测试和部署机器人应用而设计。它提供了用于操作臂和移动机器人的算法和工具,包括碰撞检查、路径规划、轨迹生成、正向和反向运动学以及动力学模型等。
应用场景:
RSTB适用于机器人算法的开发和验证,可以在虚拟环境中模拟机器人的行为,从而减少对实际硬件的依赖。
2. ROS Toolbox
功能:
ROS Toolbox提供了MATLAB和Simulink与机器人操作系统(ROS和ROS 2)之间的接口。它允许用户设计ROS节点网络,并将MATLAB或Simulink生成的ROS节点合并到现有ROS网络中。此外,它还支持ROS数据的可视化和分析,以及C++和CUDA代码生成。
应用场景:
ROS Toolbox主要用于将MATLAB或Simulink中的算法与ROS系统相结合,以实现复杂的机器人应用。它使得研究人员和工程师能够利用MATLAB的强大功能来加速ROS应用的开发。
3. Gazebo模拟器
功能:
Gazebo是一款3D动态模拟器,能够在复杂的室内和室外环境中准确有效地模拟机器人群。它提供了高保真度的物理模拟、丰富的传感器模型以及友好的交互方式。
应用场景:
Gazebo常用于测试机器人算法、设计机器人以及进行回归测试。它可以与ROS Toolbox结合使用,以实现从MATLAB/Simulink到ROS再到Gazebo的完整仿真流程。
4. URSim模拟器
功能:
URSim是Universal Robots提供的一款机器人模拟器,专为其系列机器人(如UR5、UR10等)设计。它允许用户在没有实际硬件的情况下进行编程、调试和仿真。
应用场景:
URSim特别适用于Universal Robots系列机器人的用户,他们可以在购买硬件之前先通过模拟器熟悉机器人的操作和控制。
5. UR 硬件
功能:
UR硬件指的是Universal Robots生产的实际机器人硬件,如UR5、UR10等。这些机器人具有高精度、高灵活性和易用性等特点,广泛应用于各种工业场景中。
应用场景:
UR硬件是机器人应用的最终执行者,它将MATLAB/Simulink中设计的算法和ROS中设计的系统集成在一起,并在实际环境中执行任务。
逻辑关系及实现方式
RSTB与ROS Toolbox:
- RSTB提供了机器人算法的开发和验证平台,而ROS Toolbox则将这些算法与ROS系统连接起来。
- 用户可以在RSTB中开发算法,并通过ROS Toolbox将其部署到ROS网络中,以实现与ROS系统的无缝集成。
RSTB/ROS Toolbox与Gazebo模拟器:
- Gazebo模拟器为RSTB和ROS Toolbox提供了高保真度的物理仿真环境。
- 用户可以在Gazebo中创建复杂的仿真场景,并使用RSTB或ROS Toolbox中的算法进行仿真测试。
- 仿真结果可以实时反馈到MATLAB/Simulink或ROS中,以便进行进一步的分析和优化。
RSTB/ROS Toolbox/Gazebo与URSim模拟器:
- URSim模拟器专注于Universal Robots系列机器人的仿真。
- 用户可以在URSim中验证针对Universal Robots机器人的算法,然后再通过RSTB/ROS Toolbox进行更广泛的仿真测试。
- 这种方式有助于减少在实际硬件上的调试时间,提高开发效率。
RSTB/ROS Toolbox/Gazebo/URSim与UR硬件:
- 最终,所有在MATLAB/Simulink、ROS和仿真器中开发和验证的算法都将部署到UR硬件上执行实际任务。
- 这一过程可能涉及代码生成(如使用MATLAB Coder或Simulink Coder)、ROS节点的部署以及硬件的调试和优化。
使用 MATLAB 开发 UR 应用程序后,可以通过连接到 URSim 或 UR 硬件来验证它。您还可以使用ROS Toolbox和MATLAB Coder™直接在嵌入式目标上部署算法。
使用交互式刚体树和 Gazebo® 物理模拟器、机器人系统工具箱™ 和 ROS 工具箱来设计和验证机器人操作器(如Universal Robots的 UR5e 协作机器人)的实际应用工作流程。
使用 Gazebo 物理模拟器和urROSNode对象来验证协作机器人在预先计算的任务空间轨迹上的控制和运动。设置 Gazebo 所需的所有必要文件都包含在支持包中。
使用 MATLAB 和 Simulink 进行协作机器人设计
- 设计、迭代和优化运动控制器以实现与协作机器人的安全交互。
使用 Gazebo、OpenCV 和 MATLAB 设计和验证对象检测和运动规划算法
使用 OpenCV 提供的功能从视频流中检测物体的位置和方向。然后使用 ROS 网络将此信息传递给运动规划算法。运动规划算法使用 Robotics Systems Toolbox 提供的功能计算物体在世界坐标系中的位置,并命令模拟机器人移动并拾取物体。
Gazebo 物理模拟器与模拟机器人和物体一起使用。ROS 设置所需的所有必要文件都包含在可下载的虚拟机 (VM) 中。
-
开始使用 Gazebo 和模拟 TurtleBot(ROS 工具箱)
Gazebo 是一款模拟器,可让您使用物理场景进行真实的测试和实验。Gazebo 是机器人技术领域的一款实用工具,因为它可让您使用可靠的物理特性和出色的图形快速创建和运行实验。MATLAB® 通过 ROS 接口连接到 Gazebo。
下载虚拟机
您可以下载已安装 ROS 和 Gazebo 的虚拟机映像。此虚拟机基于 Ubuntu® Linux®,并已预先配置为支持 ROS Toolbox™ 中的示例。
-
下载并安装ROS 虚拟机。
-
启动虚拟机。
-
在 Ubuntu 桌面上,您可以看到多个 Gazebo 世界启动脚本以及其他实用程序快捷方式。对于 TurtleBot® 示例,请使用Gazebo Empty、Gazebo House、Gazebo Office或Gazebo Sign Follower ROS图标。
是 Robotics System Toolbox™ 和 ROS Toolbox™ 的补充。您可以使用 MATLAB ®和 Simulink ®与Gazebo机器人模拟器和外部ROS(机器人操作系统)和ROS 2网络配合使用。Ubuntu ® Focal 20.04 虚拟机可在多个平台(Windows ®、Mac 和 Linux ®)上运行,并包含以下内容:
- ROS 2 Humble桌面安装
- ROS Noetic桌面安装
- Gazebo机器人模拟器 11.0.0
- 模拟TurtleBot ® 3的 Gazebo 世界示例
支持的平台包括 64 位 Windows、64 位 Linux
与 TurtleBot 通信
TurtleBot® 平台以及 MATLAB® 用户与其交互的方式。如何向 TurtleBot 发布消息(例如速度)以及如何订阅 TurtleBot 发布的话题(例如里程计)。