主要内容

在Simulink中使用ROS 2标记跟踪机器人金宝app

使用Si金宝appmulink®通过ROS 2网络控制在独立ROS模拟器上运行的模拟机器人。

在本例中,您运行了一个模型,该模型实现了符号跟随算法,并控制模拟机器人根据环境中的符号跟随路径。该算法从运行在独立ros模拟器中的模拟机器人接收位置信息和摄像头信息。该算法检测信号的颜色,并根据颜色向机器人发送速度指令。在这个例子中,算法被设计成当机器人遇到蓝色标志时左转,当机器人遇到绿色标志时右转。最后,当机器人遇到红色标志时,它停了下来。

要查看使用ROS 1或MATLAB®的示例,请参阅MATLAB中带ROS的符号跟踪机器人

启动机器人模拟器

启动一个基于ros的差动驱动机器人模拟器,并配置与机器人模拟器的Simulink®连接。金宝app

这个例子使用了一个虚拟机(VM),可以通过开始使用凉亭和模拟乌龟机器人

  • 启动Ubuntu®虚拟机桌面。

  • 在Ubuntu桌面上,单击露台ROS2迷宫图标来启动为本例构建的露台世界。

  • 在MATLAB命令窗口中,设置ROS_DOMAIN_ID环境变量来25匹配机器人模拟器设置并运行ros2主题列表验证机器人模拟器中的主题在MATLAB中可见。

setenv (“ROS_DOMAIN_ID”“25”) ros2 (“主题”“列表”
/ parameter_events

开放模型和配置Simulink金宝app

设置Simulink金宝app ROS首选项以与机器人模拟器通信。

打开示例模型

open_system (“signFollowingRobotROS2.slx”);

配置ROS 2的网络配置。

  • 模拟选项卡,在准备中,选择ROS工具箱> ROS网络

  • 配置ROS网络地址,设置“ROS 2 Domain ID”为25

  • 点击好吧应用更改并关闭对话框。

在每一个时间步,算法检测到一个信号从摄像机馈送,决定转弯,并推动它前进。符号检测是在图像Proecessing模型的子系统。

open_system (“signFollowingRobotROS2 /图像处理”);

信号跟踪逻辑子系统实现了一个statflow®图表,从中获取检测到的图像大小和坐标图像处理并提供线性和角速度来驱动机器人。

open_system (“signFollowingRobotROS2 /信号跟踪逻辑”);

运行模型

在机器人模拟器中运行模型并观察机器人的行为。

  • 视频观众显示实际的摄像机馈电和检测到的标志图像。

  • 在模拟器中,机器人跟随标志并根据颜色转弯。

  • 一旦机器人到达红色区域,模拟就会自动停止在最后签名。