- 12V Akku mit 280 Ah bauen         
Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 13

Thema: Bräuchte Hilfe! Servo über 2 Taster 3 Positionen anfahren lassen. Mit Arduino

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Neuer Benutzer Öfters hier
    Registriert seit
    29.10.2016
    Beiträge
    5

    Bräuchte Hilfe! Servo über 2 Taster 3 Positionen anfahren lassen. Mit Arduino

    hey Leute

    ich bräuchte Hilfe bin Anfänger mit Arduino.

    ich würde gerne ein Servo über 2 Taster steuern

    1ter Taster fährt von 90 grad auf 1 grad und wieder auf 90 grad

    2ter Taster fährt von 90 grad auf 180 grad und wieder auf 90 grad

    leider weis ich kein Schaltplan und auch nicht welchen Code ich eingeben muss =)

    würde mich über eine Antwort freuen

  2. #2
    Erfahrener Benutzer Robotik Visionär Avatar von oberallgeier
    Registriert seit
    01.09.2007
    Ort
    Oberallgäu
    Beiträge
    8.685
    Willkommen im Forum.
    .. ich bräuchte Hilfe .. würde mich über eine Antwort freuen
    Das klingt danach, dass man das Projekt für Dich erledigen soll. Irgendwo in den Beiträgen von radbruch steht dazu etwas und wird auch von PICture in dessen Signatur zitiert: Wir unterstützen dich bei deinen Projekten, aber wir entwickeln sie nicht für dich. (radbruch)

    Mehr bräuchte man nicht dazu zu schreiben. Ich setze eins drauf und empfehle Dir mal mit den ersten Schritten am Arduino anzufangen - darüber hättest Du bei ein wenig eigener Motivation selbst stolpern können
    Erklärung was der arduino ist
    Erste Schritte mit demselben
    Wenn Du dann die ersten grundlegenden Schritte selbst erledigt hast und den arduino zu einer minimalen Funktion gebracht hast - z.B. ne Leuchtdiode blinken lassen - dann wird Dir auf entsprechende Fragen sicher weitergeholfen. Aber selbst das müsste nicht sein, weil hier, im RNWissen, die Ansteuerung von Servos ja ziemlich gut erklärt ist.

    Übrigens - klick mal =>hier<=
    Ciao sagt der JoeamBerg

  3. #3
    Erfahrener Benutzer Robotik Einstein Avatar von i_make_it
    Registriert seit
    29.07.2008
    Ort
    Raum DA
    Alter
    56
    Beiträge
    2.814
    Zitat Zitat von kleinfranke Beitrag anzeigen
    bin Anfänger mit Arduino.
    Die Aussage ist ja eine andere wie "ich möchte mit Arduino anfangen".
    Also hast Du demnach ja schon angefangen.

    Welches Board hast Du denn?

    Zitat Zitat von kleinfranke Beitrag anzeigen
    ich würde gerne ein Servo über 2 Taster steuern
    Jetzt stell ich mich mal absichtlich dumm.
    Was meinst Du mit Servo?
    https://de.wikipedia.org/wiki/Servo
    Einen Modellbau RC-Servo oder einen Servomotor?
    https://de.wikipedia.org/wiki/Servomotor

    "über 2 Taster Steuern"
    Schau doch mal hier:
    http://www.marc-schaffer.ch/data/Arduino101.pdf
    Auf Seite 25 und 26, da findest Du die Arten auf die man Schalter/Taster an Arduinos anschließen kannst.
    Und auf Seite 45/46 wie man ein RC-Servo anschließt.
    Damit sollte es Dir möglich sein einen Schaltplan zu zeichnen.

    Wenn Du das geschafft hast, kann man sich den mal ansehen.
    In der Zwichenzeit könntest Du auch mal zusammenschreiben, wie der Programmablauf so aussehen soll.
    Diese Beschreibung in Code umzusetzen ist dann der letzte Schritt.

  4. #4
    Neuer Benutzer Öfters hier
    Registriert seit
    29.10.2016
    Beiträge
    5
    natürlich hab ich mich damit schon etwas beschäftigt
    habe auch schon mal was gezeichnet

    beim code versteh ich leider nur Bahnhof

    es ist ein rc servo ein großes
    und habe ein arduino mega 2560 R3
    Miniaturansichten angehängter Grafiken Miniaturansichten angehängter Grafiken Untitled Sketch 3_Steckplatine.jpg   20161030_153120.jpg  

  5. #5
    Erfahrener Benutzer Robotik Einstein Avatar von i_make_it
    Registriert seit
    29.07.2008
    Ort
    Raum DA
    Alter
    56
    Beiträge
    2.814
    Was ich sehe ist ein Verdrahtungsplan, kein Schaltplan.
    Was nicht zu erkennen ist, sind die Taster öffner oder Schließer?
    Sind die Taster High oder Low schaltend?

    Da davon der Stromverbrauch und auch der Code für die Tasterauswertung abhängt, fehlt da also die entscheidente Information.
    Ich verweise nochmal auf Seite 25 und 26 des von mir verlinkten pdf.

    Die Pins 7,6 und 5 dürften OK sein.

    Zum Code:

    Zitat Zitat von kleinfranke Beitrag anzeigen
    1ter Taster fährt von 90 grad auf 1 grad und wieder auf 90 grad
    Zitat Zitat von kleinfranke Beitrag anzeigen
    2ter Taster fährt von 90 grad auf 180 grad und wieder auf 90 grad
    Frage: was soll passieren wenn der RC-Servo auf 1 (0) Grad steht und man drückt Taster 2?
    Frage: was soll passieren wenn eine Taste gedrückt wird wärend grade die letzte Bewegung ausgeführt wird?

    Ansonsten überlege mal, Ein Taster ist kein Schalter, speichert als selbst keinen Zustand.
    Wenn der selbe Taster also einmal das Anfahren von Position 90° und einmal von 180° auslösen soll und selbst nicht merken kann welche Auswahl mit dem letzten Tastendruck getroffen wurde und auch nicht welche der Stellungen im Moment anliegt, wie würdest Du das machen?
    Geändert von i_make_it (30.10.2016 um 18:03 Uhr)

  6. #6
    Neuer Benutzer Öfters hier
    Registriert seit
    29.10.2016
    Beiträge
    5
    puhhh also

    ich würde gerne ein taster nehmen der 2 anschlüsse hat also beim drücken kreis schliesen
    das was ich im bild habe hab ich nur mal so genommen was ich so in büchern gesehen habe

    das rc servo soll für eine Motorrad Schaltung benutzt werden z.b 1 taster gang runterschalten Position 90 auf 0 grad wenn taster 2 gedrückt wird soll ein gang hochgeschaltet werden 90 auf 180 grad

    ich bin etwas überfragt
    sehr lieb das sie helfen

  7. #7
    Neuer Benutzer Öfters hier
    Registriert seit
    29.10.2016
    Beiträge
    5
    Genau so soll es sein =)
    Es soll für ein rennkart werden für ein Viertel Meilen Rennen.
    Es gibt Sowas für karts aber das kostet 900 Euro

    - - - Aktualisiert - - -

    Hier mal eine Adresse
    http://me-shifter.com/?page_id=21

  8. #8
    Erfahrener Benutzer Robotik Einstein Avatar von i_make_it
    Registriert seit
    29.07.2008
    Ort
    Raum DA
    Alter
    56
    Beiträge
    2.814
    Für den Code braucht es erst mal die Startbedingungen.
    Beim Einschalten sollte wohl sinnvollerweise der erste Gang eingelegt sein.
    Also muß sichergestellt werden, daß das Steuersignal entsprechend ansteht bevor der Servo mit Strom versorgt wird.
    Dementsprechend muß auch die Merker Variable für den Gang vorbelegt werden.

    Dann kommt die Abfrage der Tasten, Idealerweise per Interrupt und ISR.
    Damit wird die Merker Variable inkrementiert/dekrementiert.
    Entsprechend dem Wert derselben dann die Position angefahren.

    Spätestens wenn man jetzt einfach ausschaltet ohne zurück in den ersten Gang zu schalten, kommt man mit einem RC-Servo beim nächsten Einschalten, Probleme.

    Du wirst also mehr als 2 Taster benötigen, denn neben den Tasten zum Steuern mußt Du auch noch wissen wo Das Servohorn steht (1. Gang, zwichen 1. und 2., 2. Gang, zwichen 2. und 3., 3. Gang).
    Im ungünstigsten Fall gibt es sonst einen Getriebschaden.

  9. #9
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    27.08.2013
    Ort
    Region Basel
    Alter
    66
    Beiträge
    2.435
    Hallo,
    Zitat Zitat von kleinfranke Beitrag anzeigen
    Genau so soll es sein =)
    Es soll für ein rennkart werden für ein Viertel Meilen Rennen.
    Es gibt Sowas für karts aber das kostet 900 Euro
    Also, du musst das Problem zuerst in zwei Teile zerlegen.
    1. Der Tasten-Klapperatismus.
    Du hast das Problem, dass die Tasten prellen. Das Teil schaltet nicht wirklich sauber, sondern erzeugt im Bereich von etwa 10ms eine Menge Impulse. Die Elektronik ist schnell genug um diese als einzelne Impulse zu erkennen. Das will man aber nicht. Du musst also z.B. mit Timern sicherstellen, dass dies nur als einzelner Impuls ausgewertet wird. Die Prellzeit hängt auch noch von der Tastenkonstruktion und dem Alter der Taste ab.

    Vorstellen kannst du dir das bei einem Springkontakt folgendermassen:
    Der Kontakt wird zuerst mit einer Feder vorgespannt und schnellt dann auf den anderen Kontakt. Dort hüpft er dann wie ein Ball mehrfach auf und ab und unterbricht dabei immer wieder den Kontakt.

    Es gibt auch Schiebekontakte, wie z.B. bei Schiebeschaltern. Dabei wird der Kontakt beim Betätigen über den anderen Kontakt geschleift. Mikroskopisch ist so eine Oberfläche aber nicht Glatt, sondern ähnelt mehr den Alpen. Das ruckelt und hüpft dann eben auch.

    Ein anderes Problem ist dann noch, dass die Tasten unterschiedlich lang gedrückt werden können, möglicherweise sogar länger als sie Schaltzeit des Getriebes ist. Da musst du dir auch erst einmal Gedanken machen, was in einem solchen Fall geschehen soll.

    Und dann musst du noch mit Störungen rechnen. Meistens verwendet man keine Dieselmotoren, also ist da eine Zündkerze, welche mit Hochspannung betrieben wird. Der Name "Funk", für Radio usw., kommt daher, dass man in den Anfängen Funken-Sender benutzt hat, damit konnte man aber nur Morsen. Jeder Draht ist aber auch eine Antenne und die Elektronik weiss dann nicht, ob die Taste gedrückt wurde oder es ein Störsignal ist.
    Das muss man dann durch entsprechende Dimensionierung und Filter-Kondensatoren unterdrücken, sonst schaltet dein Motorrad grundlos in einen anderen Gang!

    Eine mögliche Lösung wäre, das ganze mit Timern auszuwerten:
    a. Taste kürzer gedrückt als T1 --> Störung oder Prellen
    b. Taste mindestens länger als T2 gedrückt --> Schaltvorgang auslösen.
    c. Option: Taste länger als T3 gedrückt --> weiteren Schaltvorgang auslösen.
    d. Taste länger als T4 gedrückt --> Dauerkontakt, Defekt, Kurzschluss

    So jetzt haben wir das mal für EINE Taste.
    Was ist wenn BEIDE Tasten gleichzeitig gedrückt werden?
    Was ist wenn man 2x schneller Drückt als vom Getriebe ausgeführt werden kann? Wird dann der zweite Tastendruck ignoriert oder zwichen gespeichert um 2 Gänge weiter zu schalten?
    Das sind aber sicher noch nicht alle Bedingen.

    2. Schaltwerk
    In der realen Welt bracht Bewegung immer Zeit. So ein Mikroprozesserchen verbringt die meiste Zeit sowieso nur mit auf Warten auf ein Ereignis.
    Wenn du dem Servo den Befehl gibst sich um 90° zu Bewegen, musst du ihm auch entsprechend Zeit lassen dies umzusetzen. Erst dann kannst du ihm sagen, dass er wieder in die Grundposition gehen soll. Um einen Schaltvorgang auszulösen, muss sich der Servo aber in der Grundposition befinden. Mechanik hat die Eigenschaft sich je nach Temperatur unterschiedlich leicht zu bewegen, das beeinflusst aber auch die maximale Geschwindigkeit mit welcher der Servo sich bewegt. Hinzu kommt auch noch die Abhängigkeit des Servomotors von der Spannung.
    Hier ist es Hilfreich, wenn man eine Rückmeldung der Servostellung hat, in deinem Fall also Grundstellung, Schaltpunkt + und Schaltpunkt -.
    Dann kann man warten bis das entsprechende Signal kommt, egal wie schnell der Servo dies gerade umsetzen kann.
    Zudem sollte man auch die Zeit überwachen. Kann das der Servo nicht in einer maximalen Zeitspanne erreichen, ist was defekt, klemmt etwas oder es liegt sonst ein Fehler vor.

    3. Reset
    Du hast ein Schrittschaltwerk vorliegen. Je nachdem wann die Spannung abgeschaltet wurde, weisst du nicht welcher Gang mechanisch eingelegt ist. Eine Möglichkeit wäre, beim Einschalten einfach mal 10 Gänge runter zu schalten, dann bist du garantiert im 1. Was ist dann aber mitten im Rennen, bei einer Störung, welche einen Kurzen Stromausfall erzeugt und somit einen Reset auslöst? Bei Tempo 150 machst du dann schnell den Abstieg über den Lenker, was zudem ungesund sein soll!
    Also wäre es einfacher noch den aktuell eingelegten Gang messtechnisch zu erfassen.
    Um Programm-Abstürze zu erkennen, mit welchen durch Störungen immer zu rechnen ist, sollte man noch den Watchdog-Timer aktivieren.

    4. Weiteres
    Wünschenswert ist sicher noch eine 7-Segmentanzeige für den gerade eingelegten Gang. Vermutlich noch besser wäre eine doppelte Anzeige, einmal für den gewählten und einmal für den gerade mechanisch eingelegten Gang.

    Also, zuerst einmal viel zu Bedenken und eine Menge Papierkram, um das ganze Verhalten erst einmal festzulegen.
    Dabei spielen die Programmiersprache, verwendete Hardware usw., noch gar keine Rolle.
    Ganz wichtig dabei ist es auch noch daran zu denken, dass auch einmal etwas schief gehen kann (Störsignale)! OK, diese Zeit hat man dann auch später im Gipsbett, aber es zerrt sehr an den Nerven, wenn man eine Lösung hat, diese ausprobieren möchte aber ans Bett gefesselt ist.

    MfG Peter(TOO)


    Aber du hast ein Pflichtenheft für das weitere vorgehen.
    Manchmal frage ich mich, wieso meine Generation Geräte ohne Simulation entwickeln konnte?

  10. #10
    Erfahrener Benutzer Robotik Einstein Avatar von i_make_it
    Registriert seit
    29.07.2008
    Ort
    Raum DA
    Alter
    56
    Beiträge
    2.814
    Hallo kleinfranke,

    Du brauchst mir keine PN oder Mails zu senden.

    Das hier ist ein Forum,
    https://de.wikipedia.org/wiki/Forum_(Kultur)
    hier kann man seine Fragen posten.

    Einen Schaltplan hast du immer noch nicht gepostet, ich hatte Dir ein PDF Verlinkt und noch die Seitenzahlen angegeben, wo Du das zur Not einfach abzeichnen kannst.
    Dann hast Du (nicht nur von mir) diverse Fragen erhalten was unter welchen Bedingungen passieren soll.
    und ich hatte Dich aufgefordert Deinen Programmablauf einfach mal als Text zu beschreiben. Das dann in konkreten Code zu fassen ist zwar auch keine Kleinigkeit, aber wir hier im Forum sehen dann das Du Dich damit befasst und wo Deine Schwächen sind.
    Privat biete ich hier Hilfe zu Selbsthilfe.
    Beruflich biete ich Entwichklungs- und Ingenieurleistungen an.
    Da sollte dann von Dir aber eine ordentliche Angebotsanfrage mit Pflichten-/Lastenheft kommen, dann kann ich das meinem Vertrieb geben und du bekämst ein konkretes, bepreistes Angebot von meiner Firma.
    Ich habe täglich mit Kunden zu tun die den Ferrari zum Preis vom Fiat Panda haben wollen.
    Und auch hier kommen immer wieder welche die Nichts tun wollen und gerne ein Projekt für lau entwickelt bekommen möchten.

    Von daher, hier noch mal der Post von oberallgeier, denn ich halte es genauso.

    Zitat Zitat von oberallgeier Beitrag anzeigen
    Willkommen im Forum.
    Das klingt danach, dass man das Projekt für Dich erledigen soll. Irgendwo in den Beiträgen von radbruch steht dazu etwas und wird auch von PICture in dessen Signatur zitiert: Wir unterstützen dich bei deinen Projekten, aber wir entwickeln sie nicht für dich. (radbruch)

    Mehr bräuchte man nicht dazu zu schreiben. Ich setze eins drauf und empfehle Dir mal mit den ersten Schritten am Arduino anzufangen - darüber hättest Du bei ein wenig eigener Motivation selbst stolpern können
    Erklärung was der arduino ist
    Erste Schritte mit demselben
    Wenn Du dann die ersten grundlegenden Schritte selbst erledigt hast und den arduino zu einer minimalen Funktion gebracht hast - z.B. ne Leuchtdiode blinken lassen - dann wird Dir auf entsprechende Fragen sicher weitergeholfen. Aber selbst das müsste nicht sein, weil hier, im RNWissen, die Ansteuerung von Servos ja ziemlich gut erklärt ist.

    Übrigens - klick mal =>hier<=

Seite 1 von 2 12 LetzteLetzte

Ähnliche Themen

  1. Brauche Hilfe! Servo über 2 Taster 3 Positionen anfahren lassen. Welchen Controller??
    Von Toni13 im Forum Suche bestimmtes Bauteil bzw. Empfehlung
    Antworten: 7
    Letzter Beitrag: 19.04.2013, 21:40
  2. Servo 3 positionen anfahren lassen
    Von Christian3 im Forum Robby RP6
    Antworten: 2
    Letzter Beitrag: 16.08.2009, 00:08
  3. LEDs über Taster dauerhaft leuchten lassen
    Von JensK im Forum Elektronik
    Antworten: 14
    Letzter Beitrag: 15.12.2008, 16:53
  4. Motor langsam anfahren lassen ...
    Von H3llGhost im Forum Asuro
    Antworten: 4
    Letzter Beitrag: 08.01.2008, 18:04
  5. Bräuchte Hilfe bei LCD-Ansteuerung
    Von Spartakaktus im Forum C - Programmierung (GCC u.a.)
    Antworten: 2
    Letzter Beitrag: 31.01.2005, 18:26

Stichworte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

LiFePO4 Speicher Test