电机组#
要使 motor_group 命令出现在 VEXcode V5 中,必须在设备窗口中配置电机。
有关详细信息,请参阅以下文章:
初始化 motor_group 类#
使用以下构造函数创建 EXP motor_group 对象:
motor_group
构造函数创建一个 motor_group 对象。
您可以创建具有任意数量电机的 motor_group。
// Create 2 Motors, Motor1 and Motor2 in
// Ports 1 and 2 respectively.
Motor1 = motor(PORT1);
Motor1 = motor(PORT2);
// Using the two previously created Motors, create a
// motor_group named MotorGroup1.
motor_group MotorGroup1 = motor_group(Motor1, Motor2);
当引用 MotorGroup 类方法时,此“MotorGroup1”对象将在本 API 文档的所有后续示例中使用。
MotorGroup.spin()#
MotorGroup.spin(direction, speed, units)
命令用于让电机组永远沿指定方向旋转,直到使用另一个运动命令或项目停止。
要使用此命令,请将“MotorGroup”替换为所需的电机组,例如:“ArmMotorGroup.spin(direction, speed, units)”。
这是一个非等待功能,允许下一个命令无延迟运行。
参数 |
描述 |
---|---|
方向 |
有效的 directionType。 |
速度 |
**可选。**电机组的旋转速度。如果未指定,则将使用 |
单位 |
**可选。**有效的 velocityUnit。默认值为 |
**返回:**无。
// Spin motor group forward.
MotorGroup1.spin(forward);
电机组.spinToPosition()#
MotorGroup.spinToPosition(rotation, units, speed, units_v, wait)
命令用于使用提供的参数将电机组旋转到绝对位置。
要使用此命令,请将“MotorGroup”替换为所需的电机组,例如:“ArmMotorGroup.spinToPosition(rotation, units, speed, units_v, wait)”。
该函数可以是等待或非等待命令,具体取决于是否使用了“wait”参数。
参数 |
描述 |
---|---|
旋转 |
电机组旋转到的位置。 |
单位 |
**可选。**有效的 rotationUnit。默认值为“度”。 |
速度 |
**可选。**电机组的旋转速度。如果未指定,则将使用 |
单位 |
**可选。**有效的 velocityUnit。默认值为 |
等待 |
可选。 确定命令是否阻止后续命令( |
**返回:**无。
// Spin motor group to 180 degrees.
MotorGroup1.spinToPosition(180);
MotorGroup.spinFor()#
MotorGroup.spinFor(direction, value, units, speed, units_v, wait)
命令用于使电机组旋转特定时长、圈数或直至达到特定的编码器值。该位置相对于电机组的当前位置。
要使用此命令,请将“MotorGroup”替换为所需的电机组,例如:“ArmMotorGroup.spinFor(direction, value, units, speed, units_v, wait)”。
这可以是等待或非等待命令,取决于是否使用了“wait”参数。
参数 |
描述 |
---|---|
方向 |
有效的 directionType。 |
价值 |
电机组旋转的值。 |
单位 |
**可选。**有效的 rotationUnit。默认值为“度”。 |
速度 |
**可选。**电机组的旋转速度。如果未指定,则将使用 |
单位 |
**可选。**有效的 velocityUnit。默认值为 |
等待 |
可选。 确定命令是否阻止后续命令( |
**返回:**无。
// Spin 180 degrees from the current position.
MotorGroup1.spinFor(forward, 180);
MotorGroup.停止()#
MotorGroup.stop(mode)
命令用于停止电机组,将其速度设置为 0,并配置当前停止模式。
要使用此命令,请将“MotorGroup”替换为所需的电机组,例如:“ArmMotorGroup.stop(mode)”。
这是一个非等待命令,允许下一个命令无延迟运行。
参数 |
描述 |
---|---|
模式 |
有效的 brakeType。默认值为 |
**返回:**无。
// Stop the motor group.
MotorGroup1.stop()
MotorGroup.count()#
MotorGroup.count()
命令返回组中的电机数量。
这是一个非等待命令,允许下一个命令无延迟运行。
**返回:**组中的电机数量。
电机组.setVelocity()#
MotorGroup.setVelocity(velocity, units)
命令用于设置电机组的默认速度。如果未提供具体速度,则此速度设置将用于后续调用任何运动函数。
要使用此命令,请将“MotorGroup”替换为所需的电机组,例如:“ArmMotorGroup.setVelocity(velocity, units)”。
这是一个非等待命令,允许下一个命令无延迟运行。
参数 |
描述 |
---|---|
速度 |
为电机组设置的新速度。 |
单位 |
**可选。**有效的 velocityUnit。默认值为 |
**返回:**无。
MotorGroup.setStopping()#
MotorGroup.setStopping(mode)
命令用于设置电机组的停止模式。
要使用此命令,请将“MotorGroup”替换为所需的电机组,例如:“ArmMotorGroup.setStopping(mode)”。
这是一个非等待命令,允许下一个命令无延迟运行。
参数 |
描述 |
---|---|
模式 |
有效的 brakeType。默认值为 |
**返回:**无。
电机组.重置位置()#
MotorGroup.resetPosition()
命令将电机组位置重置为 0。
这是一个非等待命令,允许下一个命令无延迟运行。
**返回:**无。
电机组.setPosition()#
MotorGroup.setPosition(value, units)
命令用于设置电机组的位置。MotorGroup.position()
函数返回的位置将更新为该新值。
要使用此命令,请将“MotorGroup”替换为所需的电机组,例如:“ArmMotorGroup.setPosition(value, units)”。
这是一个非等待命令,允许下一个命令无延迟运行。
参数 |
描述 |
---|---|
价值 |
为电机组设置的新位置。 |
单位 |
**可选。**有效的 rotationUnit。默认值为“度”。 |
**返回:**无。
MotorGroup.setTimeout()#
MotorGroup.setTimeout(value, units)
命令用于设置电机组的超时时间。
要使用此命令,请将“MotorGroup”替换为所需的电机组,例如:“ArmMotorGroup.setTimeout(value, units)”。
这是一个非等待命令,允许下一个命令无延迟运行。
参数 |
描述 |
---|---|
价值 |
为电机组设置的新超时。 |
单位 |
**可选。**有效的 timeUnit。默认值为“msec”。 |
**返回:**无。
MotorGroup.isSpinning()#
如果电机组当前正在旋转,则 MotorGroup.isSpinning()
命令返回。
这是一个非等待命令,允许下一个命令无延迟运行。
返回: 如果电机组当前正在旋转,则返回 True。否则,返回 False。
MotorGroup.isDone()#
如果电机组已完成其运动,则返回 MotorGroup.isDone()
命令。
这是一个非等待命令,允许下一个命令无延迟运行。
返回: 如果电机组已完成运动,则返回 True。如果尚未完成运动,则返回 False。
电机组.设置最大扭矩()#
MotorGroup.setMaxTorque(value, units)
命令用于设置电机组的最大扭矩。扭矩可以设置为扭矩、电流或最大扭矩的百分比。
要使用此命令,请将“MotorGroup”替换为所需的电机组,例如:“ArmMotorGroup.setMaxTorque(value, units)”。
这是一个非等待命令,允许下一个命令无延迟运行。
参数 |
描述 |
---|---|
价值 |
电机组的新最大扭矩。 |
单位 |
有效的 torqueUnit、“amp”或“percent”。 |
**返回:**无。
// Set maximum torque to 2 Newton Meters.
MotorGroup1.setMaxTorque(2, Nm);
MotorGroup.方向()#
MotorGroup.direction()
命令返回电机组当前旋转的方向。
这是一个非等待命令,允许下一个命令无延迟运行。
**返回:**电机组当前旋转的 directionType。
MotorGroup.位置()#
MotorGroup.position(units)
命令返回电机组的当前位置。
这是一个非等待命令,允许下一个命令无延迟运行。
参数 |
描述 |
---|---|
单位 |
**可选。**有效的 rotationUnit。默认值为 |
返回: 以指定单位表示的电机组的当前位置。
MotorGroup.速度()#
MotorGroup.velocity(units)
命令返回电机组的当前速度。
这是一个非等待命令,允许下一个命令无延迟运行。
参数 |
描述 |
---|---|
单位 |
**可选。**有效的 velocityUnit。默认值为 |
**返回:**以指定单位表示的电机组当前速度。
MotorGroup.current()#
MotorGroup.current(units)
命令返回电机组正在使用的电流。
这是一个非等待命令,允许下一个命令无延迟运行。
参数 |
描述 |
---|---|
单位 |
**可选。**电流的唯一有效单位是“amp”。 |
返回: 电机组以指定单位吸收的电流。
电机组.功率()#
MotorGroup.power(units)
命令返回电机组消耗的功率。
这是一个非等待命令,允许下一个命令无延迟运行。
参数 |
描述 |
---|---|
单位 |
可选。 功率的唯一有效单位是“瓦特”。 |
**返回:**电机组以指定单位消耗的功率。
电机组.扭矩()#
MotorGroup.torque(units)
命令返回电机组产生的扭矩。
这是一个非等待命令,允许下一个命令无延迟运行。
参数 |
描述 |
---|---|
单位 |
**可选。**有效的 torqueUnit。默认值为 |
**返回:**电机组以指定单位产生的扭矩。
MotorGroup.效率()#
MotorGroup.efficiency(units)
命令返回电机组的效率。
这是一个非等待命令,允许下一个命令无延迟运行。
参数 |
描述 |
---|---|
单位 |
**可选。**效率的唯一有效单位是“百分比”。 |
**返回:**电机组的效率百分比。
电机组.温度()#
MotorGroup.temp(units)
命令返回电机组的温度。
这是一个非等待命令,允许下一个命令无延迟运行。
参数 |
描述 |
---|---|
单位 |
**可选。**有效的 温度单位。默认值为“摄氏度”。 |
**返回:**以指定单位表示的电机组温度。