Hallo zusammen!
Die letzten 7 Tage waren geprägt von purer Verwirrung meinerseits bei meinem neuen Arduino-Projekt. Jetzt bin ich so verwirrt, dass ich nicht mehr weiter komme.
Ich möchte 7 Servos (hier erstmal testweise nur 2 Servos) jeweils mit 1 Kippschalter (also insg. 7 Schalter) ansteuern. Ich nutze den Arduino Uno. Diese 7 Servos sollen jeweils eine Weiche meiner Modelleisenbahn umschalten.
Unten füge ich auch noch meinen aktuellen Code sowie den Schaltplan an. Das Problem ist folgendes:
Mit einem Servo und 1 Kippschalter funktioniert alles super. Sobald ich den 2. Kippschalter anstecke, fängt Servo 1 an zu zittern und lässt sich nicht mehr schalten. Servo 2 ist zu diesem Zeitpunkt noch gar nicht am Arduino. Bei der genaueren Untersuchung fiel auf, dass dies nur passiert wenn der 2. Kippschalter = HIGH ist. Wenn der 2. Schalter = LOW ist, funktioniert Servo 1 wieder ganz normal ohne zittern. Es ändert sich auch nichts, wenn der 2. Servo ebenfalls angesteckt ist, im Gegenteil es verschlimmert sich nur. Dann lässt sich weder Servo 1 noch 2 steuern.
Kann mir irgendjemand helfen?
#include<MobaTools.h> // Eine Library speziell für Modellbauer; Struktur gleich ähnlich wie bei <Servo.h>
MoToServo weiche1; // Definition Servo 1
MoToServo weiche2; // Definition Servo 2
void setup() {
weiche1.attach(1); // Servo 1 ist an Arduino-Pin 1
weiche2.attach(2); // Servo 2 ist an Arduino-Pin 2
pinMode(8, INPUT_PULLUP); // Kippschalter 1
pinMode(9, INPUT_PULLUP); // Kippschalter 2
}
void loop() {
if(digitalRead(8)==HIGH) {
weiche1.write(0);
delay(100);
}
if(digitalRead(8)==LOW) {
weiche1.write(100);
delay(100);
}
if(digitalRead(9)==HIGH) {
weiche2.write(0);
delay(100);
}
if(digitalRead(9)==LOW){
weiche2.write(100);
delay(100);
}
delay(20);
}
Schaltplan: (ich habe das Beste gegeben in Fritzing, hoffentlich ist es erkennbar. Die Servos hängen selbstverständlich an einer externen Stromversorgung)