Dies ist das Handbuch zu Studio 1.1.0, einer früheren Version. Das Handbuch der neuesten Version
Dokumentation 1.1.0 Technisches Handbuch
Twinwrights eigener Kernel
Twinwrights eigener Kernel ist die CNC-Steuerungs-Firmware von Twinwright selbst. In Studio steuert er die Maschine des Zwillings. Derselbe Code wird für die Steuerungsplatine der MC-1 gebaut.
Er spricht das serielle Protokoll von Grbl 1.1, sodass G-Code-Sender-Programme mit ihm arbeiten. Einstellungen, Alarme und Fehler behalten die Nummern, die Sender-Programme kennen.
Was er leistet
- Bewegung: vorausschauende Planung über 100 Blöcke, Eckengeschwindigkeiten aus
$11und Kreisbögen auf dem echten Kreis. Die Bewegung läuft in Zeitscheiben von 1 ms. Jede Achse hält ihre maximale Geschwindigkeit ($110–$112) und Beschleunigung ($120–$122) ein. - Maschinenfunktionen:
- Referenzfahrt, Hardware- und Software-Endschalter, Antasten und der Werkzeuglängensensor;
- der Spindelantrieb (Frequenzumrichter) über Modbus und die Kühlung;
- Werkzeugwechsel, wie
$341sie festlegt; - die Schutztür mit Parken;
- Overrides, Tippbetrieb und das Handrad.
- Programme auf der Steuerung: Programme in ihrem Dateisystem laufen mit O-Wort-Unterprogrammen und Makros (siehe O-Wörter).
- G-Code: RS274/NGC und LinuxCNC. Dazu gehören eine Werkzeugtabelle, Fräserradiuskorrektur, Bahnverschleifung, Ausdrücke und Parameter (siehe G-Code und M-Code).
Das serielle Protokoll, die Echtzeitbefehle und die $-Befehle stehen in Protokoll. Jede Einstellung steht in Einstellungen, jeder Alarm in Alarmcodes und jeder Fehler in Fehlercodes.
Im Vergleich mit anderen Grbl-Steuerungen
Sender-Programme, die für Grbl geschrieben sind, arbeiten mit dem Kernel. Dieser Abschnitt listet auf, was Ihnen auffällt, wenn Sie eine andere Grbl-Steuerung gewohnt sind.
Wo der Kernel anhält
In diesen Fällen machen manche Grbl-Steuerungen weiter; der Kernel hält an oder löst einen Alarm aus.
- Der Spindelantrieb hält von selbst an (eine Abschaltung, eine Überlast oder seine eigene Stopptaste): Der Vorschub stoppt innerhalb von 0,2 s, und der Kernel löst
ALARM:14aus. - Der Spindelantrieb antwortet nicht: Die Achsen bremsen zuerst bis zum Stillstand ab, sodass die Position erhalten bleibt. Dann löst der Kernel
ALARM:19aus. - Werkzeugwechsel:
- Die Spindel hält bei einem Werkzeugwechsel immer an.
- Läuft ein Werkzeugwechsel ohne Bestätigung weiter, kommen Spindel und Kühlung wieder so zurück, wie sie waren.
- Fortsetzen nach Vorschub halt oder der Tür: Die Spindel erreicht ihre Drehzahl, bevor sich das Werkzeug bewegt.
- Die Tür öffnet sich wieder, während die Maschine vom Parken zurückkehrt: Die Maschine hält an und fährt wieder auf die Parkhöhe. Sie wartet auf den nächsten Zyklusstart.
- Das Sender-Programm geht verloren (USB abgezogen, der Port geschlossen): Der Auftrag stoppt.
$1030steuert dies; es ist standardmäßig eingeschaltet. - Messtaster- und Referenzschalter: Störimpulse auf den Leitungen zählen nicht als Berührung.
- UTF-8-Text in einem Programm (Chinesisch, „Ø“, „–“) wird als Text gelesen, nie als Echtzeitbefehl.
- Ein Kreisbogen in R-Form ohne Sehne in seiner Ebene, zum Beispiel
G91 G2 X0 Z1 R5, antwortet miterror:33.
Mehr G-Code
Manche Grbl-Steuerungen lehnen diese ab oder ignorieren sie; der Kernel führt sie so aus, wie die Normen sie festlegen:
- die Werkzeugtabelle (
G43 Hn,G43.2,G10 L1/L10/L11); - die Fräserradiuskorrektur (
G41,G42); - Bahnverschleifung (
G64 P) und Genauhalt (G61.1); - O-Wort-Unterprogramme und Ablaufsteuerung,
#-Parameter und Ausdrücke; G52, Polarkoordinaten (@,^) undM99;- die Zyklen
G85,G86undG89zum Bohren und Ausbohren, wobei manche Grbl-Steuerungen sie annehmen und sich nicht bewegen; - was CAM-Postprozessoren oft schreiben: ein
%-Satz mit einem Namen,G49 H0, Fanuc-Programmnummernsätze (O1000) und CentroidsM25.
Näher am Programm
- Kreisbögen folgen dem echten Kreis. Manche Grbl-Steuerungen zerlegen sie in Sehnen, die bis zu 4 ×
$12vom Kreis abweichen. - Kreisbögen mit Vorschub im Kehrwert der Zeit (
G93) dauern so lange wie programmiert. Manche Grbl-Steuerungen fahren sie um ein Mehrfaches schneller. - Verweilzeiten (
G4) dauern so lange wie programmiert. Manche Grbl-Steuerungen runden sie auf Schritte von 50 ms. - Tieflochbohren mit Entspanen: Jedes Loch bekommt die Zustellungen, die es braucht. Ist die Tiefe ein ganzzahliges Vielfaches der Zustellung, bohren manche Grbl-Steuerungen von der Rückzugshöhe aus noch eine volle Zustellung.
- Große Kreisbögen nahe den Software-Endschaltern lösen keine Fehlalarme aus.
M72stellt die Werkzeuglängenkorrektur wieder her, dieM70oderM73gespeichert hat. Manche Grbl-Steuerungen behalten eine später gesetzte Korrektur, wenn die gespeicherte 0 war und die Korrekturart (G43.1) dieselbe ist, sodass dasselbe Programm nachM72dort mit einer anderen Werkzeuglängenkorrektur laufen kann.- Beschleunigung: Jede Achse hält
$120–$122ein, auch bei kleinen Kreisbögen. Ein Programm mit sehr vielen kleinen Kreisbögen kann bis zu etwa 2 % länger dauern als auf manchen Grbl-Steuerungen. Ein gewöhnliches Programm dauert etwa 0,1 % weniger.
Protokolldetails
- Statusberichte:
- Bei Vorschub halt oder offener Tür ist der Vorschub in
FS:0: Die Achsen stehen. - Der Restweg wird gemeldet, bis die Achsen stehen bleiben.
- Bei einem kritischen Alarm zeigt
Bf:den Planer als leer an. - Ist der Parserzustand in
$10eingeschaltet, kommt[GC:]einmal pro Änderung.
- Bei Vorschub halt oder offener Tür ist der Vorschub in
- Eingabeprüfungen:
- Eine fehlerhafte Einstellungsnummer wie
$45xantwortet miterror:3. - Eine Ganzzahl-Einstellung, die als
$1=25.0geschrieben wird, speichert 25; manche Grbl-Steuerungen speichern 250. M6und eine Bewegung in einem Satz antworten miterror:40.G65oderG66mit anderen Befehlen in einem Satz antworten miterror:21.
- Eine fehlerhafte Einstellungsnummer wie
- Alarme und Start:
- Nach einem Alarm gibt es keine Pause von 100 ms.
- Der erste Start mit leerem Einstellungsspeicher antwortet nicht mit
error:7.
- Texte und Einstellungen:
- Die Beschreibungen der Einstellungen, Alarme und Fehler sind Twinwrights eigene.
- Der Kernel hat eigene Einstellungen:
$1030(Stopp, wenn das Sender-Programm verloren geht) und$1000und höher für Input Shaping (standardmäßig aus).
$39=0(Legacy-Echtzeitzeichen aus):?,!und~sind Text innerhalb von$-Zeilen und Kommentaren und überall sonst Befehle. Der Kernel entscheidet anhand der Bytes, sobald sie eintreffen. Deshalb beantwortet er?auch bei offener Tür oder bei Vorschub halt, wo manche Grbl-Steuerungen manchmal nicht antworten.
Nicht unterstützt
G65 P7(Modbus-Nachrichten).- Fanuc-Systemvariablen.
#4120und dergleichen sind gewöhnliche Parameter und ergeben beim Lesen 0. - Gewindeschneiden (
G33,G76,G33.1) ohne Spindelencoder. Die MC-1 hat keinen, daher antworten diese miterror:20. - Schruppzyklen für Drehmaschinen (andere Grbl-Steuerungen haben ebenfalls keine).
- Netzwerk, Trinamic-Treiber und andere Fabrikate von Spindelantrieben, die manche Grbl-Steuerungen als Plug-ins anbieten.
Sender-Programme
Die Sender-Programme, die geprüft wurden, und ihre Einstellungen stehen in G-Code-Sender-Programme. Wie Sie eine echte Maschine mit ihrem Zwilling vergleichen, steht in Echte Maschine und Schattenmodus.