Arduino uno servo button lukt niet
10 berichten
• Pagina 1 van 1
- geertamigo
- Berichten: 2
- Geregistreerd: 04 Apr 2019, 15:33
Arduino uno servo button lukt niet
Dag mensen!
Ik ben nieuw op dit forum en nieuw met Arduino. Nu heb ik al flink wat zitten proberen maar ik krijg het niet voor elkaar.
Wat ik wil:
Als ik niets doe moet de servo op punt a staan (dus 0), en als ik een button indruk moet hij naar punt b gaan (180). Wanneer ik de button weer los laat moet hij weer terug naar punt a gaan.
Super simpel, maar mij lukt het niet! Via de voorbeelden van arduino kon ik trouwens alleen een sweep of potentiometer gebruiken, daar heb ik al gezocht.
Wie o wie kan deze simpele code voor mij maken? Alvast dank! Ik gebruik de UNO.
Ik ben nieuw op dit forum en nieuw met Arduino. Nu heb ik al flink wat zitten proberen maar ik krijg het niet voor elkaar.
Wat ik wil:
Als ik niets doe moet de servo op punt a staan (dus 0), en als ik een button indruk moet hij naar punt b gaan (180). Wanneer ik de button weer los laat moet hij weer terug naar punt a gaan.
Super simpel, maar mij lukt het niet! Via de voorbeelden van arduino kon ik trouwens alleen een sweep of potentiometer gebruiken, daar heb ik al gezocht.
Wie o wie kan deze simpele code voor mij maken? Alvast dank! Ik gebruik de UNO.
Advertisement
Re: Arduino uno servo button lukt niet
cpp code
#include <Servo.h>
Servo myservo;
void setup()
{
pinMode( 4, INPUT_PULLUP);
myservo.attach( 9);
}
void loop()
{
int hoek = 0; // punt a
if( digitalRead( 4) == LOW)
{
hoek = 180; // punt b
}
myservo.write( hoek);
delay( 15);
}
- Bijlagen
-
- knop-servo.png (47.15 KiB) 6787 keer bekeken
- geertamigo
- Berichten: 2
- Geregistreerd: 04 Apr 2019, 15:33
Re: Arduino uno servo button lukt niet
Dankjewel! Het werkt perfect!
Re: Arduino uno servo button lukt niet
Nou, nou, nou, perfect zou ik het niet willen noemen.
Een servo motor kan een piekstroom vragen van 500mA of meer. Dat kan het Arduino board niet leveren. Het is beter om een extra aparte voeding voor de servo motor te gebruiken. Vergeet niet om de GND van die extra voeding met de GND van het Arduino board te verbinden.
Een servo motor kan een piekstroom vragen van 500mA of meer. Dat kan het Arduino board niet leveren. Het is beter om een extra aparte voeding voor de servo motor te gebruiken. Vergeet niet om de GND van die extra voeding met de GND van het Arduino board te verbinden.
Re: Arduino uno servo button lukt niet
Hallo Koepel,
Ik kwam dit draadje tegen en ga dit uittesten, maar wel met externe voeding.
Maar . . . . kan dto ook met twee drukknoppen?
Eén voor naar 180 ( ik dacht aan 80 graden ) en één voor naar 0 ?
MVG
Leo
Ik kwam dit draadje tegen en ga dit uittesten, maar wel met externe voeding.
Maar . . . . kan dto ook met twee drukknoppen?
Eén voor naar 180 ( ik dacht aan 80 graden ) en één voor naar 0 ?
MVG
Leo
Re: Arduino uno servo button lukt niet
Dit is maar een heel klein programmaatje dat steeds de waarde opnieuw doet met myservo.write().
Het is natuurlijk netter om te kijken of een knop wordt ingedrukt en dan eenmalig de nieuwe waarde te zetten.
Dan is het nodig om te kijken naar het moment dat de knop wordt ingedrukt. Dat ene moment, daar gaat het om.
Daar is de State Change Detection voor: https://www.arduino.cc/en/Tutorial/StateChangeDetection.
En dat combineren met myservo.write(). Dus in plaats van het tellen, op die plaats de servo motor doen.
Dus de hele eenvoudige sketch wordt opeens een stuk groter. Tsja, zo gaan die dingen. Lukt dat ? Kun je een begin maken en dat laten zien ?
P.S.: Je had beter een nieuw onderwerp kunnen starten en een link naar dit onderwerp toevoegen.
Het is natuurlijk netter om te kijken of een knop wordt ingedrukt en dan eenmalig de nieuwe waarde te zetten.
Dan is het nodig om te kijken naar het moment dat de knop wordt ingedrukt. Dat ene moment, daar gaat het om.
Daar is de State Change Detection voor: https://www.arduino.cc/en/Tutorial/StateChangeDetection.
En dat combineren met myservo.write(). Dus in plaats van het tellen, op die plaats de servo motor doen.
Dus de hele eenvoudige sketch wordt opeens een stuk groter. Tsja, zo gaan die dingen. Lukt dat ? Kun je een begin maken en dat laten zien ?
P.S.: Je had beter een nieuw onderwerp kunnen starten en een link naar dit onderwerp toevoegen.
Re: Arduino uno servo button lukt niet
ja tuurlijk kan dat leo, begin eens met schrijven en proberen.
paul deelen
shooter@home.nl
shooter@home.nl
Re: Arduino uno servo button lukt niet
Hallo "Koepel"
Dank voor de link, maar als beginner van deze materie denk ik dat met jouw link het voor mij toch nog wat te hoog gegrepen is.
Ik zie namelijk geen verband naar een servo en twee drukknoppen, maar dat kan zijn omdat ik nog te weinig kennis heb van de Arduino.
Maar ik blijf volhouden en ga aan de slag.
Hallo Paul,
Ik ga een poging wagen, maar hoop/reken wel op een beetje steun.
Ik kom erop terug.
MVG
Leo
Dank voor de link, maar als beginner van deze materie denk ik dat met jouw link het voor mij toch nog wat te hoog gegrepen is.
Ik zie namelijk geen verband naar een servo en twee drukknoppen, maar dat kan zijn omdat ik nog te weinig kennis heb van de Arduino.
Maar ik blijf volhouden en ga aan de slag.
Hallo Paul,
Ik ga een poging wagen, maar hoop/reken wel op een beetje steun.
Ik kom erop terug.
MVG
Leo
Re: Arduino uno servo button lukt niet
Heren,
Ik ben aan de slag gegaan en ben uit gegaan van het eerste schetsje:
#include <Servo.h>
Servo myservo;
void setup()
{
pinMode( 4, INPUT_PULLUP); // Schakelaar 1
pinMode( 3, INPUT_PULLUP); // Schakelaar 2
myservo.attach( 9);
}
void loop()
{
int hoek = 80; // punt a
if( digitalRead( 4) == LOW)
{
delay; // Wachten op schakelaar 2
pinMode( 3, INPUT_PULLUP);
myservo.attach( 9);
}
void loop()
{
int hoek = 80; // punt a
if( digitalRead( 3) == LOW)
{
delay
}
myservo.write( hoek);
delay( 15);
}
Maar ik krijg natuurlijk een foutmelding. Ik had ook niet anders verwach.
Alleen hoe dit op te lossen, geen idee.
Op regel 24: " a function-definition is not allowed here before '{' token "
MVG
Leo
Ik ben aan de slag gegaan en ben uit gegaan van het eerste schetsje:
#include <Servo.h>
Servo myservo;
void setup()
{
pinMode( 4, INPUT_PULLUP); // Schakelaar 1
pinMode( 3, INPUT_PULLUP); // Schakelaar 2
myservo.attach( 9);
}
void loop()
{
int hoek = 80; // punt a
if( digitalRead( 4) == LOW)
{
delay; // Wachten op schakelaar 2
pinMode( 3, INPUT_PULLUP);
myservo.attach( 9);
}
void loop()
{
int hoek = 80; // punt a
if( digitalRead( 3) == LOW)
{
delay
}
myservo.write( hoek);
delay( 15);
}
Maar ik krijg natuurlijk een foutmelding. Ik had ook niet anders verwach.
Alleen hoe dit op te lossen, geen idee.
Op regel 24: " a function-definition is not allowed here before '{' token "
MVG
Leo
Re: Arduino uno servo button lukt niet
knippen en plakken is een moeilijke, lees je eigen programma eens er staat bijvoorbeeld in de loop (die er trouwens ook twee keer instaat wat ook niet mag, ook delay zonder () mag niet etc.
haal een cheatsheet van internet dan kun je die rustig ernaast leggen en kijken wat er kan.
haal een cheatsheet van internet dan kun je die rustig ernaast leggen en kijken wat er kan.
paul deelen
shooter@home.nl
shooter@home.nl
10 berichten
• Pagina 1 van 1
Wie is er online?
Gebruikers in dit forum: ewomajeebiju en 55 gasten