Virtual 3D Device Port – SU15-31-Servo aansturen (SG90)

Virtual-3D-Device-port-SU15-logo

Het vorige hoofdstuk (30 – communicatie naar Arduino) liet zien hoe je van SketchUp kan communiceren via de seriële poort naar de Arduino, we gaan daar nu een servo (sg90) mee aansturen.

De hendel uit het vorige hoofdstuk stuurt getallen tussen de 0.00 en 1.00 naar de arduino, met de servo arduino code kunnen we de servo aansturen met een getal tussen de 0 en 180.

SG90 servo aansluiten

Sluit de SG90 servo aan volgens onderstaand schema:

Servo SG90 Arduino schema

Upload de volgende code naar de Arduino om de servo te bedienen:

De servo testen

Open de Arduino monitor en voer een getal in tussen de 0.00 en 1.00 en druk op enter, doormiddel het gebruik van de MAP functie in de Arduino code kun je waarnemen dat:

0 = 180 graden
0.75 = 135 graden
0.5 = 90 graden
0.25 = 45 graden
1 = 0 graden

Sketchup starten om de servo aan te sturen.

Het enige wat je nu nog moet doen is SketchUp starten met het “hendel” script, zoals je aan de hendel trekt gaat de servo ook bewegen
Ps. vergeet niet de seriële poort aan te passen naar je eigen situatie (in het python script)

Hoe werkt het?

Dit werkt nu via een seriële verbinding tussen de computer en de Arduino , de computer stuurt getallen (FLOAT) tussen 0.00 en 1.00.
In Sketchup SketchyPhysics is:

0.00 de status van het object opgegeven bij de MIN waarde (bijvoorbeeld -90 graden)
1.00 de status van het object opgegeven bij de MAX waarde (bijvoorbeeld 90 graden)

Daaruit volgt dat tussen 0.00 en 1.00, 180 graden zit, omdat sketchup met stapjes van 0.01 werkt zijn er 100 stapjes dus 1,8 graden per stapje.