Unterrichts- und Lernmaterial für Mikrocontroller
Unterrichts- und Lernmaterial fürMikrocontroller

1 - Pulsweite beim Servo messen

Zur Ansteuerung von Standardservos sind bestimmte Impulsfolgen notwendig, die für die drei Mikrocontroller Arduino UNO, BASIC Stamp 2 und den Propeller Controller noch einmal nachgelesen werden können:

  • Arduino UNO
    - 7 - Was ist eigentlich ein Tastverhältnis?
    - 8 - Dunkle Zeiten für LEDs
    - 9 - Eine LED dimmen

     
  • BASIC Stamp 2
    - 1 - Der Servomotor
    - 3 - Testprogramme zur Servoüberprüfung
    - 4 - Die Mittelstellung eines Servos überprüfen
    - 6 -
    Die Haltezeit eines Servos beeinflussen
     
  • Robotik mit BoE Shield für Arduino
    - 1 - LEDs ein- und ausschalten
    - 2 - Zeitdiagramm
    - 4 -
    Servos kalibrieren
    - 5 - Pulsweite steuert Geschwindigkeit und Richtung

     
  • Robotik mit BASIC Stamp2
    - 1 - Freilaufservo zentrieren
    - 2 - Mit Pulsweite Geschwindigkeit und Richtung steuern
    - 5 - Geschwindigkeit-Pulsweiten-Diagramm eines Servos

     

Das Timing einer Impulsfolge entscheidet darüber, in welche Richtung und wie weit sich ein Servo dreht. Das schauen wir uns jetzt noch einmal genauer an und nehmen die Impuls-Zeit-Diagramme mit einem Oszilloskop auf.

Material

1x  Activity Board oder BoE oder Arduino Board

1x  Standardservo

2x  Steckdraht

1x  Oszilloskop mit Tastkopf

Schaltskizze und Schaltungsaufbau

Anschlussbelegung eines Servos auf dem Activity Board

Der Schaltungsaufbau bei einem BoE mit BASIC Stamp 2 oder BoE Shield-Bot Arduino ist nahezu identisch.

Mit den beiden folgenden Programmen wird je ein Servo über ein BoE mit einer BASIC Stamp 2 und einem Activity Board mit einem Propeller Controller so angesteuert, dass sie sich in Mittelstellung bewegen. Die zugehörige Impulsfolge wird über das Oszilloskop aufgezeichnet. Als drittes Board habe ich noch den Arduino UNO auf dem BoE Shield hinzugenommen.

Programm für die BASIC Stamp 2
Programm für den Propeller Controller

Die Impulsfolgen der drei betrachteten Mikrocontroller weichen voneinander ab. Das Zusammenspiel von  hinterlegtem Programmcode und benutzter Hardware ist unterschiedlich genau umgesetzt worden, ist aber bei den Toleranzen der Standardservos überhaupt kein Problem.

Während bei dem Propeller Controller mit dem Befehl servo_angle der 1,5ms Zentrierimpuls im Gesamtzeitbereich von 20ms liegt und tatsächlich ca. 2ms lang ist, wird bei der BASIC Stamp zu einer Pause von 20ms (Programmzeile 6) der Impuls von 2,4ms hinzugefügt. Der Arduino UNO liefert tatsächlich einen 1,5ms Zentrierimpuls im Gesamtzeitraum von 20ms.

Abbildung 1 - Bei einer BASIC Stamp beträgt die gesamte Impulslänge 22,4ms; der Zentrierimpuls hat eine Pulsweite von ca. 2,4ms.
Abbildung 2 - Bei einem Propeller Controller beträgt die Impulslänge 20ms; der Zentrierimpuls hat eine Pulsweite von ca. 2ms
Abbildung 3 - Bei einem BoE Shield Arduino beträgt die Impulslänge 20ms; der Zentrierimpuls hat eine Pulsweite von ca. 1,5 ms.

2 - Zeitvariierende Pulsfolge messen

Material wie in 1
Aufgaben
  • Übertrage das Programm zeitvariierendPulsfolge.bs2 in den Basic Stamp Editor und speichere es ab.
  • Starte das Programm.
  • Markiere im Programm PicoScope die Pulsweite mit den Zeitlinealen und lies den Differenzwert in der Lineallegende ab.
  • Wiederhole diesen Vorgang für die verschiedenen Pulsweiten.

Das Programm zeitvariierendPulsfolge.bs2

Abbildung 4 - Messung der Impulsbreite mit Hilfe der Zeitlineale; die größte Impulsbreite von 2,24ms ist markiert

3 - Pulsweitenbetrachtung bei einer LED

Im Kapitel 7 - Was ist eigentlich ein Tastverhältnis? haben wir uns mit dem Dimmen einer LED und Begriffen wie Tastverhältnis und Pulsweitenmodulation beschäftigt.

Etwas salopp kann man sagen, dass eine LED umso heller leuchtet, je mehr Strom sie bei nahezu konstanter Spannung zieht. Das Produkt aus konstanter Spannung und konstantem Strom entspricht der elektrischen Leistung.

Wird die LED über Impulsfolgen angesteuert, bleibt die Spannung konstant und die Höhe des Stromes durch sie hängt vom Vorwiderstand ab, ist aber ebenfalls konstant. Ändern sich die Größen U und I mit der Zeit, dann berechnet sich die elektrische Leistung über einen Integralansatz

Bei der Ansteuerung einer LED über einen Port des Mikrocontrollers ist die Spannung u(t)  über einen Zeitraum t konstant; dies gilt dann auch für den Stromfluss i(t) durch die LED.

 

 

 

 

 

 

 

Abbildung 4

U-t-Diagramm einer LED Schaltung. An der LED liegt eine konstant Spannung von U = 3,3V an. Es fließt ein konstanter Strom I. Die elektrische Leistungsaufnahme errechnet sich aus dem Produkt beider Größen.

Die schraffierte rechteckige Fläche unter dem Oszillogramm ist damit ein Maß für die elektrische Leistungsaufnahme der LED. Sie soll hier auch ein Maß für die Leuchtkraft der LED sein.

Wird die anliegende Spannung in Intervallen ein- und ausgeschaltet, dann reduziert sich die elektrische Leistungsaufnahme der LED auf die schraffierten Flächenstücke in Abbildung 3. Die Leuchtkraft nimmt ab. Ab wann wir dies bemerken ist in der Übung Dunkle Zeiten für LEDs getestet worden.

Abbildung 5 - U-t-Diagramm einer LED Schaltung, die mit einer Impulsfolge angesteuert wird.

Reduziert man die angelegte Spannung weiter, zum Beispiel auf den Wert 50%, nimmt die Leuchtkraft und die Leistungsaufnahme der LED weiter ab. Das könnte ein Ansatz sein, um Energie einzusparen, wenn man weiß, bis zu welchem Grad unser Auge eine Lichtstärkenminderung nicht oder kaum wahrnimmt.

Abbildung 6 - U-t-Diagramm einer LED Schaltung, die mit einer Impulsfolge angesteuert wird.
Druckversion | Sitemap
© Reinhard Rahner - Gettorf