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. Daimler AG, Leinfelden-Echterdingen
  2. Knauf Information Services GmbH, Iphofen bei Würzburg
  3. OEDIV KG, Bielefeld
  4. IBC SOLAR AG, Bad Staffelstein


Anzeige
Blu-ray-Angebote
  1. 27,99€ (Vorbesteller-Preisgarantie)
  2. 299,99€ (Vorbesteller-Preisgarantie)
  3. 49,99€ mit Vorbesteller-Preisgarantie

Folgen Sie uns
       


  1. Microsoft

    Xbox One emuliert 13 Xbox-Klassiker

  2. DMT Bonding

    Telekom probiert 1 GBit/s ohne Glasfaser aus

  3. Telekom-Software

    Cisco kauft Broadsoft für knapp 2 Milliarden US-Dollar

  4. Pubg

    Die blaue Zone verursacht künftig viel mehr Schaden

  5. FSFE

    "War das Scheitern von Limux unsere Schuld?"

  6. Code-Audit

    Kaspersky wirbt mit Transparenzinitiative um Vertrauen

  7. iOS 11+1+2=23

    Apple-Taschenrechner versagt bei Kopfrechenaufgaben

  8. Purism Librem 13 im Test

    Freiheit hat ihren Preis

  9. Andy Rubin

    Drastischer Preisnachlass beim Essential Phone

  10. Sexismus

    US-Spielforum Neogaf offenbar abgeschaltet



Haben wir etwas übersehen?

E-Mail an news@golem.de


Anzeige
APFS in High Sierra 10.13 im Test: Apple hat die MacOS-Dateisystem-Werkzeuge vergessen
APFS in High Sierra 10.13 im Test
Apple hat die MacOS-Dateisystem-Werkzeuge vergessen
  1. MacOS 10.13 Apple gibt High Sierra frei
  2. MacOS 10.13 High Sierra Wer eine SSD hat, muss auf APFS umstellen

Elex im Test: Schroffe Schale und postapokalyptischer Kern
Elex im Test
Schroffe Schale und postapokalyptischer Kern

Xperia Touch im Test: Sonys coolem Android-Projektor fehlt das Killerfeature
Xperia Touch im Test
Sonys coolem Android-Projektor fehlt das Killerfeature
  1. Roboter Sony lässt Aibo als Alexa-Konkurrenten wieder auferstehen
  2. Sony Xperia XZ1 Compact im Test Alternativlos für Freunde kleiner Smartphones
  3. Sony Xperia XZ1 und XZ1 Compact sind erhältlich

  1. Re: Kaputte Tastatur

    non_existent | 17:31

  2. Re: Vermutlich wurde der Taschenrechner in Java...

    CHU | 17:28

  3. Re: Was hat das mit Sexismus zu tun?

    Yash | 17:27

  4. Was soll man sonst machen...

    CHU | 17:24

  5. Re: Die FSFE hätte ihren Sitz nach München...

    luzipha | 17:23


  1. 17:54

  2. 17:38

  3. 16:38

  4. 16:28

  5. 15:53

  6. 15:38

  7. 15:23

  8. 12:02


  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