发动机#

要使电机命令出现在 VEXcode V5 中,必须在设备窗口中配置电机。

有关详细信息,请参阅以下文章:

电机.旋转()#

motor.spin(direction, speed, units) 命令使用提供的参数旋转电机。

这是一个非等待命令,允许下一个命令无延迟运行。

参数

描述

方向

有效的 DirectionType

速度

**可选。**使用此速度旋转电机。如果未提供,则使用 set_velocity 设置的默认速度。

单位

**可选。**有效的 VelocityUnitVOLT。默认值为 RPM

**返回:**无。

# Spin motor forward for 2 seconds.
motor1.spin(FORWARD)
wait(2, SECOND)

# Stop spinning.
motor1.stop()

电机.旋转到位置()#

motor.spin_to_position(rotation, units, speed, units_v, wait) 命令用于使用提供的参数将电机旋转到绝对位置。

该函数可以是等待非等待命令,具体取决于是否使用了“wait”参数。

参数

描述

旋转

电机旋转的位置。

单位

**可选。**有效的 RotationUnits。默认值为 DEGREES

速度

**可选。**电机旋转的速度。如果未提供,则使用 set_velocity 设置的默认速度。

单位

**可选。**有效的 VelocityUnits。默认值为 RPM

等待

可选。 确定命令是否阻止后续命令(wait=True)或允许立即执行(wait=False)。如果未指定,则 wait 参数默认为 wait=True

**返回:**无。

# Spin motor to 180 degrees
motor1.spin_to_position(180)

电机.spin_for()#

motor.spin_for(direction, value, units, speed, units_v, wait) 命令使用提供的参数将电机旋转到相对位置。

这可以是等待非等待命令,取决于是否使用了“wait”参数。

参数

描述

方向

有效的 DirectionType

价值

电机旋转的值。

单位

**可选。**有效的 RotationUnits。默认值为 DEGREES

速度

**可选。**电机旋转的速度。如果未提供,则使用 set_velocity 设置的默认速度。

单位

**可选。**有效的 VelocityUnits。默认值为 RPM

等待

可选。 确定命令是否阻止后续命令(wait=True)或允许立即执行(wait=False)。如果未指定,则 wait 参数默认为 wait=True

**返回:**无。

电机停止()#

motor.stop(mode) 命令用于停止电机。

这是一个非等待命令,允许下一个命令无延迟运行。

**返回:**无。

# Spin motor forward for 2 seconds.
motor1.spin(FORWARD)
wait(2, SECOND)

# Stop spinning.
motor1.stop()

电机.设置速度()#

motor.set_velocity(value, units) 命令设置电机的默认速度。

这是一个非等待命令,允许下一个命令无延迟运行。

参数

描述

价值

新的速度。

单位

**可选。**有效的 VelocityUnits。默认值为 RPM

**返回:**无。

电机.设置反转()#

motor.set_reversed(value) 命令将电机方向设置为反转。

这是一个非等待命令,允许下一个命令无延迟运行。

参数

描述

价值

布尔值来设置方向是否反转。

**返回:**无。

电机.设置停止()#

motor.set_stopping(mode) 命令设置电机的停止模式。

这是一个非等待命令,允许下一个命令无延迟运行。

参数

描述

模式

有效的 BrakeType。默认值为 COAST

**返回:**无。

# Set the motor to stop with a brake.
motor_1.set_stopping(BRAKE)

电机.重置位置()#

motor.reset_position() 命令将电机位置重置为 0。

这是一个非等待命令,允许下一个命令无延迟运行。

**返回:**无。

电机.设置位置()#

motor.set_position(value, units) 命令设置电机的当前位置。

这是一个非等待命令,允许下一个命令无延迟运行。

参数

描述

价值

新的职位。

单位

**可选。**有效的 RotationUnit。默认值为 DEGREES

**返回:**无。

电机.设置超时()#

motor.set_timeout(value, units) 命令设置电机使用的超时值。

这是一个非等待命令,允许下一个命令无延迟运行。

参数

描述

价值

新的超时。

单位

**可选。**有效的 TimeUnit。默认值为 MSEC

**返回:**无。

# Set the motor timeout to 5 seconds.
motor_1.set_timeout(5000, MSEC)

电机.get_timeout()#

motor.get_timeout() 命令返回电机超时的当前值。

这是一个非等待命令,允许下一个命令无延迟运行。

**返回:**当前超时值。

电机正在旋转()#

如果电机当前正在旋转,则 motor.is_spinning() 命令将返回。

这是一个非等待命令,允许下一个命令无延迟运行。

返回: 如果电机当前正在旋转,则返回 True。否则,返回 False

电机.is_done()#

如果电机已完成运动,则 motor.is_done() 命令将返回。

这是一个非等待命令,允许下一个命令无延迟运行。

返回: 如果电机已完成运动,则返回 True。如果尚未完成运动,则返回 False

电机.设置最大扭矩()#

motor.set_max_torque(value, units) 命令设置电机将使用的最大扭矩。

这是一个非等待命令,允许下一个命令无延迟运行。

参数

描述

价值

新的最大使用扭矩。

单位

有效的 TorqueUnitAMPPERCENT

**返回:**无。

# set maximum torque to 2 Newton Meters
motor1.set_max_torque(2, TorqueUnits.NM)

电机.方向()#

motor.direction() 命令返回电机当前旋转的方向。

这是一个非等待命令,允许下一个命令无延迟运行。

返回: 电机当前旋转的 DirectionType

电机位置()#

motor.position(units) 命令返回电机的位置。

这是一个非等待命令,允许下一个命令无延迟运行。

参数

描述

单位

**可选。**有效的 RotationUnit。默认值为 DEGREES

返回: 以指定单位表示的电机当前位置。

电机.速度()#

motor.velocity(units) 命令返回电机的速度。

这是一个非等待命令,允许下一个命令无延迟运行。

参数

描述

单位

**可选。**有效的 VelocityUnit。默认值为 RPM

**返回:**以指定单位表示的电机当前速度。

电机电流()#

motor.current(units) 命令返回电机正在使用的电流。

这是一个非等待命令,允许下一个命令无延迟运行。

参数

描述

单位

可选。 当前唯一有效的单位是“AMP”。

返回: 以指定单位计算的电机电流。

电机功率()#

motor.power(units) 命令返回电机提供的功率。

这是一个非等待命令,允许下一个命令无延迟运行。

参数

描述

单位

可选。 功率的唯一有效单位是“瓦特”。

返回: 电机以指定单位消耗的功率。

电机扭矩()#

motor.torque(units) 命令返回电机提供的扭矩。

这是一个非等待命令,允许下一个命令无延迟运行。

参数

描述

单位

**可选。**有效的 TorqueUnit。默认值为 NM

返回: 电机以指定单位产生的扭矩。

电机效率()#

motor.efficiency(units) 命令返回电机的效率。

这是一个非等待命令,允许下一个命令无延迟运行。

参数

描述

单位

**可选。**效率的唯一有效单位是“百分比”。

**返回:**电机效率的百分比。

电机.温度()#

motor.temp(units) 命令返回电机的温度。

这是一个非等待命令,允许下一个命令无延迟运行。

参数

描述

单位

**可选。**有效的 TemperatureUnits。默认值为“摄氏度”。

**返回:**以指定单位表示的电机温度。

电机命令()#

motor.command(units) 命令返回发送给电机的最后速度。

这是一个非等待命令,允许下一个命令无延迟运行。

参数

描述

单位

**可选。**有效的 VelocityUnit。默认值为 RPM

**返回:**以指定单位表示的电机指令速度。

电机.安装()#

motor.installed() 命令检查设备连接。

这是一个非等待命令,允许下一个命令无延迟运行。

**返回:**真或假。

# Check if the motor is installed.
is_installed = motor_1.installed()

电机.时间戳()#

motor.timestamp() 命令请求最后收到的状态包的时间戳。

这是一个非等待命令,允许下一个命令无延迟运行。

**返回:**最后一个状态包的时间戳(以毫秒为单位)。

# Get the timestamp of the last received status packet from the motor.
timestamp = motor_1.timestamp()