Motorcontroller 55#

Invoering#

De klasse motor55 wordt gebruikt om een ​​VEX Motor Controller 55 aan te sturen die is verbonden met de EXP Brain. De Motor Controller 55 is een oudere motorcontroller die is ontworpen voor het aansturen van 2-draads DC-motoren.

De VEX-motorcontroller 55.

Klasseconstructors#

1 — Maakt een motor55 object aan op de opgegeven Smart Port.

motor55(
  int32_t index );

2 — Maakt een motor55 object aan op de opgegeven Smart Port en verandert de positieve draairichting.

motor55(
  int32_t index,
  bool    reverse );

3 — Maakt een motor55 object aan op de opgegeven Smart Port, stelt de maximale aandrijfspanning in en wijzigt de positieve draairichting.

motor55(
  int32_t index,
  double  maxv,
  bool    reverse );

Klasse-destructor#

Vernietigt het motor55 object en geeft de bijbehorende resources vrij.

~motor55();

Parameters#

Parameter

Type

Beschrijving

index

int32_t

De Smart Port waarop de Motor Controller 55 is aangesloten, wordt weergegeven als PORTx, waarbij x het poortnummer is (bijvoorbeeld PORT1).

reverse

bool

Bepaalt of de draairichting van de motor is omgekeerd:

  • true — De positieve draairichting van de motor is omgekeerd.
  • false — De positieve draairichting van de motor blijft normaal.

maxv

double

De maximale spanning die de motorcontroller 55 op de motor kan toepassen.

Voorbeeld#

// Create the motor55 instance in Smart Port 1
motor55 Motor1 = motor55(PORT1);

Lidfuncties#

De klasse motor55 omvat de volgende lidfuncties:

  • spin — Laat de motor in een bepaalde richting draaien.

  • stop — Stopt de motor.

  • setVelocity — Vertelt de DC-motor hoe snel hij moet draaien.

  • setStopping — Stelt het stopgedrag in (uitrollen of remmen).

  • setReversed — Stelt in of de draairichting van de motor wordt omgekeerd.

  • current — Geeft de elektrische stroom van de motor terug.

  • voltage — Geeft de elektrische spanning van de motor terug.

  • temperature — Geeft de motortemperatuur terug.

  • getMotorType — Retourneert het gedetecteerde motor-/controllertype.

  • installed — Geeft aan of de motorcontroller 55 is gedetecteerd op de opgegeven Smart Port.

Voordat u een van de lidfuncties van motor55 kunt aanroepen, moet er een instantie worden aangemaakt, zoals hieronder wordt weergegeven:

/* This constructor is required when using VS Code.
Motor Controller 55 configuration is generated automatically
in VEXcode using the Device Menu. Replace the values
as needed. */

// Create the motor55 instance in Smart Port 1
motor55 MC55_1 = motor55(PORT1);

spin#

Laat de motor oneindig lang in de aangegeven richting draaien.

Beschikbare functies

1 — Draait met behulp van de momenteel geconfigureerde snelheid.

void spin(
  directionType dir );

2 — Draait op de opgegeven spanning.

void spin(
  directionType dir,
  double        voltage,
  voltageUnits  units );

Parameters

Parameter

Type

Beschrijving

dir

directionType

De draairichting van de motor: forward of reverse.

voltage

double

De spanning die op de motor wordt aangelegd. Een negatieve waarde zorgt ervoor dat de motor in tegengestelde richting draait dir.

units

voltageUnits

De eenheid die wordt gebruikt om spanning weer te geven:

  • volt — volt
  • voltageUnits::mV — millivolt

retourwaarden

Deze functie retourneert geen waarde.

Notities

  • Deze functie heeft geen wachttijd en het programma wordt direct na de aanroep voortgezet.

  • De motor blijft draaien totdat stop wordt aangeroepen of een andere spin wordt gebruikt.

stop#

Stopt het draaien van de motor met behulp van de momenteel geconfigureerde remmodus.

Beschikbare functies

void stop();

Parameters

Deze functie accepteert geen parameters.

retourwaarden

Deze functie retourneert geen waarde.

Notities

  • Stopt de motor met behulp van de momenteel geconfigureerde stopmodus ingesteld door setStopping.

setVelocity#

Geeft een gelijkstroommotor de gewenste draaisnelheid. Een hoger percentage zorgt ervoor dat de motor sneller draait, een lager percentage zorgt ervoor dat de motor langzamer draait.

Elk project begint met elke aangesloten DC-motor die standaard op 50% snelheid draait.

Beschikbare functies

void setVelocity(
    double       velocity,
    percentUnits units = percent );

Parameters

Parameter

Type

Beschrijving

velocity

double

De snelheid waarmee je kunt draaien van 0% tot 100% bij gebruik percent.

units

percentUnits

De snelheidseenheid: percent procent pct.

retourwaarden

Deze functie retourneert geen waarde.

Notities

  • Elke volgende aanroep van spin zonder een gespecificeerde spanning zal deze waarde gebruiken.

setStopping#

Hiermee wordt bepaald hoe een motor zich gedraagt ​​wanneer deze stopt.

Beschikbare functies

void setStopping(
    brakeType mode );

Parameters

Parameter

Type

Beschrijving

mode

brakeType

De stopmodus die wordt toegepast wanneer stop wordt aangeroepen:

  • coast — Motor rolt uit tot stilstand
  • brake — Motor stopt snel door te remmen

retourwaarden

Deze functie retourneert geen waarde.

Notities

  • Elke volgende aanroep van stop zal deze stopmodus gebruiken.

  • De motorcontroller 55 ondersteunt alleen de volgende commando’s: coast , brake hold wordt niet ondersteund.

setReversed#

Hiermee wordt bepaald of de draairichting van de motor wordt omgekeerd.

Beschikbare functies

void setReversed(
    bool value );

Parameters

Parameter

Type

Beschrijving

value

bool

Of de draairichting van de motor wordt omgekeerd:

  • true — Keert de draairichting van de motor om.
  • false — Zet de draairichting van de motor terug naar de standaardinstelling.

retourwaarden

Deze functie retourneert geen waarde.

Notities

  • Het aanroepen van setReversed is hetzelfde als het wijzigen van de reverse parameter in de constructor.

current#

current geeft aan hoeveel elektrische stroom de gelijkstroommotor verbruikt. Stroomsterkte is de hoeveelheid elektriciteit die door de gelijkstroommotor vloeit. Wanneer de waarde in ampère wordt weergegeven, ligt de stroomsterkte tussen 0,0 en 1,2 A.

Een hogere stroomwaarde betekent dat de gelijkstroommotor meer elektrische stroom verbruikt. Dit kan gebeuren wanneer de gelijkstroommotor iets zwaars optilt, tegen een object duwt of probeert te bewegen terwijl hij vastzit.

Hiermee kunt u controleren of de gelijkstroommotor moeite heeft tijdens een beweging. Als de stroomsterkte hoog blijft, kan de motor warmer worden of minder efficiënt met energie omgaan.

Available Functions

1 — Geeft de elektrische stroom van de DC-motor in ampère weer.

double current(
  currentUnits units = amp );

2 — Geeft de elektrische stroom van de DC-motor weer als een percentage van de maximaal nominale stroom.

double current(
  percentUnits units );

Parameters

Parameter

Type

Beschrijving

units

currentUnits

De eenheid die wordt gebruikt om stroomsterkte weer te geven:amp (standaard) — ampère

units

percentUnits

Represents current as a percentage of the motor’s maximum rated current:percent / pct — percent

Return Values

Geeft een waarde van double terug die aangeeft hoeveel elektrische stroom de gelijkstroommotor verbruikt in de opgegeven eenheden.

voltage#

Geeft de elektrische spanning die aan de motor werd geleverd terug.

Available Functions
double voltage(
  voltageUnits units = volt );

Parameters

Parameter

Type

Beschrijving

units

voltageUnits

De eenheid die de spanning weergeeft:

  • volt (standaard)
  • voltageUnits::mV — millivolt

retourwaarden

Retourneert een double die de elektrische spanning van de motor in de opgegeven eenheden weergeeft.

temperature#

temperature geeft de temperatuur van de DC-motor terug.

De motortemperatuur geeft aan hoe warm de gelijkstroommotor is. Een hogere temperatuur betekent dat de gelijkstroommotor warmer wordt tijdens het gebruik. De motortemperatuur moet onder de 55 °C blijven om optimaal te blijven presteren.

Als de gelijkstroommotor te heet wordt, verlaagt hij zijn maximale stroomsterkte ter bescherming. Bij 70 °C stopt de motor met draaien totdat hij is afgekoeld.

Hiermee kan worden gecontroleerd of de gelijkstroommotor te heet wordt tijdens herhaalde bewegingen, langdurig gebruik of wanneer deze tegen een object duwt.

Available Functions

1 — Geeft de temperatuur van de DC-motor weer als een percentage van de maximale bedrijfstemperatuur.

double temperature(
  percentUnits units = percent );

2 — Geeft de temperatuur van de DC-motor weer in fysieke temperatuureenheden.

double temperature(
  temperatureUnits units );

Parameters

Parameter

Type

Beschrijving

units

percentUnits

De eenheid die wordt gebruikt om de temperatuur van een DC-motor als percentage weer te geven:

  • percent / pct (standaard) — procent

units

temperatureUnits

De eenheid die wordt gebruikt om de temperatuur van een DC-motor in graden weer te geven:

  • celsius — graden Celsius
  • fahrenheit — graden Fahrenheit

retourwaarden

Retourneert een double die de temperatuur van de DC-motor in de opgegeven eenheden weergeeft.

Notities

  • Het bedrijfstemperatuurbereik voor de motor is ongeveer 20°C (68°F) tot 70°C (158°F).

getMotorType#

Geeft het gedetecteerde motor-/controllertype terug.

Beschikbare functies

int32_t getMotorType();

Parameters

Deze functie accepteert geen parameters.

retourwaarden

Retourneert een int32_t die het gedetecteerde motor-/controllertype aangeeft:

  • 0 — 11W Motor
  • 1 — 5.5W Motor
  • 2 — Motor Controller 55

installed#

Geeft aan of de motorcontroller 55 is aangesloten op de EXP Brain.

Available Functions
bool installed();

Parameters

Deze functie accepteert geen parameters.

retourwaarden

Geeft een booleanwaarde van bool terug die aangeeft of de motorcontroller 55 is aangesloten.

  • true — The Motor Controller 55 is connected.
  • false — The Motor Controller 55 is not connected.