机器人专用模块#

介绍#

VIQRC 24-25 快速继电器 游乐场配备了该游乐场独有的积木,包括两种电机选项。

所有标准 VEXcode VR 模块均可用于 VIQRC 24-25 快速接力 游乐场。

以下是所有可用的游乐场专用积木列表:

运动控制 - 控制机器人电机的移动和跟踪。

感知——利用机器人的各种传感器。

本页示例使用 Playground 的默认起始位置。

运动#

行动#

旋转马达#

旋转电机 模块使用 当前电机速度 沿指定方向旋转选定的电机或电机组。

spin [IntakeMotor v] [intake v]

参数

描述

发动机

要旋转的电机或电机组:

  • 进料电机
  • 弹射电机组

方向

旋转方向:

  • 进气马达
    • 进气口
    • 排气口
  • 弹射组
    • 下部
    • 释放口

例子

当开始
[Launch the preloaded Ball.]
spin [CatapultGroup v] [release v]
[Lower the Catapult to load a new Ball.]
spin [CatapultGroup v] [lower v]

用于旋转马达#

spin motor for 模块使用 当前电机速度 使选定的电机或电机组旋转特定的圈数,以度或圈数衡量。

spin [IntakeMotor v] [intake v] for [90] [degrees v] ▶

参数

描述

发动机

要旋转的电机或电机组:

  • 进料电机
  • 弹射电机组

方向

旋转方向:

  • 进气马达
    • 进气口
    • 排气口
  • 弹射组
    • 下部
    • 释放口

距离

旋转次数,以整数或小数表示。

单元

表示距离的计量单位:

展开箭头

默认情况下,这是一个等待块,因此电机将在运行下一个块之前完成运转。展开该块,添加“and don’t wait”即可将其更改为非等待块。

例子

当开始
[Launch the preloaded Ball.]
spin [CatapultGroup v] [release v]
[Lower the Catapult to load a new Ball.]
spin [CatapultGroup v] [lower v] for [1350] [degrees v] ▶

旋转电机定位#

旋转电机到位置 模块使用当前的 电机速度电机位置 将电机或电机组旋转到特定的绝对位置。

spin [IntakeMotor v] to position [90] [degrees v] ▶

参数

描述

发动机

要旋转的电机或电机组:

  • 进料电机
  • 弹射电机组

位置

电机或电机组旋转到的目标位置。

单元

计量单位:

展开箭头

默认情况下,这是一个等待块,因此电机将在运行下一个块之前完成运转。展开该块,添加“and don’t wait”即可将其更改为非等待块。

例子

当开始
[Launch the preloaded Ball.]
spin [CatapultGroup v] [release v]
[Lower the Catapult to load a new Ball.]
spin [CatapultGroup v] to position [1260] [degrees v] ▶

停止电机#

停止电机 模块会立即停止选定的电机或电机组。

stop [IntakeMotor v]

参数

描述

发动机

要停止的电机或电机组:

  • 进气电机
  • 弹射电机组

例子

当开始
[Start spinning Intake Motor to prepare to pick up a Ball.]
spin [IntakeMotor v] [intake v]
等待 (1) 秒
[After the Ball is picked up, stop spinning the Intake Motor.]
stop [IntakeMotor v]

设置#

设置电机位置#

设置电机位置 模块为电机或电机组设置特定的位置值,从而更新编码器读数。

set [IntakeMotor v] position to [0] [degrees v]

参数

描述

发动机

设置以下位置的电机或电机组:

  • 进气电机
  • 弹射器组

位置

要设置的编码器位置值。

单元

计量单位:

例子

当开始
[Release the preloaded Ball.]
spin [CatapultGroup v] [release v]
[Lower the Catapult Arm to prepare for the next Ball.]
spin [CatapultGroup v] to position [1260] [degrees v] ▶
[Make the lowered Catapult Arm position the new 0 degrees position.]
set [CatapultGroup v] position to [0] [degrees v]

设定电机速度#

设置电机速度 模块将电机或电机组的默认旋转速度设置为百分比,该百分比将应用于项目中所有后续的电机模块。

set [IntakeMotor v] velocity to [50] [% v]

参数

描述

发动机

设置以下电机或电机组速度的电机或电机组:

  • 进气电机
  • 弹射组

速度

设置默认移动速度,范围从 -100 到 100(以百分比表示)。

单元

表示速度的单位:

  • %

例子

当开始
[Start spinning the Intake Motor to prepare to pick up Balls.]
set [IntakeMotor v] velocity to [100] [% v]
spin [IntakeMotor v] [intake v]

设置电机超时#

设置电机超时模块用于设置电机模块到达目标位置的等待时间限制。如果机器人无法在设定的时间内完成移动,它将自动停止并继续执行下一个模块。

set [IntakeMotor v] timeout to [1] seconds

参数

描述

发动机

要设置超时时间的电机或电机组:

  • 进气电机
  • 弹射电机组

时间

电机模块在停止并移动到下一个模块之前将运行的最大秒数。

例子

当开始
set [CatapultGroup v] timeout to [2] seconds
[Lower Catapult Arm to prepare to pick up a Ball.]
spin [CatapultGroup v] [lower v] for [10] [turns v] ▶

位置#

电机位置#

电机位置模块返回所选电机或电机组旋转的总距离。

([IntakeMotor v] position in [degrees v])

参数

描述

发动机

用于返回以下位置的电机或电机组:

  • 进气电机
  • 弹射器组

单元

计量单位:

例子

当开始
[Release the preloaded Ball.]
spin [CatapultGroup v] [release v]
[Lower the Catapult Arm to prepare for the next Ball.]
spin [CatapultGroup v] [lower v]
wait until <[1260] [math_less_than v] ([CatapultGroup v] position in [degrees v])>
stop [CatapultGroup v]

价值观#

电机已完成#

电机是否停止? 模块返回一个布尔值,指示所选电机或电机组是否未旋转。

  • 正确——电机或电机组没有旋转。

  • 错误 - 电机或电机组正在旋转。

<[IntakeMotor v] is done?>

参数

描述

发动机

要检查的电机或电机组是否停止旋转:

  • 进料电机
  • 弹射电机组

电机在转动吗?#

电机是否正在旋转? 模块返回一个布尔值,指示所选电机或电机组是否正在旋转。

  • 正确——电机或电机组正在旋转。

  • 错误 - 电机或电机组没有旋转。

<[IntakeMotor v] is spinning?>

参数

描述

发动机

要检查当前是否正在旋转的电机或电机组:

  • 进气电机
  • 弹射电机组

电机速度#

电机速度模块返回电机或电机组的当前转速,范围从-100%到100%。

([IntakeMotor v] velocity in [% v] :: custom-motion)

参数

描述

发动机

用于返回以下速度的电机或电机组:

  • 进气电机
  • 弹射器组

单元

表示速度的单位:

  • %

传感#

光学的#

光学仪器发现物体了吗?#

光学传感器检测到物体? 模块返回一个布尔值,指示光学传感器是否检测到物体。

  • 正确 - 光学传感器已检测到物体。

  • 错误 - 光学传感器未检测到物体。

<[IntakeOptical v] found an object?>

参数

描述

此代码块没有参数。

光学检测颜色#

光学传感器检测到颜色? 模块返回一个布尔值,指示光学传感器是否检测到特定颜色。

  • 正确 - 光学传感器已检测到指定颜色。

  • 错误 - 光学传感器未检测到指定颜色。

<[IntakeOptical v] detects [yellow v]?>

参数

描述

颜色

要检查的颜色:

  • 红色
  • 绿色
  • 蓝色
  • 白色
  • 黄色
  • 橙色
  • 紫色
  • 红紫色
  • 紫色
  • 蓝紫色
  • 蓝绿色
  • 黄绿色
  • 黄橙色
  • 红橙色

光学亮度#

光学亮度模块返回光学传感器检测到的光量,范围从 0% 到 100%。

([IntakeOptical v] brightness in %)

参数

描述

此代码块没有参数。

光学色调#

光学色调模块返回光学传感器检测到的颜色的色调值。

色调值范围从 0 到 359 度,对应于下图所示色轮上的位置。

一个圆形色轮,显示完整的色调光谱,边缘标有度数,从顶部的 0 度到 360 度,以 30 度为增量递增。

([IntakeOptical v] hue in degrees)

参数

描述

此代码块没有参数。

光学#

当光学传感器检测到或丢失物体时,when Optical 模块会运行其堆栈。您可以放置​​多个 when Optical 模块,以便同时运行多个模块堆栈。

when [IntakeOptical v] [detects v] an object

参数

描述

行动

哪个动作会触发帽子阻挡:

  • 检测到
  • 丢失