Das Elend mit den Störungen an den Endstops

Zum betreiben der CNC3018 nutze ich zur Zeit eine Steuerung aus Arduino mit GRBL und CNC Shield.
Hier kommt es inzwischen durch die dichte Bauweise zu übersprechenden zwischen den Leitungen der Schrittmotoren und den Leitungen der Endschalter an den Achsen. Folglich, wenn die Schrittmotoren laufen löst sofort ein Endschalter aus. Ein Betrieb ist somit mit Endschaltern nicht möglich.
Diese wurden vorerst zum Betrieb deaktiviert.

Lösungsversuche
1. Versuch:
Ich habe an den Microschaltern der Endstops an den 3. Pol (NC) ein + Leitung angebracht, so dass nach Theorie die Sensorleitung so lange der Endschalter nicht ausgelöst ist, immer 5 Volt anliegen. Pustekuchen. Es lösen immer noch fremdinduzierte Signale die Endschalter in der Steuerung aus. Zusätzlich, habe ich nicht bedacht, das am CNC Shield Signale für + und – einer Achse Ein und das Selbe sind. Das hat zur Folge, dass wenn man einen der mechanischen Endschalter auslöst, auf der Signalleitung GND angelegt wird, während an dem anderen Endschalter an der selben Signalleitung +5V anliegen. Kurzschuss.
Das hat sogar mein am Arduino angeschloßenes Macbook abstürzen lassen.

2. Versuch:
Induktiver Näherungsschalter als Endschalter.
Hier TTL 5V kompatibel vom Typ NPN – NO.
Im Prinzip arbeiten diese wie ein Metallsuchgerät. Durch die kleine Bauform sind die Abstände, in denen Metall erkannt wird, relativ klein. Hier bei diesem Modell mit 12mm Durchmesser sind Metalle in 0 … 4mm Entfernung erkennbar.
Auslösen mit sich nähernden Metall wird erkannt, Prima.
Störung wird noch immer induziert sobald die Schrittmotoren laufen, NICHT Prima.

3. Versuch:
Alle Leitungen werden in Kupferfolienband eingewickelt. Das Band von jeder Leitung am CNC-Shield an GND angeschossen.
Sieht schick aus, macht die Leitungen sehr Steif und Unhandlich.
Auswirkungen sind nicht ersichtlich. Fail.

Die Lösung:
Da die Ströme die in den Leitungen induziert werden winzig klein sind, sind sie zwar ausreichend um in einen Arduino als Schaltvorgang erkannt zu werden, aber mit den µA nicht ausreichend um eine LED zum leuchten zu bringen.
Dies macht man sich zu Nutze um Signalleitungen mit Optokopplern zu entkoppeln und somit zu entstören.
Die Anschlüsse auf dem CNC-Shield sind mir eh zu Fummelig und eng gepackt. Somit entschied ich mich ein zusätzliches Shield zu entwerfen welches ich zwischen Arduino und CNC Shield stecke.

Entwurf in Fritzing

Es sind ja nicht viele Bauteile, bei den Optokopplern habe ich zuerst geschaut, welche wir auf Lager haben und bin bei ILD74 gelandet, die gleich 2 Optokoppler in einem DIP Gehäuse mitbringen.
Den größten Platz nehmen die von mir heiß geliebten steckbaren Schraubklemmen in 3,81mm(0,15in) Ausführung ein.

Entkoppelt werden die Leitungen für X, Y, Z, und Probe welches für Nullpunktsensoren verwendet wird. X und Y bekommen die Anschlüsse doppelt für jedes Ende der Achse.
Z benötigt dies nicht, da in der Regel nach unten immer das eingespannte Werkzeug im Weg sein sollte bevor irgendein Endschalter auslöst. Z hat also nur oben am Ende der Achse einen Endschalter.
Zu jeder Signalleitung kommen jeweils ein Anschluss für 5V und GND. Somit ist man jederzeit frei in der Wahl seiner Endschalter, ob nun mechanische Microschalter die nur Sig. und GND benötigen würden, oder Lichtschranken oder Induktiver Näherungsschalter.

In Fritzing für die erste Version noch einseitig entworfen, mit 3 Dratbrücken.
Als Gerber Datei ausgegeben und mit der Online CAMsoftware für Platinen https://copper.carbide3d.com dann die G-Codes für die Fräse erzeugt und dann gefräst.
Wer ein mal die Löcher eine selbstgeätzten Platine bohren musste, wird die Fräse an dieser Stelle zu schätzen wissen.

Und ja, Chinaplatinen sind schnell und günstig zu haben. Jedoch nicht so schnell und so günstig wie mit der Fräse Samstag Nacht um 2.
Die erste Version wird wenn sie einseitig zu meistern ist, wahrscheinlich von mir immer selber hergestellt.

GRBL_Opto_Limitshield

Da ist es also die erste Version des GRBL_Opto_Limitshield.
Und was soll ich sagen, es funktioniert. Die Fräse kann jetzt endlich den Maschinennullpunkt setzen (HOME) UND Störungsfrei mit aktivierten Endschaltern an allen Achsen ihre Programme fahren.
Aktuell nutze ich eine gemischte Bestückung der Endschalter. An Y sind mechanische Microschalter und an X und Z sind Induktiver Näherungsschalter.

Technische Daten der Spindel

Die Spindel:

WS55-180-Driver-Controller-Engraving-Machine

Features: 
Brushless, low interference, eliminate sparks and significantly reduce the spark interference to the remote control. Quiet and quiet operation. Long service life, low maintenance costs. 

Technical data: 
Motor parameters brushless spindle: 
Diameter: 55 mm / 2.17 inches. 
Total length: 180 mm / 7.0 inches. 
Operating voltage: 48 VDC. 
Minimum speed: 12500 rpm 

Voltage range: 20-50V DC 
Nominal current: 8A. 
Rated Output: Depends on actual product 
Current limit: Approx. 10A 
Position detection support: for rooms and not induction salt, 120 degree electric angle 
The maximum support speed: depends on the engine itself and the load. 
Normal temperature insulation resistance: >100MΩ 
Insulation resistance: 0.5 kV/min. 
Storage temperature: -20 °C ~ + 65 °C 
Area of application: avoid direct contact with dust, smoke and corrosive gases. 
Temperature: 0-45 °C 
Humidity: <80%, no gluten, no frost. 
Shock: 5.9 m / S2 MAX 
Storage humidity: 0 ~ 95% relative humidity. 
Total weight of metal: 2640 g 

Wiring: 
+: DC + 
-: DC- 
U: Red 
V: blue 
W: Black 
Speed control: 
SV: The potentiometer controls the speed, the feet on both sides of the potentiometer are connected to the power supply and in the ground, while the midfoot is connected to the SV; 
Sports accessories. 
BR: When putting on the soil, the unertia will stop. 
CW / CCW 
F/R: When connecting the low level, CCW 

Box contents: 
1 x spindle motor. 
1 x Motor Controller 
1 x Fixture 
1 x Power Supply 

Update im Bereich CNC

Nach all der vielen Arbeit möchte ich mal ein Update geben.
Wie angekündigt war ich nicht ganz zufrieden mit dem Originalzustand der CNC3018 Fräse.
Und somit entschied ich mich Anfang August für ein Upgrade. Zu dem Zeitpunkt hatte ich keine Ahnung was dann noch kam und wie lange das auch dauert.
Es wurde eine 400W bürstenlose Frässpindel angeschafft und da diese nicht in die original Halterung passt, auch gleich eine neue Z Achse die dann auf den neuen Linearlagern der X Achse ruht.

Die neu Z-Achse kommt voll aufgebaut mit installierten Nema17 1,2A, Z hat jetzt einen möglichen hub von ca. 70mm.
Zwischen Motorhalterung und Z-Achse konstruierte ich noch eine Adapterplatte aus Alu die die unterschiedlichen Lochbilder aufnimmt.

Da die neue Spindel mit der Z-Achse doch ein deutliche mehr an Gewicht auf die Wage bringt waren die gehärteten Führungswellen der X-Achse nicht mehr ausreichend.
Ich ersetzte sie durch HGR15 Linearlager. Der Antrieb der X-Achse blieb. Die Linearlager wurden jeweils mit einer 20×20 Alu Profilstange hinterlegt.

Zwischen den Schlitten der X-Linearlager und der Z-Achse wurde wieder eine Adapterplatte aus Alu gesetzt.

Was man in den Bildern schlecht sieht, ist dass auch die 2 20×20 Stützen auf der die X-Achse befestigt ist, durch 20×40 ersetzt wurde.
Da der Grundrahmen es eh schon anbot, habe ich den Grundrahmen zum Würfel ausgebaut und die Wände mit Acrylplatten versehen, natürlich herausnehmbar. Durch den Kastenrahmen ist das ganze Konstrukt deutlich stabiler geworden. leider auch schwerer.

Ich gebe natürlich keine Ruhe, bis etwas maximal Overengeniert ist.
Die Fräse ist ja jetzt schon schön und gut, aber die Elektronik hinten dran ist nicht schön.
Also wurde das ganze Gerät aufgebockt und es kommt eine Etage für die 2 Netzteile die CNC- und die Spindelsteuerung und ein Bedienpannel darunter.

So sieht sie jetzt aus. Die Änderungen und Arbeiten an der Elektronik passieren innen.
Das Bedienpannel in all seiner Pracht von links gesehen, Hauptschalter, Notschalter, Steuerungsknöpfe für den Progammlauf, darüber Schalter für Zusatzgeräte und die analoger Spindelsteuerung.
Die Bürstenlose 400W Spindel wird durch ein WS55-180 Motor Driver gesteuert. Dazu gehört noch ein 48V Netzteil.

Dies als Zwischenstand, es ist alles noch im Fluß und in Veränderung.