传动系统#

介绍#

VEX IQ(Inertial.md代)驱动系统采用内置陀螺仪传感器,支持精确的前进、后退和转向运动。这些模块使机器人能够连续移动或移动设定的距离,按度数或航向旋转,并响应其旋转方向的变化。

传动系统类别还包含配置模块,可用于设置驱动和转弯速度、定义停止行为、应用超时以避免执行停顿,以及手动更新机器人的航向或旋转值。这些功能在设计自主行为或实时调整时提供了灵活性。

以下是所有模块的列表:

动作——控制机器人行驶或转弯一段设定的距离、角度,或持续进行。

  • drive — 持续驱动机器人。

  • drive for — 驱动机器人行驶一段设定的距离。

  • turn — 使机器人持续旋转。

  • turn for — 将机器人旋转指定的度数。

  • 转向航向 — 将机器人转向面向指定的绝对航向。

  • 转向旋转 — 使机器人旋转以达到指定的累积旋转角度。

  • 停止驾驶 — 停止所有机器人运动。

设置 — 配置传动系统速度、停止、超时时间和旋转值。

数值 — 返回传动系统运动状态、航向、旋转、速度和当前电流消耗。

行动#

驾驶#

驱动 模块使用当前的 驱动速度 使传动系统向前或向后移动。该模块持续运行,直到另一个传动系统模块中断它或项目停止。

aria-description 放在这里#
驱动 [向前 v]

参数

描述

方向

机器人行驶方向:

  • 前进
  • 后退

例子

aria-description 放在这里#
当开始
[Drive forward, then stop.]
驱动 [向前 v]
等待 (2) 秒
驱动停止

开车去#

drive for 块使用当前 驱动速度 将传动系统向前或向后移动指定的距离。

aria-description 放在这里#
驱动 [向前 v] (200) [毫米 v] ▶

参数

描述

方向

机器人行驶方向:

  • 前进
  • 后退

距离

机器人行驶的距离,以整数或小数表示。

单元

表示距离的计量单位:

  • 毫米 — 毫米
  • 英寸

扩大箭头

默认情况下,这是一个等待块,因此传动系统会在运行下一个块之前完成移动。要使传动系统开始移动并立即运行下一个块,请展开该块并显示无需等待

例子

aria-description 放在这里#
当开始
[Drive backward 500 mm.]
驱动 [反 v] (500) [毫米 v] ▶

转动#

转弯 模块使用当前的 转弯速度 持续向左或向右转动传动系统。传动系统将持续转动,直到另一个传动系统模块运行或项目停止。

aria-description 放在这里#
[右 v] 转

参数

描述

方向

机器人转向方向:

  • 左转
  • 右转

例子

aria-description 放在这里#
当开始
[Turn right, then stop.]
[右 v] 转
等待 (2) 秒
驱动停止

转向#

turn for 块使用当前 转弯速度 将传动系统向左或向右转动特定的度数。

aria-description 放在这里#
[右 v] 转 (90) 度 ▶

参数

描述

方向

机器人转向方向:

  • 左转
  • 右转

角度

机器人旋转的角度数,以整数或小数表示。

扩大箭头

默认情况下,这是一个等待块,因此传动系统会在运行下一个块之前完成转动。要使传动系统开始转动并立即运行下一个块,请将块展开为并且不等待

例子

aria-description 放在这里#
当开始
[Turn left, then turn around to the right.]
[左 v] 转 (90) 度 ▶
[右 v] 转 (180) 度 ▶

转向航向#

转向航向 块使用当前 转弯速度 将传动系统转向特定航向。

aria-description 放在这里#
归位至 (90) 度 ▶

参数

描述

标题

传动系统的绝对航向角,范围从 -360 度到 360 度。

扩大箭头

默认情况下,这是一个等待块,因此传动系统会在运行下一个块之前完成转动。要使传动系统开始转动并立即运行下一个块,请将块展开为并且不等待

例子

aria-description 放在这里#
当开始
[Turn to face the cardinal directions.]
归位至 (90) 度 ▶
等待 (2) 秒
归位至 (180) 度 ▶
等待 (2) 秒
归位至 (270) 度 ▶
等待 (2) 秒
归位至 (0) 度 ▶
等待 (2) 秒

转向旋转#

转向旋转 块使用当前 转弯速度 将传动系统转向面向特定的旋转值。

aria-description 放在这里#
转向至 (90) 度 ▶

参数

描述

旋转

机器人将旋转到的累计旋转值,以整数或小数表示。

扩大箭头

默认情况下,这是一个等待块,因此传动系统会在运行下一个块之前完成转动。要使传动系统开始转动并立即运行下一个块,请将块展开为并且不等待

例子

aria-description 放在这里#
当开始
[Turn left, then spin in a circle clockwise and face right.]
转向至 (-90) 度 ▶
等待 (2) 秒
转向至 (450) 度 ▶

停止驾驶#

停止驾驶块立即停止传动系统的所有运动。

aria-description 放在这里#
驱动停止

参数

描述

该块没有参数。

例子

aria-description 放在这里#
当开始
[Drive forward, then stop.]
驱动 [向前 v]
等待 [4] 秒
驱动停止

设置#

设置驱动速度#

设置驱动速度块将项目中所有后续移动块的默认移动速度设置为百分比。

aria-description 放在这里#
设定驱动速度为 (50)%

参数

描述

速度

将默认移动速度设置为 0% 至 100%。

例子

当开始
[Drive forward at the default velocity.]
驱动 [向前 v] (100) [毫米 v] ▶
等待 (1) 秒
[Move slower.]
设定驱动速度为 (20)%
驱动 [向前 v] (100) [毫米 v] ▶
等待 (1) 秒
[Move faster.]
设定驱动速度为 (100)%
驱动 [向前 v] (100) [毫米 v] ▶
等待 (1) 秒

设置转弯速度#

设置转弯速度块将项目中所有后续转弯块的默认速度设置为百分比。

aria-description 放在这里#
设定转向速度为 (50)%

参数

描述

速度

将默认转弯速度设置为 0% 至 100%。

例子

当开始
[Turn at default velocity.]
[右 v] 转 (100) 度 ▶
等待 (1) 秒
[Turn slower.]
设定转向速度为 (20)%
[右 v] 转 (100) 度 ▶
等待 (1) 秒
[Turn faster.]
设定转向速度为 (100)%
[右 v] 转 (100) 度 ▶
等待 (1) 秒

设置驱动器停止#

设置驱动停止块设置传动系统运动结束时传动系统的行为方式。

aria-description 放在这里#
设定驱动停止模式为 [刹车 v]

参数

描述

停止行为

设置传动系统

  • 停止方式:
    • 制动 — 立即停止。2
    • 滑行 — 逐渐减速直至停止。4保持 — 利用电机反馈停止并抵抗
  • 例子

    启动时,将停止设置为滑行,向前行驶 2 秒,然后停止。#
    当开始
    [Drive forward and coast to a stop.]
    设定驱动速度为 (100)%
    设定驱动停止模式为 [滑行 v]
    驱动 [向前 v]
    等待 (2) 秒
    驱动停止
    

    设置驱动器超时#

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

    注意: 驱动系统的时间限制用于防止未到达目标位置的驱动系统块停止堆栈中其他块的执行。

    aria-description 放在这里#
    设定驱动超时为 (1) 秒
    

    参数

    描述

    时间

    传动系统块在停止并移动到下一个块之前运行的最大秒数。

    例子

    启动时,将驱动时间限制为 1 秒,然后旋转 90 度。#
    当开始
    [Drive forward for 1 second, then turn.]
    设定驱动超时为 (1) 秒
    驱动 [向前 v] (25) [英寸 v] ▶
    [右 v] 转 (90) 度 ▶
    

    设置驾驶航向#

    设置驱动航向 模块将惯性传感器或陀螺仪传感器 的当前航向设置为指定值。

    aria-description 放在这里#
    设定底盘归位至 (0) 度
    

    参数

    描述

    标题

    要分配的航向值(以度为单位)。

    例子

    aria-description 放在这里#
    当开始
    [Turn to the left.]
    设定底盘归位至 (90) 度
    归位至 (0) 度 ▶
    

    设置驱动器旋转#

    设置驱动旋转 模块设置惯性传感器或陀螺仪传感器 当前累积旋转值。

    aria-description 放在这里#
    设定底盘转向至 (0) 度
    

    参数

    描述

    旋转

    要分配的累积旋转值(以度为单位)。

    例子

    aria-description 放在这里#
    当开始
    [Spin counterclockwise two times.]
    设定底盘转向至 (720) 度
    转向至 (0) 度 ▶
    

    价值观#

    开车完成了吗?#

    **驱动完成?**块返回一个布尔值,指示传动系统是否没有移动。

    • 没错——传动系统没有运转。

    • 错误——传动系统正在运转。

    注意:此模块仅检测可展开以显示无需等待选项的模块的移动。

    <驱动已结束?>
    

    参数

    描述

    该块没有参数。

    例子

    当开始
    [Start spinning when the drive is complete.]
    驱动 [向前 v] (200) [毫米 v] ◀ 并且不等待
    永久循环
    如果 <驱动已结束?> 那么
    [右 v] 转 (360) 度 ▶
    退出循环
    否则
    在屏幕上设定光标至 (1) 行 (1) 列
    在屏幕上打印 [Still Moving...]▶
    等待 (0.1) 秒
    清屏
    

    驱动器正在移动吗?#

    **驱动器正在移动?**块返回一个布尔值,指示传动系统是否正在移动。

    • 没错——传动系统正在运转。

    • 错误——传动系统没有运转。

    注意:此模块仅检测可展开以显示无需等待选项的模块的移动。

    <驱动进行中?>
    

    参数

    描述

    该块没有参数。

    例子

    当开始
    [Print that the robot is moving while it is still driving.]
    驱动 [向前 v] (200) [毫米 v] ◀ 并且不等待
    当 <驱动进行中?>
    在屏幕上设定光标至 (1) 行 (1) 列
    在屏幕上打印 [Still Moving...]▶
    等待 (0.1) 秒
    清屏
    结束
    在屏幕上设定光标至 (1) 行 (1) 列
    在屏幕上打印 [Done!]▶
    

    行驶方向#

    驱动航向块以十进制数返回传动系统的航向角,范围在 0 到 359.99 度之间。

    (底盘归位角度值)
    

    参数

    描述

    该块没有参数。

    例子

    当开始
    [Display the heading after turning.]
    [右 v] 转 (450) 度 ▶
    在屏幕上打印 (底盘归位角度值)◀ 并设定光标为下一行
    

    驱动旋转#

    驱动旋转 模块返回自项目开始以来驱动系统旋转了多少度,以十进制数表示:正数表示顺时针旋转,负数表示逆时针旋转。

    (底盘转向角度值)
    

    参数

    描述

    该块没有参数。

    例子

    当开始
    [Display the rotation after turning.]
    [右 v] 转 (450) 度 ▶
    在屏幕上打印 (底盘转向角度值)◀ 并设定光标为下一行
    

    驱动速度#

    驱动速度块返回传动系统的当前速度,范围从 -100% 到 100% 或 -127 rpm 到 127 rpm。

    (驱动速度 [% v])
    

    参数

    描述

    单元

    计量单位:

    • % – 从 -100% 到 100%
    • rpm – 每分钟转数,从 -127 到 127

    例子

    当开始
    [Display the velocity as the robot is moving.]
    驱动 [向前 v]
    等待 (1) 秒
    在屏幕上打印 (驱动速度 [% v])◀ 并设定光标为下一行
    驱动停止
    

    驱动电流#

    驱动电流块返回电机或电机组所吸收的电流量,范围从 0.0 到 1.2 安培 (Amperes)。

    (驱动电流 [amps v])
    

    参数

    描述

    该块没有参数。

    例子

    当开始
    [Display the current as the robot is moving.]
    在屏幕上设定打印精度为 [0.01 v]
    驱动 [向前 v]
    等待 (1) 秒
    在屏幕上打印 (驱动电流 [amps v])◀ 并设定光标为下一行
    驱动停止