Warning: mysqli_num_fields() expects parameter 1 to be mysqli_result, boolean given in /www/htdocs/w01076fe/html/maker-werkstadt/k9-12/wp-includes/wp-db.php on line 3351

Heute habe ich mal wieder für den ein oder anderen eine kleine nützliche elektronische Schaltung.
Am Ende des Beitrag findet Ihr auch ein kleines Video, was das Ganze schön veranschaulicht.

Ich hatte im Sommer für meine erste selbstgebaute CNC-Fräse „Ava“ eine luftgekühlte 500 Watt Chinafrässpindel mit Netzteil, Spindelhalterung und den gängigsten Spannzangengrößen bestellt. Kostenpunkt waren rund 70 EUR für das Set.

Die ganze Zeit hatte ich die Spindel einfach parallel betrieben. Heißt, wenn ich was fräsen wollte, habe ich halt die Geschwindigkeit manuell über den am Netzteil angeschlossenen Poti eingestellt und die Spindel mit dem Netzteil gesondert ein- und ausgeschaltet.

Größter Nachteil hierbei: Bei Problemen kann man zwar die Achsen mit dem Notschalter abschalten, aber die Spindel läuft erbarmungslos weiter.

Jetzt in unserer Zwangspause habe ich mich mal in meinem Büro hingesetzt und mir überlegt, wie ich die Spindel über die CNC-Software ein- und ausschalten lassen und auch gleichzeitig die Geschwindigkeit über die Sofware einstellen lassen kann.

Die Geschwindigkeit der Spindel lässt sich bei meinem Netzteil wie gesagt mit einem 10k-Potentiometer manuell einstellen. Parallel gibt es aber noch den so genannten Mach3-Eingang. Beide Anschlüsse steuern mit einem Normsignal (Analogspannung) die Drehzahl der Spindel in einem Bereich von 0-10 VDC.

Der Mikrocontroller (Arduino Uno R3) mitsamt CNC Shield V3 und installiertem Grbl1.1 liefert am Z+ – Ausgang eine Spannung von 0-5 V DC.

Super. Jetzt brauchen wir also nur noch eine Art „Frequenzumrichter“. Dieser muss unser Arduino-Analogspannungsignal nur verdoppeln, dann können wir es in den Mach3-Eingang einspeisen.

Eine Möglichkeit das Ganze umzusetzen ist es, einen OpAmp (Operation Amplifier/Operationsverstärker) zu verwenden. Mit dem entsprechendem Spannungsteiler können wir die Eingangsspannung am Ausgang verdoppeln. Hierfür benötigen wir also einen Faktor 2.

Da ich auch noch eine wirkliche stromlose Abschaltung haben möchte und nicht nur, wenn die Eingangsspannung des PWM-Signals 0V ist, habe ich zusätzlich noch ein Relais, was die Spindel definitiv vom Strom nimmt. Neben dem direkten Abschalten über den Not-Aus-Knopf.

Für das Ganze braucht es nur eine handvoll günstiger Bauteile, etwas Kabel und fleißige Hände.

Als erstes mal die verwendeten Komponenten im Einzelnen und wie sie miteinander verbunden sind:

CNC-Spindelsteuerung
(Bild zum vergrößern anklicken)

 

Der Schaltplan:

CNC-Spindelsteuerung Schaltplan
(Bild zum vergrößern anklicken)

Ich habe einen LM358 als OpAmp verwendet, da dieser über zwei Operationsverstärker in einem IC-Gehäuse verfügt.
Der erste OpAmp verdoppelt die Spannung für die Drehzahl, der zweite OpAmp hebt jedes Signal auf mindestens 0,7 V an, es sei denn, der Wert ist 0 V oder zu knapp darüber.

Spoiler: Die 0,7 V benötigen wir zum Schalten eines Transistors und somit ist er dafür zuständig, die Spindel richtig Ein- oder Auszuschalten.

 

Fertige Lochraster-Platine:

Steuerplatine
(Bild zum vergrößern anklicken)

Die blauen Leiterbahnen sind Drahtbrücken.

 

Wie funktioniert nun das Ganze?

Der LM358 wird mit den 24 V des ersten Netzteils (ist für alles außer der Spindel verantwortlich) versorgt. Ein Step-Down-Modul versorgt ebenfalls den Stromkreis aus den 24 V und zwar mit 5 V. Diese 5 V brauchen wir für Arduino, das Schaltrelais und auch für die optischen Endschalter.
Das CNC-Shield mitsamt seiner Steuerlogik und den Motortreibern wird ebenfalls direkt mit 24 V versorgt.

Ganz wichtig: Das Potentiometer des Netzteils darf jetzt NICHT mehr angeschlossen sein, sonst kanns leicht verkokelt riechen. 🙂

Angenommen, wir schalten mit unserer CNC-Software die Spindel mit dem Kommando „M3 S1000“ ein, so sendet der Z+ – Ausgang des CNC-Shields 5 V.
1000 ist hierbei der maximale Wert, also die höchste Drehzahl, die die Spindel erreicht.

Dieses 5V-Signal geht in den dritten Pin des LM358 und wird mit dem Spannungsteiler an Pin 2 verglichen und über Pin 1 verstärkt ausgegeben. Wir brauchen für den Faktor 2 hier einen Teiler von jeweils 10k. Zur Feinjustierung habe ich einen 10k-Poti verwendet.
Wenn wir jetzt mit unserem Multimeter die Spannung am Ausgang „Spindle PWM IN“ messen, sollte unser Multimeter rund 10 VDC anzeigen. Also volle Leistung/Umdrehung. Falls nicht, justieren wir am Poti so lange, bis wir diesen Wert haben.

Wenn wir nun unsere Spindel mit dem Kommando „M5“ anhalten und mit dem Kommando „M3 S500“ die Spindel mit 50% Leistung ansteuern, messen wir rund 2,5 V am Ausgang „Spindle PWM IN“. Passt.

„M3 S0“, oder „M5“ setzt den Wert auf 0 V.
Da ich aber gerade bei Werten von unter S100 die Spindel intern leise brummen hörte, wollte ich eine definitive Abschaltung haben, denn dummerweise war der Wert nie so wirklich 0.

Als Lösung habe ich mich dafür entschieden, dass ich den zweiten OpAmp des ICs hierfür nutzen kann. Alles, was oberhalb von „S 100“ liegt, erzeugt eine annehmbare Drehung der Spindel und ist es wert, dass die Spindel eingeschaltet werden soll. Darunter sinds Kriechspannungen, die ich nicht will.

Daher nehme ich das Ausgangssignal des Pin 1 und leite es als Eingangssignal, das verstärkt werden soll in den Pin 5 des OpAmps. Hier nutze ich nun einen 10k/5k-Spannungsteiler (Faktor 1,5) um sicher zu sein, dass das Signal mindestens 0,7 V erreicht, um einen Transistor durchzuschalten.

Da das verwendete Relais gegen GND schaltet, brauchen wir diesen Transistor, um eine Inverterschaltung aufzubauen, ansonsten wäre ohne sie das Relais angezogen, wenn die Spindel aus ist und nicht angezogen, wenn die Spindel läuft. In beiden Fällen würde sie sich dann ja nicht drehen, was ziemlich blöd ist.

Die invertierende Schaltung sorgt also dafür, dass, wenn das Signal 0,7 V ist, der Transistor durchschaltet und somit das Relais gegen GND schaltet. Das Relais schaltet durch und die Spindel läuft an.

Ist das Signal 0V, sperrt der Transistor und das Relais schaltet gegen +5V. Somit schaltet sich das Relais ab und die Spindel hört auf sich zu drehen.

Das ist die ganze Magie. 🙂 Eine einfache Schaltung, die künftig für mehr Sicherheit und Komfort sorgt beim Einsatz der Fräse.

 

Endstopps

(Bild zum vergrößern anklicken)

Kommen wir abschließend noch zu den Endschaltern. Ich habe mich für optische Endschalter entschieden. Bei der Art der Verkabelung habe ich mich für „normally closed“ entschieden. Ich habe insgesamt sechs Schalter. Auf jeder Achse zwei Stück an den jeweiligen Endpunkten.

Warum Lichtschranke statt Schalter? Ganz einfach: Sie gelten als höchst zuverlässig und reagieren sofort.

Und warum „normally closed“ und was ist das überhaupt?

Stellt Euch das als einen Stromkreis mit einem Schalter und einer Lampe vor. Ist der Schalter ausgeschaltet und ist die Lampe ebenfalls aus, spricht man von „normally open“, denn in dem Moment, wo ich den Schalter drücke, schließe ich den Schaltkreis und der Strom fließt.

Bei „normally closed“ ist es gerade umgekehrt. So lange bis der Schalter gedrückt wird, fließt der Strom und die Lampe brennt. Das ist „normally closed“
Drücke ich jetzt in diesem Stromkreis den Schalter, geht die Lampe aus.

Normally closed verbraucht im Gegensatz zu normally open immer Strom. Erst beim Unterbrechen des Stromkreis fließt halt keiner mehr.

Eigentlich könnte man die Endschalter auch einfach „normally open“ betreiben. Nachteil hier wäre dann aber, dass in einem Fehlerfall (bspw. bei Defekt einer Leitung zum Sensor) der Fehler nicht erkannt wird, da der Sensor ja nicht den Stromkreis schließen kann und auf Grund des Defekts immer 0V hat.

Bei „normally closed“ würde ein Defekt der Leitung die 0V an die CNC-Software übermitteln und die Fräse sofort zum anhalten zwingen.

Nebenbei: Dieses Prinzip nutzt man auch bei Alarmanlagen, denn so kann man nicht so leicht die Sensoren „blind“ machen, in dem man ihnen einfach den Strom abklemmt. 🙂

Der Aufbau ist ganz einfach. Auch hier kommt lediglich eine Inverterschaltung zum Einsatz, die das Signal gerade umdreht. Pro Sensor zwei Widerstände, ein Transistor, fertig.

 

Die Lochrasterplatine (3x für X, Y und Z-Achse)

Hier ist die Platine, die pro Achse zum Einsatz kommt. Es werden parallel zwei Lichtschranken abgefragt. Wird eine der beiden unterbrochen, sendet dies einen 0V-Impuls an den „to controller“-Ausgang. Dieser ist mit dem entsprechenden Pin des CNC-Shields verbunden.

OptischeEndstopps Inverterplatine
(Bild zum vergrößern anklicken)

Die blauen Leiterbahnen sind Drahtbrücken.

Der Schaltplan

Optische Endstopps Inverter Schaltplan
(Bild zum vergrößern anklicken)

 

 

Ganz wichtig

Wenn Ihr das nachbauen wollt, dann bitte höchste Sicherheitsstufe bei der Arbeit, denn durch die Netzteile arbeitet Ihr an 230V AC. Das kann lebensgefährlich sein! Die fünf Sicherheitsregeln sind daher unbedingt zu beachten!

Ich habe wieder einen kleinen Download vorbereitet, in dem Ihr Schaltplan, Lochrasterplatine, Bauteileliste und Fotos zum Nachbauen findet.

 

 

 

2 Comments

  • Sven-Oliver Peters

    Hy Habe deine Schaltung nach gebaut, und nun die frage, habe ein 12V Netzteil angeschlossen und ein 5V Adapter, wenn das Relay nun angeschlossen ist bekomme ich beim einschalten der Spindel ein USB Fehler in ESLTCAM.
    ist die Schaltung nicht für 12V ausgelegt oder kann da was anderes nicht stimmen?

    • MichaelC

      Hallo Sven,
      nein, 12V reichen. Das klingt, dass Du ein Problem mit der Abschirmung hast. Ein mechanisches Relais erzeugt hohe Störimpulse.
      Abhilfe könnte ein gut abgeschirmtes USB-Kabel (also nicht der Chinamist 🙂 ) bringen. Alternativ könntest Du auch ein SSR Relais verwenden.

      Bei mir gab es mit einem verwendeten Notebook ein ähnlich gelagertes Problem. Irgendwann stieg Estlcam aus. Wenn ich aber meinen Minitower verwende, läuft die Schaltung so, wie angegeben.

Schreiben Sie einen Kommentar

Ihre E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahren Sie mehr darüber, wie Ihre Kommentardaten verarbeitet werden .