使用数学不等式对 V5 距离传感器进行编码

在 VEX 机器人竞赛 (VRC) 比赛期间,在机器人上使用 V5 距离传感器可以让您的机器人通过自主运动获得更多分数。

本文使用的示例游戏是 2021-2022 年 VRC 游戏《Tipping Point》。 查看本页 了解有关该游戏及其玩法的更多信息。 有关本文中使用的游戏定义、游戏规则概述和评分, 请参阅《引爆点的游戏手册。


V5距离传感器

V5距离传感器

V5 距离传感器 是功能强大的 V5 传感器之一,专为与 V5 机器人平台完全集成而设计。

  • 该传感器使用教室安全激光脉冲来测量从传感器正面到物体的距离。
  • V5距离传感器可用于检测物体并确定物体的相对尺寸。 物体的大致尺寸被报告为小、中或大。
  • 该传感器还可用于计算机器人的接近速度。 接近速度测量机器人/传感器向物体移动时的速度。

有关 V5 距离传感器、其工作原理以及如何与 VEXcode V5 一起使用的更多详细信息,v请参阅 VEX 库中的这篇文章


V5 距离传感器示例

该项目的目标是让机器人拾取并移动移动目标,使用 V5 距离传感器来检测目标的距离。

这是本文将介绍的代码示例

这是本文将介绍的代码示例。

将详细介绍示例中的行为以及如何获取用于编码 V5 距离传感器的参数。

您可以按照本文的说明在 VEXcode V5 中构建项目,或者您也可以阅读本文以获取灵感,作为在编写自己的自定义机器人时如何包含 V5 距离传感器的示例。

该视频显示了上面的代码正在执行,以及机器人拾取并移动移动目标。

这是 VEXcode V5 中使用的机器人配置

如果您想亲自尝试该示例,这里是 VEXcode V5 中使用的机器人配置,用于将机器人和距离传感器添加到本示例的配置中。

本例中使用的机器人

本例中使用的机器人是2021-2022 VRC Hero Bot

本例中使用的机器人是 2021-2022 VRC 英雄机器人 Moby。 Moby 的设计没有任何传感器,本例中为 Moby 添加了 V5 距离传感器。

在此示例中,V5 距离传感器安装在 Moby's Forks 的中心附近。

有关 Moby 的更多信息, 请查看 VEX 库中的这篇文章

您不必使用 Moby 来编码 V5 距离传感器或参加今年的比赛。 您可以将传感器安装在定制机器人上任何您认为合适的位置。

注意: 确保机器人上没有任何结构位于传感器表面的小激光窗口前面。 目标和传感器之间的传感器前面需要有一条畅通的路径。

细分行为进行评分

要使用 V5 距离传感器的反馈拾取并移动移动目标,首先要分解机器人应如何移动。

机器人应面向移动目标放置

首先,机器人应面向移动目标放置。

机器人应向前行驶,直到距离传感器检测到
      ,即移动目标位于货叉内并靠近传感器

然后,机器人应向前行驶,直到距离传感器检测到移动目标位于货叉内并靠近传感器。

一旦传感器检测到移动目标位于叉子内部或接近传感器

一旦传感器检测到移动目标位于货叉内部或靠近传感器,机器人就会停止行驶并抬起货叉拾取移动目标。

选定移动目标后

一旦拾取移动目标,机器人将左转 90 度并向前行驶 600 毫米 (mm)。

然后机器人将降低货叉

然后,机器人将降低叉子以将移动目标放下,并反向行驶远离移动目标,这样在下一步移动时就不会意外地将其撞倒。


了解参数

为了执行上述行为,了解移动目标距离 V5 距离传感器有多远非常重要。

使用 V5 距离传感器拾取移动目标的参数

 为了让机器人能够向前行驶

为了让机器人向前行驶,直到距离传感器检测到移动目标位于货叉内部并靠近传感器,需要从 V5 Brain 记录传感器的值。

将移动目标放在机器人的叉子之间。

 然后,从大脑的屏幕中选择“设备”然后是
      距离传感器的图标

然后,从大脑的屏幕中选择“设备”,然后选择距离传感器的图标。

距离以毫米为单位

移动目标距传感器的距离(以毫米 (mm) 为单位)会显示在 Brain 的屏幕上。

这是将在项目中使用的值

这是使用距离传感器拾取移动目标时将在项目中使用的值。

升高和降低货叉的参数

再次将移动目标放入叉子内

再次将移动目标放入叉子内。

然后,从大脑的屏幕上

然后,从 Brain 的屏幕中选择“设备”,然后选择 Motor 2 的图标。 电机 2 控制左前叉。

手动升起货叉,直到移动目标的底部为
      ,且不遮挡距离传感器的视野

手动升起货叉,直到移动目标的底部不会遮挡距离传感器的视野。

手动升起货叉时,请确保同时升起 Moby 左右两侧的每个货叉,因为每个货叉均由各自的电机控制。

注意: 手动抬起货叉时,避免 夹点

叉子升高的度数

大脑屏幕上会报告叉子抬起的度数。

这是将在项目中使用的值

这是在项目中升高和降低货叉以拾取和放置移动目标时将使用的值。

使用运算符块

操作块用于将距离传感器编码为

在此项目中, <Less than> 操作符块用于对距离传感器进行编码。

这是因为随着距离传感器越来越近

这是因为,随着距离传感器越来越接近某个物体,传感器与该物体之间的距离(以毫米为单位)会减小。

可以选择阈值来触发行为

一旦距离小于预定量,可以选择阈值来触发机器人的行为。

例如,当机器人朝移动目标行驶时,一旦距离为 小于 约 139 毫米 (mm),请使用 <Less than> 操作员块来触发机器人停止的行为。

操作符块

例如,如果该值更改为 10 毫米 (mm),则机器人实际上会遇到移动目标并可能损坏自身,因为距传感器 10 毫米 (mm) 的距离不足以防止机器人的叉子接触移动目标。

For more information, help, and tips, check out the many resources at VEX Professional Development Plus

Last Updated: