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
Steuern von 4 Servo mittels eines Taster und eines Potis
13.07.2016, 11:20
Beitrag #1
Steuern von 4 Servo mittels eines Taster und eines Potis
Liebe Gemeischaft,

ich brauche Eure Hilfe bzgl. der Realisierung eines Schulprojekts. Ich möchte 4 Servos ansteuern. In meinen ersten Überlegungen habe ich versucht 4 Servos (SG 90) seperat mit 4 veschiedenen Potis anzusteuern. Hierzu habe ich den üblichen Kode mit dem map Befehl aus dem Netz verwendet. Leider funktionierte es nicht. Ich hatte Jitter. Daraufhin nahm ich eine 5 V Spannungsquelle mit 2 A zur Hand, auch dies half nichts. Jetzt bin ich auf die Idee gekommen, meine 4 Servos mit nur einem Poti (Eingang A5) und einem Taster (Pushbutton an Ausgang D2) anzusteuern. Meine Servos liegen an den Ausgängen D9,D10,D11, und D12 und der Taster sowie das Poti kann nach Belieben angeschlossen werden. Nach jedem Tastendruck soll nun der jeweilige Servo feigeschaltet werden, so dass ich mit meinem Poti diesen auch ansteuern kann. Wer hat Erfahrungen und kann mir bei der Programmierung helfen. Es wäre echt klasse.

Vielen lieben Dank schon einmal im Voraus


Angehängte Datei(en) Thumbnail(s)
   
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
13.07.2016, 12:28
Beitrag #2
RE: Steuern von 4 Servo mittels eines Taster und eines Potis
Wie sieht denn dein Sketch bisher aus.
Schön, wenn du ihn uns zeigst.

I2C = weniger ist mehr: weniger Kabel, mehr Probleme. Cool
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
13.07.2016, 12:49 (Dieser Beitrag wurde zuletzt bearbeitet: 13.07.2016 13:12 von Jackie09.)
Beitrag #3
RE: Steuern von 4 Servo mittels eines Taster und eines Potis
stimmt die Servos (an 5 V Arduino angeschlossen sowie an D9-D11 und D8 anstatt D12)
sind an der 5 V Spannungsversorgung angeschlossen, allerdings möchte ich ja immer nur einen Ausgang mittels des Tasters freischalten und einzeln mit dem Poti das jeweilige Servo regeln.

Wie bereits weiter oben aufgeführt habe ich ja bereits meine Servos schon einmal extern versorgt. Das funktionierte aber nicht.

Anbei auch mein Sketch, allerdings nur D8-D11. Ich dachte mit der Modulo Variante hätte ich das Problem gelöst. Letztlich habe ich mir irgendwie was aus dem Netz zusammengesucht. Hätte jemand denn einen Lösungsansatz und auch schon mal 4 Servos (SG 90) angesteuert

Code:
#include <Servo.h>

const int  buttonPin = 2;    // the pin that the pushbutton is attached to
const int ledPin = 13;       // the pin that the LED is attached to

// Variables will change:
int buttonPushCounter = 0;   // counter for the number of button presses
int buttonState = 0;         // current state of the button
int lastButtonState = 0;     // previous state of the button

Servo myservo9;
Servo myservo10;
Servo myservo11;

int potpin = 0;
int potpin2 = 2;
int potpin3 = 5;

int val = 0;
int val2 = 0;
int val3 = 0;


void setup() {
  // initialize the button pin as a input:
  pinMode(buttonPin, INPUT);
  // initialize the LED as an output:
  pinMode(ledPin, OUTPUT);
  // initialize serial communication:
  Serial.begin(9600);
  
  myservo9.attach(9);
  myservo10.attach(10);
  myservo11.attach(11);
}


void loop() {
  // read the pushbutton input pin:
  buttonState = digitalRead(buttonPin);

  // compare the buttonState to its previous state
  if (buttonState != lastButtonState) {
    // if the state has changed, increment the counter
    if (buttonState == HIGH) {
      // if the current state is HIGH then the button
      // wend from off to on:
      buttonPushCounter++;
      Serial.println("on");
      Serial.print("number of button pushes:  ");
      Serial.println(buttonPushCounter);
    } else {
      // if the current state is LOW then the button
      // wend from on to off:
      Serial.println("off");
    }
    // Delay a little bit to avoid bouncing
    delay(50);
  }
  // save the current state as the last state,
  //for next time through the loop
  lastButtonState = buttonState;


  // turns on the LED every four button pushes by
  // checking the modulo of the button push counter.
  // the modulo function gives you the remainder of
  // the division of two numbers:
  if (buttonPushCounter % 3 == 0) {
    val = analogRead(potpin);
    val = map(val, 3, 1023, 0, 176);
    myservo9.write(val);
    delay(25);
  } //else {
    //digitalWrite(myservo9, LOW);
  //}
  
  if (buttonPushCounter % 3 == 1) {
    val2 = analogRead(potpin);
    val2 = map(val2, 3, 1023, 0, 176);
    myservo10.write(val2);
    delay(25);
  } // else {
   // digitalWrite(myservo10, LOW);
// }
    if (buttonPushCounter % 3 == 2) {
    val3 = analogRead(potpin);
    val3 = map(val3, 3, 1023, 0, 176);
    myservo10.write(val3);
    delay(25);
  } //else {
    //digitalWrite(myservo11, LOW);
//  }

}
[/code]
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
13.07.2016, 13:09 (Dieser Beitrag wurde zuletzt bearbeitet: 13.07.2016 13:09 von hotsystems.)
Beitrag #4
RE: Steuern von 4 Servo mittels eines Taster und eines Potis
Setze bitte deinen Sketch in Code-Tags (Am Anfang [code*] und am Ende [/code*])
jeweils ohne den Stern. Mit den Quote-Tags funktioniert das nicht.

Und was hast du hiermit "int potpin = 0;" vor?
Soll das der Pin "A0" sein? Dann bitte auch richtig angeben. Anders nimmt er Pin D0 und der ist für USB reserviert.

I2C = weniger ist mehr: weniger Kabel, mehr Probleme. Cool
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
13.07.2016, 13:09 (Dieser Beitrag wurde zuletzt bearbeitet: 13.07.2016 13:10 von Jackie09.)
Beitrag #5
Smile RE: Steuern von 4 Servo mittels eines Taster und eines Potis
(13.07.2016 13:00)Lötzinnerhitzer schrieb:  die SG90 können bis zu 300mA "ziehen" (je nach Last);
aber wenn Du der Meinung bist, das es so OK ist, mach' gerne weiter so

Inwiefern soll ich weiter machen, ich möchte ja nur jeweils einen Servo je nach Tastendruck ansteuern. Wie kann ich das jetzt programmiertechnisch am besten lösen. Ansonsten würde ich auch auf einen 9 V Block zurückgreifen, sollte von der Stromstärke ebenfalls mehr als ausreichend sein. Beste Grüße Smile
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
13.07.2016, 13:12
Beitrag #6
RE: Steuern von 4 Servo mittels eines Taster und eines Potis
(13.07.2016 13:09)Jackie09 schrieb:  Inwiefern soll ich weiter machen, ich möchte ja nur jeweils einen Servo je nach Tastendruck ansteuern. Wie kann ich das jetzt programmiertechnisch am besten lösen. Ansonsten würde ich auch auf einen 9 V Block zurückgreifen, sollte von der Stromstärke ebenfalls mehr als ausreichend sein. Beste Grüße Smile
Und ratz-fatz ist die Batterie leer und du wunderst dich, warum nichts mehr geht.

I2C = weniger ist mehr: weniger Kabel, mehr Probleme. Cool
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
13.07.2016, 13:23
Beitrag #7
RE: Steuern von 4 Servo mittels eines Taster und eines Potis
Der Hinweis mit potpin war gar nicht so schlecht, ich setze da jetztan, manchmal sieht man den Wald vor lauter Bäume nicht :-) melde mich dann nochmal..
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
13.07.2016, 13:27
Beitrag #8
RE: Steuern von 4 Servo mittels eines Taster und eines Potis
(13.07.2016 13:16)Lötzinnerhitzer schrieb:  
Zitat:Inwiefern soll ich weiter machen, ...
weiter machen soll heißen -> ich bin 'raus (wegen Beratungsresistenz)
viel Spaß noch

Naja, man muss manchmal schon etwas mehr Geduld aufbringen. Wink

I2C = weniger ist mehr: weniger Kabel, mehr Probleme. Cool
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
Antwort schreiben 


Möglicherweise verwandte Themen...
Thema: Verfasser Antworten: Ansichten: Letzter Beitrag
  Taster an Interrupt - Prellen geschickter vermeiden als millis() zu prüfen? Flap 19 1.266 04.08.2017 08:10
Letzter Beitrag: Binary1
  Schrittmotor Geschwindigkeit mit Wägezelle + HX711 Modul steuern Schrittmotor 6 433 31.07.2017 08:17
Letzter Beitrag: Schrittmotor
  Servo mit einem Taster und 433mhz steuern Thor Wallhall 63 2.207 29.07.2017 11:02
Letzter Beitrag: Thor Wallhall
  2 Servos ohne delay steuern Ratlos 27 1.465 26.07.2017 20:43
Letzter Beitrag: MicroBahner
  Roboter kompassgestützt steuern Snörb 5 567 22.07.2017 12:16
Letzter Beitrag: Snörb
  Arduino I2C Servo MarcelTitan 8 586 14.07.2017 10:09
Letzter Beitrag: Tommy56
  Bei Änderung eines Zustandes (boolean) Aktion auslösen - wie? Gelegenheitsbastler 3 313 04.07.2017 10:50
Letzter Beitrag: Gelegenheitsbastler
  MCP2307 - wie fragt man den Zustand eines Ausganges ab? Gelegenheitsbastler 2 262 22.06.2017 14:04
Letzter Beitrag: Gelegenheitsbastler
  Taster als Schalter -> Blinker bino29 8 530 22.06.2017 07:21
Letzter Beitrag: hotsystems
  Neo Pixel Clone mit 7 2812B Steuern Lil-De 8 378 12.06.2017 22:02
Letzter Beitrag: Lil-De

Gehe zu:


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