Abo
  • Services:
Anzeige
Laika - Frontansicht
Laika - Frontansicht (Bild: Golem.de)

Einen Servo steuern

Anzeige

Ein Servo ist ein Stellmotor, dem ein einzustellender Winkel (Servo-Ausschlag) vorgegeben wird, den dieser dann auch unter Belastung hält. Die Ansteuerung erfolgt traditionell über eine Signalleitung, die regelmäßig - in einem wiederkehrenden, 20 Millisekunden langen Zeitfenster - einen elektrischen Impuls übermittelt. Die Länge des Impulses bestimmt den Winkel. Je nach Servo und dessen maximal einstellbarem Winkel, zum Beispiel -90 Grad bis +90 Grad, liegt die Signallänge irgendwo zwischen 0,7 Millisekunde (-90 Grad) bis zu circa 2,5 Millisekunde (+90 Grad).

In der Theorie würden wir also in einer Schleife alle 20 Millisekunden einen Pin für 1 bis 2 Millisekunden "an"-schalten, um den Servo zu steuern. Auf einem Multitasking-Betriebssystem wie Linux sind solche kleinen Zeiteinheiten aber nur unzuverlässig einzuhalten.

Pulsweitenmodulation

Also müssen wir uns anderweitig behelfen. Als Arduino-kompatible Plattform unterstützt der Galileo auch die Generierung von PWM-Signalen an bestimmten Pins. PWM steht für Pulsweitenmodulation und wird benutzt, um analoge Werte über die an sich nur digital (Strom an/aus) arbeitenden Pins zu übertragen.

Bei PWM werden die digitalen Pins innerhalb eines festen Zeitrahmens (die Periode) in sehr kurzen Abständen an- und ausgeschaltet. Als Zeichnung sieht das Ganze aus wie eine Wellenfolge von Bergen und Tälern. Für einen angeschlossenen Baustein entsteht dadurch der Eindruck, nur einen Bruchteil des Stromes zu erhalten.

Ein Beispiel: Ein Baustein erwartet an seinem Eingangspin einen Wert, der zwischen 0 und 255 liegen kann, wobei der Wert zum übertragenen Strom korreliert: 0 bedeutet kein Strom, 255 bedeutet maximalen Strom über eine Dauer X. Wir wollen den Wert 127 übertragen, müssen also den "halben" Strom übertragen. Mit PWM können wir genau dies erreichen. In der Zeit X wird unser Ausgangspin abwechselnd an- und abgeschaltet. Zum Beispiel: In einem Zehntel der Zeit wird der Strom angeschaltet und im zweiten Zehntel wieder abgeschaltet, im dritten wieder an, dann wieder aus usw. Gerechnet auf die Zeit X kommt dabei nur die Hälfte des Stroms an - die Hälfte im Vergleich zu einem ständig geschalteten Strom.

Hardware statt Software

Auf dem Galileo ist der Chip Cypress CY8C9540A I/O Expander für die Umsetzung der PWM-Funktion mitverantwortlich. Wir können ihn steuern und dabei einfach einen Wert übergeben, der zwischen 0 und 255 liegen darf und als PWM-Signal ausgegeben werden soll.

Wie uns das hilft? Die Servo-Elektronik hat eine für uns erfreuliche Eigenschaft: Innerhalb des oben genannten 20-Millisekunden-Zeitfensters interessiert sie sich nur für den ersten Impuls, der sie erreicht, weitere Impulse ignoriert sie. Moderne Servos ignorieren dieses Schema völlig und akzeptieren einfach jeden Impuls, der eine sinnvolle Länge hat und dem eine signifikante Pause folgt. Um sicherzugehen, orientieren wir uns jedoch am 20-Millisekunden-Schema.

Wir müssen den Chip also überreden, als Zeitspanne X 20 Millisekunden anzusetzen und ungefähr ausrechnen, wie die Werte 0 bis 255 in "Berge und Täler" umgesetzt werden. Die "Berge" und die zugehörigen Werte, die einer Zeitspanne von 1 bis 2 Millisekunden entsprechen, benutzen wir dann zur Servo-Ansteuerung.

 Ein ZwischenüberblickI2C - die letzte Abkürzung, versprochen! 

eye home zur Startseite
hungkubwa 31. Jan 2014

Wozu der Umweg über Flattr wenn man auch direkt Paypal nutzen kann? Versteh ich nicht.

savejeff 30. Jan 2014

Danke :] Ich benutze die app täglich auf mehreren PCs und habe mich so drann gewöhnt. Sie...

Anonymer Nutzer 30. Jan 2014

Besten Dank für die Info. Gruss, gehirnpest

Casandro 30. Jan 2014

...ein 5 Jahresprojekt, dass dann nach 7 Jahren wegen nicht eingetretenem Erfolg eingestellt.

Anonymer Nutzer 30. Jan 2014

[..] und wir wollen dabei lernen. Genau sowas hat mir bei Golem bisher immer gefehlt...



Anzeige

Stellenmarkt
  1. BSH Hausgeräte GmbH, Traunreut
  2. SSI Schäfer IT Solutions GmbH, Giebelstadt, Dortmund, Bremen, Obertshausen
  3. OEDIV KG, Bielefeld
  4. Robert Bosch GmbH, Abstatt


Anzeige
Spiele-Angebote
  1. 4,99€
  2. 1,49€
  3. (-20%) 31,99€

Folgen Sie uns
       


  1. GPS Share

    Gnome-Anwendung teilt GPS-Daten im LAN

  2. Net-Based LAN Services

    T-Systems bietet WLAN as a Service ab Juni

  3. Angacom

    Unitymedia verlangt nach einem deutschen Hulu

  4. XYZprinting Nobel 1.0a im Test

    Wie aus einem Guss

  5. Square Enix

    Rollenspiel Lost Sphear mit Weltenerbauung angekündigt

  6. Gratis-WLAN

    EU gibt 120 Millionen Euro für 8.000 Hotspots aus

  7. Continental

    All Charge macht Elektroautos kompatibel für alle Ladesäulen

  8. Rime

    Entwickler kündigen Entfernung von Denuvo nach Crack an

  9. Inspiron Gaming Desktop

    Dell steckt AMDs Ryzen in Komplett-PC

  10. Bluetooth-Wandschalter

    Enocean steuert das Licht mit Energy Harvesting



Haben wir etwas übersehen?

E-Mail an news@golem.de


Anzeige
Debatte nach Wanna Cry: Sicherheitslücken veröffentlichen oder zurückhacken?
Debatte nach Wanna Cry
Sicherheitslücken veröffentlichen oder zurückhacken?
  1. Android-Apps Rechtemissbrauch ermöglicht unsichtbare Tastaturmitschnitte
  2. Sicherheitslücke Fehlerhaft konfiguriertes Git-Verzeichnis bei Redcoon
  3. Hotelketten Buchungssystem Sabre kompromittiert Zahlungsdaten

Sphero Lightning McQueen: Erst macht es Brummbrumm, dann verdreht es die Augen
Sphero Lightning McQueen
Erst macht es Brummbrumm, dann verdreht es die Augen

Quantencomputer: Nano-Kühlung für Qubits
Quantencomputer
Nano-Kühlung für Qubits
  1. IBM Q Mehr Qubits von IBM
  2. Quantencomputer Was sind diese Qubits?
  3. Verschlüsselung Kryptographie im Quantenzeitalter

  1. Ich finde die pilot wave theory besser.

    attitudinized | 13:02

  2. Re: Kann ich vollkommen bestätigen!

    plutoniumsulfat | 13:02

  3. Re: Kunstharz in den Sondermüll?

    knoxxi | 13:01

  4. Re: Ohne Strom und Energy harvesting?

    MysticaX | 13:01

  5. Re: Und wie ...

    Muhaha | 12:59


  1. 13:09

  2. 12:45

  3. 12:32

  4. 12:03

  5. 11:52

  6. 11:40

  7. 11:34

  8. 10:23


  1. Themen
  2. A
  3. B
  4. C
  5. D
  6. E
  7. F
  8. G
  9. H
  10. I
  11. J
  12. K
  13. L
  14. M
  15. N
  16. O
  17. P
  18. Q
  19. R
  20. S
  21. T
  22. U
  23. V
  24. W
  25. X
  26. Y
  27. Z
  28. #
 
    •  / 
    Zum Artikel