Motor ansteuern über Tastenpad

Guten Tag,
ich habe mir vor ein paar Wochen ein Arduino Starter Kit gekauft, da ich einige dinge im Internet gesehen habe die mich neugierig gemacht haben.

Ein bisschen habe ich schon hinbekommen:

  • Drehzahlmessung
  • Motor mit einem Poti betreiben
  • Zahlen anzeigen lassen über ein Tastenpad

Das war bis jetzt nicht so das Problem. Mein ziel ist es über ein Tastenpad 3 stellige zahlen einzugeben, es zu bestätigen damit der Motor auf die “eingestellte” Drehzahl hoch bzw runter dreht und da kommt mein eigentliches Problem da ich überhaupt keine Idee habe wie ich dies anfangen könnte.

Ist dies überhaupt möglich oder nur mit einem Servo ?
Da ich nicht die Position ansteuern möchte sondern die Umdrehung/s.
Sollte dies möglich sein, habt ihr Anlaufstellen wo man sich darüber schlau machen kann oder ein code wo man etwas rumspielen kann ?

ich weis überhaupt kein anfang bzw woran ich mich etwas lang hangeln könnte

Ich kann dir ja mal ein paar Begriffe nennen…

z.B. bei den Benutzereingaben, da verwendet man im allgemeinen Parser, also endliche Automaten, um die Eingaben maschinenverständlich zu machen.

Und dein Drehzahl Dingen, gehört in die Ecke “steuern und regeln”.

Zudem ist das malen von Datenfluss- und Programmlaufplänen eine gute Orientierungshilfe.

Parser ?
hats du zufällig eine Seite die du mir da empfehlen würdest
Das was ich auf denn ersten Blick gesehen habe, hatte eher weniger mit meinem Problem zu tun gehabt.
Natürlich werde ich mir dies genauer noch anschauen. Schwer zu sagen auf einem ersten blick :grinning:

Doofe Frage
Ist dies “steuern und regeln” ein Forum Bereich oder wie meinst du dies ?

steuern und regeln

Hmmm…

Irgendwie, willst du ja deinem Arduino über das Keypad etwas mitteilen.
Damit der dann auch das tut, was du willst, ist es nötig eine Vereinbarung zu treffen.
Ein Protokoll.
Und beide, Mensch+Maschine müssen sich daran halten.
Der Mensch macht das mit seinen Hirnwindungen, und die Maschine braucht eben einen Parser(endlichen Automaten), um den Datenstrom, welcher vom Keypad kommt korrekt umzusetzen.

Aber bis jetzt kenne ich ja noch nicht mal dein Keypad…

Es ist das normale 4x4 Keypad was in einem Anfänger Kit drin ist von Arduino.

Ah okey
also ist es nicht möglich wie bei einem password der bei richtiger Eingabe einen Servo Motor “öffnet” bzw. “schließt” ?

oder

wenn man eine Mathe Rechnung über das Keypad und einem Display lösen möchte ?

Oje :smiley: sollte es so sein, werde ich mir mal Kaffee aufsetzen gehen ^^

Hallo,

es gibt da sicherlich verschieden Möglichkeiten. Du hast ja geschrieben das Du mit Deinem Keypad zahlen eingeben und auf dem Monitor anzeigen kannst , vermutlich einstellig. Nun kannst Du z.B einen der Tasten die keine Zahl ist, z.B das * oder sonst was anderes als Enter Taste nutzen. Du liest also einzelnen Zahlen erst mal in eine Zeichenkette ein und wenn dann Enter kommt machst Du eine Zahl draus.
Zeichenketten gibt es in C++ zwei Sorten . Eine Reihe von einzelnen char Zeichen ein char Array und ans Ende hängst Du immer das nächste neue Zeichen dran und eventuell den 0 Terminator für einen C-string. hier lesen
Ein String Objekt, das ist etwas anderes, und ist für Anfänger sicher einfacher zu handhaben ,hat aber Nachteile bei der Speicherverwaltung. Was das Ding kann findest Du in der Hilfe Referenz.

Dann gibt es noch die Möglichkeit wenn Du immer 3 Zahlen eingeben willst einen Zähler mitlaufen zu lassen. bei der ersten Stelle nimmst Du das eingegeben Zeichen und wandelst es in eine Zahl um und multiplizierst sie mit 100 , zweite mit 10 , usw. Ich persönlich finde die etwas umständlich und Fehleranfällig bei der Eingabe.
letztlich macht es sicher Sinn wenn Du auch ein Display hast um die Eingabe zu kontollieren.
Was Du mit dem Wert dann machst hängt von Deinem Motor ab. ist das ein Drehzahlsteller , oder ein Regelkreis.
Fang mal einfach an und verstelle mit der Eingabe von dem Keypad die Helligkeit von einer LED über einen PWM gesteuerten Ausgang.

Heinz

This topic was automatically closed 120 days after the last reply. New replies are no longer allowed.