Die neueste Version meines CNC-Fräsmaschinensteuerungssystems ist jetzt verfügbar. In diesem Release wurden hauptsächlich Fehler und Unzulänglichkeiten der vorherigen Version behoben.NoRT CNC Control ist jetzt veröffentlicht.)
Verbesserungen:
- Der Bewegungsvariantenplaner wurde überarbeitet. Der neue Planer analysiert die Bewegung von Anfang bis Ende vollständig und berücksichtigt dabei die Krümmungen der Bögen. Er wählt die maximal mögliche Geschwindigkeit innerhalb der festgelegten Geschwindigkeiten aus, um die maximal zulässigen Beschleunigungen nicht zu überschreiten.
- Ein Teil der Konfiguration, der im RT-Teil auf dem Mikrocontroller gespeichert war, wurde vollständig in den Python-Code integriert.
- Es wurden Probleme mit dem Verlust des Fokus in der Benutzeroberfläche beim manuellen Eingeben von Befehlen behoben.
- Die Möglichkeit, Spindel und Koordinatentisch unabhängig zu emulieren, wurde hinzugefügt.
- Fehler im Maschinenstatus bei manueller Befehls-Eingabe wurden behoben.
- Der Zyklus zur Versendung von Nachrichten an den Koordinatentisch und die Spindel wurde angepasst, ebenso die korrekte Verarbeitung des Reset-Signals sowie die Bearbeitung von Reset-Nachrichten vom Mikrocontroller.
- Eine CRC wurde im Protokoll für die Interaktion mit dem Mikrocontroller hinzugefügt.
- Das System wurde so modifiziert, dass es bei der Trennung des USB-Serial-Ports nicht mehr versucht, einen nicht mehr vorhandenen ttyUSB0 zu lesen, wenn die Kommunikation mit dem Mikrocontroller über diesen erfolgt.
- Nach einem Neustart des Mikrocontrollers sind die Bewegungen jetzt blockiert. Um sie wieder zu aktivieren, muss ein spezieller Befehl an den Mikrocontroller gesendet werden. Dieser wird beim Start der Ausführung von G-Code gesendet, wodurch inkorrekte Bewegungen nach einem plötzlichen Neustart des MCU während der Bewegung ausgeschlossen werden.
Parallel zur Entwicklung des Codes benutze ich bereits die Maschine, die unter seiner Kontrolle arbeitet. Vor kurzem habe ich kleine Teile für ein Segelflugzeugmodell zugeschnitten. Somit wird dieser Code bereits praktisch eingesetzt.
Quelle: linux.org.ru
