Opbouw Zwembad Control Unit pt. 6 (servo)

Er is een servo motor binnen gekomen. Deze is er voor om het dak automatisch op en en dicht te kunnen doen. De servo moest hiervoor worden omgebouwd.

De servo die binnen is gekomen, draait maar 180 graden wat inhoudt dat ik NOOIT mijn dak open of dicht kan doen hiermee.

Ik heb dus de servo moeten aanpassen. Hiervoor zijn goede filmpjes op youtube te bekijken. Hieronder degene die ik heb gebruikt hiervoor

In dit filmpje wordt uitgelegd hoe  je de servo moet aanpassen voor een continue rotatie en inderdaad het werkt.

Om dit aan te sturen met een Arduino is een ander verhaal, maar ik zal het uitleggen

Om te beginnen moet je de Servo.h includen in je sketch, waarna je de Servo gaat koppelen met myservo( zelf gekozen)

In de setup koppel je de juiste pin aan de servo in mijn geval pin 43

Om de servo te laten draaien geef je een myservo.write (xxx).

De tijd dat je deze laat draaien is de delay, waarna je myservo weer afkoppelt met een detach. Dit is even snel hoe of wat.

Hierboven zie je dat de Servo 3 draden heeft.

rood : +5V

bruin : GND

geel: signaaldraad (deze is in mijn sketch gekoppeld aan pin 43)

Het probleem dat ontstond is dat de servo nooit meer stopte.

Na wat gezoek en gepuzzel kwam ik er achter, dat door de detach() functie te gebruiken, ik de servo ook kon stoppen

Hier staat wat meer info over de library.

Ik ben dus weer aan het programmeren geslagen en dit is het resultaat:

 

De code die ik hiervoor gebruik is als volgt

#include <Servo.h>

Servo myservo;
int i = 0;
void setup() {
 // put your setup code here, to run once:
 
}

void loop() {
 i++;
 if (i == 200) {
 // put your main code here, to run repeatedly:
 myservo.attach(43); //aankoppelen servo
 myservo.write(180); //snelheid en richting
 delay(1500);
 myservo.detach(); //loskoppelen servo
 delay(1500);
 myservo.attach(43); //aankoppelen servo
 myservo.write(140); //snelheid en richting
 delay(1500);
 myservo.detach(); //loskoppelen servo


 }

}

Je ziet wel dat de servo aan en afgekoppeld wordt om zo voor elkaar te krijgen dat deze stopt.

De getallen die je bij //snelheid en richting ziet, hebben te maken met mijn servo. Door de modificatie heb ik moeten zoeken naar het nul-punt, dit wordt in de volgend video uit gelegd

 

Mijn nulpunt ligt op 160. ga ik er onder zitten, draait de servo rechtsom en ga ik rond de 180 zitten draait hij links om dus met de klok mee.

 

Geef een reactie

Je e-mailadres wordt niet gepubliceerd. Vereiste velden zijn gemarkeerd met *

Deze site gebruikt Akismet om spam te verminderen. Bekijk hoe je reactie-gegevens worden verwerkt.