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
Star ATtiny Servo SOS SOS hansanne1310 1 50 Gestern 22:15
Letzter Beitrag: hotsystems
  Servo über Temperatur steuern querkopf71 3 40 Gestern 19:21
Letzter Beitrag: hotsystems
  Infrarot zu RS232 für Steuerung DG0JG 46 687 22.10.2016 11:35
Letzter Beitrag: hotsystems
  Slider Steuerung, Programmierung blueblack 21 620 16.10.2016 22:31
Letzter Beitrag: blueblack
  ATtiny und Servo Bibliothek malsehen 9 306 15.10.2016 18:09
Letzter Beitrag: malsehen
  Hilfe: IR Remote Steuerung, MSGEQ7 + RGB-LED Streifen dastob 1 122 14.10.2016 21:40
Letzter Beitrag: hotsystems
  Servo soll nur in Ruhelage stoppen Sven1996 1 239 19.08.2016 14:37
Letzter Beitrag: StephanBuerger
  Steuern von 4 Servo mittels eines Taster und eines Potis Jackie09 17 757 16.07.2016 11:43
Letzter Beitrag: Binatone
  Servo und PWM Ausgabe F2Ingo 4 493 17.06.2016 14:53
Letzter Beitrag: F2Ingo
  Anfänger Fragen zum Thema Pc & Datenverarbeitung Hurdy 0 300 29.03.2016 12:36
Letzter Beitrag: Hurdy

Gehe zu:


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