Er is een nieuwe release van het door mij ontwikkelde CNC-freesmachinebeheersysteem. In deze release zijn voornamelijk tekortkomingen en bugs van de vorige release verholpen (NoRT CNC Control is uitgekomen)
Verbeteringen:
- De bewegingstijdplanner is herzien. De nieuwe planner analyseert volledig de beweging van begin tot eind, rekening houdend met de kromming van de bogen bij het bewegen over een boog en kiest de maximaal mogelijke snelheid binnen de ingestelde snelheden, zodat de maximaal toegestane versnellingen niet worden overschreden.
- Een deel van de configuratie dat in de RT-gedeelte op de microcontroller werd opgeslagen, is volledig overgezet naar Python-code.
- Problemen met het verliezen van de focus in de UI bij handmatige invoer van commando's zijn opgelost.
- De mogelijkheid toegevoegd om de spindel en de coƶrdinatentafel onafhankelijk te emuleren.
- Bugs in de status van de machine bij handmatige invoer van commando's zijn verholpen.
- De cyclus voor het verzenden van berichten naar de coƶrdinatentafel en de spindel is gecorrigeerd, correcte verwerking van het reset-signaal en verwerking van het resetbericht van de microcontroller.
- CRC is toegevoegd aan het protocol voor interactie met de microcontroller.
- De werking stopt bij het uitschakelen van de USB-serialpoort, als de interactie met de microcontroller via deze poort gebeurt ā eerder begon het systeem in een cyclus te lezen van een niet-bestaande ttyUSB0.
- Bewegingen zijn nu vergrendeld na het opnieuw opstarten van de microcontroller. Om te ontgrendelen, moet een speciale opdracht naar de microcontroller worden gestuurd. Deze wordt verzonden bij het starten van de uitvoering van g-code. Hiermee wordt onjuiste beweging in geval van een plotselinge herstart van de MCU tijdens beweging uitgesloten.
Tegelijkertijd met het schrijven van de code gebruik ik de machine al onder zijn beheer. Recent heb ik onderdelen voor een modelvliegtuig gefreesd. Daarmee wordt deze code al praktisch gebruikt.
Bron: linux.org.ru
