Zum Hauptinhalt springen Skip to page footer

Die Header-Datei

class Motor
{
 ...
  float mmps;     // Auflösung in mm / Schritt

  float getS();   // Liefert die zurückgelegte Strecke
  float getV();   // Liefert die Geschwindigkeit
};

Motoren werden sehr oft dazu genutzt, um ein Fahrzeug anzutreiben. Wenn man weiß, wie weit das Fahrzeug pro Schritt fährt, kann man leicht die zurückgelegte Strecke und die Geschwindigkeit berechnen.
Diese Angabe wird in der Motor-Klasse in der Variablen mmps gespeichert.

Die cpp-Datei

float Motor::getS()
{
  return steps*mmps;
}

Für die zurückgelegte Strecke \(s\) gilt \(s = steps \cdot mmps\).

Anwendung der Motorklasse

 

Methode Bemerkung
 
   Motor(int en,int m1,int m2,int i1,int i2,float mmps);
 

Konstruktor der Klasse
en: Enablepin
m1: Motorpin 1
m2: Motorpin 2
i1: Inputpin1
i2: Inputpin2
mmps: Strecke, die pro Schritt zurückgelegt wird

 
   void power(int p);
 

Setzt die Motorleistung auf p \( (-255 \leq p \leq 255)\). Bei \(p<0\) läuft der Motor rückwärts.

 
   void richtung();
 

Wird von einer Interruptmethode angesprungen und berechnet die Drehschritte und die Drehfrequenz.

 
   long getSteps();
 

Liefert die bisher gemachten Eintelschritte

 
   float getF();
 

Liefert die Frequenz Einzelschritte/Sekunde

 
   float getS();
 

Liefert die zurückgelegte Strecke

 
   float getV();
 

Liefert die aktuelle Geschwindigkeit

Das Beispiel kann hier heruntergeladen werden.