机器人专用积木#

所有标准 VEXcode VR 模块均可用于VIQRC 虚拟技能 - 快速接力游乐场。

运动#

这个游乐场的积木将可以访问所有运动积木的进气电机弹射器组参数。

当为运动块选择方向时,intake 将使进气电机正向旋转,而 outtake 将使进气电机反向旋转。

对于弹射器组,降低将使弹射器组向前旋转,释放将使弹射器组反向旋转。

Spin#

Spin 块用于无限旋转电机。

这是一个非等待块,允许任何后续块无延迟地执行。

[IntakeMotor v] [收集器 v] 转

选择要使用的电机。

图片显示了一个标记为“旋转”的块,其中“IntakeMotor”选项被选中,下方另一个标记为“CatapultGroup”的选项被选中。“IntakeMotor”被选中,该选项可能与配置哪个电机或电机组将在“进气”方向上执行旋转动作有关。下拉菜单允许为此操作选择不同的电机或电机组。

选择电机移动的方向。

进气电机可以朝进气出气方向旋转。

图片显示了一个标有“旋转”的块,其中“进气电机”选项已选中,另一个下拉菜单显示“进气”为已选选项,而“出气”为备选选项。此设置可能用于配置电机,使其根据用户的选择在“进气”或“出气”方向上执行旋转动作。下拉菜单允许用户在这两个方向选项之间切换。

弹射器组可以朝降低释放方向旋转。

图片显示了一个标记为“旋转”的模块,其中选择了“弹射器组”作为要控制的电机或电机组。所选操作为“降低”,下拉菜单中还提供了“释放”选项。此设置可能将弹射器组配置为执行降低操作,下拉菜单允许用户选择降低或释放弹射器装置。

在这个例子中,弹射器将发射预装的球,然后降低弹射器以准备发射新的球。

当开始
[Launch the preloaded Ball.]
[CatapultGroup v] [释放 v] 转
[Lower the Catapult to load a new Ball.]
[CatapultGroup v] [更低 v] 转

Spin for#

Spin for 块用于使电机旋转给定的距离。

这可以是非等待等待块,取决于是否使用并且不等待选项。

[IntakeMotor v] [收集器 v] 转 [90] [度 v] ▶

选择要使用的电机。

图片展示了一个可视化编程模块,其指令是“旋转”一个电机,并可选择“IntakeMotor”或“CatapultGroup”。选定的电机被设置为“IntakeMotor”,然后指令其执行 90 度的“进气”动作。

选择电机移动的方向。

进气电机可以朝进气出气方向旋转。

图片展示了一个代码块,其中一个名为“IntakeMotor”的电机被设置为“旋转”。旋转方向可从下拉菜单中选择,当前选择为“进气”,但也可以选择“出气”。电机被编程为沿所选方向旋转指定的90度。

弹射器组可以朝降低释放方向旋转。

图片展示了一个用于控制“CatapultGroup”电机的编程模块。该模块被设置为“旋转”电机,并通过下拉菜单允许用户选择操作,“降低”或“释放”,其中“降低”表示已选择。电机被编程为沿选定方向旋转 90 度。

通过输入一个值并选择测量单位(度或圈)来设置电机旋转的距离。

图片展示了一个配置用于在编码环境中控制“进气电机”的编码模块。该模块指示电机沿“进气”方向“旋转”90度。下拉菜单突出显示,显示用户正在选择测量单位,当前选择的单位是“度”。下拉菜单中还包含“转”选项。

默认情况下,旋转块会阻止任何后续块的执行,直到其完成为止。通过展开旋转块以显示不等待,块将在电机转动时继续执行。

[IntakeMotor v] [收集器 v] 转 [90] [度 v] ◀ 并且不等待

在这个例子中,弹射器将发射预装的球,然后降低弹射器以准备发射新的球。

当开始
[Launch the preloaded Ball.]
[CatapultGroup v] [释放 v] 转
[Lower the Catapult to load a new Ball.]
[CatapultGroup v] [更低 v] 转 [1350] [度 v] ▶

Spin to position#

旋转到位置块用于将电机旋转到设定位置。

这可以是非等待等待块,取决于是否使用并且不等待选项。

[IntakeMotor v] 转至 [90] [度 v] ▶

选择要使用的电机。

图片展示了一个编程模块,其中“IntakeMotor”从下拉菜单中选择。该模块配置为将电机旋转到特定位置,设置为 90 度。下拉菜单允许用户选择不同的电机组,例如“IntakeMotor”或“CatapultGroup”,以控制要调整的电机。

通过输入一个值并选择测量单位(度或圈)来设置电机旋转的距离。

图片展示了一个配置为将“IntakeMotor”旋转到特定位置(90 个单位)的编码块。下拉菜单打开,用户可以选择“度”或“圈”作为电机位置的测量单位。当前选择的是“度”。

默认情况下,旋转到指定位置积木会阻止所有后续积木的执行,直到其完成。通过展开旋转到指定位置积木以显示不等待,积木将在电机移动时继续执行。

[IntakeMotor v] 转至 [90] [度 v] ◀ 并且不等待

在这个例子中,弹射器将发射预装的球,然后降低弹射器以准备发射新的球。

当开始
[Launch the preloaded Ball.]
[CatapultGroup v] [释放 v] 转
[Lower the Catapult to load a new Ball.]
[CatapultGroup v] 转至 [1260] [度 v] ▶

Stop Motor#

停止电机块用于停止电机移动。

这是一个非等待块,允许任何后续块无延迟地执行。

[IntakeMotor v] 停止

选择要使用的电机。

图片展示了一个来自可视化编码环境的模块,其中包含“stop”命令,用于停止选定的电机。该模块当前已选择“IntakeMotor”,并可从下拉菜单中选择“CatapultGroup”。

在此示例中,进气电机将旋转 1 秒钟以拾取球,然后停止。

当开始
[Start spinning Intake Motor to prepare to pick up a Ball.]
[IntakeMotor v] [收集器 v] 转
等待 (1) 秒
[After the Ball is picked up, stop spinning the Intake Motor.]
[IntakeMotor v] 停止

Set Motor position#

设置电机位置块用于将电机的编码器位置设置为输入的值。

这是一个非等待块,允许任何后续块无延迟地执行。

设定 [IntakeMotor v] 转位至 [0] [度 v]

选择要使用的电机。

图片显示了一个可视化编码块,其中“IntakeMotor”被设置为 0 度。下拉菜单打开,显示“IntakeMotor”为所选电机,以及“CatapultGroup”作为备选选项。该块以黄色轮廓突出显示,并且数字“0”被设置为白色椭圆形输入字段中的位置值。

设置要使用的测量单位,度或圈。

图片显示了一个可视化的编码块,其中“IntakeMotor”被设置为 0 度。测量单位的下拉菜单已打开,显示“度”为选定选项,“圈”为备选选项。数字“0”被设置为白色椭圆形输入字段中的位置值。

在此示例中,降低的弹射臂被设置为新的 0 度位置。

当开始
[release the preloaded Ball.]
[CatapultGroup v] [释放 v] 转
[Lower the Catapult Arm to prepare for the next Ball.]
[CatapultGroup v] 转至 [1260] [度 v] ▶
[Make the lowered Catapult Arm position the new 0 degrees position.]
设定 [CatapultGroup v] 转位至 [0] [度 v]

Set Motor velocity#

设置电机速度块用于设置电机的速度。

这是一个非等待块,允许任何后续块无延迟地执行。

设定 [IntakeMotor v] 转速为 [50] [% v]

选择要使用的电机。

图片展示了一个用于设置电机速度的可视化编程模块。所选电机为“IntakeMotor”,下拉菜单中可选择“CatapultGroup”。速度设置为 50%,单位为百分比(“%”)。该模块高亮显示,表示用户当前正在通过下拉菜单选择电机。

设置电机速度块将接受-100%到100%的范围。

在此示例中,进气电机的速度在进气电机开始旋转以拾取球之前设置为 100%。

当开始
[Start spinning the Intake Motor to prepare to pick up Balls.]
设定 [IntakeMotor v] 转速为 [100] [% v]
[IntakeMotor v] [收集器 v] 转

Set Motor timeout#

设置电机超时块用于设置电机运动块的时间限制。

这可以防止未到达预定位置的运动块阻止后续块的运行。

这是一个非等待命令,允许任何后续命令无延迟地执行。

设定 [IntakeMotor v] 超时为 [1] 秒

选择要使用的电机。

该图描绘了一个用于将“IntakeMotor”的超时设置为 1 秒的块,下拉菜单显示“IntakeMotor”为选定的电机,“CatapultGroup”为另一个可用选项。

在此示例中,弹射器组的超时时间设置为 2 秒,然后才开始降低弹射臂。

当开始
设定 [CatapultGroup v] 超时为 [2] 秒
[Lower Catapult Arm to prepare to pick up a Ball.]
[CatapultGroup v] [更低 v] 转 [10] [转 v] ▶

传感#

Swish 可以访问标准 计时器传动系统距离 传感块。

[眼部感应](https://test-api.vex.com/vr/home/blocks/sensing.html#eye-sensor)已重命名为光学感应,以匹配后部光学传感器。

Swish 可以使用电机传感块:

Motor is done#

电机已完成块用于报告所选电机或电机组是否已完成其运动。

<[IntakeMotor v] 已结束?>

选择要使用的电机或电机组。

该图显示了一个用于检查“IntakeMotor”是否完成操作的块。可以看到一个下拉菜单,用户可以选择“IntakeMotor”或“CatapultGroup”来检查所选电机或电机组的完成状态。当前在下拉菜单中选择的是“IntakeMotor”。

The Motor is done block reports True when the selected Motor or Motor Group has completed its movement.

The Motor is done block reports False when the selected Motor or Motor Group has not completed its movement.

电机已完成块用于具有六边形(六面)空间的块中。

Motor is spinning#

电机正在旋转块用于报告所选电机或电机组是否正在移动。

<[IntakeMotor v] 正在转?>

选择要使用的电机或电机组。

图片展示了一个用于检查“IntakeMotor”是否旋转的块。此时会打开一个下拉菜单,其中显示了可在“IntakeMotor”和“CatapultGroup”之间进行选择的选项,当前已选择“IntakeMotor”。

The Motor is spinning block reports True when the selected Motor or Motor Group is moving.

The Motor is spinning block reports False when the selected Motor or Motor Group is not moving.

马达正在旋转块用于具有六边形(六面)空间的块中。

Position of motor#

电机位置块用于报告电机或电机组中第一个电机的位置。

([IntakeMotor v] 转位 [度 v])

选择要使用的电机或电机组。

该图显示了一个块,该块表示用于查询“IntakeMotor”位置(以度为单位)的命令。用于选择电机的下拉菜单已展开,显示已选择的“IntakeMotor”和另一个选项“CatapultGroup”。“位置(以度为单位)”和“度”字段也可见。

选择使用的单位,

图片显示了一个命令块,用于查询“IntakeMotor”的位置(单位为度或圈)。用于选择测量单位的下拉菜单已展开,显示“度”为已选选项,“圈”为另一个可用选项。

电机位置块用于具有圆形空间的块中。

在此示例中,弹射臂将降低,直到其电机位置大于 1260 度。

当开始
[Release the preloaded Ball.]
[CatapultGroup v] [释放 v] 转
[Lower the Catapult Arm to prepare for the next Ball.]
[CatapultGroup v] [更低 v] 转
等到 <[1260] [math_less_than v] ([CatapultGroup v] 转位 [度 v])>
[CatapultGroup v] 停止

Velocity of motor#

电机速度块用于报告电机或电机组中第一个电机的当前速度。

([IntakeMotor v] 速度 [度 v] 值 :: custom-motion)

选择要使用的电机或电机组。

图片展示了一个用于检索“IntakeMotor”速度的块,以百分比 (%) 表示。该块呈浅蓝色且呈圆形,表明其用于报告数值。可以看到一个下拉菜单,其中显示“IntakeMotor”为已选选项,以及“CatapultGroup”为备选选项,用户可以选择要检索哪个电机的速度。

电机速度块用于具有圆形空间的块中。