传感#

大脑感知#

重置计时器#

重置计时器块用于重置 EXP Brain 的计时器。

VEXcode 阻止包含秒数计时器的代码堆栈。#
计时器秒数

Brain 的计时器在每个项目开始时启动。重置计时器积木用于将计时器重置回 0 秒。

在这个例子中,Brain 将在等待 2 秒后打印当前时间,然后再重置其计时器。

VEXcode 块代码堆栈包含一个启动时块、一个等待 2 秒块、一个在 Brain 上以秒为单位打印计时器并将光标设置到下一行以及一个重置计时器块。#
当开始 :: hat events
等待 (2) 秒
在 (计时器秒数) 上打印 [Brain v] ◀ 并设定光标为下一行
重置计时器
在 (计时器秒数) 上打印 [Brain v] ◀ 并设定光标为下一行

计时器值#

计时器值块用于报告 EXP Brain 计时器的值(以秒为单位)。

VEXcode 阻止包含秒数计时器的代码堆栈。#
计时器秒数

计时器在程序启动时从 0 秒开始,并以十进制值报告计时器的值。

在这个例子中,Brain 将在等待 2 秒后打印当前时间,然后再重置其计时器。

VEXcode 块代码堆栈包含一个启动时块、一个等待 2 秒块、一个在 Brain 上以秒为单位打印计时器并将光标设置到下一行块以及一个重置计时器块。#
当开始 :: hat events
等待 (2) 秒
在 (计时器秒数) 上打印 [Brain v] ◀ 并设定光标为下一行
重置计时器
在 (计时器秒数) 上打印 [Brain v] ◀ 并设定光标为下一行

大脑按钮按下#

Brain Button Pressed 块用于报告 VEX EXP Brain 上的按钮是否被按下。

<Brain [Left v] 键按下了?>

当按下选定的 Brain 按钮时,Brain Button Pressed 块会报告“True”。

当未按下所选的 Brain 按钮时,Brain Button Pressed 块会报告“False”。

选择在 EXP Brain 上使用哪个 Brain 按钮。

VEX EXP Brain 按钮按下指示器的图像,显示显示屏上的当前按钮状态。

在这个例子中,当第一次按下正确的大脑按钮时,大脑会在其屏幕上打印一条消息。

当开始 :: hat events
[Don't print the message until the right Brain Button is pressed]
等到 <Brain [Right v] 键按下了?>
在 [Right Brain button was pressed.] 上打印 [Brain v] ◀ 并设定光标为下一行

光标列#

光标列块用于报告 EXP Brain 的屏幕光标位置的列号。

VEXcode 阻止包含光标列块的代码堆栈。#
光标列数

光标列块将报告 1-80 之间的值,并将在项目开始时从第 1 列开始。

在这个例子中,Brain 将把光标移动到 (3, 7),然后在 Brain 的屏幕上打印当前列 (7)。

VEXcode 块代码堆栈包含一个启动时块、一个将光标设置到 Brain 块上的第 3 行第 7 列、一个将光标打印到 Brain 块上的列并将光标设置到下一行块。#
当开始 :: hat events
在Brain设定光标至 (3) 行 (7) 列
在 (光标列数) 上打印 [Brain v] ◀ 并设定光标为下一行

光标行#

Cursor Row 块用于报告 EXP Brain 屏幕光标位置的行号。

VEXcode 阻止包含光标行块的代码堆栈。#
光标行数

光标列块将报告 1-9 之间的值,并将在项目开始时从第 1 行开始。

在这个例子中,Brain 将把光标移动到 (3, 7),然后在 Brain 的屏幕上打印当前行 (3)。

VEXcode 块代码堆栈包含一个启动时块、一个将光标设置到 Brain 块上的第 3 行第 7 列的块、以及一个在 Brain 上打印光标行并将光标设置到下一行的块。#
当开始 :: hat events
在Brain设定光标至 (3) 行 (7) 列
在 (光标行数) 上打印 [Brain v] ◀ 并设定光标为下一行

电池电压#

电池电压块用于报告 EXP Brain 电池的电压。

VEXcode 块堆栈包含以伏特为单位的电池电压的代码。#
(电池电压伏特值)

电池电压块报告的范围是 6 伏到 9 伏。

在这个例子中,Brain 将在 Brain 的屏幕上打印其当前电池电压。

VEXcode 阻止包含启动时块的代码堆栈,以及在 Brain 上以伏特为单位打印电池电压并将光标设置到下一行块。#
当开始 :: hat events
在 (电池电压伏特值) 上打印 [Brain v] ◀ 并设定光标为下一行

电池电流#

电池电流块用于报告 EXP Brain 电池的电流。

VEXcode 阻止包含安培电池电流的代码堆栈。#
(电池电流安培值)

电池电流块报告的范围从 0.0 安培到 15.0 安培。

在这个例子中,Brain 将在 Brain 的屏幕上打印其当前电池电流。

VEXcode 阻止包含启动时块的代码堆栈,并在 Brain 上打印电池电流(以安培为单位)并将光标设置到下一行块。#
当开始 :: hat events
在 (电池电流安培值) 上打印 [Brain v] ◀ 并设定光标为下一行

电池容量#

电池容量块用于报告 EXP Brain 电池的充电水平。

VEXcode 阻止包含 % 块中的电池容量的代码堆栈。#
(电池电量百分比)

电池容量块报告的范围从 0% 到 100%。

在这个例子中,大脑将在大脑的屏幕上打印其当前电池电量。

VEXcode 块代码堆栈包含一个启动时块,以及一个在 Brain 上以 % 为单位打印电池容量并将光标设置到下一行块。#
当开始 :: hat events
在 (电池电量百分比) 上打印 [Brain v] ◀ 并设定光标为下一行

控制器感应#

控制器按下#

控制器按下块用于报告 EXP 控制器上的按钮是否被按下。

VEXcode 阻止包含“控制器向上按下了吗?”块的代码堆栈。#
<[Controller 1 v] [Up v] 按下?>

当按下选定的控制器按钮时,Controller Pressed 块会报告“True”。

当未按下所选控制器按钮时,Controller Pressed 块将报告“False”。

选择要使用的控制器按钮。

按下 VEX EXP 控制器按钮的图像,表示机器人感应动作的输入。

在这个例子中,第一次按下控制器上的 A 按钮时,Brain 会在其屏幕上打印一条消息。

VEXcode 块代码堆栈包含一个启动时块、一个等待直到 Controller1 x 按下?块和一个打印“X 按钮被按下。”在 Brain 上并将光标设置为下一行块。#
当开始 :: hat events
[Don't do anything until the X button is pressed.]
等到 <[Controller 1 v] [X v] 按下?>
在 [The X button was pressed.] 上打印 [Brain v] ◀ 并设定光标为下一行

控制员职位#

控制器位置块用于报告 EXP 控制器上操纵杆沿轴的位置。

VEXcode 阻止包含控制器 1 位置块的代码堆栈。#
(Controller [1 v] 位移)

控制器的位置块报告的范围从 -100 到 100。

当操纵杆轴位于中心时,控制器的位置块报告 0。

选择操纵杆的轴。

该图显示了机器人项目中 EXP 控制器上操纵杆输入的控制器位置轴。

在这个例子中,Brain 将打印 EXP 控制器操纵杆的第 3 轴。

VEXcode 块代码堆栈包含一个启动时块,以及一个打印控制器 3 在 Brain 上的位置并将光标设置到下一行块。#
当开始 :: hat events
在 (Controller [3 v] 位移) 上打印 [Brain v] ◀ 并设定光标为下一行

控制器启用/禁用#

控制器启用/禁用块用于从设备菜单启用或禁用控制器配置的操作。

VEXcode 阻止包含控制器禁用块的代码堆栈。#
控制器 [Disable v]

选择启用或禁用已配置的控制器操作。默认情况下,每个项目中的控制器均处于启用状态。

该图展示了与大脑感知相关的各种模块,包括定时器重置、电池状态和控制器输入。

在此示例中,控制器将在项目开始时被禁用,并在传动系统向前移动 6 英寸后重新启用。

VEXcode 块代码堆栈包含一个启动时块、一个控制器禁用块、一个向前驱动 6 英寸块和一个控制器启用块。#
当开始 :: hat events
控制器 [Disable v]
驱动 [向前 v] (6) [英寸 v] ▶
控制器 [Enable v]

电机传感#

电机完成了吗?#

**电机是否完成?**块用于报告所选的 EXP 智能电机或电机组是否已完成其运动。

包含 ClawMotor 的代码堆栈的 VEXcode 块是否已完成?块。#
<[ClawMotor v] 已结束?>

当选定的电机或电机组完成其运动时,**电机完成了吗?**块会报告“True”。

当选定的电机或电机组仍在运动时,**电机是否完成?**块会报告“False”。

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

图片显示“电机是否完成?”模块指示电机是否已在 VEX EXP Brain 界面中完成其运动。

电机在旋转吗?#

**电机正在旋转?**块用于报告所选的 EXP 智能电机或电机组当前是否正在移动。

VEXcode 块代码堆栈包含一个 ClawMotor 正在旋转?块。#
<[ClawMotor v] 正在转?>

当选定的电机或电机组正在移动时,**电机正在旋转?**块会报告“True”。

当选定的电机或电机组没有移动时,**电机是否旋转?**块会报告“False”。

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

该图显示了带有“电机正在旋转?”文字和相关图形元素的电机状态指示器。

电机位置#

电机位置块用于报告 EXP 智能电机或电机组的第一个电机行驶的距离。

VEXcode 块堆栈包含以度为单位的 Motor3 位置的代码。#
([Motor 3 v] 转位 [度 v] :: custom-sensing)

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

该图显示了机器人控制系统的电机位置和各种传感参数。

选择报告的单位,

该图说明了机器人技术中的电机位置单元及其测量值。

在这个例子中,电机将向前旋转 1 秒,然后其当前位置才会打印在大脑的屏幕上。

VEXcode 块代码堆栈包含一个启动时块、一个旋转 Motor3 前进块、一个等待 1 秒块和一个在 Brain 上以度为单位打印 Motor3 位置并将光标设置为下一行块。#
当开始 :: hat events
[Spin Motor3 forward for 1 second.]
[Motor 3 v] [向前 v] 转
等待 (1) 秒
[Print Motor3's current position after 1 second.]
在 ([Motor 3 v] 转位 [度 v] :: custom-sensing) 上打印 [Brain v] ◀ 并设定光标为下一行

电机转速#

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

VEXcode 阻止包含 % 块中的 Motor3 速度的代码堆栈。#
([Motor 3 v] 速度 [% v] 值)

电机速度块报告的范围从 -100% 到 100% 或 -600rpm 到 600rpm。

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

该图显示了机器人应用中的电机速度参数,包括电流、功率、扭矩和效率。

选择报告的单位,百分比(%)rpm

该图展示了 EXP Brain 的运动速度单位,展示了各种运动性能指标和测量值。

在这个例子中,电机将向前旋转 1 秒,然后其当前速度才会打印在大脑的屏幕上。

VEXcode 块代码堆栈包含一个启动时块、一个旋转 Motor3 前进块、一个等待 1 秒块和一个在 Brain 上以 % 为单位打印 Motor3 速度并将光标设置为下一行块。#
当开始 :: hat events
[Spin Motor3 forward for 1 second.]
[Motor 3 v] [向前 v] 转
等待 (1) 秒
[Print Motor3's current velocity after 1 second.]
在 ([Motor 3 v] 速度 [% v] 值) 上打印 [Brain v] ◀ 并设定光标为下一行

电机电流#

电机电流块用于报告 EXP 智能电机或电机组所吸收的电流量(以安培 (amps) 为单位)。

VEXcode 块代码堆栈包含 Motor3 电流(安培)块。#
([Motor 3 v] 电流安培值)

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

该图显示了机器人系统中电机电流参数,包括电机功率、扭矩和效率。

在这个例子中,电机将向前旋转 1 秒,然后其电流才会打印在大脑的屏幕上。

VEXcode 块代码堆栈包含一个启动时块、一个旋转 Motor3 前进块、一个等待 1 秒块和一个在 Brain 上打印 Motor3 电流(安培)并将光标设置为下一行块。#
当开始 :: hat events
[Spin Motor3 forward for 1 second.]
[Motor 3 v] [向前 v] 转
等待 (1) 秒
[Print Motor3's current after 1 second.]
在 ([Motor 3 v] 电流安培值) 上打印 [Brain v] ◀ 并设定光标为下一行

电机功率#

电机功率块用于报告 EXP 智能电机或电机组的第一个电机当前产生的功率输出量。

VEXcode 块代码堆栈包含 Motor3 功率(以瓦特为单位)块。#
([Motor 3 v] 功率瓦特值)

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

该图显示了机器人系统的电机功率参数,包括扭矩、效率和温度。

在这个例子中,电机将向前旋转 1 秒,然后其当前功率才会打印在大脑的屏幕上。

VEXcode 块代码堆栈包含一个启动时块、一个旋转 Motor3 前进块、一个等待 1 秒块和一个在 Brain 上打印 Motor3 功率(以瓦特为单位)并将光标设置为下一行块。#
当开始 :: hat events
[Spin Motor3 forward for 1 second.]
[Motor 3 v] [向前 v] 转
等待 (1) 秒
[Print Motor3's current power after 1 second.]
在 ([Motor 3 v] 功率瓦特值) 上打印 [Brain v] ◀ 并设定光标为下一行

电机扭矩#

电机扭矩块用于报告 EXP 智能电机或电机组的第一个电机当前使用的扭矩(旋转力)大小。

VEXcode 块堆栈包含以 Nm 为单位的 Motor3 扭矩的代码。#
([Motor 3 v] 扭矩 [Nm v] 值)

电机扭矩块报告的范围是 0.0 到 18.6 英寸磅 (InLB) 或 0.0 到 2.1 牛顿米 (Nm)。

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

该图显示了电机控制系统的功率、效率和温度等电机扭矩参数。

选择报告的单位,NmInLb

该图说明了机器人应用中的电机扭矩单位及其测量尺度。

在这个例子中,电机将向前旋转 1 秒,然后其当前扭矩才会打印在 Brain 的屏幕上。

VEXcode 块代码堆栈包含一个启动时块、一个旋转 Motor3 前进块、一个等待 1 秒块和一个在 Brain 上打印 Motor3 扭矩(以 Nm 为单位)并将光标设置为下一行块。#
当开始 :: hat events
[Spin Motor3 forward for 1 second.]
[Motor 3 v] [向前 v] 转
等待 (1) 秒
[Print Motor3's current torque after 1 second.]
在 ([Motor 3 v] 扭矩 [Nm v] 值) 上打印 [Brain v] ◀ 并设定光标为下一行

电机效率#

电机效率块用于报告 EXP 智能电机或电机组第一个电机的效率。

VEXcode 阻止包含 % 块中的 Motor3 效率的代码堆栈。#
([Motor 3 v] 效率百分比)

电机效率块报告的范围从 0% 到 100%,由电机使用的功率值(以瓦特为单位)(输入)与电机提供的功率量(以瓦特为单位)(输出)决定。

EXP 智能电机或电机组在正常使用情况下通常可达到 65% 的最大效率。

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

该图说明了电机效率指标,包括功率、扭矩和温度,用于电机性能分析。

在这个例子中,电机将向前旋转 1 秒,然后其当前效率才会打印在大脑的屏幕上。

VEXcode 块代码堆栈包含一个启动时块、一个旋转 Motor3 前进块、一个等待 1 秒块和一个在 Brain 上打印 Motor3 效率(百分比)并将光标设置为下一行块。#
当开始 :: hat events
[Spin Motor3 forward for 1 second.]
[Motor 3 v] [向前 v] 转
等待 (1) 秒
[Print Motor3's current efficiency after 1 second.]
在 ([Motor 3 v] 效率百分比) 上打印 [Brain v] ◀ 并设定光标为下一行

电机温度#

电机温度块用于报告 EXP 智能电机或电机组第一个电机的温度。

VEXcode 阻止包含 % 块中温度的 Motor3 的代码堆栈。#
([Motor 3 v] 温度百分比)

电机温度块报告的范围从 0% 到 100%。

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

该图显示了机器人系统中电机的温度读数,表明了运行状态和效率。

在这个例子中,电机将向前旋转 1 秒,然后其当前温度才会打印在大脑的屏幕上。

VEXcode 块代码堆栈包含一个启动时块、一个旋转 Motor3 前进块、一个等待 1 秒块和一个在 Brain 上以 % 为单位打印 Motor3 温度并将光标设置为下一行块。#
当开始 :: hat events
[Spin Motor3 forward for 1 second.]
[Motor 3 v] [向前 v] 转
等待 (1) 秒
[Print Motor3's current temperature after 1 second.]
在 ([Motor 3 v] 温度百分比) 上打印 [Brain v] ◀ 并设定光标为下一行

动力传动系统传感#

驾驶完成了吗?#

**驱动完成?**块用于报告传动系统是否已完成其运动。

VEXcode 块代码堆栈包含一个驱动器是否完成?块。#
<驱动已结束?>

当传动系统的电机完成运动时,**驱动完成?**块会报告“True”。

当 sDrivetrain 的电机仍在运转时,Drive is Done? 块会报告“False”。

驱动器正在移动?#

**驱动器正在移动?**块用于报告传动系统当前是否正在移动。

VEXcode 块代码堆栈包含驱动器正在移动?块。#
<驱动进行中?>

当传动系统的电机正在移动时,**驱动器正在移动?**块报告“True”。

当 sDrivetrain 的电机没有移动时,**驱动器正在移动?**块会报告“False”。

行驶方向#

Drive Heading 模块用于通过使用惯性传感器的当前角度位置来报告传动系统所面向的方向。

VEXcode 块堆栈包含以度数块为单位的驱动航向的代码。#
(底盘归位角度值)

Drive Heading 块报告的范围是从 0.0 到 359.99 度。

在这个例子中,传动系统将向右转 1 秒钟,然后其当前航向才会打印在 Brain 的屏幕上。

VEXcode 块代码堆栈包含一个启动时块、一个右转块、一个等待 1 秒块和一个在 Brain 上以度为单位打印驱动器航向并将光标设置为下一行块。#
当开始 :: hat events
[Turn towards the right for 1 second.]
[右 v] 转
等待 (1) 秒
[Print Drivetrain's current heading after 1 second.]
在 (底盘归位角度值) 上打印 [Brain v] ◀ 并设定光标为下一行

驱动旋转#

驱动旋转块用于报告传动系统的旋转角度。

VEXcode 阻止包含以度为单位的驱动旋转的代码堆栈。#
(底盘转向角度值)

顺时针方向报告为正值,逆时针方向报告为负值。

在这个例子中,传动系统将向左转 1 秒,然后其当前旋转才会打印在 Brain 的屏幕上。

VEXcode 块代码堆栈包含一个启动时块、一个左转块、一个等待 1 秒块和一个在 Brain 上以度为单位打印驱动器旋转并将光标设置为下一行块。#
当开始 :: hat events
[Turn towards the left for 1 second.]
[左 v] 转
等待 (1) 秒
[Print Drivetrain's current rotation after 1 second.]
在 (底盘转向角度值) 上打印 [Brain v] ◀ 并设定光标为下一行

驱动速度#

驱动速度块用于报告传动系统的当前速度。

VEXcode 阻止包含 % 块中的驱动速度的代码堆栈。#
(drive velocity in [% v])

驱动速度块报告的范围从 -100% 到 100% 或 -600rpm 到 600rpm。

选择报告的单位,百分比(%)rpm

该图显示了机器人系统的驱动速度单位,包括百分比和转速等参数。

在这个例子中,传动系统将向前行驶 1 秒,然后其当前速度才会打印在 Brain 的屏幕上。

VEXcode 块代码堆栈包含一个启动时块、一个向前驱动块、一个等待 1 秒块和一个在 Brain 上以 % 为单位的打印驱动速度并将光标设置到下一行块。#
当开始 :: hat events
[Drive forward for 1 second.]
驱动 [向前 v]
等待 (1) 秒
[Print Drivetrain's current velocity after 1 second.]
在 (drive velocity in [% v]) 上打印 [Brain v] ◀ 并设定光标为下一行

驱动电流#

驱动电流块用于报告传动系统当前使用的电流量(功率)。

VEXcode 阻止包含驱动电流安培块的代码堆栈。#
(驱动电流安培值)

在这个例子中,传动系统将向前行驶 1 秒,然后其电流才会打印在大脑的屏幕上。

VEXcode 块代码堆栈包含一个启动时块、一个向前驱动块、一个等待 1 秒块和一个在 Brain 上打印驱动电流安培并将光标设置到下一行块。#
当开始 :: hat events
[Drive forward for 1 second.]
驱动 [向前 v]
等待 (1) 秒
[Print Drivetrain's current after 1 second.]
在 (驱动电流安培值) 上打印 [Brain v] ◀ 并设定光标为下一行

驱动功率#

驱动功率块用于报告传动系统当前产生的输出功率量。

VEXcode 块堆栈包含以瓦特为单位的驱动功率的代码。#
(驱动功率瓦特值)

在这个例子中,传动系统将向前行驶 1 秒,然后其当前功率才会打印在 Brain 的屏幕上。

VEXcode 块代码堆栈包含一个启动时块、一个向前驱动块、一个等待 1 秒块和一个在 Brain 上以瓦特为单位打印驱动功率并将光标设置到下一行块。#
当开始 :: hat events
[Drive forward for 1 second.]
驱动 [向前 v]
等待 (1) 秒
[Print Drivetrain's current power after 1 second.]
在 (驱动功率瓦特值) 上打印 [Brain v] ◀ 并设定光标为下一行

驱动扭矩#

驱动扭矩块用于报告传动系统当前使用的扭矩(旋转力)的大小。

VEXcode 块堆栈包含以 Nm 为单位的驱动扭矩的代码。#
(驱动扭矩 [Nm v] 值)

驱动扭矩块报告的范围为 0.0 至 18.6 英寸磅 (InLB) 或 0.0 至 2.1 牛顿米 (Nm)。

选择报告的单位,NmInLb

该图展示了机器人技术中各种驱动扭矩单元及其测量值。

在这个例子中,传动系统将向前行驶 1 秒,然后其当前扭矩才会打印在 Brain 的屏幕上。

VEXcode 块代码堆栈包含一个启动时块、一个向前驱动块、一个等待 1 秒块和一个在 Brain 上以 Nm 为单位打印驱动扭矩并将光标设置到下一行块。#
当开始 :: hat events
[Drive forward for 1 second.]
驱动 [向前 v]
等待 (1) 秒
[Print Drivetrain's current torque after 1 second.]
在 (驱动扭矩 [Nm v] 值) 上打印 [Brain v] ◀ 并设定光标为下一行

提高效率#

驱动效率块用于报告传动系统的效率。

VEXcode 阻止包含 % 块中的驱动效率的代码堆栈。#
(驱动效率百分比)

驱动效率块报告的范围从 0% 到 100%,由电机使用的功率值(以瓦特为单位)(输入)与电机提供的功率量(以瓦特为单位)(输出)决定。

在正常使用情况下,EXP 传动系统通常可达到 65% 的最大效率。

在这个例子中,传动系统将向前行驶 1 秒,然后其当前效率才会打印在大脑的屏幕上。

VEXcode 块代码堆栈包含一个启动时块、一个驱动前进块、一个等待 1 秒块和一个在 Brain 上以 % 为单位打印驱动效率并将光标设置到下一行块。#
当开始 :: hat events
[Drive forward for 1 second.]
驱动 [向前 v]
等待 (1) 秒
[Print Drivetrain's current efficiency after 1 second.]
在 (驱动效率百分比) 上打印 [Brain v] ◀ 并设定光标为下一行

驱动器温度#

驱动温度块用于报告为传动系统供电的 EXP 智能电机的温度。

VEXcode 阻止包含 % 块中的驱动温度的代码堆栈。#
(驱动温度百分比)

驱动温度块报告的范围从 0% 到 100%。

在这个例子中,传动系统将向前行驶 1 秒,然后其当前温度才会打印在大脑的屏幕上。

VEXcode 阻止代码堆栈,其中包含启动时块、驱动前进块、等待 1 秒块以及 Brain 上的打印驱动器温度(百分比),并将光标设置到下一行。#
当开始 :: hat events
[Drive forward for 1 second.]
驱动 [向前 v]
等待 (1) 秒
[Print Drivetrain's current temperature after 1 second.]
在 (驱动温度百分比) 上打印 [Brain v] ◀ 并设定光标为下一行

保险杠传感#

保险杠压合#

Bumper Pressed 块用于报告保险杠开关是否被按下。

VEXcode 阻止包含 Bumper8 按下的代码堆栈?块。#
<[BumperB v] 按下了?>

当按下选定的保险杠开关时,保险杠按下块会报告“True”。

当未按下选定的保险杠开关时,保险杠按下块将报告“False”。

选择要使用的保险杠开关。

EXP Brain 上的保险杠按下指示器,在机器人环境中显示保险杠开关的状态。

在这个例子中,第一次按下保险杠开关时,大脑将在其屏幕上打印一条消息。

VEXcode 块代码堆栈包含一个何时启动块、一个等待直到按下 Bumper8?块和一个打印“按下保险杠开关”。在 Brain 上并将光标设置到下一行。#
当开始 :: hat events
[Don't print the message until the Bumper Switch is pressed.]
等到 <[BumperB v] 按下了?>
在 [Bumper Switch was pressed.] 上打印 [Brain v] ◀ 并设定光标为下一行

限位传感#

已按下限位#

Limit Pressed 块用于报告限位开关是否被按下。

<[LimitSwitchA v] 按下了?>

当按下选定的限位开关时,Limit Pressed 块会报告“True”。

当未按下选定的限位开关时,Limit Pressed 块会报告“False”。

选择要使用的限位开关。

VEX EXP Brain 上的限位开关按下指示器,显示限位感应块的真或假状态。

在这个例子中,第一次按下限位开关时,大脑会在其屏幕上打印一条消息。

当开始 :: hat events
[Don't print the message until the Limit Switch is pressed.]
等到 <[LimitSwitchA v] 按下了?>
在 [Limit Switch was pressed.] 上打印 [Brain v] ◀ 并设定光标为下一行

陀螺仪感应#

校准#

校准模块用于校准陀螺仪或惯性传感器,以减少漂移量。建议在项目开始时使用此模块。

陀螺仪或惯性传感器将根据校准期间 EXP Brain 的方向自动调整其值,以便它在所有可能的 EXP Brain 方向上保持一致。

../../_images/EXP_right_orientation.png../../_images/EXP_left_orientation.png../../_images/EXP_top_orientation.png

大脑必须保持静止才能使校准过程成功,这大约需要 2 秒钟。

VEXcode 阻止包含校准 GyroH 块的代码堆栈。#
校准 [GyroH v]

选择要使用的陀螺仪/惯性传感器。

图片显示了用于校准设备陀螺仪传感器的用户界面,其中包含航向和旋转设置。

在这个例子中,大脑的惯性传感器将校准 2 秒,然后打印惯性传感器的当前方向。

VEXcode 块代码堆栈包含一个启动时块、一个校准 BrainInertial 块、一个等待 2 秒块和一个打印 BrainInertial 滚动方向并将光标设置为下一行块。#
当开始 :: hat events
校准 [BrainInertial v]
等待 (2) 秒
在 ([BrainInertial v] [横滚 v] 偏转角度值) 上打印 [Brain v] ◀ 并设定光标为下一行

设置标题#

设置航向块用于将陀螺仪/惯性传感器的当前航向位置设置为设定值。

VEXcode 阻止包含设置 GyroA 航向为 0 度的代码堆栈块。#
设定 [GyroA v] 归位为 (0) 度

设置航向块接受 0.0 到 359.99 度的范围。

选择要使用的陀螺仪/惯性传感器。

该图展示了 VEX EXP Brain 的各种传感块,包括计时器、电机和控制器功能。

在这个例子中,Brain 的惯性传感器将打印其起始航向,将其航向设置为 90 度,然后打印新的航向。

VEXcode 块代码堆栈包含一个启动时块、一个在 Brain 上以度为单位打印 BrainInertial 航向并将光标设置为下一行块、一个将 BrainInertial 航向设置为 90 度的块和一个在 Brain 上以度为单位打印 BrainInertial 航向并将光标设置为下一行的块。#
当开始 :: hat events
在 ([BrainInertial v] 归位角度值) 上打印 [Brain v] ◀ 并设定光标为下一行
设定 [BrainInertial v] 归位为 (90) 度
在 ([BrainInertial v] 归位角度值) 上打印 [Brain v] ◀ 并设定光标为下一行

设置旋转#

设置旋转块用于将陀螺仪/惯性传感器的当前旋转位置设置为设定值。

VEXcode 阻止包含设置为 0 度的 Inertial1 旋转的代码堆栈。#
设定 [Inertial 1 v] 转向为 (0) 度

设置旋转块接受任何正数或负数小数或整数。

选择要使用的陀螺仪/惯性传感器。

用于感测和控制电机位置和运动的机器人旋转装置图片。

在这个例子中,Brain 的惯性传感器将打印其起始旋转,将其旋转设置为 -100 度,然后打印新的旋转。

VEXcode 块代码堆栈包含一个启动时块、一个打印 BrainInertial 旋转度数并将光标设置为下一行块、一个将 BrainInertial 旋转设置为 -100 度块、一个打印 BrainInertial 旋转度数并将光标设置为下一行块。#
当开始 :: hat events
在 ([BrainInertial v] 转向角度值) 上打印 [Brain v] ◀ 并设定光标为下一行
设定 [BrainInertial v] 转向为 (-100) 度
在 ([BrainInertial v] 转向角度值) 上打印 [Brain v] ◀ 并设定光标为下一行

航向角#

航向角块用于报告 3 线陀螺仪传感器或 EXP 惯性传感器的当前航向(以度为单位)。

VEXcode 块堆栈代码包含一个以度为单位的 BrainInertial 航向块。#
([BrainInertial v] 归位角度值)

航向角块报告的范围是 0.0 到 359.99 度。

选择要使用的陀螺仪/惯性传感器。

该图展示了 VEX EXP Brain 的各种传感块,包括计时器、电机和控制器功能。

在这个例子中,Brain 的惯性传感器将打印其起始航向,将其航向设置为 90 度,然后打印新的航向。

VEXcode 块代码堆栈包含一个启动时块、一个在 Brain 上以度为单位打印 BrainInertial 航向并将光标设置为下一行块、一个将 BrainInertial 旋转设置为 90 度块、一个在 Brain 上以度为单位打印 BrainInertial 航向并将光标设置为下一行块。#
当开始 :: hat events
在 ([BrainInertial v] 归位角度值) 上打印 [Brain v] ◀ 并设定光标为下一行
设定 [BrainInertial v] 转向为 (90) 度
在 ([BrainInertial v] 归位角度值) 上打印 [Brain v] ◀ 并设定光标为下一行

旋转角度#

旋转角度块用于报告 3 线陀螺仪传感器或 EXP 惯性传感器的当前旋转角度(以度为单位)。

VEXcode 阻止包含 BrainInertial 度数旋转块的代码堆栈。#
([BrainInertial v] 转向角度值)

顺时针方向报告为正值,逆时针方向报告为负值。

选择要使用的陀螺仪/惯性传感器。

用于感测和控制电机位置和运动的机器人旋转装置图片。

在这个例子中,Brain 的惯性传感器将打印其起始旋转,将其旋转设置为 -100 度,然后打印新的航向。

VEXcode 块代码堆栈包含一个启动时块、一个打印 BrainInertial 旋转度数并将光标设置为下一行块、一个将 BrainInertial 旋转设置为 -100 度块、一个打印 BrainInertial 旋转度数并将光标设置为下一行块。#
当开始 :: hat events
在 ([BrainInertial v] 转向角度值) 上打印 [Brain v] ◀ 并设定光标为下一行
设定 [BrainInertial v] 转向为 (-100) 度
在 ([BrainInertial v] 转向角度值) 上打印 [Brain v] ◀ 并设定光标为下一行

惯性传感#

加速#

加速度块用于报告惯性传感器上某个轴(x、y 或 z)的加速度值。

([Inertial 20 v] [X v] 轴加速度值)

加速度块报告的范围是从 -4.0 到 4.0 Gs。

选择要使用的陀螺仪/惯性传感器。

用于监控和报告机器人应用中的运动和方向数据的加速度装置图像。

选择要使用的轴:

  • x - 当惯性传感器从向前移动到向后时,X 轴报告加速度。

  • y - 当惯性传感器左右移动时,Y 轴报告加速度。

  • z - 当惯性传感器从上向下移动时,Z 轴报告加速度。

该图展示了机器人中各种传感参数的加速度轴,包括电机和传动系统数据。

在这个例子中,传动系统将向前移动并在移动时打印其当前的 X 轴加速度。

当开始 :: hat events
[Drive forward for 1 second.]
驱动 [向前 v]
等待 (1) 秒
[Print the X-axis acceleration while the Drivetrain is moving.]
在 ([BrainInertial v] [X v] 轴加速度值) 上打印 [Brain v] ◀ 并设定光标为下一行

陀螺仪速率#

陀螺仪速率 模块用于报告惯性传感器上某个轴(x、y 或 z)的旋转速率。

([Inertial 20 v] [X v] 轴陀螺仪角速度)

陀螺仪速率块报告的范围是 -1000.0 到 1000.0 dps(度/秒)。

选择要使用的陀螺仪/惯性传感器。

用于测量机器人应用中的角旋转的陀螺仪速率装置图像。

选择要使用的轴:

  • x - 当惯性传感器在 X 轴上旋转时,X 轴报告旋转速率(基于传感器的方向)。

  • y - 当惯性传感器在 Y 轴上旋转时,Y 轴报告旋转速率(基于传感器的方向)。

  • z - 当惯性传感器在 Z 轴上旋转时,Z 轴报告旋转速率(基于传感器的方向)。

该图展示了陀螺仪速率感应,其中轴标记为方向和旋转测量。

在这个例子中,传动系统将向右转动并在转动时打印其当前的 X 轴陀螺仪速率。

当开始 :: hat events
[Turn towards the right 1 second.]
[右 v] 转
等待 (1) 秒
[Print the X-axis gyro rate while the Drivetrain is turning.]
在 ([Inertial 20 v] [X v] 轴陀螺仪角速度) 上打印 [Brain v] ◀ 并设定光标为下一行

方向#

方向块用于报告惯性传感器的方向角。

([Inertial 20 v] [横滚 v] 偏转角度值)

选择要使用的陀螺仪/惯性传感器。

用于机器人和自动化领域各种传感应用的定向装置图片。

选择要使用的方向:

  • roll - Y 轴表示滚动,报告 -180 度到 +180 度之间的值。

  • pitch - X 轴代表俯仰,报告 -90 度到 +90 度之间的值。

  • 偏航 - Z 轴表示偏航,报告的值在 -180 度到 +180 度之间。

该图说明了 VEX EXP Brain 系统中的各种传感块及其功能。

在这个例子中,传动系统将向右转动并在转动时打印其当前的偏航。

当开始 :: hat events
[Turn towards the right for 1 second.]
[右 v] 转
等待 (1) 秒
[Print the roll while the Drivetrain is turning.]
在 ([BrainInertial v] [横滚 v] 偏转角度值) 上打印 [Brain v] ◀ 并设定光标为下一行

编码器传感#

设置轴编码器位置#

设置轴编码器位置块用于将轴编码器的位置设置为给定值。

VEXcode 阻止包含将 EncoderC 位置设置为 0 度块的代码堆栈。#
设定 [EncoderC v] 位置为 (0) 度

选择要使用的轴编码器。

用于测量机器人旋转位置和速度的轴编码器装置图片。

在此示例中,轴编码器将打印其起始位置,将其位置设置为 90 度,然后打印新位置。

VEXcode 块代码堆栈包含一个启动时块、一个打印大脑中 EncoderC 位置(以度为单位)并将光标设置为下一行块、一个将 EncoderC 位置设置为 90 度块、以及一个打印大脑中 EncoderC 位置(以度为单位)并将光标设置为下一行块。#
当开始 :: hat events
在 ([EncoderC v] 转位 [度 v] :: custom-sensing) 上打印 [Brain v] ◀ 并设定光标为下一行
设定 [EncoderC v] 位置为 (90) 度
在 ([EncoderC v] 转位 [度 v] :: custom-sensing) 上打印 [Brain v] ◀ 并设定光标为下一行

轴编码器位置#

轴编码器位置块用于报告轴编码器旋转的距离。

VEXcode 阻止包含以度为单位的 EncoderC 位置的代码堆栈。#
([EncoderC v] 转位 [度 v] :: custom-sensing)

选择要使用的轴编码器。

用于测量机器人应用中旋转位置的轴编码器位置装置图片。

选择报告的单位:

轴编码器位置单元图,说明如何设置和读取编码器位置值。

在此示例中,轴编码器将打印其起始位置,将其位置设置为 90 度,然后打印新位置。

VEXcode 块代码堆栈包含一个启动时块、一个在 Brain 上以度为单位打印 EncoderC 位置并将光标设置为下一行块、一个将 EncoderC 位置设置为 90 度块、以及一个在 Brain 上以度为单位打印 EncoderC 位置并将光标设置为下一行块。#
当开始 :: hat events
在 ([EncoderC v] 转位 [度 v] :: custom-sensing) 上打印 [Brain v] ◀ 并设定光标为下一行
设定 [EncoderC v] 位置为 (90) 度
在 ([EncoderC v] 转位 [度 v] :: custom-sensing) 上打印 [Brain v] ◀ 并设定光标为下一行

轴编码器速度#

轴编码器速度块用于报告轴编码器的当前速度。

VEXcode 阻止包含 dps 块中的 EncoderC 速度的代码堆栈。#
([EncoderC v] 速度 [dps v] 值)

选择要使用的轴编码器。

轴编码器速度装置以每秒度数或每分钟转数显示当前速度读数。

选择报告的单位:每秒度数 \(dps\)每分钟转数 (rpm)

轴编码器速度单位图示,显示每秒度数 \(dps\) 和每分钟转数 (rpm) 的测量值。

距离感应#

物距#

物体距离块用于报告距离传感器最近物体的距离。

VEXcode 块堆栈代码包含一个以毫米为单位的 Distance10 对象距离块。#
([Distance 10 v] 对象距离 [毫米 v])

物体距离块报告的范围从 20 毫米到 2000 毫米。

选择要使用的距离传感器。

机器人环境中显示物体距离和相关指标的距离传感设备图像。

选择报告的单位:毫米 (mm)英寸

该图展示了机器人应用中的各种物体距离传感单元和测量方法。

在这个例子中,距离传感器将报告它与最近物体之间的当前距离。

VEXcode 块代码堆栈包含一个启动时块,以及 Brain 上以毫米为单位的 Distance10 对象距离,并将光标设置到下一行块。#
当开始 :: hat events
在 ([Distance 10 v] 对象距离 [毫米 v]) 上打印 [Brain v] ◀ 并设定光标为下一行

物体速度#

物体速度块用于报告物体的当前速度,以米/秒(m/s)为单位。

VEXcode 块代码堆栈包含一个以 m/s 为单位的 Distance10 对象速度块。#
([Distance 10 v] 对象速度m/s)

选择要使用的距离传感器。

用于测量运动物体速度的物体速度装置图像。

在此示例中,距离传感器将报告其前方移动物体的当前速度。

VEXcode 块代码堆栈包含一个启动时块,以及在 Brain 上打印 Distance10 对象速度(以 m/s 为单位),并将光标设置到下一行。#
当开始 :: hat events
在 ([Distance 10 v] 对象速度m/s) 上打印 [Brain v] ◀ 并设定光标为下一行

对象大小是#

物体尺寸块用于报告距离传感器是否检测到指定的物体尺寸。

VEXcode 块代码堆栈包含一个 Distance10 对象大小是否小?块。#
<[Distance 10 v] 对象尺寸 [小 v]?>

距离传感器根据反射并返回到传感器的光量来确定检测到的物体的大小(无、小、中、大)。

当距离传感器检测到指定尺寸时,物体尺寸是块报告“True”。

当距离传感器未检测到指定尺寸时,物体尺寸块会报告“False”。

选择要使用的距离传感器。

该图说明了距离传感器如何检测物体尺寸,其中显示了小、中、大物体指示器。

选择您希望物体传感器检查的物体的尺寸。

  • 小的

  • 中等的

  • 大的

该图说明了传感器检测到的物体大小和距离之间的关系。

在这个例子中,如果距离传感器检测到一个小物体,它就会向前行驶,直到物体变大。

VEXcode 块代码堆栈包含一个启动时块、一个如果 Distance10 对象大小较小?则块、一个向前驱动块、一个等待直到 Distance10 对象大小较大?块、一个停止驱动块和一个结束块。#
当开始 :: hat events
[Check if the Distance Sensor sees a small object .]
如果 <[Distance 10 v] 对象尺寸 [小 v]?> 那么
[If a small object is detected, drive forward.]
驱动 [向前 v]
[Wait until the small detected object is large.]
等到 <[Distance 10 v] 对象尺寸 [大 v]?>
[When the object size is large, stop driving.]
驱动停止
结束

距离传感器发现物体#

距离传感器发现物体块用于报告距离传感器是否在其视野范围内看到物体。

VEXcode 块堆栈代码包含一个 Distance10 发现对象?块。#
<[Distance 10 v] 发现对象?>

当距离传感器在其视野范围内看到物体或表面时,距离传感器发现物体块会报告“True”。

当距离传感器未检测到物体或表面时,距离传感器发现物体块会报告“False”。

选择要使用的距离传感器。

图示了物体检测传感器设备的距离检测能力。

在这个例子中,当距离传感器检测到一个物体时,它会向大脑打印一条消息。

VEXcode 块代码堆栈包含一个“何时启动”块、一个“等待距离 10 找到一个对象?”块和一个“打印距离传感器已检测到一个对象”。在 Brain 上并将光标设置到下一行。#
当开始 :: hat events
[Don't print the message until the Distance Sensor finds an object.]
等到 <[Distance 10 v] 发现对象?>
在 [Distance Sensor has detected an object.] 上打印 [Brain v] ◀ 并设定光标为下一行

光学传感#

设置光学模式#

设置光学模式块用于设置光学传感器以检测颜色或手势。

VEXcode 阻止包含一组 Optical7 到颜色模式块的代码堆栈。#
将 [Optical 7 v] 设置为 [颜色 v] 模式

默认情况下,光学传感器设置为始终检测颜色。在使用任何光学传感器手势模块之前,必须先将光学传感器设置为检测手势。

选择要使用的光学传感器。

该图显示了在机器人环境中设置传感器光学模式的图表。

选择是否要将光学传感器的模式设置为检测颜色或手势。

该图说明了设置传感器光学模式以检测颜色或手势的过程。

在此示例中,光学传感器设置为检测手势,然后等待检测到左手势才打印消息。

VEXcode 块代码堆栈包含一个启动时块、一个将 Optical7 设置为手势模式块、一个等待直到检测到 Optical7 左手势?块和一个打印检测到左手势。在 Brain 上并将光标设置为下一行块。#
当开始 :: hat events
[Set Optical sensor to detect gestures.]
将 [Optical 7 v] 设置为 [手势 v] 模式
[Don't print the message until a left gesture is detected.]
等到 <[Optical 7 v] 检测到 [左 v] 手势?>
在 [Left gesture detected.] 上打印 [Brain v] ◀ 并设定光标为下一行

设置光学灯#

设置光学光源 模块用于设置光学传感器上的光源为开启或关闭状态。当光学传感器在黑暗环境中观察物体时,光源可以让传感器看到物体。

VEXcode 块堆栈包含一组 Optical7 光块的代码。#
设定 [Optical 7 v] 灯 [on v]

选择要使用的光学传感器。

用于传感应用的光学设备图示,展示其特性和设置。

选择打开或关闭灯。

该图显示了机器人环境中光学传感器的光学光模式设置。

在此示例中,光学传感器将打开灯两秒钟,然后再关闭。

VEXcode 块代码堆栈包含一个启动时块、一个设置 Optical7 灯亮的块、一个等待 2 秒的块和一个设置 Optical7 灯关闭的块。#
当开始 :: hat events
设定 [Optical 7 v] 灯 [on v]
等待 (2) 秒
设定 [Optical 7 v] 灯 [灭 v]

设置光功率#

设置光功率模块用于设置光学传感器的光功率

VEXcode 块代码堆栈包含将 Optical7 光功率设置为 50% 的块。#
set [Optical7 v] light power to (50)%

设置光功率 模块接受 0% 到 100% 之间的值。这将改变光学传感器上的灯光亮度。如果灯光关闭,该模块将打开灯光。

选择要使用的光学传感器。

用于在传感应用中设置光功率级别的光功率设备接口。

在此示例中,光学传感器的电源灯设置为 75%,然后等待检测到物体以打印消息。

VEXcode 块代码堆栈包含一个启动时块、一个将 Optical7 光功率设置为 75% 块、一个等待 Optical7 找到对象?块和一个打印检测到对象。在 Brain 上并将光标设置为下一行块。#
当开始 :: hat events
[Set the Optical Sensor's light power to 75%]
set [Optical7 v] light power to (75)%
[Don't print the message until an object is detected.]
等到 <[Optical 7 v] 发现对象?>
在 [Object detected.] 上打印 [Brain v] ◀ 并设定光标为下一行

光学传感器发现物体#

光学传感器发现物体块用于报告光学传感器是否检测到靠近它的物体。

VEXcode 块堆栈包含一个 Optical7 代码,发现了一个对象?块。#
<[Optical 7 v] 发现对象?>

当光学传感器检测到靠近它的物体时,光学传感器发现物体块会报告“True”。

当物体不在光学传感器的范围内时,光学传感器发现物体块会报告“False”。

选择要使用的光学传感器。

在机器人感知环境中检测物体和颜色的光学传感器装置示意图。

在此示例中,光学传感器的电源灯设置为 75%,然后等待检测到物体以打印消息。

VEXcode 块代码堆栈包含一个启动时块、一个将 Optical7 光功率设置为 75% 块、一个等待 Optical7 找到对象?块和一个打印检测到对象。在 Brain 上并将光标设置为下一行块。#
当开始 :: hat events
[Set the Optical Sensor's light power to 75%.]
set [Optical7 v] light power to (75)%
[Don't print the message until an object is detected.]
等到 <[Optical 7 v] 发现对象?>
在 [Object detected.] 上打印 [Brain v] ◀ 并设定光标为下一行

光学传感器检测颜色#

光学传感器检测颜色块用于报告光学传感器是否检测到指定的颜色。

VEXcode 阻止包含 Optical7 检测红色?块的代码堆栈。#
<[Optical 7 v] 测得 [红色 v]?>

当光学传感器检测到指定颜色时,光学传感器检测颜色块报告“真”。

当光学传感器未检测到指定颜色时,光学传感器检测颜色块会报告“False”。

选择要使用的光学传感器。

检测颜色的光学传感器图片,带有亮度、色调和手势检测指示器。

选择光学传感器将检查的颜色。

在机器人环境中检测具有各种色调和亮度级别的颜色的光学传感器。

在此示例中,光学传感器将等到检测到蓝色物体后才打印消息。

VEXcode 块代码堆栈包含一个启动时块、一个等待直到 Optical7 检测到蓝色?块和一个打印检测到蓝色颜色。在 Brain 上并将光标设置为下一行块。#
当开始 :: hat events
[Don't print the message until the color blue is detected.]
等到 <[Optical 7 v] 测得 [蓝色 v]?>
在 [Color blue detected.] 上打印 [Brain v] ◀ 并设定光标为下一行

光学亮度#

光学亮度块用于报告光学传感器检测到的光量。

VEXcode 阻止包含 % 块中的 Optical7 亮度的代码堆栈。#
([Optical 7 v] 亮度百分比)

光学亮度块报告从 0% 到 100% 的数值。

检测到的大量光将报告高亮度值。

检测到少量光时将报告较低的亮度值。

选择要使用的光学传感器。

在机器人领域中,光学亮度设备显示由光学传感器测量的光强度。

在这个例子中,光学传感器将把当前亮度值打印到大脑的屏幕上。

VEXcode 块代码堆栈包含一个启动时块和一个在 Brain 上以 % 为单位打印 Optical7 亮度并将光标设置到下一行块。#
当开始 :: hat events
在 ([Optical 7 v] 亮度百分比) 上打印 [Brain v] ◀ 并设定光标为下一行

光学色调#

光学色调块用于报告物体颜色的色调。

VEXcode 块堆栈包含以度为单位的 Optical7 色调的代码。#
([Optical 7 v] 色调度数)

光学色调 模块返回一个数值,该数值表示物体颜色的色调。它返回一个介于 0 到 359 之间的数字。

该值可以被认为是颜色在色轮上的位置(以度为单位)。

选择要使用的光学传感器。

在机器人环境中显示颜色检测数据和传感器读数的光学色调设备。

在这个例子中,光学传感器将把当前看到的色调打印到大脑的屏幕上。

VEXcode 块代码堆栈包含一个启动时块和一个在 Brain 上以度为单位打印 Optical7 色调并将光标设置到下一行块。#
当开始 :: hat events
在 ([Optical 7 v] 色调度数) 上打印 [Brain v] ◀ 并设定光标为下一行

光学传感器检测手势#

光学传感器检测手势块用于报告光学传感器是否检测到指定的手势。

VEXcode 阻止包含 Optical7 手势向上检测的代码堆栈?块。#
<[Optical 7 v] 检测到 [向上 v] 手势?>

重要:必须首先使用设置光学模式块将光学传感器设置为检测手势,否则它将无法检测任何手势。

当光学传感器检测到指定的手势时,光学传感器检测手势块会报告“True”。

当光学传感器未检测到指定的手势时,光学传感器检测手势块会报告“False”。

选择要使用的光学传感器。

光学手势检测设备,显示各种手势识别功能和传感器配置设置。

选择光学传感器将检查的手势。

检测手势的光学传感器,用于机器人应用中的手势识别。

在此示例中,光学传感器设置为检测手势,然后等待检测到左手势才打印消息。

VEXcode 块代码堆栈包含一个启动时块、一个将 Optical7 设置为手势模式块、一个等待直到检测到 Optical7 左手势?块和一个打印检测到左手势。在 Brain 上并将光标设置为下一行块。#
当开始 :: hat events
[Set Optical Sensor to detect gestures.]
将 [Optical 7 v] 设置为 [手势 v] 模式
[Don't print the message until a left gesture is detected.]
等到 <[Optical 7 v] 检测到 [左 v] 手势?>
在 [Left gesture detected.] 上打印 [Brain v] ◀ 并设定光标为下一行

旋转感应#

设置旋转传感器位置#

设置旋转传感器位置块用于将旋转传感器的当前位置设置为定义值。

VEXcode 阻止包含将 Rotation9 位置设置为 0 度块的代码堆栈。#
设定 [Rotation 9 v] 位置为 (0) 度

设置旋转传感器位置块接受任何正或负的十进制数或整数。

选择要使用的旋转传感器。

旋转传感器位置装置,显示旋转传感应用的角度和位置指标。

在此示例中,旋转传感器将打印其起始位置,将其位置设置为 -100 度,然后打印新位置。

VEXcode 块代码堆栈包含一个启动时块、一个在 Brain 上以度为单位打印 Rotation9 位置并将光标设置为下一行块、一个将 Rotation9 位置设置为 -100 度块、以及一个在 Brain 上以度为单位打印 Rotation9 位置并将光标设置为下一行块。#
当开始 :: hat events
在 ([Rotation 9 v] 转位 [度 v] :: custom-sensing) 上打印 [Brain v] ◀ 并设定光标为下一行
设定 [Rotation 9 v] 位置为 (-100) 度
在 ([rotation9 v] 转位 [度 v] :: custom-sensing) 上打印 [Brain v] ◀ 并设定光标为下一行

旋转传感器角度#

旋转传感器角度块用于报告旋转传感器当前的旋转角度(以度为单位)。

VEXcode 阻止包含以度为单位的 Rotation9 角度的代码堆栈。#
([Rotation 9 v] 角度值)

旋转传感器角度块报告的值范围为 0.00 到 359.99。

选择要使用的旋转传感器。

旋转传感器设备,显示角度和位置数据,用于机器人传感应用。

在此示例中,旋转传感器将打印其起始旋转。

VEXcode 块代码堆栈包含一个启动时块,以及一个在 Brain 上以度为单位打印 Rotation9 角度并将光标设置到下一行块。#
当开始 :: hat events
在 ([Rotation 9 v] 角度值) 上打印 [Brain v] ◀ 并设定光标为下一行

旋转传感器位置#

旋转传感器位置块用于报告所选旋转传感器的当前旋转位置。

VEXcode 阻止包含 Rotation9 位置(以度为单位)的代码堆栈。#
([Rotation 9 v] 转位 [度 v] :: custom-sensing)

选择要使用的旋转传感器。

旋转传感器位置装置,显示旋转传感应用的角度和位置指标。

选择报告位置的单位:

旋转传感器位置单元图,展示了旋转感应的角度和速度测量。

在此示例中,旋转传感器将打印其起始位置,将其位置设置为 -100 度,然后打印新位置。

VEXcode 块代码堆栈包含一个选定块、一个在 Brain 上以度为单位打印 Rotation9 位置并将光标设置为下一行块、一个将 Rotation9 位置设置为 -100 度块、以及一个在 Brain 上以度为单位打印 Rotation9 位置并将光标设置为下一行块。#
当开始 :: hat events
在 ([Rotation 9 v] 转位 [度 v] :: custom-sensing) 上打印 [Brain v] ◀ 并设定光标为下一行
设定 [Rotation 9 v] 位置为 (-100) 度
在 ([Rotation 9 v] 转位 [度 v] :: custom-sensing) 上打印 [Brain v] ◀ 并设定光标为下一行

旋转传感器速度#

旋转传感器速度块用于报告旋转传感器的当前速度。

VEXcode 块堆栈包含以 rpm 为单位的 Rotation9 速度的代码。#
([Rotation 9 v] 速度 [rpm v] 值)

选择要使用的旋转传感器。

用于监测机器人应用中的电机和传动系统性能的旋转传感器和速度装置。

选择报告位置的单位:每分钟转数 (rpm)每秒度数 \(dps\)

该图显示旋转传感器带有速度单位,用于以度或转速报告角度和位置。

在这个例子中,传动系统将向右转动 1 秒,然后其当前转速才会打印在 Brain 的屏幕上。

VEXcode 块代码堆栈包含一个启动时块、一个右转块、一个等待 1 秒块和一个在 Brain 上以 rpm 为单位打印 Rotation9 速度并将光标设置为下一行块。#
当开始 :: hat events
[Turn towards the right for 1 second.]
[右 v] 转
等待 (1) 秒
[Print the correct rotational velocity after 1 second.]
在 ([Rotation 9 v] 速度 [rpm v] 值) 上打印 [Brain v] ◀ 并设定光标为下一行

视觉传感#

拍摄视觉传感器快照#

拍摄视觉传感器快照 模块会过滤来自视觉传感器帧的数据。视觉传感器可以检测包含已配置颜色和颜色代码的签名。

必须先在 Vision Utility 中配置颜色和颜色代码,然后才能将其与该块一起使用。

该数据集按宽度从大到小排序存储对象,从项目 1 开始。可以使用 Vision object property 块访问每个对象的属性。如果未检测到匹配的对象,则返回空数据集。

[Vision 1 v] 拍照 [SELECT_A_SIG v]

范围

描述

想象

要使用的视觉传感器,在设备窗口中配置。

签名

快照中要分析的颜色特征或颜色代码。

例子

当开始 :: hat events
[Move forward if a red box is detected.]
永久循环
[Vision 1 v] 拍照 [RED_BOX v]
如果 <[Vision 1 v] 对象存在?> 那么
驱动 [向前 v] [10] [毫米 v] ▶

设置视觉传感器对象项#

设置视觉传感器对象项块设置要使用数据集中的哪个项。

设定 [Vision 1 v] 对象标号为 (1)

范围

描述

想象

要使用的视觉传感器,在设备窗口中配置。

物品

数据集中要使用的项目数量。

例子

当开始 :: hat events
[Display the largest detected red object.]
永久循环
[Vision 1 v] 拍照 [RED_BOX v]
清除 [Brain v] 所有行
在 [1] 设定光标至 [1] 行 [Brain v] 列
如果 <[Vision 1 v] 对象存在?> 那么
设定 [Vision 1 v] 对象标号为 (1)
在 ([Vision 1 v] 对象 [宽 v]) ▶上打印 [Brain v]
结束
等待 [0.5] 秒

视觉传感器物体计数#

视觉传感器对象计数块以整数形式返回数据集中检测到的对象的数量。

([Vision 1 v] 对象数目)

范围

描述

想象

要使用的视觉传感器,在设备窗口中配置。

例子

当开始 :: hat events
[Display the amount of red objects.]
永久循环
清除 [Brain v] 所有行
在 [1] 设定光标至 [1] 行 [Brain v] 列
[Vision 1 v] 拍照 [RED_BOX v]
如果 <[Vision 1 v] 对象存在?> 那么
在 ([Vision 1 v] 对象数目) ▶上打印 [Brain v]
结束
等待 [0.5] 秒

视觉传感器对象存在吗?#

**视觉传感器对象是否存在?**块返回一个布尔值,指示是否在数据集中检测到任何对象。

  • 真 – 数据集包含检测到的对象。

  • 错误 – 数据集不包含任何检测到的对象。

<[Vision 1 v] 对象存在?>

范围

描述

想象

要使用的视觉传感器,在设备窗口中配置。

例子

当开始 :: hat events
[Move forward if a red box is detected.]
永久循环
[Vision 1 v] 拍照 [RED_BOX v]
如果 <[Vision 1 v] 对象存在?> 那么
驱动 [向前 v] [10] [毫米 v] ▶

视觉传感器对象属性#

使用 拍摄视觉传感器快照 后存储的每个对象(如下所示)包含五个属性。

([Vision 1 v] 对象 [宽 v])

某些属性值基于使用 拍摄视觉传感器快照 时检测到的物体在视觉传感器视图中的位置。视觉传感器的分辨率为 316 x 212 像素。

范围

描述

想象

要使用的视觉传感器,在设备窗口中配置。

财产

使用检测到的对象的哪个属性:

宽度#

width 以像素为单位返回检测到的对象的宽度,范围是 0 到 316 之间的整数。

([Vision 1 v] 对象 [宽 v])

例子

当开始 :: hat events
[Move towards a red object until its width is larger than 100 pixels.]
永久循环
[Vision 1 v] 拍照 [RED_BOX v]
如果 <[Vision 1 v] 对象存在?> 那么
如果 <([Vision 1 v] 对象 [宽 v]) [math_less_than v] [100]> 那么
驱动 [向前 v]
结束
否则
驱动停止

高度#

高度以像素为单位返回检测到的物体的高度,范围是 0 到 212 之间的整数。

([Vision 1 v] 对象 [高 v])

例子

当开始 :: hat events
[Move towards a red object until its height is larger than 100 pixels.]
永久循环
[Vision 1 v] 拍照 [RED_BOX v]
如果 <[Vision 1 v] 对象存在?> 那么
如果 <([Vision 1 v] 对象 [高 v]) [math_less_than v] [100]> 那么
驱动 [向前 v]
结束
否则
驱动停止

中心X#

centerX 以像素为单位返回检测到的物体中心的 x 坐标,为 0 到 316 之间的整数。

([Vision 1 v] 对象 [中心X坐标 v])

例子

当开始 :: hat events
[Turn slowly until a red object is centered in front of the Vision Sensor.]
设定转向速度为 [30] [% v]
[右 v] 转
永久循环
[Vision 1 v] 拍照 [RED_BOX v]
如果 <[Vision 1 v] 对象存在?> 那么
如果 <<[140] [math_less_than v] ([Vision 1 v] 对象 [中心X坐标 v])> 与 <([Vision 1 v] 对象 [中心X坐标 v]) [math_less_than v] [180]>> 那么
驱动停止

中心Y#

centerY 以像素为单位返回检测到的物体中心的 y 坐标,为 0 到 212 之间的整数。

([Vision 1 v] 对象 [中心Y坐标 v])

例子

当开始 :: hat events
[Move towards a red object until its center y-coordinate is more than 140 pixels.]
永久循环
[Vision 1 v] 拍照 [RED_BOX v]
如果 <[Vision 1 v] 对象存在?> 那么
如果 <([Vision 1 v] 对象 [中心Y坐标 v]) [math_less_than v] [140]> 那么
驱动 [向前 v]
结束
否则
驱动停止

角度#

角度以 0 至 180 度之间的整数形式返回检测到的颜色代码的方向。

([Vision 1 v] 对象 [夹角 v])

例子

当开始 :: hat events
[Turn left or right depending on how the Color Code is rotated.]
永久循环
[Vision 1 v] 拍照 [BOX_CODE v]
如果 <[Vision 1 v] 对象存在?> 那么
如果 <<[70] [math_less_than v] ([Vision 1 v] 对象 [夹角 v])> 与 <([Vision 1 v] 对象 [夹角 v]) [math_less_than v] [110]>> 那么
[右 v] 转 (45) 度 ▶
否则如果 <<[250] [math_less_than v] ([Vision 1 v] 对象 [夹角 v])> 与 <([Vision 1 v] 对象 [夹角 v]) [math_less_than v] [290]>> 那么
[左 v] 转 (45) 度 ▶
否则
驱动停止
结束

AI视觉传感#

AI 视觉传感器可以检测并追踪物体、颜色和 AprilTag。这使得机器人能够分析周围环境、跟踪物体,并根据检测到的视觉数据做出反应。

行动#

拍摄快照#

拍摄快照 模块会过滤来自 AI 视觉传感器帧的数据。AI 视觉传感器可以检测包含预训练对象、AprilTag 或已配置颜色和颜色代码的签名。

必须先在 AI Vision Utility 中配置颜色和颜色代码,然后才能将其与此块一起使用。

该数据集存储的对象按宽度从大到小排序,从索引 0 开始。可以使用 AI Vision 对象属性 块访问每个对象的属性。如果未检测到匹配的对象,则返回空数据集。

拍摄快照堆栈块。#
[AIVision 1 v] 拍照 [SELECT_A_SIG v]

范围

描述

签名

过滤数据集以仅包含指定签名的数据。可用的签名包括:

**注意:**要显示 AprilTag 或 AI 分类选项,必须在 AI Vision 实用程序中启用它们的检测。

例子

示例即将推出!

颜色代码#

颜色代码是由 2 到 4 个按特定顺序排列的颜色特征组成的结构化模式。这些代码使 AI 视觉传感器能够识别预定义的颜色模式。

颜色代码对于识别复杂物体、与游戏元素对齐或为自主导航创建独特标记非常有用。一次最多可配置 8 个颜色代码。

AI Vision Utility 界面显示一个已连接的视觉传感器正在检测两个相邻的物体,左侧为蓝色框,右侧为红色框,它们被组合成一个标记为 BlueRed 的白色边界框。检测信息包括角度 (A:11°)、坐标 (X:143, Y:103)、宽度 (W:233) 和高度 (H:108)。右侧面板列出了三个颜色特征:Red_Box、Blue_Box 和 BlueRed,并可调整色调和饱和度范围。BlueRed 特征结合了 Blue_Box 和 Red_Box。视频源下方是标有“冻结视频”、“复制图像”、“保存图像”和“关闭”的按钮。](/_static/img/AiVision/color_code.png)

例子

示例即将推出!

设置#

设置 AI Vision 对象项#

设置 AI Vision 对象项 块设置要使用数据集中的哪个项。

设置 AI Vision 对象项堆栈块。#
设定 [AIVision 1 v] 对象标号为 (1)

参数

描述

物品

数据集中要使用的项目数量。

例子

示例即将推出!

价值观#

AI Vision 对象存在吗?#

AI Vision 对象存在 块返回一个布尔值,指示是否在数据集中检测到任何对象。

  • 真 – 数据集包含检测到的对象。

  • 错误 – 数据集不包含任何检测到的对象。

AI Vision对象存在布尔块。#
<[AIVision 1 v] 对象存在?>

参数

描述

该块没有参数。

例子

示例即将推出!

AI视觉的对象是什么?#

AI Vision 对象是? 块返回一个布尔值,指示检测到的对象是否与特定分类匹配。

  • 真 – 数据集中的项目是特定对象。

  • 错误 – 数据集中的项目不是特定对象。

AI Vision AI分类是对象布尔块。#
<[AIVision1 v] object is [BlueBall v]?>

范围

描述

目的

将该项目与哪个 AI 分类 进行比较。

例子

示例即将推出!

AI Vision 对象是 AprilTag ID?#

AI Vision 对象是 AprilTag ID? 块返回一个布尔值,指示检测到的 AprilTag 是否与特定 ID 匹配。

  • 正确 – AprilTag ID 是数字。

  • 错误 – AprilTag ID 不是数字。

AI Vision 检测到 AprilTag 是布尔块。#
<[AIVision 1 v] 对象是 AprilTag [1] 吗?>

参数

描述

四月标签号码

与检测到的 AprilTag 的 ID 号进行比较的数字。

例子:

示例即将推出!

AI 视觉对象计数#

AI Vision 对象计数 块以整数形式返回数据集中检测到的对象的数量。

设置 AI Vision 对象项堆栈块。#
([AIVision 1 v] 对象数目)

参数

描述

该块没有参数。

例子

示例即将推出!

AI Vision 对象属性#

使用 take snapping block 后存储的每个对象(如下所示)包含九个属性。

AI Vision 对象属性报告器块。#
([AIVision 1 v] 对象 [宽 v])

某些属性值基于使用 拍摄快照 时检测到的物体在 AI 视觉传感器视图中的位置。AI 视觉传感器的分辨率为 320 x 240 像素。

范围

描述

财产

使用检测到的对象哪个属性:

宽度#

width 以像素为单位返回检测到的对象的宽度,范围是 1 到 320 之间的整数。

AI Vision 对象属性堆栈块,其参数设置为宽度。#
([AIVision 1 v] 对象 [宽 v])

例子

示例即将推出!

高度#

高度以像素为单位返回检测到的物体的高度,范围是 1 到 240 之间的整数。

AI Vision 对象属性堆栈块,其参数设置为高度。#
([AIVision 1 v] 对象 [高 v])

例子

示例即将推出!

中心X#

centerX 以像素为单位返回检测到的物体中心的 x 坐标,为 0 到 320 之间的整数。

AI Vision 对象属性堆栈块,其参数设置为 centerX。#
([AIVision 1 v] 对象 [中心X坐标 v])

例子

示例即将推出!

中心Y#

centerY 以像素为单位返回检测到的物体中心的 y 坐标,为 0 到 240 之间的整数。

AI Vision 对象属性堆栈块,其参数设置为 centerY。#
([AIVision 1 v] 对象 [中心Y坐标 v])

例子

示例即将推出!

角度#

angle 以 0 至 359 度之间的整数形式返回检测到的颜色代码或 AprilTag 的方向。

AI Vision 对象属性堆栈块,其参数设置为角度。#
([AIVision 1 v] 对象 [夹角 v])

例子

示例即将推出!

原点X#

originX 以像素为单位返回检测到的对象边界框左上角的 x 坐标,为 0 到 320 之间的整数。

AI Vision 对象属性堆栈块,其参数设置为 originX。#
([AIVision 1 v] 对象 [原点X v])

例子

示例即将推出!

原点Y#

originY 以像素为单位返回检测到的对象边界框左上角的 y 坐标,为 0 到 240 之间的整数。

AI Vision 对象属性堆栈块,其参数设置为 originY。#
([AIVision 1 v] 对象 [原点Y v])

例子

示例即将推出!

标签ID#

tagID 以整数形式返回检测到的 AprilTag 的识别号。

AI Vision 对象属性堆栈块,其参数设置为 tagID。#
([AIVision 1 v] 对象 [tagID v])

例子

示例即将推出!

分数#

分数返回模型对检测到的 AI 分类的信心程度,以 70% 到 100% 的百分比表示。

AI Vision 对象属性堆栈块,其参数设置为 tagID。#
([AIVision 1 v] 对象 [score v])

例子

示例即将推出!

手臂感应#

六轴机械臂能否移动到位#

6 轴机械臂能否移动到指定位置 块用于报告 6 轴机械臂是否能够到达指定位置。

VEXcode 块代码堆栈包含一个可使 6 轴臂移动到位置的块。#
<[arm v] move to position x:(0) y:(0) z:(0) [mm v]?>

当 6 轴臂可以到达该位置时,6 轴臂可以移动到该位置吗 块报告“True”。

当 6 轴臂无法到达该位置时,6 轴臂能否移动到该位置 块会报告“False”。

选择要使用的 6 轴臂。

图表说明了 EXP Brain 的计时器重置和价值报告功能。

选择使用的单位:毫米 (mm)英寸

该图展示了机器人控制系统中手臂能够触及的各个单元。

在这个例子中,6轴臂将检查它是否可以移动到(0,0,0)并打印它无法到达该位置。

当开始 :: hat events
如果 <非 <[arm v] move to position x:(0) y:(0) z:(0) [mm v]?>> 那么
打印 [The Arm can't incremental move for this distance.] ▶
结束

6轴机械臂能否增量移动到位#

6 轴臂能否增量移动到位置 块用于报告 6 轴机械臂是否能够增量移动该距离。

当开始 :: hat events
<[Arm2 v] increment position by x:(0) y:(500) z:(0) [mm v]?>
结束

当 6 轴臂可以增量移动到该距离时,6 轴臂可以增量移动到位置 块报告“True”。

当 6 轴臂无法增量移动到该距离时,6 轴臂能否增量移动到位置 块会报告“False”。

选择要使用的 6 轴臂。

图表说明了 VEX EXP Brain 的计时器重置功能和按钮按下检测。

选择使用的单位:毫米 (mm)英寸

机器人控制和监控系统的各种传感单元及其功能图。

在此示例中,6 轴臂将检查它是否可以在 Y 轴上增量移动 500 毫米,并打印它不能移动该距离。

当开始 :: hat events
如果 <非 <[Arm2 v] increment position by x:(0) y:(500) z:(0) [mm v]?>> 那么
打印 [The Arm can't incremental move for this distance.] ▶
结束

六轴机械臂末端执行器能否移动到方向#

6 轴臂末端执行器是否可以移动到方向 块用于报告 6 轴臂末端执行器是否可以绕轴旋转到特定方向。

<[手臂 v] 末端执行器移动到 [俯仰 v] (0) 度?>

当 6 轴臂可以绕轴旋转到特定方向时,6 轴臂末端执行器能否移动到方向 块报告“True”。

当 6 轴臂无法绕轴旋转到特定方向时,6 轴臂末端执行器能否移动到方向 块会报告“False”。

选择要使用的 6 轴臂。

说明六轴机械臂及其传感器的连接和功能的图表。

选择要使用的轴:

  • pitch - 围绕 Y 轴的运动。

  • 滚动——围绕 X 轴移动。

  • 偏航 - 围绕 Z 轴运动。

该图显示了机器人系统中各种传感组件与 EXP Brain 之间的连接。

在这个例子中,6 轴臂将检查末端执行器是否可以指向 X 轴上的 40 度位置,并打印是否可以。

当开始 :: hat events
如果 <[手臂 v] 末端执行器移动到 [横滚 v] (40) 度?> 那么
打印 [The End Effector can move to this orientation] ▶
否则
打印 [The End Effector can not move to this orientation] ▶
结束

六轴机械臂末端执行器能否逐步移动到指定方向#

6 轴臂末端执行器能否逐步移动到方向 块用于报告 6 轴臂末端执行器是否可以绕轴逐步旋转其方向特定度数。

<[手臂 v] [俯仰 v]偏转递增 [0] 度?>

当 6 轴臂可以绕轴以特定度数增量旋转时,6 轴臂末端执行器能否增量移动到方向 块报告“True”。

当 6 轴臂无法绕轴以特定度数增量旋转时,6 轴臂末端执行器能否增量移动到方向 块会报告“False”。

选择要使用的 6 轴臂。

该图展示了具有各种传感能力和电机控制的 6 轴机械臂的功能。

选择要使用的轴:

  • pitch - 围绕 Y 轴旋转。

  • roll——绕 X 轴旋转。

  • 偏航——绕 Z 轴旋转。

6 轴机械臂示意图,其中标有用于运动和方向的组件和轴。

在此示例中,6 轴臂将检查末端执行器是否可以在 Z 轴上增量移动 20 度,并打印是否可以。

当开始 :: hat events
如果 <[手臂 v] [偏转 v]偏转递增 [20] 度?> 那么
打印 [The End Effector can increment move for this distance.] ▶
否则
打印 [The End Effector can not increment move for this distance.] ▶
结束

6 轴臂完成了吗?#

6 轴臂完成了吗? 块用于报告 6 轴臂是否已完成移动。

<[手臂 v] 已结束?>

当 6 轴臂没有移动时,6 轴臂完成了吗? 块报告“True”。

当 6 轴臂移动时,6 轴臂完成了吗? 块报告“False”。

选择要使用的 6 轴臂。

6 轴机械臂图像表明其已完成运动,并显示其位置和状态。

在这个例子中,Arm 将移动到位置 (-100, 200, 100),并在移动过程中每 0.25 秒打印一次其 Y 坐标(以毫米为单位),直到移动完成。

当开始 :: hat events
[Move to (-100, 200, 100) and let subsequent blocks trigger.]
move [Arm1 v] to position x:[-100] y:[200] z:[100] [mm v] ◀ and don't wait
[Repeat the blocks until the Arm has finished moving.]
重复直到 <[Arm 1 v] 已结束?>
[Print the Arm's current Y position in mm on the Brain every .25 seconds.]
在 ([Arm 1 v] [y v] 位置 [毫米 v]) 上打印 [Brain v] ◀ 并设定光标为下一行
等待 (0.25) 秒
结束

6轴臂位置#

6 轴臂位置 块用于报告 6 轴臂在指定轴的当前位置。

([手臂 v] [X v] 位置 [毫米 v])

选择要使用的 6 轴臂。

该图显示了 6 轴机械臂的位置,并标明了轴和关节角度。

选择要报告的轴。

该图显示了传感环境中 6 轴机械臂的位置和轴。

选择报告的单位:毫米 (mm)英寸

该图展示了用于机器人控制和传感应用的各种手臂位置单元。

在此示例中,6 轴臂将以毫米为单位将其当前 Z 轴位置打印到打印控制台。

当开始 :: hat events
打印 ([手臂 v] [z v] 位置 [毫米 v]) ▶

6 轴机械臂末端执行器方向#

6 轴臂末端执行器方向 块用于报告 6 轴臂末端执行器的当前方向。

([手臂 v] [俯仰 v] 偏转角度值)

选择要使用的 6 轴臂。

该图展示了传感环境中 6 轴机械臂的手臂方向。

选择要报告的轴:

  • pitch - 围绕 Y 轴旋转。

  • roll——绕 X 轴旋转。

  • 偏航——绕 Z 轴旋转。

图示说明用于机器人控制和运动分析的手臂方向轴。

在此示例中,6 轴臂将以度数形式将末端执行器的当前 Y 轴方向打印到打印控制台。

当开始 :: hat events
打印 ([手臂 v] [俯仰 v] 偏转角度值) ▶

线路跟踪传感#

线路跟踪器反射率#

线跟踪器反射率块用于报告使用线跟踪器传感器反射的光量。

([LineTrackerG v] 反射率百分比)

选择要使用的线路跟踪器传感器。

线跟踪器反射率装置显示光反射率水平,用于传感器数据分析。

在这个例子中,线跟踪传感器将把当前检测到的反射率打印到大脑的屏幕上。

当开始 :: hat events
在 ([LineTrackerG v] 反射率百分比) 上打印 [Brain v] ◀ 并设定光标为下一行

光感应#

光传感器亮度#

光传感器亮度块用于报告光传感器检测到的光量。

([Light v] 亮度百分比)

选择要使用的光传感器。

在机器人环境中显示亮度测量的光传感器设备。

在这个例子中,光传感器将把当前检测到的亮度打印到大脑的屏幕上。

当开始 :: hat events
在 ([LightH v] 亮度百分比) 上打印 [Brain v] ◀ 并设定光标为下一行

电位器传感#

电位器角度#

电位器角度块用于报告电位器的角度位置。

VEXcode 阻止包含 % 块中的 Potentiometer3A 角度的代码堆栈。#
([Potentiometer3A v] 角度 [% v])

选择要使用的电位器。

用于测量机器人和电子应用中的角位置的电位器角度装置图像。

选择报告的单位:百分比(%)

图片展示了用于传感应用的带有角度测量单元的电位器。

在这个例子中,电位器将把它当前的角度位置打印到大脑的屏幕上。

VEXcode 块代码堆栈包含一个启动时块,以及一个在 Brain 上以度为单位打印 Potentiometer3A 角度并将光标设置为下一行块。#
当开始 :: hat events
在 ([Potentiometer3A v] 角度 [度 v]) 上打印 [Brain v] ◀ 并设定光标为下一行

加速度计传感#

加速度计加速度#

加速度计加速度块用于报告模拟加速度计上一个轴的加速度值。

VEXcode 阻止包含 g 块中的 Accel2g3g 加速度的代码堆栈。#
([Accel2G3G v] 加速度g值)

根据模拟加速度计上的跳线设置,加速度计加速度块报告的范围从 -2.0 G 到 2.0 G 或 -6.0 G 到 6.0 G。

选择要使用的加速度计。

加速度计图像显示各个轴和配置的加速度值和设置。

在这个例子中,传动系统将向前行驶 1 秒,然后其当前加速度才会打印在 Brain 的屏幕上。

VEXcode 块代码堆栈包含一个启动时块、一个向前驱动块、一个等待 1 秒块、一个在 Brain 上打印 Accel2g3g 加速度(以 g 为单位)并将光标设置到下一行块。#
当开始 :: hat events
[Drive forward for 1 second.]
驱动 [向前 v]
等待 (1) 秒
[Print the current acceleration after 1 second.]
在 ([Accel2G3G v] 加速度g值) 上打印 [Brain v] ◀ 并设定光标为下一行

测距仪传感#

测距仪发现物体了吗?#

测距仪发现物体? 块用于报告超声波测距仪传感器是否在其视野范围内看到物体。

VEXcode 阻止包含 RangeFinderE 发现和对象?块的代码堆栈。#
<[RangeFinderE v] 发现对象?>

当超声波测距仪传感器在其视野范围内看到物体或表面时,**测距仪找到物体?**块会报告“True”。

当超声波测距仪传感器未检测到物体或表面时,**测距仪找到物体?**块会报告“False”。

选择要使用的超声波测距仪传感器。

超声波测距仪传感器检测其视野范围内的物体的图像。

在这个例子中,每隔 0.25 秒,测距仪就会检查是否检测到物体,如果是,就会将物体与物体之间的距离打印到大脑的屏幕上。

VEXcode 块代码堆栈包含一个启动时块、一个永久块、一个清除 Brain 上的所有行块、一个将光标设置到 Brain 上第 1 行第 1 列的块、一个如果 RangeFinderE 发现一个对象?则块、一个打印 RangeFinderE 在 Brain 上的距离(以毫米为单位)并将光标设置到下一行的块、一个结束块、一个等待 0.25 秒的块和一个结束块。#
当开始 :: hat events
永久循环
清除 [Brain v] 所有行
在Brain设定光标至 (1) 行 (1) 列
[Check if the Range Finder found an object.]
如果 <[RangeFinderE v] 发现对象?> 那么
[Print the distance to the object.]
在 ([RangeFinderE v] 距离 [毫米 v]) 上打印 [Brain v] ◀ 并设定光标为下一行
结束
[Repeat the process every .25 seconds.]
等待 (0.25) 秒
结束

测距仪距离#

测距仪距离块用于报告距离超声波测距仪传感器最近的物体的距离。

([RangeFinderE v] 距离 [毫米 v])

选择要使用的超声波测距仪传感器。

用于测量机器人应用中物体距离的测距仪距离装置图片。

选择报告的单位:毫米 (mm)英寸

该图显示了测距仪传感器的距离测量单位,说明了各种距离报告格式。

在这个例子中,每隔 0.25 秒,测距仪就会检查是否检测到物体,如果是,就会将物体与物体之间的距离打印到大脑的屏幕上。

当开始 :: hat events
永久循环
清除 [Brain v] 所有行
在Brain设定光标至 (1) 行 (1) 列
[Check if the Range Finder found an object.]
如果 <[RangeFinderE v] 发现对象?> 那么
[Print the distance to the object.]
在 ([RangeFinderE v] 距离 [毫米 v]) 上打印 [Brain v] ◀ 并设定光标为下一行
结束
[Repeat the process every .25 seconds.]
等待 (0.25) 秒
结束

数字传感#

数字输入#

数字输入块用于报告数字输入信号是否高。

VEXcode 块堆栈包含一个 DigitalINA 信号高?块的代码。#
[DigitalInA v] 信号高位?

3 线端口在 5V 逻辑信号电压电平下运行。

当数字输入信号高时,Digital In 块报告“True”。

当数字输入信号较低时,Digital In 块会报告“False”。

选择要使用的数字输入设备。

该图展示了机器人大脑的数字输入和输出功能,包括计时器、按钮和传感器读数。

数字输出传感#

数字输出#

数字输出块用于设置数字输出 3 线端口的逻辑电平。

VEXcode 阻止包含 DigitalOutA Low 块的代码堆栈。#
设定 [DigitalInA v] [低 v] :: custom-sensing

3 线端口在 5V 逻辑信号电压电平下运行。

选择要使用的数字输出端口。

用于控制信号和设备交互的机器人数字输出设备图示。

选择输出内容:数字逻辑信号。

该图说明了 VEX EXP Brain 编程环境中的数字输出信号块。