Pojawiła się nowa wersja rozwijanego przeze mnie systemu sterowania frezarką CNC. To wydanie naprawia głównie niedociągnięcia i błędy poprzedniego wydania (Wydano sterowanie NoRT CNC)
Ulepszenia:
- Harmonogram prędkości ruchu został przeprojektowany. Nowy planista w pełni analizuje ruch od początku do końca, w tym uwzględnia krzywiznę łuków podczas poruszania się po łuku i dobiera maksymalną możliwą prędkość w granicach zadanych prędkości, tak aby nie przekroczyć maksymalnych dopuszczalnych przyspieszeń
- Część konfiguracji, która była przechowywana w części RT na mikrokontrolerze, została w całości przeniesiona do kodu Pythona
- Naprawiono problemy z utratą ostrości w interfejsie użytkownika podczas ręcznego wprowadzania poleceń
- Dodano możliwość niezależnej emulacji wrzeciona i tabeli współrzędnych
- Naprawiono błędy stanu maszyny podczas ręcznego wprowadzania poleceń
- Dostosowano cykl wysyłania komunikatów na tablicę współrzędnych i do wrzeciona, prawidłowe przetwarzanie sygnału resetującego oraz przetwarzanie komunikatu resetującego z mikrokontrolera
- Dodano CRC do protokołu interakcji z mikrokontrolerem
- Wyłączenie po odłączeniu portu szeregowego USB, jeśli przechodzi przez niego interakcja z mikrokontrolerem - wcześniej system zaczął czytać w pętli nieistniejący ttyUSB0
- Teraz ruchy są blokowane po ponownym uruchomieniu mikrokontrolera. Aby odblokować, należy wysłać specjalne polecenie do mikrokontrolera. Jest wysyłany, gdy rozpoczyna się wykonywanie g-kodu. Zapobiega to nieprawidłowemu ruchowi w przypadku nagłego ponownego uruchomienia MCU podczas ruchu.
Równolegle z pisaniem kodu korzystam już z maszyny pod jego kontrolą. Niedawno przyciąłem części do modelu szybowca. Zatem ten kod jest już stosowany w praktyce.
Źródło: linux.org.ru