Moin zusammen,
im Moment grübele ich, was ich an (zusätzlicher) Hardware benötige um einen Monitorlift mittels Stepper Motor zu fahren.
Wie gesagt, es wird ein Monitorlift. Führungen, Kugelumlaufspindel usw vorhanden.
Aber WIE realisiere ich das Heben/Senken? Ein CNC-Shield dazwischen? Ich will ja "nur" auf Tastendruck (ggf 2 Taster, vlt reicht ja sogar einer?) eine Achse immer von unten nach oben, und später wieder nach unten bewegen. Klar, ein Endschalter für die 0-Referenz, ggf ein "Not-Endschalter" am anderen Ende.
Kann ich das komplett als Programm im Arduino speichern?
Dann muss ich mich aber selbst um die Schritte kümmern, oder gibt es möglicherweise eine fertige Bibliothek, die das alles kann, ich aber nicht kenne?
Als Motor habe ich hier noch einen Closed Loop NEMA23 Kit
(Stepper-Online CL57T und 23HS30-5004D-E1000)
Finde gerade wohl den Wald vor lauter Bäumen nicht...
Wenn ich das richtig sehe, hat er den Treiber doch schon. Den CL57T kann er direkt über den Arduino ansteuern. Unklar ist, ob die mechanische Verbindung vom Stepper zu der Spindel bereits vorhanden ist.
Da braucht's dann eigentlich nur noch Bedientaster, Referenz/Endschalter, Netzteil, ein paar Kabel und ein schönes Gehäuse Sollte ein überschaubares Projekt sein .
P.S. Ein Not-Endschalter sollte immer per HW stoppen - unabhängig vom Arduino.
Radevormwald ... das weckt Erinnerungen. Die Gegend dort war früher in meiner Kindheit/Jugendzeit gern ein Wochendausflugsziel von Wuppertal aus - auch mit der Bahn, die damals noch fuhr.
Dann muß dieser die Spannungsversorgung des Motors unterbrechen (oder eventuel den Treiber deaktivieren) und es hilft nicht nur einen oben zu haben; da brauchst Du auch einen unten. Der Home Endschalter muß dann ein wenig vor dem Endschalter schalten und so einen langen Betätigungsweg haben, daß er auch noch bei Notaus betätigt ist.
Genau das ist der Sinn dahinter.
Wenn der NOT-Endschalter angefahren wird, stimmt irgendwas nicht, meistens in der Software, und da muss man erst mal nachsehen, was falsch ist.
Endschalter in Software sind für den normalen Betrieb in Ordnung. Aber sobald auch nur mechanische Beschädigungen auftreten können, wenn etwas schief läuft, baut man aus Sicherheitsgründen Notendschalter ein, die hardwareseitig wirken, alles Andere ist einfach nur Pfusch.
Das Gleiche gilt auch für NotAus-Schalter. Die gehören nicht in die Software sondern in die Hardware. Höchstens zusätzlich in die Software, damit die weiß, daß irgendwas passiert ist.
besten Dank für den "Input".
Also generell:
Ich benötige kein Shield, Driver lässt sich einfach via Arduino (wahrscheinlich UNO oder NANO) direkt ansprechen, Software-gesteuert über MOBA-Tools.
Es kommen Oben UND Unten ein Not-Endschalter hin, die die 48V direkt abschalten.
Sollte einer der Beiden angefahren werden, werde ich die Spindel manuell wieder in den richtigen Bereich drehen, einfach und sicher.
Unten kommt ein normaler Endschalter zum Abnullen.
Licht beim Fahren... naja
Risiko allgemein: Keine Kinder im Haus, keine Haustiere...
Aber mal gucken, ob ich über den Treiber den benötigten Strom "sehen" kann, und ein Limit einrichten, falls er deutlich überschritten wird.
Denn ein 2Nm-Motor, der (2:1 untersetzt) eine Kugelspindel treibt, da werden einige Kräfte frei, wenn man die Finger dazwischen bekommt, vor allem Richtung runter, denn dann kommen noch 10-12Kg bewegte Masse dazu.
Vielleicht mache ich doch noch eine Miniatur-Schaltleiste dazu oder 1-2 einfache Lichtschranken, mal sehen.
Klar, NEMA23 ist nur die mechanische Bauform, aber üblicherweise sind das schon etwas stärkere Motoren als NEMA17. Das Set hatte ich noch vom Bau meiner kleinen CNC-Fräse über, und daher...
Die mechanische Verbindung ist fertig, XL-Riemen und Zahnriemenscheiben, 2:1 untersetzt.
Effektiv wird der Fahrweg wie folgt aussehen:
Aufwärts:
Endsch. unten erreicht?
Schleichfahrt hoch, bis Endschalter frei + z.B. 10mm.
Schleichfahrt runter, bis Endschalter, System Nullen
Erst langsam, dann schneller bis fast oben, dann langsamer bis erste Zielhöhe erreicht ist.
Sperrklinke links und rechts ausfahren.
Prüfen ob ausgefahren.
Schleichfahrt absenken bis auf Sperrklinke, finale Höhe.
Motor aus.
Absenken:
Schleichfahrt auf erste Zielhöhe
Sperrklinken einfahren
Prüfen, ob eingefahren.
Erst langsam, dann schnell runter bis erste untere Position
Schleichfahrt finale Parkposition (liegt dann im Idealfall auf)
Motor aus
Es kommt also noch ein wenig weitere Hard und Software dazu.
2 Sperrklinken (RC-Servos die einen Riegel vor- und zurückbewegen,
Jeweils 2 Endschalter dazu.
Ein Poti, um bequem die schnelle Fahrt zu regeln
Eine seeehr grobe/einfache Klemm/verkantungsüberwachung über den Motorstrom
Ein SSR um das "dicke" Netzteil (48V für Motor) abzuschalten
Ein paar LED's, die verschiedene Zustände anzeigen, wie 5V, 48V, obere/untere Pos. erreicht.
Evt Taster und kleines Display in dezentem 3D-gedrucktem Gehäuse für die Bedienung und Anzeige.
Schrittmotore ziehen nicht mehr Strom wenn sie blockiert werden. Darum ist eine Blockierkontrolle über Motorstrom nicht möglich. Vielicht hat der Treiber einen Ausgang der blockieren übermittelt.
Hat der CL57T nicht einen Ausgang wenn Der Motor nicht die Schritte macht , die er angesteuert wird?