Motorstyrenhet 55#

Introduktion#

The motor55 class is used to control a VEX Motor Controller 55 connected to the EXP Brain. The Motor Controller 55 is a legacy motor controller designed to operate 2-wire DC motors.

VEX-motorstyrenheten 55.

Klasskonstruktörer#

1 — Skapar ett motor55 objekt på den angivna Smart Port.

motor55(
  int32_t index );

2 — Skapar ett motor55 objekt på den angivna Smart Port och ändrar den positiva vridriktningen.

motor55(
  int32_t index,
  bool    reverse );

3 — Skapar ett motor55 objekt på den angivna Smart Port, ställer in maximal drivspänning och ändrar den positiva rotationsriktningen.

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

Klassförstörare#

Förstör motor55 objektet och frigör tillhörande resurser.

~motor55();

Parametrar#

Parameter

Typ

Beskrivning

index

int32_t

Den smarta port som motorstyrenheten 55 är ansluten till, skriven som PORTx, där x är portnumret (till exempel PORT1).

reverse

bool

Avgör om motorns riktning är omvänd:

  • true — Motorns positiva riktning är omvänd.
  • false — Motorns positiva riktning förblir normal.

maxv

double

Den maximala spänning som motorstyrenheten 55 kan mata motorn med.

Exempel#

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

Medlemsfunktioner#

Klassen motor55 inkluderar följande medlemsfunktioner:

  • spin — Snurrar motorn i en specificerad riktning.

  • stop — Stoppar motorn.

  • setVelocity — Anger hur snabbt likströmsmotorn ska rotera.

  • setStopping — Ställer in stoppbeteendet (utrullning eller bromsning).

  • setReversed — Ställer in om motorns riktning är omvänd.

  • current — Returnerar motorns elektriska ström.

  • voltage — Returnerar motorns elektriska spänning.

  • temperature — Returnerar motortemperaturen.

  • getMotorType — Returnerar den detekterade motor-/styrenhetstypen.

  • installed — Returnerar om motorstyrenheten 55 har upptäckts på den angivna Smart Port.

Innan några motor55 medlemsfunktioner anropas måste en instans skapas, enligt nedan:

/* 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#

Snurrar motorn i den angivna riktningen på obestämd tid.

Tillgängliga funktioner

1 — Snurrar med nuvarande konfigurerad hastighet.

void spin(
  directionType dir );

2 — Snurrar vid den angivna spänningen.

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

Parametrar

Parameter

Typ

Beskrivning

dir

directionType

Motorns rotationsriktning: forward eller reverse.

voltage

double

Spänningsvärdet som appliceras på motorn. Ett negativt värde roterar motsatt den givna dir.

units

voltageUnits

Enheten som används för att representera spänning:

  • volt — volt
  • voltageUnits::mV — millivolt

Returvärden

Den här funktionen returnerar inget värde.

Anteckningar

  • Denna funktion är icke-väntande och programmet fortsätter omedelbart efter samtalet.

  • Motorn fortsätter att snurra tills stop anropas eller en annan spin används.

stop#

Stoppar motorn från att snurra med hjälp av nuvarande konfigurerat bromsläge.

Tillgängliga funktioner

void stop();

Parametrar

Den här funktionen tar inga parametrar.

Returvärden

Den här funktionen returnerar inget värde.

Anteckningar

  • Stoppar motorn med det aktuellt konfigurerade stoppläget som ställts in med setStopping.

setVelocity#

Anger hur snabbt en likströmsmotor ska snurra. En högre procentandel gör att likströmsmotorn snurrar snabbare och en lägre procentandel gör att likströmsmotorn snurrar långsammare.

Varje projekt börjar med att varje ansluten likströmsmotor roterar med 50 % hastighet som standard.

Tillgängliga funktioner

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

Parametrar

Parameter

Typ

Beskrivning

velocity

double

Hastigheten att rotera med från 0% till 100% när percent

units

percentUnits

Hastighetsenheten: percent procent pct.

Returvärden

Den här funktionen returnerar inget värde.

Anteckningar

  • Alla efterföljande anrop till spin utan en specificerad spänning kommer att använda detta värde.

setStopping#

Anger hur en motor beter sig när den stannar.

Tillgängliga funktioner

void setStopping(
    brakeType mode );

Parametrar

Parameter

Typ

Beskrivning

mode

brakeType

Stoppläget som tillämpas när stop anropas:

  • coast — Motorn rullar ut till stopp
  • brake — Motorn stannar snabbt med bromsning

Returvärden

Den här funktionen returnerar inget värde.

Anteckningar

  • Alla efterföljande anrop till stop kommer att använda detta stoppläge.

  • Motorstyrenheten 55 stöder endast coast och brake hold stöds inte.

setReversed#

Ställer in om motorns rotationsriktning är omvänd.

Tillgängliga funktioner

void setReversed(
    bool value );

Parametrar

Parameter

Typ

Beskrivning

value

bool

Om motorns riktning är omvänd:

  • true — Vänder motorns riktning.
  • false — Återställer motorns riktning till standardinställningen.

Returvärden

Den här funktionen returnerar inget värde.

Anteckningar

  • Att anropa setReversed är samma sak som att ändra parametern reverse i konstruktorn.

current#

current returnerar hur mycket elektrisk ström likströmsmotorn använder. Ström är mängden elektricitet som flyter genom likströmsmotorn. När strömmen returneras i ampere rapporteras den från 0,0 till 1,2 A.

Ett högre strömvärde innebär att likströmsmotorn använder mer elektrisk ström. Detta kan hända när likströmsmotorn lyfter något tungt, trycker mot ett föremål eller försöker röra sig när den har fastnat.

Detta kan användas för att kontrollera om likströmsmotorn har problem under en rörelse. Om strömmen förblir hög kan motorn bli varmare eller använda strömmen mindre effektivt.

Available Functions

1 — Returnerar likströmsmotorns elektriska ström i ampere.

double current(
  currentUnits units = amp );

2 — Returnerar likströmsmotorns elektriska ström som en procentandel av maximal märkström.

double current(
  percentUnits units );

Parameters

Parameter

Typ

Beskrivning

units

currentUnits

Enheten som används för att representera ström:amp (standard) — ampere

units

percentUnits

Representerar ström som en procentandel av motorns maximala märkström:percent / pct — procent

Return Values

Returnerar double som representerar hur mycket elektrisk ström likströmsmotorn använder i de angivna enheterna.

voltage#

Återför den elektriska spänningen som tillförs motorn.

Available Functions
double voltage(
  voltageUnits units = volt );

Parametrar

Parameter

Typ

Beskrivning

units

voltageUnits

Enheten som representerar spänningen:

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

Returvärden

Returnerar double som representerar motorns elektriska spänning i de angivna enheterna.

temperature#

temperature returnerar temperaturen på likströmsmotorn.

Motortemperaturen visar hur varm likströmsmotorn är. En högre temperatur innebär att likströmsmotorn blir varmare medan den arbetar. Motorn bör hålla sig under 55 °C för att fortsätta arbeta med full prestanda.

Om likströmsmotorn blir för varm sänker den sin maximala ström för att skydda sig själv. Vid 70 °C slutar motorn att gå tills den har svalnat.

Detta kan användas för att kontrollera om likströmsmotorn blir för varm under upprepade rörelser, långa körningar eller när den trycker mot ett föremål.

Available Functions

1 — Returnerar likströmsmotortemperaturen som en procentandel av maximal driftstemperatur.

double temperature(
  percentUnits units = percent );

2 — Returnerar likströmsmotortemperaturen i enheter för fysisk temperatur.

double temperature(
  temperatureUnits units );

Parametrar

Parameter

Typ

Beskrivning

units

percentUnits

Enheten som används för att representera likströmsmotortemperaturen som en procentandel:

  • percent / pct (standard) — procent

units

temperatureUnits

Enheten som används för att representera likströmsmotorns temperatur i grader:

  • celsius — grader Celsius
  • fahrenheit — grader Fahrenheit

Returvärden

Returnerar double som representerar likströmsmotorns temperatur i de angivna enheterna.

Anteckningar

  • Motorns driftstemperaturintervall är ungefär 20°C (68°F) till 70°C (158°F).

getMotorType#

Returnerar den detekterade motor-/styrenhetstypen.

Tillgängliga funktioner

int32_t getMotorType();

Parametrar

Den här funktionen tar inga parametrar.

Returvärden

Returnerar int32_t som anger den detekterade motor-/styrenhetstypen:

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

installed#

Returnerar om motorstyrenheten 55 är ansluten till EXP Brain.

Available Functions
bool installed();

Parametrar

Den här funktionen tar inga parametrar.

Returvärden

Returnerar värdet bool som anger om motorstyrenheten 55 är ansluten.

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