Servo regelen met reed schakelaar
40 berichten
• Pagina 3 van 4 • 1, 2, 3, 4
Re: Servo regelen met reed schakelaar
Heren,
Ik heb inmiddels in een andere Arduino het programma geïnstalleerd en nu werkt het naar behoren. Er zal denk ik wel iets met de andere Arduino gebeurd zijn denk waardoor deze met dit programma niet goed meer werkt.
Shooter, is de 12 volt een probleem, is het beter om een wat lagere stroom te gebruiken? Het schema krijg ik niet als bijlage erbij maar de reed schakelaars schakelen naar aarde.
PeterC
Ik heb inmiddels in een andere Arduino het programma geïnstalleerd en nu werkt het naar behoren. Er zal denk ik wel iets met de andere Arduino gebeurd zijn denk waardoor deze met dit programma niet goed meer werkt.
Shooter, is de 12 volt een probleem, is het beter om een wat lagere stroom te gebruiken? Het schema krijg ik niet als bijlage erbij maar de reed schakelaars schakelen naar aarde.
PeterC
Advertisement
- Gij Kieken
- Berichten: 631
- Geregistreerd: 15 Nov 2015, 11:54
Re: Servo regelen met reed schakelaar
Beter is om 8 a 9 volt dc te gebruiken ,dat is een paar watt minder verstoken.
Het hangt er een beetje vanaf wat nog allemaal van verbruikers is aangesloten.
Jouw servo zit toch op een aparte voeding niet de 5volt uit de Arduino ?
Het hangt er een beetje vanaf wat nog allemaal van verbruikers is aangesloten.
Jouw servo zit toch op een aparte voeding niet de 5volt uit de Arduino ?
Re: Servo regelen met reed schakelaar
Prima, ik ga een 9 Volt voeding gebruiken. Deze voeding wordt ook voor de servo's gebruikt middels een stepdown schakeling naar 5 volt. Dus ik gebruik niet de 5 volt van de Arduino. Op de treinbaan worden Ptt relais gebruikt welke geschakeld worden met 30 volt gelijkstroom. Nu gebeurd het dat bij het afschakelen de servo hierop reageert, daar moeten we nog een oplossing voor bedenken. Ik heb al een poging gedaan om een diode over het relais te zetten maar dat gaf geen verbetering.
PeterC
PeterC
- Gij Kieken
- Berichten: 631
- Geregistreerd: 15 Nov 2015, 11:54
Re: Servo regelen met reed schakelaar
Snellere dioden gebruiken en tantaal condensator op de voedingslijnen plaatsen, goed afschermen ,aarden en methode van verwijdering(proberen de afstand tussen de stoorbron en de schakeling te vergroten).
Re: Servo regelen met reed schakelaar
Het zou handig zijn als je een electrisch schema maakt, want een dergelijk eenvoudige opstelling zou toch storingsvrij moeten werken.
Tuurlijk zijn servo behoorlijk gevoelig want het zijn tijdgeschakelde dingen. je zou voor de prijs misschien wel de servos slopen en alleen de aandrijving gebruiken.
maar ik heb nog wel een doos vol met stappenmotoren staan.
Tuurlijk zijn servo behoorlijk gevoelig want het zijn tijdgeschakelde dingen. je zou voor de prijs misschien wel de servos slopen en alleen de aandrijving gebruiken.
maar ik heb nog wel een doos vol met stappenmotoren staan.
paul deelen
shooter@home.nl
shooter@home.nl
Re: Servo regelen met reed schakelaar
Ik heb een eenvoudig schema gemaakt maar hoe kan ik deze hier plaatsen?
Re: Servo regelen met reed schakelaar
plaats een reactie en onderaan vind je dan vanzelf een bijlage toevoegen.
paul deelen
shooter@home.nl
shooter@home.nl
Re: Servo regelen met reed schakelaar
Mede met wat hulp is het gelukt om de servo tot rust te houden. Ook is het mij eindelijk gelukt om het schema hier te plaatsen. Ik wilde de oplossing graag aan jullie mededelen. Hopelijk is deze duidelijk genoeg. De 2 stepdowns schakelingen zitten er omdat de trafo 12V is
Ik bedank een ieder voor de reacties en het meedenken.
PeterC
.Ik bedank een ieder voor de reacties en het meedenken.
PeterC
Re: Servo regelen met reed schakelaar
Heren,
Ik heb toch nog even een vraag. Omdat er zonder computer gereden wordt en het toch wel prettig is om het geluid harder of zachter te laten klinken dacht ik dit op te lossen door middel van een if constructie. Na de nodige experimenten dacht ik het gevonden te hebben maar ik ben niet helemaal tevreden. Ik heb in het programma 3 lussen gemaakt, weet niet of de benaming goed is, maar in de eerste lus gaat alles goed. In de 2e gaat de eerste opdracht ook goed echter bij het terug lopen lijkt het net of de servo toch naar een andere beginstand springt om vervolgens netjes terug te lopen. Dit gebeurd ook bij de 3e lus.
Graag jullie advies hierin.
Hierbij het programma wat ik nu gemaakt heb.
PeterC
Ik heb toch nog even een vraag. Omdat er zonder computer gereden wordt en het toch wel prettig is om het geluid harder of zachter te laten klinken dacht ik dit op te lossen door middel van een if constructie. Na de nodige experimenten dacht ik het gevonden te hebben maar ik ben niet helemaal tevreden. Ik heb in het programma 3 lussen gemaakt, weet niet of de benaming goed is, maar in de eerste lus gaat alles goed. In de 2e gaat de eerste opdracht ook goed echter bij het terug lopen lijkt het net of de servo toch naar een andere beginstand springt om vervolgens netjes terug te lopen. Dit gebeurd ook bij de 3e lus.
Graag jullie advies hierin.
Hierbij het programma wat ik nu gemaakt heb.
PeterC
- Code: Alles selecteren
#include <Servo.h>
const int LeftbuttonPin = 2;
const int RightbuttonPin = 4;
int KeuzePin1 = 5;
int KeuzePin2 = 6;
int KeuzePin3 = 7;
int KeuzePin1State = 0;
int KeuzePin2State = 0;
int KeuzePin3State = 0;
int LeftbuttonState = 0;
int RightbuttonState = 0;
int pos = 15; // Staat normaal op 0, dit geeft een rustiger start.
Servo myservo;
void setup() {
Serial.begin(9600);
myservo.attach(9);
pinMode(KeuzePin1, INPUT);
pinMode(KeuzePin2, INPUT);
pinMode(KeuzePin3, INPUT);
pinMode(LeftbuttonPin, INPUT_PULLUP);
pinMode(RightbuttonPin, INPUT_PULLUP);
myservo.write(pos); // Neemt de int pos positie aan.
}
void loop() {
LeftbuttonState = digitalRead(LeftbuttonPin);
//Serial.println(LeftbuttonState);
RightbuttonState = digitalRead(RightbuttonPin);
//Serial.println(RightbuttonState);
KeuzePin1State = digitalRead(KeuzePin1);
//Serial.println(KeuzePin1State);
KeuzePin2State = digitalRead(KeuzePin2);
//Serial.println(KeuzePin2State);
KeuzePin3State = digitalRead(KeuzePin3);
//Serial.println(KeuzePin3State);
if ((KeuzePin1State == HIGH) && (LeftbuttonState == LOW))
{
for (pos = 15; pos <= 60; pos += 1) // is gelijk aan de int pos bij setup
{
myservo.write(pos);
delay(100);
}
} else {
if (RightbuttonState == LOW) {
for (pos = 60; pos >=15; pos -=1) //Dit gaat goed.
{
myservo.write(pos);
delay(70);
}
} else {
if ((KeuzePin2State == HIGH) && (LeftbuttonState == LOW)) // dit gaat ook goed
{
for (pos = 15; pos <= 70; pos += 1)
{
myservo.write(pos);
delay(100);
}
} else {
if (RightbuttonState == LOW) {
for (pos = 70; pos >= 15; pos -= 1) //hier verspringt de servo iets en
// gaat dan naar eindstand(15).
{
myservo.write(pos);
delay(70);
}
} else {
if (KeuzePin3State == HIGH and LeftbuttonState == LOW)
//if (LeftbuttonState == LOW)
{
for (pos = 15; pos <= 51; pos += 1)
{
myservo.write(pos);
delay(100);
}
} else {
if (RightbuttonState == LOW) // hier verspringt de servo iets en
// gaat dan naar eindstand(15).
{
for (pos = 51; pos >=15; pos -=1)
{
myservo.write(pos);
delay(70);
}
}
}
}
}
}
}
}
40 berichten
• Pagina 3 van 4 • 1, 2, 3, 4
Wie is er online?
Gebruikers in dit forum: uyogabani en 48 gasten