发动机#

初始化电机类#

使用以下构造函数之一创建 IQ Motor 对象:

This motor constructor creates a motor object with gears defaulting to 1.0.

范围

描述

index

电机连接到 IQ (1st gen) Brain 上的 端口

reverse

A boolean value to reverse the direction the Motor spins forward in. The default is false.

// Construct a Motor connected to Port 1 which runs 
// in reverse.
motor Motor1 = motor(PORT1, true);

This motor constructor creates a motor object with reverse defaulting to false.

范围

描述

index

电机连接到 IQ (1st gen) Brain 上的 端口

gears

The gearSetting or gear ratio of the motor.

// Construct a Motor connected to Port 1 with a 1.0
// gear setting.
motor Motor1 = motor(PORT1, 1);

This motor constructor creates a motor object with no default parameter values.

范围

描述

index

电机连接到 IQ (1st gen) Brain 上的 端口

gears

The gearSetting or gear ratio of the motor.

reverse

用于反转电机向前旋转的方向的布尔值。

// Construct an IQ Motor with a 1.0 gear setting
// that runs in reverse.
motor Motor1 = motor(PORT1, 1, true);

This Motor1 object will be used in all subsequent examples throughout this API documentation when referring to motor class methods.

类方法#

spin()#

这是一个非等待功能,允许下一个方法无延迟运行。

该方法通过以下方式调用:

The spin(dir) method is used to spin a Motor in the specified direction forever at the default velocity set by the setVelocity() method, until a spin or stop method is used, or the project is stopped.

参数

描述

dir

A valid directionType.

**返回:**无。

// Spin Motor1 forward.
Motor1.spin(forward);

The spin(dir, velocity, units) method is used to spin a Motor in the specified direction forever at a specified velocity until a spin or stop method is used, or the project is stopped.

参数

描述

dir

A valid directionType.

velocity

电机旋转的速度。

units

A valid velocityUnit or percent.

**返回:**无。

// Spin Motor1 forward at 100 rpm.
Motor1.spin(forward, 100, rpm);

The spin(dir, voltage, units) method is used to spin a Motor in the specified direction forever at a specified voltage until a spin or stop method is used, or the project is stopped.

参数

描述

dir

A valid directionType.

voltage

电机旋转时的电压。

units

A valid voltageUnit.

**返回:**无。

// Spin Motor1 forward at 100 millivolts.
Motor1.spin(forward, 100,::mV);

spinToPosition()#

This function can be a waiting or non-waiting method depending on if the wait parameter is used.

该方法通过以下方式调用:

The spinToPosition(rotation, units, waitForCompletion) method is used to spin a Motor to an absolute rotation in the specified units.

参数

描述

rotation

电机旋转的位置。

units

A valid rotationUnit.

waitForCompletion

Determines whether the method will block subsequent methods (wait=true) or allow immediate execution (wait=false). If unspecified, the default for the wait parameter is wait=true.

**返回:**一个布尔值,表示电机何时达到目标旋转。

// Spin Motor1 to the absolute position 1080 degrees.
Motor1.spinToPosition(1080, degrees);

The spinToPosition(rotation, units, velocity, units_v, waitForCompletion) method is used to spin a Motor to an absolute rotation in the specified units.

参数

描述

rotation

电机旋转的位置。

units

A valid rotationUnit.

velocity

电机旋转的速度。

units_v

A valid velocityUnit.

waitForCompletion

Determines whether the method will block subsequent methods (wait=true) or allow immediate execution (wait=false). If unspecified, the default for the wait parameter is wait=true.

**返回:**一个布尔值,表示电机何时达到目标旋转。

// Spin Motor1 to the absolute position 1080 degrees 
// at 100 percent velocity.
Motor1.spinToPosition(1080, degrees, 100,::pct);

spinFor()#

This can be a waiting or non-waiting method depending on if the wait parameter is used.

该方法通过以下方式调用:

The spinFor(time, units) method is used to spin the Motor for a specified duration.

参数

描述

time

电机旋转的时间。

units

A valid timeUnit.

**返回:**一个布尔值,表示电机何时达到目标旋转。

// Spin Motor1 for 10 seconds
Motor1.spinFor(10, seconds);

The spinFor(dir, time, units) method is used to spin the Motor for a specified duration in a specified direction.

参数

描述

dir

A valid directionType.

time

电机旋转的时间。

units

A valid timeUnit.

// Spin Motor1 forward for 10 seconds
Motor1.spinFor(forward, 10, seconds);

The spinFor(time, units, velocity, units_v) method is used to spin the Motor for a specified duration at a specified velocity.

参数

描述

time

电机旋转的时间。

units

A valid timeUnit.

velocity

电机旋转的速度。

units_v

A valid velocityUnit.

// Spin Motor1 for 10 seconds at 100 rpm.
Motor1.spinFor(10, seconds, 100, rpm);

The spinFor(dir, time, units, velocity, units_v) method is used to spin the Motor for a specified duration at a specified velocity in a specified direction.

参数

描述

dir

A valid directionType.

time/

电机旋转的时间。

units

A valid timeUnit.

velocity

电机旋转的速度。

units_v

A valid velocityUnit.

**返回:**一个布尔值,表示电机何时达到目标旋转。

// Spin Motor1 forward for 10 seconds at 100 rpm.
Motor1.spinFor(forward, 10, seconds, 100, rpm);

The spinFor(rotation, units, waitForCompletion) method is used to spin the Motor for a specific rotation. The rotation is relative to the current rotation of the Motor.

参数

描述

rotation

电机旋转的旋转值。

units

A valid rotationUnit.

waitForCompletion

Determines whether the method will block subsequent methods (wait=true) or allow immediate execution (wait=false). If unspecified, the default for the wait parameter is wait=true.

**返回:**一个布尔值,表示电机何时达到目标旋转。

// Spin Motor1 for 1000 degrees.
Motor1.spinFor(1000, degrees);

The spinFor(dir, rotation, units, waitForCompletion) method is used to spin the Motor for a specific rotation in a specific direction. The rotation is relative to the current rotation of the Motor.

参数

描述

dir

A valid directionType.

rotation

电机旋转的旋转值。

units

A valid rotationUnit.

waitForCompletion

Determines whether the method will block subsequent methods (wait=true) or allow immediate execution (wait=false). If unspecified, the default for the wait parameter is wait=true.

**返回:**一个布尔值,表示电机何时达到目标旋转。

// Spin Motor1 forward for 1000 degrees.
Motor1.spinFor(forward, 1000, degrees);

The spinFor(rotation, units, velocity, units_v, waitForCompletion) method is used to spin the Motor for a specific rotation. The rotation is relative to the current rotation of the Motor.

参数

描述

rotation

电机旋转的旋转值。

units

A valid rotationUnit.

velocity

电机旋转的速度。

units_v

A valid velocityUnit.

waitForCompletion

Determines whether the method will block subsequent methods (wait=true) or allow immediate execution (wait=false). If unspecified, the default for the wait parameter is wait=true.

**返回:**一个布尔值,表示电机何时达到目标旋转。

// Spin Motor1 for 1000 degrees at 25 rpm.
Motor1.spinFor(1000, degrees, 25, rpm);

The spinFor(dir, rotation, units, velocity, units_v, waitForCompletion) method is used to spin the Motor for a specific rotation in a specific direction. The rotation is relative to the current rotation of the Motor.

参数

描述

dir

A valid directionType.

rotation

电机旋转的旋转值。

units

A valid rotationUnit.

velocity

电机旋转的速度。

units_v

A valid velocityUnit.

waitForCompletion

Determines whether the method will block subsequent methods (wait=true) or allow immediate execution (wait=false). If unspecified, the default for the wait parameter is wait=true.

**返回:**一个布尔值,表示电机何时达到目标旋转。

// Spin Motor1 forard for 1000 degrees at 25 rpm.
Motor1.spinFor(forward, 1000, degrees, 25, rpm);

stop()#

这是一种非等待方法,允许下一个方法无延迟运行。

该方法通过以下方式调用:

The stop() method is used to stop a Motor, setting the Motor to 0 velocity and configuring the current stopping mode. The default Brake Type is coast, unless previously changed using the setStopping() method.

**返回:**无。

// Spin Motor1 for 2.5 seconds.
Motor1.spin(forward);

wait(2.5 seconds);

// Stop Motor1.
Motor1.stop();

The stop(mode) method is used to stop a Motor using a specific Brake Type.

参数

描述

mode

A valid brakeType.

**返回:**无。

// Spin Motor1 for 2.5 seconds.
Motor1.spin(forward);

wait(2.5 seconds);

// Stop Motor1 using the hold Brake Type.
Motor1.stop(hold);

setVelocity()#

The setVelocity(velocity, units) method is used to set the default velocity for a Motor. This velocity setting will be used for subsequent calls to any motion functions if a specific velocity is not provided.

参数

描述

velocity

为电机设置的新速度。

units

A valid velocityUnit or percent.

**返回:**无。

setReversed()#

The setReversed(value) method sets the Motor direction to be reversed. Constructing a Motor with the reverse parameter set to true has the same result as Motor1.setReversed(true)

参数

描述

value

用于设置电机方向是否反转的布尔值。

**返回:**无。

setStopping()#

The setStopping(mode) method is used to set the stopping mode for a Motor. This will be the stopping mode used when the stop() method is called.

参数

描述

mode

A valid brakeType.

**返回:**无。

resetPosition()#

The resetPosition() method resets the Motor’s encoder value to 0.

**返回:**无。

setPosition()#

The setPosition(value, units) method is used to set the value of a Motor’s encoder to a specific value. The position that is returned by the position() method will be updated to this new value.

参数

描述

value

为电机编码器设置的新位置。

units

A valid rotationUnit.

**返回:**无。

setTimeout()#

The Motor.setTimeout(value, units) method is used to set the timeout for motor methods. If a Motor does not reach its’ methoded position prior to the completion of the timeout, the Motor will stop.

参数

描述

value

为电机设置的新超时。

units

A valid timeUnit.

**返回:**无。

isSpinning()#

The isSpinning() method returns if the Motor is currently rotating to a specific target.

Returns: true if the Motor is on and is rotating to a target. false if it is done rotating to a target.

isDone()#

The isDone() method returns if the Motor is done rotating to a specific target.

Returns: true if the Motor is done rotating to a target. false if it is on and rotating to a target.

setMaxTorque()#

该方法通过以下方式调用:

The setMaxTorque(value, units) method is used to set the maximum torque for a Motor.

参数

描述

value

电机的新最大扭矩。

units

A valid torqueUnit.

**返回:**无。

// Set maximum torque to 2 Newton Meters.
Motor1.set_max_torque(2, Nm);

The setMaxTorque(value, units) method is used to set the maximum torque for a Motor.

参数

描述

value

电机的新最大扭矩。

units

The only valid unit is amp.

**返回:**无。

// Set maximum torque to ,05 amps.
Motor1.set_max_torque(.05, amp);

The setMaxTorque(value, units) method is used to set the maximum torque for a Motor as a percentage.

参数

描述

value

电机的新最大扭矩。

units

The only valid unit is percent.

**返回:**无。

// Set maximum torque to 75 percent.
Motor1.set_max_torque(75, percent);

direction()#

The direction() method returns the current direction the Motor is spinning in as a directionType.

Returns: A directionType value representing current direction that the Motor is spinning in.

position()#

The position(units) method returns the current rotation of the Motor.

参数

描述

units

A valid rotationUnit.

**返回:**以指定单位表示电机当前旋转的双精度值。

velocity()#

The velocity(units) method returns the current velocity of the Motor.

参数

描述

units

A valid velocityUnit or percent.

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

current()#

The current(units) method returns the current being used by the Motor.

参数

描述

units

The only valid units for current are amp or percent.

返回: 以指定单位表示电机所吸收的电流的双精度值。

voltage()#

The voltage(units) method returns the voltage being used by the Motor.

参数

描述

units

The only valid unit for voltage is volt.

**返回:**表示电机电压的双精度数。

power()#

The power(units) method returns the power being consumed by the Motor.

参数

描述

units

The only valid unit for power is watt.

**返回:**以指定单位表示电机当前功率的双精度值。

torque()#

The torque(units) method returns the torque of the Motor.

参数

描述

units

A valid torqueUnit.

**返回:**指定单位的电机扭矩。

efficiency()#

The efficiency(units) method returns the efficiency of the Motor.

参数

描述

units

The only valid unit for efficiency is percent.

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

temperature()#

The temperature(units) method returns the efficiency of the Motor.

参数

描述

units

A valid temperatureUnit or percent.

**返回:**电机的温度。

installed()#

The installed() method returns if the Motor is connected to the IQ (1st gen) Brain.

Returns: true if the Motor is connected to the IQ (1st gen) Brain. false if it is not.