Hallo an alle

Hallo.
Mein Name ist peter.

Ich bin ein absoluter neu Einsteiger in Sachen programmieren und arduino.

Zu meinem projekt.

Ich habe einen rc truck in 1/14. Den möchte ich komplett über arduino steuern.
Lenkung fahren Beleuchtung und ein paar Extras.
Unter anderem auch das 3.gang getriebe das über einen Servo gesteuert wird.
Servo stellung 0grad = 1 Gang
Servo stellung 90 Grad = 2 Gang
Servo stellung 180 Grad = 3 Gang.

Umsetzen würde ich es gerne das wenn ich im 1gang bin einfach den Stick an der FB nach rechts tippe und so alle gänge nach einander durchschalten kam. Das gleiche auch wenn ich nach links tippe ich alle gänge schalten kann.
Also eine Tip Funktion und der Servo bleibt in der entsprechenden Position stehen. Soll aber nicht Übersteuern.
Also maximal 3 Positionen nur anfahren können.
Egal wie oft ich in eine Richtung steuere.

Kann mir da bitte jemand helfen.
Habe nichts passendes gefunden.
Gut… Ich weiß auch noch nicht recht wonach ich suchen muss :(.

Vielen Dank schon mal.

LG
Peter

Guck mal auf Servo - Arduino Reference

Dort ist die Arduino Servo Library erklärt, da wird dir geholfen.

In den Tutorials Knob und Sweep wird dann auch gezeigt, wie du deinen gewünschten Wert auf dem Servo einstellen kannst.

Ja aber da bleibt der Servo nur in der stellung solange der Wert gegeben ist. Also solange ich an der Fernbedienung in der gewünschte Richtung drücke.

Aber ich will ja eine Tip funktion. Also einmal links drücken. Serve geht in 0 Grad oder 90 Grad stellung und bleibt da auch während der Hebel der Fernbedienung wieder in die 0 stellung geht.

Hallo,
das sieht so aus, als wenn Du einen fertigen Sketch suchst- denn wirst Du nicht finden.
Die Referenz zu den Servo´s hast Du doch schon, also mach etwas aus den Beispielen.
Und einige Informationen wären nicht schlecht… mit “ich will” kommt hier keiner weiter.

Was ist es denn für ein Arduino?
Welcher Servo wird verwendet?
Wo befindet sich der Arduino?
Wie soll dieser seine Komandos erhalten?
Was hast Du eigentlich genau vor?

Gruß und Spaß
Andreas

Peter84:
Ja aber da bleibt der Servo nur in der stellung solange der Wert gegeben ist. Also solange ich an der Fernbedienung in der gewünschte Richtung drücke.

Aber ich will ja eine Tip funktion. Also einmal links drücken. Serve geht in 0 Grad oder 90 Grad stellung und bleibt da auch während der Hebel der Fernbedienung wieder in die 0 stellung geht.

Ganz einfach das PWM oder PPM Signal des Empfängers auslesen und wenn der Steuerknüppel nach rechts
geschoben wird und wieder in Mittelstellung zurückkehrt eine Variable um eins hochzählen. Wenn nach links
und Mitte um eins runterzählen. Die Variable begrenzen das die nicht kleiner 1 oder größer 3 sein kann.
Und dann einfach bei dem jeweiligen Wert in der Variable den Servo auf 0, 90 oder 180° fahren.

Da ich allerdings bisher weder mit Servo noch mit einem Empfänger einer Fernsteuerung am Arduino
gearbeitet habe, gibt es von mir leider nur Angaben wie es theoretisch geht und keine Codebeispiele.

Gruß, Katsumi

Hallo,
ist doch "ArduinoTasterSystem"

Taster gedrückt, LED geht an
Taster nicht gedrückt, LED geht aus

oder

Taster gedrückt, LED geht an
Taster nicht gedrückt, LED bleibt an
Taster gedrückt, LED bleibt an
Taster gedrückt, LED bleibt an
Taster gedrückt, LED bleibt an
Taster gedrückt, LED geht aus

Das kannst Du dem Arduino doch beibringen, egal- ob LED oder Servo.
Wenn Du aber tatsächlich ein richtiger Neuling bist, dann würde ich einmal mit einem StarterPaket anfangen.
Einiges an Grundwissen wird Dir da weiterhelfen- ohne wird das nicht funktionieren!
Gruß und Spaß
Andreas

Hallo Peter84,
was ist den das für ein RC Truck, bei dem zum schalten der drei Gänge, sowie für die Lenkung jeweils Servo-Wege von 180 Grad benötigt werden?? Bei jeder normalen RC-Steuerung haben Knüppel, Lenkrad und ja, auch die Schalter, die Proportinal Kanäle schalten einen Weg von ca. 2 x 45 Grad, also 90 Grad.
Ausgenommen vlt. Einziehfahrwerke bei Fliegern, die da (zumindest früher) 180 Grad Servo´s benötigten und natürlich Segelwinden.
Klar können die Servos meistens auch 180 Grad und teilweise noch etwas mehr, aber für ne Lenkung oder Nen Schaltgetriebe ist das eindeutig zuviel. Da würdest Du mit solch grossen Servo-Wegen die Gestänge verbiegen/beschädigen.

Sicher gibt es auch Spezialanwendungen bei Sonderfunktionen, bei denen ein grösserer Servoweg erforderlich ist, aber Lenkung und Schalten gehört da nicht dazu.

Dies sind also Faktoren, die Du im Arduinosketch berücksichtigen musst BEVOR Du den im Truck eingebauten Servo anschliesst. Dazu solltest du auch bedenken, wenn du bei nem Heckgetriebenen Fahrzeug, die Vorderräder um 90 Grad nach links oder Rechts stellst, stehen die Räder quer zur Fahrtrichtung und wirken nur noch als Bremse und nicht mehr zur Bestimmung der Fahrtrichtung..

LG Stefan

Hallo.

Also mal von Anfang an.
Ich habe einen tamiya rc truck in 1/14.
Sender und Empfänger sind eine monstertronic fs6 oder so ;).
Die aktuellen rc Komponenten will ich alle durch eine arduino uno r3 ersetzen.
Verbaut sind ausschließlich Standart Servos die man überall beziehen kann.
Die Aussage vom Servo weg mit 0 90 180 Grad sollten nur als Veranschaulichung dienen. Wie genau der stellwert wirklich ist weiß ich nicht. Aber ich brauche in jede Richtung den maximalen Servostellweg für das Getriebe und lenkung.
Die Mechanik ist so gebaut und ausgelegt das der maximale weg genutzt und gebraucht wird.

Einen fertigen Sketch will ich gar nicht.
So lernt man ja das programmieren nicht.

Was ich erhofft hatte waren evtl ein paar Anhaltspunkte in was für eine Richtung ich gehen muss.
Weil wie oben schon geschrieben bin ich absoluter Neuling in Sachen programmieren.
Mit Elektrotechnik kenn ich mich recht gut aus. Die jetztige steuerung ist auch selbst zusammen gesetzt. Mit klassischen rc Komponenten.

Und auf arduino bin ich gestoßen weil ich in dem truck eine neue steuerung rein haben will für zukünftige Erweiterungen. Was mit der jetzigen steuerung nur bedingt oder mit sehr viel Aufwand möglich wäre.

Ich bin schon fleißig am lesen und lernen. Aber so wie ich des mit der gewünschten getriebe Funktion will, habe ich leider noch nirgends was gefunden was ich als Anhaltspunkt nehmen kann.

Ich weiß Neulinge können nervend sein.
Aber hey... jeder hat mal klein angefangen

Hallo,
"evtl ein paar Anhaltspunkte in was für eine Richtung ich gehen muss."
Das ist nicht so einfach...

Eigentlich brauchst Du einen Arduino mit Ein- Ausgängen und Speicher ohne Ende.
Hier könntest Du das Üben mal anfangen.
Gruß und Spaß
Andreas

Ich denke mal, das Ansteuern des Servo ist das kleinste Problem. Das ist einfach eine servo.write() - Anweisung.
Aber wie erkenne ich , das ich den Befehl ausgeben muss? Die Frage ist, was der Arduino eigentlich als Input bekommt, wenn Du den Steuerknüppel antippst? Ist das schon ein reines Digital-Signal (High beim Tippen, LOW sonst) oder was kommt da an?

P.S. der Titel deines Threads könnte auch etwas aussagekräftiger sein :wink:

Ok Peter84,
wenn Du den vollen Servostellweg in Deinem Tamiya Truck benötigst, dann hast Du die Mechanik da ganz schön modifiziert?
Weil Tamiya-Fahrzeuge kommen normalerweise mit den im RC-Bereich üblichen 2 x 45 Grad aus. Gut man kann das servogestänge teilweise etwas näher zum Mittelpunkt des Servo-Armes verlegen, um eine noch feinfühligere Anlenkung und bei höherer Stellkraft zu erreichen, aber dies geht dann auf Kosten der Stellgeschwindigkeit. Ich kenne die mechanik der Tamiya Fahrzeuge sehr gut, hab für solche Trucks schon zuschaltbare Differentialsperren gebaut, und auch ein Untersetzungsgetriebe (nasssumpf geschmiert) für zwischen Motor und 3-Gang Getriebe (fÜr nen Brushlessmotor desse Drehzahl etwas zu hoch lag) entworfen und hergestellt. trotz allem, benötigte ich noch in keinem Tamiya viel mehr als die 2 x 45 Grad, die im RC-Modellbau praktisch Standard sind.

Gut, das war jetzt sehr OT und hat nix mit Arduino zu tun.

Wie andere schon geschrieben haben, mit der Servo-lib kannst Du die Servos problemlos steuern.
Du must halt einfach in Deinem Stetch dafür sorgen, dass die Servos sich auch dann bewegen, wenn Du das willst.
Du kannst ja einfach mal eines der Beispile die der Servo-lib beigefügt sind laden, speicherst es unter neuem namen ab, dann kannst Du nach hezenslust experimentieren. solltest Du dich dabei mal so verstricken, dass nix mehr geht, kannst Du einfach das originalbeispiel wieder laden und weiter machen.
Du wirst sehen, es macht echt Spass mit dem Arduino und Servos zu experimentieren.
So kommst Du dann auch zu nem Anfangssketch, auf dem Du aufbauen kannst, und den kannst DDu dann auch bei fFragen und Problemen mit ins Forum stellen, somit können wir dann auch ganz gezielt auf deine Fragen und probleme eingehen und Dir helfen.

LG Stefon

Ich glaube, Peter84 will eine Art Tiptronik.

Das geht zu machen, aber dazu sollte die Hardware klar sein. Was willst du denn an der RC Anlage alles ändern?