AlphaBot: Antriebsmotoren ansteuern: Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
Keine Bearbeitungszusammenfassung |
|||
(8 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt) | |||
Zeile 2: | Zeile 2: | ||
== Inhalt des dritten Termins == | == Inhalt des dritten Termins == | ||
* Wir haben die Motoransteuerung geändert, so dass Alf ein Dreieck gefahren ist. | |||
* Wir haben uns die Inkrementalgeber angeschaut und die Werte mit dem Demo <code>E13_Photo_Interrupter_Sensor</code> angezeigt. | |||
* Anschließend haben wir die Umdrehungen gezählt (<code>E14_Wheel_Encoders</code>). | |||
* Wir haben den Radumfang berechnet: <math>U=\pi \cdot d = 3,14\cdot 6,4\,cm=20,1\,cm</math>. | |||
* Fazit: Drehen beider Räder um 360 °, dann fährt der Roboter 20,1 cm vorwärts. | |||
== Quelltext == | |||
* <code>E13_Photo_Interrupter_Sensor</code> | |||
* <code>E14_Wheel_Encoders</code> | |||
<!-- | <!-- | ||
<div style="width:1200px; height:300px; overflow:auto; border: 2px solid #088"> | <div style="width:1200px; height:300px; overflow:auto; border: 2px solid #088"> | ||
<pre> | <pre> | ||
/* Deklaration */ | /* Deklaration */ | ||
#include "AlphaBot.h" // Arduino Bibliothek einbinden | |||
const byte | |||
AlphaBot Alf = AlphaBot(); // Instanz des AphaBot wird erzeugt | |||
//const byte GESCHWINDIGKEIT_u8 = 80; // Geschw. wählbar: 0 - 255; Min: 80 | |||
void setup() { | void setup() | ||
{ | |||
// Wird einmalig beim Start ausgeführt | // Wird einmalig beim Start ausgeführt | ||
Serial.begin(9600); // Serielle Übertragung mit 9600 | Alf.SetSpeed(80); // Geschw. setzen: 0 - 255 | ||
Alf.Forward(1000); // AlphaBot fährt für 1s mit beiden Motoren vorwärts | |||
Alf.Brake(); // AlphaBot bremst | |||
Serial.begin(9600); // Serielle Übertragung mit 9600 Bit/s starten | |||
Serial.println("SETUP"); | Serial.println("SETUP"); | ||
} | } | ||
void loop() { | void loop() | ||
{ | |||
// Wird zyklisch ausgeführt | // Wird zyklisch ausgeführt | ||
delay(1000); // 1s Warten | |||
Serial.println("Loop"); // Im Loop passiert nichts. | |||
Serial.println( | |||
} | } | ||
</pre> | </pre> | ||
</div> | </div> | ||
--> | --> | ||
== Hausaufgaben bis zum 4. Termin == | |||
== Hausaufgaben bis zum | Fahre genau 30 cm geradeaus. | ||
== Musterlösung == | == Musterlösung == |
Aktuelle Version vom 31. März 2022, 13:53 Uhr
Autor: Prof. Dr.-Ing. Schneider
Inhalt des dritten Termins
- Wir haben die Motoransteuerung geändert, so dass Alf ein Dreieck gefahren ist.
- Wir haben uns die Inkrementalgeber angeschaut und die Werte mit dem Demo
E13_Photo_Interrupter_Sensor
angezeigt. - Anschließend haben wir die Umdrehungen gezählt (
E14_Wheel_Encoders
). - Wir haben den Radumfang berechnet: .
- Fazit: Drehen beider Räder um 360 °, dann fährt der Roboter 20,1 cm vorwärts.
Quelltext
E13_Photo_Interrupter_Sensor
E14_Wheel_Encoders
Hausaufgaben bis zum 4. Termin
Fahre genau 30 cm geradeaus.
Musterlösung
→ zurück zum Hauptartikel: Projekt Alf