汽车和汽车集团#
介绍#
电机和电机组控制机器人各部件的运动。一个电机控制一个已配置的智能电机,而一个电机组则控制两个已配置的智能电机,使它们同步运动。电机和电机组可用于抬起机械臂、转动机械爪、旋转车轮或移动机器人的其他部件。两个电机可以协同工作,组成一个驱动系统,从而驱动整个机器人运动和转向。
每个电机都在“设备”窗口中进行配置。根据构建版本,电机的名称和方向可能会有所不同。自定义机器人可能会使用不同的电机名称或方向。
默认情况下,“正转”会使电机逆时针旋转,“反转”会使电机顺时针旋转。如果在“设备”窗口中将电机设置为反转,则旋转方向将会互换。
电机和电机组的编码方式有很多种。以下是所有电机和电机组代码块的列表:
操作——停止和旋转电机及电机组。
spin motor — 使电机或电机组无限正转或反转。
spin motor for — 使电机或电机组旋转指定的距离。
旋转电机到位置 — 将电机或电机组旋转到特定位置。
停止电机 — 停止电机或电机组旋转。
设置 — 调整电机和电机组的设置。
设置电机位置 — 将电机或电机组的当前位置更改为新值。
设置电机速度 — 告诉电机或电机组旋转的速度。
设置电机停止 — 设置电机或电机组停止运动的方式:通过制动、滑行或保持。
设置电机最大扭矩 — 设置电机或电机组在旋转时允许施加的最大扭矩。
设置电机超时 — 设置电机或电机组尝试完成运动的秒数。
数值 — 检查电机和电机组状态。
行动#
旋转马达#
旋转电机 模块可以使电机或电机组持续正转或反转。电机或电机组会一直旋转,直到收到其他指令,例如改变旋转方向或停止。
[Motor 1 v] [向前 v] 转
参数 |
描述 |
|---|---|
发动机 |
要旋转的电机或电机组。请从“设备”窗口中配置的电机中选择。 |
方向 |
电机或电机组的旋转方向。默认情况下,选项为正转和反转。旋转方向的选择可能因电机配置而异。 |
例子
当开始
[Spin the motor forward, then stop.]
[Motor 1 v] [向前 v] 转
等待 (1) 秒
[Motor 1 v] 停止
用于旋转马达#
“旋转电机”堆栈模块会使电机或电机组旋转指定的距离。旋转距离是相对于电机或电机组的当前位置而言的。程序会等待电机或电机组旋转完毕后,才会运行堆栈中的下一个模块。
[Motor 1 v] [向前 v] 转 (90) [度 v] ▶
参数 |
描述 |
|---|---|
发动机 |
要旋转的电机或电机组。请从“设备”窗口中配置的电机中选择。 |
方向 |
电机或电机组的旋转方向。默认情况下,选项为正转和反转。旋转方向的选择可能因电机配置而异。 |
距离 |
电机或电机组的旋转距离。度数使用整数。圈数可以使用整数或小数。 |
单元 |
距离单位:度或圈。 |
不要等待 |
选择箭头(▶)展开代码块,显示“不要等待”,这样堆栈中的下一个代码块就会立即运行。 |
例子
当开始
[Spin the motor forward once, then reset.]
[Motor 1 v] [向前 v] 转 (90) [度 v] ▶
[Motor 1 v] [反 v] 转 (90) [度 v] ▶
旋转电机定位#
旋转电机定位 堆栈块将电机或电机组旋转到特定位置。
电机或电机组的位置是指其旋转的距离,以度或圈数衡量。一圈等于360度。在项目开始时,电机位置设置为0度。也可以使用set motor position代码块来设置电机位置。
位置值是绝对值。这意味着旋转方向取决于电机或电机组的当前位置。
[Motor 1 v] 转至 (90) [度 v] ▶
参数 |
描述 |
|---|---|
发动机 |
要旋转的电机或电机组。请从“设备”窗口中配置的电机中选择。 |
位置 |
电机或电机组将旋转到的位置值。角度使用整数。圈数可以使用整数或小数。 |
单元 |
位置单位:度或圈。 |
不要等待 |
选择箭头(▶)展开代码块,显示“不要等待”,这样堆栈中的下一个代码块就会立即运行。 |
例子
当开始
[Spin the motor, then put the motor at half of a rotation.]
[Motor 1 v] [向前 v] 转
等待 (2) 秒
[Motor 1 v] 转至 (180) [度 v] ▶
停止电机#
停止电机 堆栈块立即停止选定的电机或电机组。
[Motor 1 v] 停止
参数 |
描述 |
|---|---|
发动机 |
要停止的电机或电机组。请从“设备”窗口中配置的电机中选择。 |
例子
当开始
[Stop the motor after 1 second.]
[Motor 1 v] [向前 v] 转
等待 (1) 秒
[Motor 1 v] 停止
设置#
设置电机位置#
电机或电机组的位置是指其旋转的距离,以度或圈数衡量。一圈等于 360 度。设置电机位置堆栈块会将电机或电机组的当前位置更改为新值。
例如,如果电机旋转了 180 度,将其位置设置为 0 度会将该位置从 180 度重置为 0 度。然后,电机可以根据这个新值旋转到其他位置。
设定 [Motor 1 v] 转位至 (0) [度 v]
参数 |
描述 |
|---|---|
发动机 |
要设置位置的电机或电机组。请从“设备”窗口中配置的电机中进行选择。 |
位置 |
要设置的电机或电机组的位置值。角度使用整数。圈数可以使用整数或小数。 |
单元 |
位置单位:度或圈。 |
例子
当开始
[Spin the motor to the new 0 position.]
设定 [Motor 1 v] 转位至 [180] [度 v]
[Motor 1 v] 转至 [0] [度 v] ▶
设定电机速度#
设置电机转速 代码块用于告诉电机或电机组的转速。百分比越高,电机或电机组的转速越快;百分比越低,电机或电机组的转速越慢。
每个项目开始时,每个电机默认以 50% 的速度旋转。
**注意:**更高的速度会使电机转速更快,但精度可能会降低。更低的速度会使电机转速更慢,但精度可能会更高。
设定 [Motor 1 v] 转速为 (50) [% v]
参数 |
描述 |
|---|---|
发动机 |
要设置速度的电机或电机组。请从“设备”窗口中配置的电机中进行选择。 |
速度 |
电机或电机组的旋转速度。百分比使用 0% 到 100% 的整数。RPM使用 0 到 127 的整数。 |
单元 |
速度单位:% 或 rpm(每分钟转数)。 |
例子
当开始
[Spin forward at the default velocity.]
[Motor 1 v] [向前 v] 转 (90) [转 v] ▶
[Spin slower.]
设定 [Motor 1 v] 转速为 (20) [% v]
[Motor 1 v] [反 v] 转 (90) [转 v] ▶
[Spin faster.]
设定 [Motor 1 v] 转速为 (100) [% v]
[Motor 1 v] [向前 v] 转 (90) [转 v] ▶
设置电机停止#
设置电机停止 堆栈块设置电机或电机组停止运动的方式:通过制动、滑行或保持。
设定 [Motor 1 v] 停止模式为 [刹车 v]
参数 |
描述 |
|---|---|
发动机 |
要设置停止行为的电机或电机组。请从“设备”窗口中配置的电机中进行选择。 |
停止行为 |
电机或电机组的停止方式:
|
如果未使用此模块,电机在停止时将使用制动器。
设置电机最大扭矩#
扭矩是一种旋转力。它表示电机旋转时能够产生的推力或拉力的大小。
设置电机最大扭矩 堆叠块设置电机或电机组可以使用的最大扭矩。
较高的百分比可以让电机或电机组施加更大的推力,例如在举起重物时。较低的百分比则会限制电机或电机组的推力。这有助于在电机卡住或达到其运动极限时保护机器人。
每个项目开始时,每个电机的扭矩默认设置为 50%。
设定 [Motor 1 v] 最大扭矩为 [50]%
参数 |
描述 |
|---|---|
发动机 |
要设置最大扭矩的电机或电机组。请从“设备”窗口中配置的电机中选择。 |
扭矩 |
电机或电机组可使用的最大扭矩,范围从 0% 到 100%。 |
例子
当开始
[Spin the motor at the default torque.]
[Motor 1 v] 转至 (200) [度 v] ▶
等待 (0.5) 秒
[Spin at a lower torque.]
set [Motor1 v] max torque to (20)%
[Motor 1 v] 转至 (0) [度 v] ▶
等待 (0.5) 秒
[Spin at the maximum torque.]
set [Motor1 v] max torque to (100)%
[Motor 1 v] 转至 (200) [度 v] ▶
设置电机超时#
设置电机超时 代码块用于设置电机或电机组尝试完成一次运动的秒数。如果电机或电机组无法在该时间内完成,它将停止尝试并执行代码块堆栈中的下一个代码块。这可以防止电机或电机组卡在某个运动中。
设定 [Motor 1 v] 超时为 (1) 秒
参数 |
描述 |
|---|---|
发动机 |
要设置超时时间的电机或电机组。请从“设备”窗口中配置的电机中选择。 |
时间 |
电机或电机组尝试完成一次动作的秒数。该值可以是整数或小数。 |
例子
当开始
[Spin the motor forward for 1 second, then reset it.]
设定 [Motor 1 v] 超时为 (1) 秒
[Motor 1 v] [向前 v] 转 (5) [转 v] ▶
[Motor 1 v] 转至 (0) [度 v] ▶
价值观#
电机已完成#
“电机已完成”布尔模块用于报告电机或电机组是否已停止运动。这可用于根据电机或电机组的运动状态来控制其他行为的执行时间。
正确 — 电机或电机组已停止运转。
错误 — 电机或电机组仍在运转。
该模块与以下具有and don’t wait参数的运动模块配合使用:spin motor for 和 spin motor to position。
<[Motor 1 v] 已结束?>
参数 |
描述 |
|---|---|
发动机 |
要报告电机或电机组是否已停止运转的电机或电机组。请从“设备”窗口中配置的电机中进行选择。 |
例子
当开始
[Drive forward until the motor is done spinning.]
[Motor 1 v] [向前 v] 转 (200) [度 v] ◀ 并且不等待
永久循环
如果 <[Motor 1 v] 已结束?> 那么
驱动停止
否则
驱动 [向前 v]
电机正在旋转#
“电机是否旋转”布尔模块用于报告电机或电机组是否正在旋转。这可用于根据电机或电机组的运动状态来控制其他行为的执行时间。
正确 — 电机或电机组正在旋转。
错误 — 电机或电机组没有旋转。
该模块与以下具有and don’t wait参数的运动模块配合使用:spin motor for 和 spin motor to position。
<[Motor 1 v] 正在转?>
参数 |
描述 |
|---|---|
发动机 |
要报告电机或电机组是否正在旋转的选项。请从“设备”窗口中配置的电机中进行选择。 |
例子
当开始
[Move forward while the motor is spinning.]
[Motor 1 v] [向前 v] 转 (200) [度 v] ◀ 并且不等待
当 <[Motor 1 v] 正在转?>
驱动 [向前 v]
结束
驱动停止
电机位置#
电机或电机组的位置是指其旋转的距离,以度或圈数衡量。一圈等于 360 度。电机位置报告模块用于报告电机或电机组的当前位置。
项目开始时,电机位置设置为 0 度。如果电机正向旋转一周,则位置为 360 度或 1 圈。如果电机反向旋转,则位置为负值。
([Motor 1 v] 转位 [度 v])
参数 |
描述 |
|---|---|
发动机 |
要报告位置的电机或电机组。请从“设备”窗口中配置的电机中选择。 |
单元 |
报告电机位置的单位:度或圈。 |
例子
当开始
[Display the motor's position after spinning.]
在 [Brain v] 上打印 ([Motor 1 v] 转位 [度 v]) ◀ 并设定光标为下一行
[Motor 1 v] [向前 v] 转
等待 (1) 秒
在 [Brain v] ▶上打印 ([Motor 1 v] 转位 [度 v])
[Motor 1 v] 停止
电机速度#
电机速度报告模块报告电机或电机组的旋转速度,以百分比(-100% 到 100%)或每分钟转数 (rpm)(-127 到 127)表示。
([Motor 1 v] 速度 [% v] 值)
参数 |
描述 |
|---|---|
发动机 |
要报告速度的电机或电机组。请从“设备”窗口中配置的电机中选择。 |
单元 |
电机转速的单位为:% 或 rpm(每分钟转数)。 |
例子
当开始
[Display the motor's velocity from spinning.]
在 [Brain v] 上打印 ([Motor 1 v] 速度 [rpm v] 值) ◀ 并设定光标为下一行
[Motor 1 v] [向前 v] 转
等待 (1) 秒
在 [Brain v] ▶上打印 ([Motor 1 v] 速度 [rpm v] 值)
[Motor 1 v] 停止
电机电流#
电机电流报告模块报告所选电机或电机组正在使用的电流大小,以安培为单位,范围从 0.0 到 1.2 A。电流是指流过电机或电机组的电量。
电流值越高,表示电机或电机组消耗的电流越大。这种情况可能发生在电机或电机组提升重物、推动物体或试图移动卡住的物体时。
这可以用来检查电机或电机组在运动过程中是否运转吃力。如果电流持续过高,电机可能会发热或功率利用率降低。
([Motor 1 v] 电流 [amps v])
参数 |
描述 |
|---|---|
发动机 |
要报告电流的电机或电机组。请从“设备”窗口中配置的电机中选择。 |
单元 |
电流单位:安培。 |
例子
当开始
[Display the motor's current from spinning.]
将打印精度设置为 [0.01 v] 到 [Brain v]
在 [Brain v] 上打印 ([Motor 1 v] 电流 [amps v]) ◀ 并设定光标为下一行
[Motor 1 v] [向前 v] 转
等待 (1) 秒
在 [Brain v] ▶上打印 ([Motor 1 v] 电流 [amps v])
[Motor 1 v] 停止