Laser Cutter Umbau: Unterschied zwischen den Versionen

Aus eLAB Wiki
Wechseln zu: Navigation, Suche
(Variante A GRBL:)
(Todos: Webinterface done)
 
(5 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
  
Der berühmt berüchtigte 40W China Laser Cutter
+
Der berühmt berüchtigte 40W China Laser Cutter, Modell K40
  
  
Zeile 37: Zeile 37:
 
Ziel ist es den Umbau nachvollziehbar zu machen und
 
Ziel ist es den Umbau nachvollziehbar zu machen und
 
die Zusammenarbeit zu unterstützen.
 
die Zusammenarbeit zu unterstützen.
 +
  
  
Zeile 63: Zeile 64:
 
* Spannungsversorgung
 
* Spannungsversorgung
 
* Lasereinheit
 
* Lasereinheit
* Laserstrahlposizionierungseinheit
+
* Laserstrahlpositionierungseinheit
  
 
ersetzt wird
 
ersetzt wird
* Steuerplatin
+
* Steuerplatine
 
* Lüftungs- und Kühlungseinheit
 
* Lüftungs- und Kühlungseinheit
  
 
ergänzt
 
ergänzt
 
* Sicherheitseinrichtungen
 
* Sicherheitseinrichtungen
** Überwachung der Schreidraumtür
+
** Überwachung der Schneidraumtür
 
***Anforderung
 
***Anforderung
 
****Minimal
 
****Minimal
*****zuverlässiges und tolerantes erkennen der geschlossenen Schreidraumtür
+
*****zuverlässiges und tolerantes erkennen der geschlossenen Schneidraumtür
*****wenn Tür nicht geschlossen, dann kann Laser nicht einschalt werden
+
*****wenn Tür nicht geschlossen, dann kann Laser nicht einschalt werden (Warnung, per Software)
 
*****wenn Gerät stromlos, kann Tür geöffnet werden z.B. nach Notabschaltung um Feuer zu löschen  
 
*****wenn Gerät stromlos, kann Tür geöffnet werden z.B. nach Notabschaltung um Feuer zu löschen  
 
*****wenn Tür geschlossen ist und der Laser eingeschaltet werden wird,  dann wird die Tür vor dem Einschalten des Lasers verriegelt  
 
*****wenn Tür geschlossen ist und der Laser eingeschaltet werden wird,  dann wird die Tür vor dem Einschalten des Lasers verriegelt  
 
*****wenn die Tür als offen erkannt wird, dann wird dies optisch angezeigt  
 
*****wenn die Tür als offen erkannt wird, dann wird dies optisch angezeigt  
*****bei einer Störung an der Verriegelung kann die Schreidraumtür trotzdem geöffnet werden
+
*****bei einer Störung an der Verriegelung kann die Schneidraumtür trotzdem geöffnet werden
 
****Optional
 
****Optional
*****Integration einer Transportsicherung für die Schreidraumtür
+
*****Integration einer Transportsicherung für die Schneidraumtür
  
 
* Beleuchtung
 
* Beleuchtung
Zeile 113: Zeile 114:
 
einkommentiert werden:  
 
einkommentiert werden:  
 
  #define ENABLE_SAFETY_DOOR_INPUT_PIN // Default disabled. Uncomment to enable.
 
  #define ENABLE_SAFETY_DOOR_INPUT_PIN // Default disabled. Uncomment to enable.
und die Polarität des Inputs invertiert werden, da der Taster bei geschlossener Tür auch geschlossen ist.
+
und die Polarität des Inputs invertiert werden, da der Taster bei geschlossener Tür auch geschlossen ist:
 +
// #define INVERT_CONTROL_PIN_MASK ((1<<CONTROL_SAFETY_DOOR_BIT)|(1<<CONTROL_RESET_BIT)) // Default disabled.
 +
zu
 +
#define INVERT_CONTROL_PIN_MASK (1<<CONTROL_SAFETY_DOOR_BIT) // Default disabled.
 +
ändern
 +
 
 +
=== Status ===
  
Status:
+
==== erledigt ====
 
* GRBL v.1.1 wurde auf Arduino '''UNO''' (da original GRBL nur Atmega 328P unterstützt) geflasht und liegt in Lasercutter
 
* GRBL v.1.1 wurde auf Arduino '''UNO''' (da original GRBL nur Atmega 328P unterstützt) geflasht und liegt in Lasercutter
 
* Config von [https://github.com/LaserWeb/LaserWeb4/wiki/2.2-Initial-Configuration---GRBL-LPC-1.1 hier] übernommen und getestet: 160 Schritte/mm passen bei Treibereinstellung auf 1/16 Microstepping
 
* Config von [https://github.com/LaserWeb/LaserWeb4/wiki/2.2-Initial-Configuration---GRBL-LPC-1.1 hier] übernommen und getestet: 160 Schritte/mm passen bei Treibereinstellung auf 1/16 Microstepping
Zeile 121: Zeile 128:
 
* Stromgrenzen eher konservativ gesetzt auf 0,8 Volt Referenzspannung = ca. 0,5A Motorstrom bei Shuntwiderstand = 0,2 Ohm
 
* Stromgrenzen eher konservativ gesetzt auf 0,8 Volt Referenzspannung = ca. 0,5A Motorstrom bei Shuntwiderstand = 0,2 Ohm
 
* Endschalter angeschlossen und Config von Gbrl angepasst (siehe unten)
 
* Endschalter angeschlossen und Config von Gbrl angepasst (siehe unten)
 +
* Rauchabsaugung mit 2x PC-Lüfter 80mm + 3D gedrucktem Adapter + Staubsaugerschlauch zum Fenster
 +
* [http://laser.elab.bodo.io/ Web-Interface] aktuell noch online Login
  
Todos:
+
==== Todos ====
 +
* ich konnte beim ersten Lasern ein Stottern der Motoren hören und es wurden Schritte verloren. Firmware oder NT??
 +
* Login zum Web-Interface zufügen
 +
* Fenster oben im eLAB entfernen
 +
* Fenster durch Platte mit Isolierung ersetzen
 
* Stromversorgung über Lasercutter-Netzteil  
 
* Stromversorgung über Lasercutter-Netzteil  
 
* Sicherheitsschalter (Tür und Notaus) integrieren. Vorschlag: 2 Level-Security: 1x wo aktuell der Laser-Schalter (P+ zu G) angeschlossen ist über Türkontakt zusätzlich unterbrechen und 1x über Gbrl
 
* Sicherheitsschalter (Tür und Notaus) integrieren. Vorschlag: 2 Level-Security: 1x wo aktuell der Laser-Schalter (P+ zu G) angeschlossen ist über Türkontakt zusätzlich unterbrechen und 1x über Gbrl
Zeile 130: Zeile 143:
 
* Steuerung der Kühlung + Absaugung. Vorschlag: Coolant Enable-Pin für beide verwenden.
 
* Steuerung der Kühlung + Absaugung. Vorschlag: Coolant Enable-Pin für beide verwenden.
 
* Innenbeleuchtung installieren und anschließen. Vorschlag vorerst ungesteuert --> Wenn Spannung an, dann Licht an.
 
* Innenbeleuchtung installieren und anschließen. Vorschlag vorerst ungesteuert --> Wenn Spannung an, dann Licht an.
* Ansteuerung über LaserWeb Frontend
+
* Neues Netzteil 24V mit mehr Power (das eingebaute ist wohl arg am Limit) niedrige Prio
  
Aktuelle Config:
+
==== Aktuelle Config: ====
 
  $0=10
 
  $0=10
 
  $1=25
 
  $1=25
Zeile 184: Zeile 197:
 
==== Neue Hardware ====
 
==== Neue Hardware ====
  
neue Arduino basierende Steuereinheit
+
neue Arduino basierte Steuereinheit
  
 
Variante A:
 
Variante A:
Zeile 231: Zeile 244:
 
Version 3: Bedienfehler verhindern
 
Version 3: Bedienfehler verhindern
 
* Sicherheit
 
* Sicherheit
** Temperatur der Laser-Röhre messen und entsprechend den Betrieb garnicht starten
+
** Temperatur der Laser-Röhre messen und entsprechend den Betrieb gar nicht starten
 
** Rauchmelder?
 
** Rauchmelder?
 
* Komfort
 
* Komfort
Zeile 241: Zeile 254:
 
** Display
 
** Display
 
** Z-Tisch
 
** Z-Tisch
 +
** Objekt-Dreh-Einheit (Flasche, Glas, Nudelholz)
 
** geschlossener Kühlkreislauf mit Radiator?
 
** geschlossener Kühlkreislauf mit Radiator?

Aktuelle Version vom 2. Februar 2020, 16:46 Uhr

Der berühmt berüchtigte 40W China Laser Cutter, Modell K40


Laser Cutter


Strukturrieungvorschlag

  • Motivation
    • was soll der Wiki Eintrag leisten
  • Vision
    • Eigenschaften des umgebauten Gerätes, nicht als starr an zu sehen
  • Design
    • Dokumentation der Entscheidungen die Aufgabe auf ein bestimmte Art und Weise zu lösen
  • Hardware
    • Original Hardware
      • Beschreibung der Hardware die im Gerät verbaut ist und weiter verwendet wird
    • neue Hardware
      • Beschreibung der neu verwendeten Hardware
  • Software
    • Teilkomponente
      • Entwicklungsumgebung
      • Programm Code
      • Wie bringt man die Software ans laufen
  • Linksammlung
    • mehr oder weniger interessante Webseiten zum Thema
  • Fragen und Antworten
    • Alle offenen Fragen und deren Antworten, die noch erarbeitet werden müssen
  • TODO
    • nächste Bearbeitungsschritt


Motivation

Diese Seite dient als Dokumentation des Umbaus. Ziel ist es den Umbau nachvollziehbar zu machen und die Zusammenarbeit zu unterstützen.


Vision

Beschreibung

Ziel ist ein funktionale Einheit, so viel wie möglich Funktion soll im Gerät selbst stattfinden. Das Gerät wird im wesentlichen über ein Webinterface bedient. …...


Design

Das Originalgerät dient als Basis für den Umbau.

    • Hardwareumbau
      • Anforderung
        • leichte Nachbaubarkeit, leicht beschaffbare Standard Komponenten, Geringer aufwand und Anforderungen für Umbauten
        • am Äußeren des Geräts soll so wenig wie möglich geändert werden z.B. keine sichtbaren Befestigungen


Hardware

erhalten bleibt

  • Spannungsversorgung
  • Lasereinheit
  • Laserstrahlpositionierungseinheit

ersetzt wird

  • Steuerplatine
  • Lüftungs- und Kühlungseinheit

ergänzt

  • Sicherheitseinrichtungen
    • Überwachung der Schneidraumtür
      • Anforderung
        • Minimal
          • zuverlässiges und tolerantes erkennen der geschlossenen Schneidraumtür
          • wenn Tür nicht geschlossen, dann kann Laser nicht einschalt werden (Warnung, per Software)
          • wenn Gerät stromlos, kann Tür geöffnet werden z.B. nach Notabschaltung um Feuer zu löschen
          • wenn Tür geschlossen ist und der Laser eingeschaltet werden wird, dann wird die Tür vor dem Einschalten des Lasers verriegelt
          • wenn die Tür als offen erkannt wird, dann wird dies optisch angezeigt
          • bei einer Störung an der Verriegelung kann die Schneidraumtür trotzdem geöffnet werden
        • Optional
          • Integration einer Transportsicherung für die Schneidraumtür
  • Beleuchtung
  • sichere Kontrollmöglichkeit des Laserprozesses – Kamera
  • Not-aus Schalter
  • Temperatur Sensor Laser Kühlwasser

Software

wird komplett ersetzt

  • Hardwaresteuerung und Auftragsabarbeitung via Arduino Freeware
  • Benutzerinterface und Auftragserstellung via Webinterface basierend auf Open Source
Variante A GRBL:

Änderungen notwendig an GBRL-Software:

  • Da keine Z-Achse, wie bei CNC-Maschinen vorhanden ist, muss auch im Homing-Prozess das Z-Homing deaktiviert werden! Dazu in der config.h die Zeilen
#define HOMING_CYCLE_0 (1<<Z_AXIS)                // REQUIRED: First move Z to clear workspace.
#define HOMING_CYCLE_1 ((1<<X_AXIS)|(1<<Y_AXIS))  // OPTIONAL: Then move X,Y at the same time.

durch

//#define HOMING_CYCLE_0 (1<<Z_AXIS)                // REQUIRED: First move Z to clear workspace.
#define HOMING_CYCLE_0 ((1<<X_AXIS)|(1<<Y_AXIS))  // OPTIONAL: Then move X,Y at the same time.

ersetzen! Getestet und für gut empfunden!

Weiterhin wird der Feed Hold-Pin als Sicherheitstür-Kontakt verwendet. Dazu muss die Zeile

// #define ENABLE_SAFETY_DOOR_INPUT_PIN // Default disabled. Uncomment to enable.

einkommentiert werden:

#define ENABLE_SAFETY_DOOR_INPUT_PIN // Default disabled. Uncomment to enable.

und die Polarität des Inputs invertiert werden, da der Taster bei geschlossener Tür auch geschlossen ist:

// #define INVERT_CONTROL_PIN_MASK ((1<<CONTROL_SAFETY_DOOR_BIT)|(1<<CONTROL_RESET_BIT)) // Default disabled.

zu

#define INVERT_CONTROL_PIN_MASK (1<<CONTROL_SAFETY_DOOR_BIT) // Default disabled.

ändern

Status

erledigt

  • GRBL v.1.1 wurde auf Arduino UNO (da original GRBL nur Atmega 328P unterstützt) geflasht und liegt in Lasercutter
  • Config von hier übernommen und getestet: 160 Schritte/mm passen bei Treibereinstellung auf 1/16 Microstepping
  • Ansteuerung der Schrittmotoren funktioniert über das CNC-Shield und Bedienung über bCNC
  • Stromgrenzen eher konservativ gesetzt auf 0,8 Volt Referenzspannung = ca. 0,5A Motorstrom bei Shuntwiderstand = 0,2 Ohm
  • Endschalter angeschlossen und Config von Gbrl angepasst (siehe unten)
  • Rauchabsaugung mit 2x PC-Lüfter 80mm + 3D gedrucktem Adapter + Staubsaugerschlauch zum Fenster
  • Web-Interface aktuell noch online Login

Todos

  • ich konnte beim ersten Lasern ein Stottern der Motoren hören und es wurden Schritte verloren. Firmware oder NT??
  • Login zum Web-Interface zufügen
  • Fenster oben im eLAB entfernen
  • Fenster durch Platte mit Isolierung ersetzen
  • Stromversorgung über Lasercutter-Netzteil
  • Sicherheitsschalter (Tür und Notaus) integrieren. Vorschlag: 2 Level-Security: 1x wo aktuell der Laser-Schalter (P+ zu G) angeschlossen ist über Türkontakt zusätzlich unterbrechen und 1x über Gbrl
  • In Kreis zwischen P+ und G können weitere Unterbrecher eingefügt werden: z.B. unterbrechen, wenn Kühlung/Lüftung nicht an ist
  • Ansteuerung des Lasers Über Test-Switch An(K+ zu K-(GND) kurzgeschlossen)/Aus (Open)
  • Leistung des Lasers über PWM an IN-Pin
  • Steuerung der Kühlung + Absaugung. Vorschlag: Coolant Enable-Pin für beide verwenden.
  • Innenbeleuchtung installieren und anschließen. Vorschlag vorerst ungesteuert --> Wenn Spannung an, dann Licht an.
  • Neues Netzteil 24V mit mehr Power (das eingebaute ist wohl arg am Limit) niedrige Prio

Aktuelle Config:

$0=10
$1=25
$2=0
$3=0
$4=0
$5=1
$6=0
$10=1
$11=0.010
$12=0.002
$13=0
$20=1
$21=0
$22=1
$23=1
$24=100.000
$25=1000.000
$26=250
$27=1.000
$30=1000
$31=0
$32=1
$100=160.000
$101=160.000
$102=160.000
$110=24000.000
$111=24000.000
$112=24000.000
$120=1000.000
$121=1000.000
$122=1000.000
$130=300.000
$131=220.000
$132=50.000
Variante B Marlin:

Hardware

Original Hardware

Schnittstelle zwischen Laserstrahlpositionierungseinheit und Steuerplatine

Ribbon cable CONN FFC 12POS 1.25MM

Neue Hardware

neue Arduino basierte Steuereinheit

Variante A:

Variante B:

Link Sammlung zum Umbau

TODO

  • WIKI Seite weiter vervollständigen

https://trello.com/c/td0hgULM/11-bodo-laser-cutter-umr%C3%BCsten

Priorisierte Liste

Version 1: Minimalversion, benutzbar für Experten

  • Sicherheit
    • Laser ein == Tür zu
    • wenn Laser-Job gestartet, dann Pumpe an + Absaugung an
    • wenn Maschine eingeschaltet, dann Licht im Innenraum an

Version 2: mehr Sicherheit

  • Sicherheit
    • Not-aus Button, d.h. wenn gedrückt, dann
      • Laser aus
      • Tür auf
      • Alarm Sound
  • Komfort
    • Webcam montieren im Innenraum (am Kopf?)

Version 3: Bedienfehler verhindern

  • Sicherheit
    • Temperatur der Laser-Röhre messen und entsprechend den Betrieb gar nicht starten
    • Rauchmelder?
  • Komfort


Version ....

  • Komfort
    • Licht ansteuern
    • Display
    • Z-Tisch
    • Objekt-Dreh-Einheit (Flasche, Glas, Nudelholz)
    • geschlossener Kühlkreislauf mit Radiator?