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
einen Servo mit zwei potis
01.06.2013, 21:29
Beitrag #1
einen Servo mit zwei potis
Hi, Leute
Ich hab mal ne kleine Frage ich möchte, das sich ein Servo, wen ich ich den ersten Poti
ganz drehe, um 90 grad dreht und wen ich den zweten Poti drehe, soll sich der Servo um weitere 90 Grad drehen.(Code währe nett)

Vielen Dank im Voraus

LG Mako
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
01.06.2013, 21:33
Beitrag #2
RE: einen Servo mit zwei potis
(01.06.2013 21:29)mako schrieb:  Hi, Leute
Ich hab mal ne kleine Frage ich möchte, das sich ein Servo, wen ich ich den ersten Poti
ganz drehe, um 90 grad dreht und wen ich den zweten Poti drehe, soll sich der Servo um weitere 90 Grad drehen.(Code währe nett)

Vielen Dank im Voraus

LG Mako

...selber Programmieren macht Stolz...Angel Tongue

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
01.06.2013, 22:12
Beitrag #3
RE: einen Servo mit zwei potis
Das weiß ich, ich glaube nur das dieses Forum dafür gedacht ist, Informationen zu erhalten, falls man selber mal nicht weiter weiß.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
01.06.2013, 22:20
Beitrag #4
RE: einen Servo mit zwei potis
(01.06.2013 22:12)mako schrieb:  Das weiß ich, ich glaube nur das dieses Forum dafür gedacht ist, Informationen zu erhalten, falls man selber mal nicht weiter weiß.

...ähm ich kann nicht erkennen das du schon einen Anfang gemacht hast über den man reden kann...sorry... aber ich sehe hier keine Auftragskiller....Big Grin

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
02.06.2013, 08:37
Beitrag #5
RE: einen Servo mit zwei potis
Ok, wen du es so willst hier ist mein erster Versuch, ich weiß das er nicht funktioniert, aber wenn du es so willst.

#include <Servo.h>

Servo myservo1; // create servo object to control the first servo


int potpin1 = 0; // analog pin used to connect the first potentiometer
int val1; // variable to read the value from the first analog pin
int potpin2 = 1; // analog pin used to connect the second potentiometer
int val2; // variable to read the value from the second analog pin

void setup()
{
myservo1.attach(9); // attaches the first servo on pin 9 to the servo object

}

void loop()
{
val1 = analogRead(potpin1); // reads the value of the first potentiometer (value between 0 and 1023)
val1 = map(val1, 0, 1023, 90, 179); // scale it to use it with the first servo (value between 0 and 180)
myservo1.write(val1); // sets the first servos position according to the scaled value
delay(15); // waits for the first servo to get there

val2 = analogRead(potpin2); // reads the value of the second potentiometer (value between 0 and 1023)
val2 = map(val2, 0, 1023, 0, 89); // scale it to use it with the second servo (value between 0 and 180)
myservo1.write(val2); // sets the second servos position according to the scaled value
delay(15); // waits for the second servo to get there
}
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
02.06.2013, 14:04
Beitrag #6
RE: einen Servo mit zwei potis
(02.06.2013 08:37)mako schrieb:  [quote]
Ok, wen du es so willst hier ist mein erster Versuch, ich weiß das er nicht funktioniert, aber wenn du es so willst.

Sääähr Gut, siehste nun weiß ich um welche BirnenÄpfel es sich handelt denn von der Servo.h hatte ich bislang keinen Schimmer...Big Grin, aber keine Sorge, das ist nicht das erste Servo wo ich mit einem üP ansteuere..Tongue ,nur eben nicht mit nem Ardi.Blush

Also das das so nicht gehen kann ist dir ja auch schon aufgefallen, weil das Servo kann sich ja nicht zerreisen und mal eben schnell um 90 Grad weiterhüpfen was bedeutet das du nur EINMAL einen Ausgabebefehl pro Servo fahren solltest.
Aber dann kommt gleich das nächste Problem ans Tageslicht und zwar WANN darf sich das Zweite Poti bemerkbar machen, erstens erst dann wenn das Erste Poti schon am Anschlag ist oder eben immer egal wo das erste Poti gerade steht ?
Das hast du bislang nicht definiert....Huh

Idea Machen wir es uns mal einfach und addieren einfach die Potis und legen es in die Hände des Benutzers das er das Zweite Poti erst nach dem das Erste am Anschlag ist benutzen darf und logischerweise muß er auch darauf achten das das Zweite Poti auf Null steht bevor er am Ersten dreht.

Die Deklarationen und das Setup lassen wir mal weg weil das passt so...


Code:
void loop()
{
val1 = analogRead(potpin1);        // reads the value of the first potentiometer (value between 0 and 1023)
   // und dann holen wir noch den Wert von Poti 2 gleich ab  
val2 = analogRead(potpin2);         // reads the value of the second potentiometer (value between 0 and 1023)
val2 = val2 + val1;   // rechnen wir das mal zusammen und missrauchen val2 dazu

val2 = map(val2, 0, 2026, 0, 180);  // Aenderung der Umrechung entsprechend und skalierung auf  0 bis 180 Grad
myservo1.write(val2);                  // sets the second servos position according to the scaled value

delay(19);                  // siehe Anmerkung * im Text
}


Das müßte so nun laufen, nun könnte man noch das so auslegen das das Zweite Poti erst nach dem erreichen vom Höchstwert des Poti1 mit eingerechnet wird....
...das kannst dir ja mal selber einbauen.... aber dann springt das Servo auf den Wert wo das Poti2 hat weil der Ardi ja das Poti nicht vorher zurückdrehen kann....hier wären Inkrementalgeber dann von Vorteil weil du da dann leicht das Zählregister zurücksetzen kannst....Nur die 3 Kanaligen ALPS Encoder habe ich bei den üblichen Bastlerquellen noch nicht gesehen....und die 2 Kanaligen Encoder sind recht ätzend beim abfragen...

So denn mal viel Spaß erst mal... Angel

Bitklopfer

Anmerkung *:
Hier aendere ich mal das Delay weil Servoimpulse sich typischerweise alle 20mS wiederholen...
...15mS sehe ich als recht sportlich an...
und die eigentliche Stellinformation ist 1 bis 2mS lang, die Mittelstellung also 1,5mS
wobei manche auch 1,55mS angeben. Du kannst mit dem Wert ja mal Experimentieren
und uns dann erzaehlen wo hier die Grenzen sind...Shy

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
02.06.2013, 20:32
Beitrag #7
RE: einen Servo mit zwei potis
Danke, das hilft mir sehr weiter, ich hatte nen Denkfehler Rolleyes
jetzt läuft das genau nach meinen Vorstellungen.

(mein Servo hat eine Stellzeit von 15ms)

LG Mako
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
02.06.2013, 20:56
Beitrag #8
RE: einen Servo mit zwei potis
(02.06.2013 20:32)mako schrieb:  Danke, das hilft mir sehr weiter, ich hatte nen Denkfehler Rolleyes
jetzt läuft das genau nach meinen Vorstellungen.

(mein Servo hat eine Stellzeit von 15ms)

LG Mako

okay...freut mich.
Kleine Anmerkung, die 15mS sind die Pausenzeit zwischen den Stellimpulsen. Die Stellzeit also die Mechanische ist wieder was anderes...
schau dir mal die Daten von dem Servo an:
Standart Modellbauservo
eine wirklich tolle Erklärung dazu habe ich hier gefunden:
Funktionsweise eines Modellbauservos
Daher auch mein Einwand bei den 15mS.... und ich kenne die Materie
schon ein paar Jahrzehnte...

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
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
  ATtiny und Servo Bibliothek malsehen 9 306 15.10.2016 18:09
Letzter Beitrag: malsehen
  Servo soll nur in Ruhelage stoppen Sven1996 1 239 19.08.2016 14:37
Letzter Beitrag: StephanBuerger
  Zwei ident Feuchtesensoren an Arduino Uno R4 Karli 5 354 24.07.2016 23:36
Letzter Beitrag: SkobyMobil
  Steuern von 4 Servo mittels eines Taster und eines Potis Jackie09 17 757 16.07.2016 11:43
Letzter Beitrag: Binatone
  Ausgabe druckt immer 2 Werte anstatt nur einen. Finde den Fehler nicht TimeMen 24 740 02.07.2016 14:18
Letzter Beitrag: hotsystems
  Servo und PWM Ausgabe F2Ingo 4 493 17.06.2016 14:53
Letzter Beitrag: F2Ingo
  Hilfe bei Servo-steuerung Innocence 7 813 23.02.2016 11:00
Letzter Beitrag: hotsystems
Bug Mit zwei Ultraschallsensoren die Drehbewegung eines Servos steuern Poet 5 560 21.02.2016 18:37
Letzter Beitrag: Carlo

Gehe zu:


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