Ich möchte mit einem Arduino eine analoge (möglichst 360° / unendlich) Anzeige bauen. Genau genommen einen Kompass (so mit einem Zeiger der sich dreht)
Da stellt sich als erstes die Frage, wie betreibt man den Zeiger?
Schrittmotor:
braucht wohl viel Strom, und er muss kallibriert werden. Dies scheidet bei meinem späteren Aufbau leider aus.
Servo:
Gibt leider keine die dauerhaft drehen, wenn man einen Servo umbaut, dann gibt er keine Daten mehr raus, wo er wirklich steht (man legt ja das Poti still)
Jetzt stehe ich vor der Wahl einfach damit zu leben, dass mein Kompass in den hinteren 180° quasi blind ist (mit nem 180° Servo), oder ich finde eine andere Möglichkeit einem Durchlaufservo doch noch ein Positionssignal zu entlocken.
Wie schaut es denn mit einem inkrementalen Drehgeber mit Referenzimpuls aus?
Megatron Punkt Deutschland bietet einen an, SPTS, leider für 60?
(sorry, darf noch keine Links posten...)
Könnte ich da die Welle meines Servors durchstecken (Typ B der SPTS macht das möglich) und somit eine Positionsanzeige bekommen?
Kann ich diesen Inkrementalgeber mit einem Arduino Uno auslesen?
Gibt es evtl. günstigere Inkrementalgeber mit Referenzimpuls? 60? ist schon fast etwas teuer. Da wird die Variante mit "Kompass ist in den unteren 180° blind" schon fast erträglich, der Servo kostet nen 10er...
Der wäre zwar deutlich günstiger, aber er hat keinen Referenzpunkt
Dann müßte ich ihn wieder von Hand referenzieren, was bei meinem späteren Aufbau nicht geht
Ich überlege grade was passiert, wenn ich auf der Incrementalscheibe einfach eine weiße Lücke schwarz anmale (Edding ist mein Freund)
Wenn ich dann den Motor mit einer konstanten Geschwindigkeit laufen lasse, müssen die Messwerte vom Incementalgeber an dieser Stelle falsch sein.
Wenn er also beim einschalten einfach meinetwegen 1 mal ne 360° Drehung macht, müsste ich ein mal in den Daten einen Fehler bekommen. Ab diesem Fehler weiß ich, wo der Zeiger wirklich ist.
Ein kleiner Schrittmotor mit einem kleinen Endschalter oder Lichtschranke für den Nullpunkt könnte gehen.
Die Aneige muß ja nicht so genau sein und ein Schrittmotor einmal positioniert mit ausbalanciertem Zeiher bleibt in der Stellung in den Du ihn drehst. Du brauchst nur Strom, wenn Du ihn drehst und kannst dann den Motortreiber und die Lichtschranke ausschalten bzw in Standby, Enable stellen. Das verbraucht Dir dann am wenigsten Strom und ist auch die billigste Lösung. zb Schrittmotor NEOCENE 2T354207 online kaufen | Pollin.de
Ein Servo mit einem Getriebe 2:1 (dann hast Du 360Grad) verbraucht dauernd einige mA auch wen Du keine beue Position anfährst.n
Grüße Uwe
Also muss ich nicht diese Platine die bei dem Schrittmotor dabei ist irgendwie zweitverwerten
Ich nehme an das Motorshield geht auch oder? Weil dieses habe ich bis Freitag fertig gelötet
Wie du willst, bei 3E für beides kannst du es aber auch wegwerfen. Schau die mal das Datenblatt des TreivberICs an Vieleicht gehts Dir gut.
Der andere Motordriver ist fertig zusammengelötet; wenn Du ihn bekommst wirst Du wissen wieso ( er ist 1,5x2 cm groß; Du brauchst nur Pfostenstecker oder Kabel dranzulöten; mit SLEEP schaltest Du ihn ab; DIR wählst Du die Richtung, und ein Rechtecksingal an STEP dreht den Motor weiter; M1,M2, M3 stellst Du auf Vollschritte.
Beim Motorshield (L293D) kannst Du den Treiben nicht 100% abschalten (stromsparen).
Interpretiere ich es richtig, dass ich den teureren direkt vom Arduino aus mit Strom versorgen könnte, hingegen der preiswertere eine eigene Stromversorgung benötigt?
Nein;
Der A4983 hat 2 Stromversorgungen: Eine für den Motor (8 bis 35V) und eine Spannung für die Logik (3 bis 5,5V) Die teurere Version hat 2 Spannunsstabilisatoren für 5 bze 3,3V damit kannst Du die Logikspannung aus der Motorspannung bekommen. Du kannst den Logikteil auch mit der gleichen Spannungsversorgung versorgen wie den Arduino und darum die billigere Version benutzen.
Grüße Uwe