INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.

Antwort schreiben 
 
Themabewertung:
  • 0 Bewertungen - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
Anfänger benötigt Hile (Servo-Steuerung)
21.09.2014, 13:33
Beitrag #1
Anfänger benötigt Hile (Servo-Steuerung)
Hallo liebes Forum,
ich beschäftige mich seit kurzer Zeit mit dem Arduino. Ich habe mich dann mal in ein kleines Servo-Projekt gestürzt. Im Prinzip funktioniert das kleine Programm, aber es hat da leider einen Schönheitsfehler.

Code:
#include <Servo.h>

Servo myservo;  // create servo object to control a servo
int wert = 0;
int x = 90;     //Startposition 90°

void setup()
{
  myservo.attach(9);  // attaches the servo on pin 9 to the servo object
  pinMode(4, INPUT);  //130°
  myservo.write(x);
}

void loop()
{
  wert = digitalRead(4);

  if (wert == HIGH)
  {
    for (x; x<130; x++)
    {
      myservo.write(x);
      delay(20);// waits for the servo to get there
    }
  }

  else
  {
    for (x; x>90; x--)
    {
      myservo.write(x);
      delay(20);// waits for the servo to get there
    }
  }


}
Wie man dem Code entnehmen kann, soll bei einem High am Eingangspin 4 das Servo in Stellung 130° fahren. Das funktioniert tadellos. Wenn aber dann am Pin4 kein High mehr anliegt, soll es wieder zurück auf 90° fahren.

Jetzt mein Problem: Wenn das Servo auf 130° gefahren ist, nehme ich den High an Pin4 weg und es dauert ca. 4-5sec. bis das Servo wieder zurück fährt. Ziel sollte es aber sein, dass das Servo direkt nach dem Low-Signal wieder zurück fährt. Ich habe das Arduino auch mit einem 5V-Netzteil gespeist.

Warum dauert es 4-5sec. bis es wieder zurück fährt???

Danke
Torsten
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
21.09.2014, 14:21
Beitrag #2
RE: Anfänger benötigt Hile (Servo-Steuerung)
Hallo,

hast Du an dem Eingang eine Beschaltung wie z.B. einen Pulldown-Widerstand?
Wenn nicht versuche dass mal

MFG
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
21.09.2014, 14:24 (Dieser Beitrag wurde zuletzt bearbeitet: 21.09.2014 14:26 von Bitklopfer.)
Beitrag #3
RE: Anfänger benötigt Hile (Servo-Steuerung)
(21.09.2014 13:33)torsten_156 schrieb:  Hallo liebes Forum,
ich beschäftige mich seit kurzer Zeit mit dem Arduino. Ich habe mich dann mal in ein kleines Servo-Projekt gestürzt. Im Prinzip funktioniert das kleine Programm, aber es hat da leider einen Schönheitsfehler.

Code:
#include <Servo.h>

Servo myservo;  // create servo object to control a servo
int wert = 0;
int x = 90;     //Startposition 90°

void setup()
{
  myservo.attach(9);  // attaches the servo on pin 9 to the servo object
  pinMode(4, INPUT);  //130°
  myservo.write(x);
}

void loop()
{
  wert = digitalRead(4);

  if (wert == HIGH)
  {
    for (x; x<130; x++)
    {
      myservo.write(x);
      delay(20);// waits for the servo to get there
    }
  }

  else
  {
    for (x; x>90; x--)
    {
      myservo.write(x);
      delay(20);// waits for the servo to get there
    }
  }


}
Wie man dem Code entnehmen kann, soll bei einem High am Eingangspin 4 das Servo in Stellung 130° fahren. Das funktioniert tadellos. Wenn aber dann am Pin4 kein High mehr anliegt, soll es wieder zurück auf 90° fahren.

Jetzt mein Problem: Wenn das Servo auf 130° gefahren ist, nehme ich den High an Pin4 weg und es dauert ca. 4-5sec. bis das Servo wieder zurück fährt. Ziel sollte es aber sein, dass das Servo direkt nach dem Low-Signal wieder zurück fährt. Ich habe das Arduino auch mit einem 5V-Netzteil gespeist.

Warum dauert es 4-5sec. bis es wieder zurück fährt???

Danke
Torsten

Hi,
wie sieht denn deine Eingangsbeschaltung aus ? Hast du da auch einen Pull Down Widerstand gegen GND an den Port geschaltet...also so 20Kohm bis 100Kohm damit der Zustand am Eingang definiert ist ?

Noch ne Anmerkung, wenn du die Ansteuerpegel umdrehst kannst du den internen Pull Up Widerstand aktivieren mit digitalWrite( 4, 1);
lg
bk

1+1 = 10 Angel ...und ich bin hier nicht der Suchmaschinen-Ersatz Dodgy...nur mal so als genereller Tipp..
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
21.09.2014, 19:46
Beitrag #4
RE: Anfänger benötigt Hile (Servo-Steuerung)
Hallo,
erst einmal vielen Dank für die schnellen Antworten! Das geht ja schnell hier.
Das mit dem " Pull Down Widerstand gegen GND..." war die Lösung. Da ich Elektronisch ein Anfänger bin, würde ich das so interpretieren:
"Wenn man den Eingangspin mit einem Widerstand auf GND setzt, ist dort gewährleistet, dass dieser imm LOW hat. Entfernt man die 5V (also auf HIGH setzten), sorgt die Schaltung (Widerstand auf GND) dafür, dass der Eingang sofort wieder auf LOW geht.

Ist das so korrekt Rolleyes

Vielen Dank
Torsten
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
21.09.2014, 20:11
Beitrag #5
RE: Anfänger benötigt Hile (Servo-Steuerung)
(21.09.2014 19:46)torsten_156 schrieb:  Hallo,
erst einmal vielen Dank für die schnellen Antworten! Das geht ja schnell hier.
Das mit dem " Pull Down Widerstand gegen GND..." war die Lösung. Da ich Elektronisch ein Anfänger bin, würde ich das so interpretieren:
"Wenn man den Eingangspin mit einem Widerstand auf GND setzt, ist dort gewährleistet, dass dieser imm LOW hat. Entfernt man die 5V (also auf HIGH setzten), sorgt die Schaltung (Widerstand auf GND) dafür, dass der Eingang sofort wieder auf LOW geht.

Ist das so korrekt Rolleyes

Vielen Dank
Torsten

genau so. Wenn du einen Eingang offen läßt dann floatet der undefiniert hin und her und kann jeden nur erdenklichen Zustand annehmen....
Mach doch einfach mal nen kleinen Sketch der einen offenen Analogeingang einliest und auf den Seriellen Monitor ausgibt und dann schau die mal die Werte an bzw. berühre mal mit dem Finger diesen Einganspin...

1+1 = 10 Angel ...und ich bin hier nicht der Suchmaschinen-Ersatz Dodgy...nur mal so als genereller Tipp..
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
21.09.2014, 21:07
Beitrag #6
RE: Anfänger benötigt Hile (Servo-Steuerung)
Ok, dann werde ich mich mal an meine Schaltung machen. Werde dazu einen neuen Thread öffnen...

Vielen Dank
Gruß
Torsten
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
Antwort schreiben 


Möglicherweise verwandte Themen...
Thema: Verfasser Antworten: Ansichten: Letzter Beitrag
  Tv Wandhalterung Steuerung Sushi582 3 79 Gestern 09:11
Letzter Beitrag: hotsystems
  Einmalige Servo Motor Ausführung BanditBandeh 29 1.780 12.04.2018 12:04
Letzter Beitrag: MicroBahner
  Servo langsamer drehen und auf position lassen Thor Wallhall 13 1.347 12.04.2018 11:42
Letzter Beitrag: BanditBandeh
  Arduino DUE mit Adafruit 16 Kanal Servo-Driver juergen001 3 168 09.04.2018 10:51
Letzter Beitrag: juergen001
Question Servo.h Hilgi 9 366 28.03.2018 17:58
Letzter Beitrag: Hilgi
  Servo Steuerung mit PCA 9685 (Adressiernung) bernhard66 3 373 10.03.2018 11:06
Letzter Beitrag: juergen001
  Servo über Transistor Harry 21 1.584 29.01.2018 19:30
Letzter Beitrag: hotsystems
  servo hector73 5 493 25.01.2018 06:13
Letzter Beitrag: hector73
  Bei Power ein geht der Servo auf 90 Grad ? Franz54 12 1.053 09.01.2018 20:55
Letzter Beitrag: Franz54
  Schieberegister LED Steuerung zeitlich anpassen Noformat 18 1.030 17.12.2017 16:45
Letzter Beitrag: Noformat

Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste