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
Servo soll nur in Ruhelage stoppen
18.08.2016, 12:52
Beitrag #1
Servo soll nur in Ruhelage stoppen
Hallo,

ich hoffe ihr könnt mir ein wenig weiter helfen.

Ich möchte gerne einen Servo ansteuern. Jedoch soll er nur einmal ausfahren und zurück in die Ruheposition kommen. Wenn ich den Taster betätige während er noch nicht in der Ruheposition ist, bleibt er einfach stehen. Also dachte ich, ich lasse das Programm einfach einmal durchlaufen, baue einen zusätzlichen Schalter ein, der eine Unterbrechung der Stromzufuhr bewirkt. Das einmalige durchlaufen wollte ich so umsetzen, dass ich den Loopteil lehre und den Inhalt bei Setup einfüge. Leider funktioniert das nicht. Daraufhin baute ich mit einem IC 7400 ein FlipFlop um sicher zu gehen, dass der Taster nicht prellt. Keine Veränderung.

Hier nun mein Sketch:

#include <Servo.h>
Servo myservo;

void setup()
{
pinMode( 3 , INPUT);
myservo.attach(9);
myservo.write( 53 );

delay( 1000 );

if (digitalRead(3))
{
myservo.write( 53 );
delay( 1000 );
myservo.write( 90 );
delay( 3300 );
myservo.write( 53 );
delay( 1000 );
}
}

void loop()
{

}


Ich hoffe ihr könnt mir einen Schritt weiter helfen.

Vielen Dank!
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
19.08.2016, 14:37
Beitrag #2
RE: Servo soll nur in Ruhelage stoppen
Hallo Sven,

in deinem Jetzigen Code wird der Button doch nur ausgewertet wenn der Servo nicht läuft.

Ich würde das etwas anders lösen.

Code:
##Variable

ServoRunnging Bool;

Setup()
{
ServoRunning = False;
}

Loop()
{
If (Tastergedrückt AND ServoRunning == False)
{
   ServorRunning = True
}
If (ServoRunning == TrUE)
{
  Servosteuern; (möglichst ohne Delay)
  ServoRunning = False
}
}

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


Möglicherweise verwandte Themen...
Thema: Verfasser Antworten: Ansichten: Letzter Beitrag
  Servo Ansteuerung SOFTHARD 1 117 19.09.2017 12:50
Letzter Beitrag: MicroBahner
  Servo mit einem Taster und 433mhz steuern Thor Wallhall 63 2.630 29.07.2017 11:02
Letzter Beitrag: Thor Wallhall
  Arduino I2C Servo MarcelTitan 8 701 14.07.2017 10:09
Letzter Beitrag: Tommy56
  Led soll zeitversetzt ausgehen Affenbrot 33 7.356 22.06.2017 18:36
Letzter Beitrag: hotsystems
  [Mega2560 und Marlin]Was soll diese Fehlermeldung? ManniP 3 367 11.05.2017 14:03
Letzter Beitrag: Tommy56
  Mein Skript macht nicht das was es soll ;( DerMatze79 4 451 16.03.2017 22:19
Letzter Beitrag: MicroBahner
  Servo macht komische Sachen Jochenv 7 556 08.03.2017 00:23
Letzter Beitrag: Jochenv
  Servo-Ansteuerung über einen Push-Button Aubergine83 1 384 16.02.2017 19:49
Letzter Beitrag: georg01
Star ATtiny Servo SOS SOS hansanne1310 17 1.445 15.12.2016 05:11
Letzter Beitrag: hbulf
  Servo über Temperatur steuern querkopf71 3 647 07.12.2016 19:21
Letzter Beitrag: hotsystems

Gehe zu:


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