M177

Dyskusje dotyczące działania obsługi programu LinuxCNC
Awatar użytkownika

Autor tematu
tuxcnc
Lider FORUM (min. 2000)
Lider FORUM (min. 2000)
Posty w temacie: 5
Posty: 9319
Rejestracja: 26 lut 2011, 23:24
Lokalizacja: mazowieckie

M177

#1

Post napisał: tuxcnc » 20 cze 2021, 21:30

Tym razem to po prostu znalazłem w necie i poprawiłem kilka wartości, bo autorowi wywalało się na cały ekran, z czcionką wariackiej wielkości.
Działa to tak, że po napotkaniu na przykład

Kod: Zaznacz cały

M177 P1
wyświetla się predefiniowany komunikat, program się zatrzymuje i mamy do wyboru przyciski <wznów> albo <przerwij>.
Nic nadzwyczajnego, ale wygoda duża.
Gdybym pomyślał o tym wcześniej, tobym wiertła dzisiaj nie połamał.
Problem był z kategorii wyjątkowo upierdliwych, bo frezarka jest w trakcie modyfikacji i program od pomiaru narzędzia pogryzł się z programem od obsługi kamery. Najpierw wjechałem wiertłem w aluminium na G0 i pękło, potem przez kilka godzin białej gorączki dostawałem, bo nie miałem pojęcia o co może chodzić. Żeby nie łamać więcej narzędzi sięgnąłem właśnie po przedmiotową funkcję i dodałem linię zatrzymującą zetkę i wyświetlającą komunikat żeby porównać faktyczną wysokość narzędzia ze wskazaniem DRO. Uparcie zjeżdżało kilkanaście milimetrów niżej, ale dzięki patentowi przerywałem program zanim narobił szkód. Ostatecznie się okazało, że brakowało jednego G43, bo na poprzedniej frezarce nie miałem czujnika narzędzia i nie robiło to problemu. Teraz jeden podprogram włączał korekcję narzędzia a drugi w tajemnicy ją wyłączał...
Drugie dzisiejsze zastosowanie było takie, że potrzebowałem wyciąć kątowniczek do zamocowania czujnika indukcyjnego. Jako materiał podpasował mi profil aluminiowy 20x20x2, a że miał cztery ścianki, to postanowiłem wyciąć dwie sztuki. Problem był z wymianą narzędzia, ale już nie taki jak powyżej, tylko po prostu chciałem najpierw powiercić wszystkie otwory, a potem zrobić wszystkie cięcia, żeby nie zakładać po dwa razy tego samego narzędzia. Procedura była taka, żeby założyć wiertło, nawiercić jedną ściankę, obrócić profil o 180 stopni, nawiercić drugą ściankę, a potem założyć frez i frezować po kolei obracając profil po 90 stopni.
Tutaj właśnie programik pokazuje się w całej okazałości, bo nie tylko zatrzymuje program, ale też komunikuje jednoznacznie co w danej chwili należy zrobić.
Dałoby się zwykłymi komunikatami i M0, ale tak jest po prostu lepiej.
Program nie musi się nazywać M177, ale obydwa pliki muszą mieć pasującą do siebie nazwę, co autor opisał w komentarzach, no i oczywiście komunikaty można sobie dowolnie zmieniać i dodawać nowe.
M177.tar
(10 KiB) Pobrany 72 razy



Awatar użytkownika

Autor tematu
tuxcnc
Lider FORUM (min. 2000)
Lider FORUM (min. 2000)
Posty w temacie: 5
Posty: 9319
Rejestracja: 26 lut 2011, 23:24
Lokalizacja: mazowieckie

Re: M177

#2

Post napisał: tuxcnc » 20 kwie 2025, 11:59

Oczywiście, jak to w Pythonie, program przestał działać i szukaj wiatru w polu...
Wywołanie #!/usr/bin/python w Debianie 12 nie działa, bo nie już ma Pythona2...
Ale zmiana na #!/usr/bin/python3 też niczego nie załatwia, bo wywala kretyńskie błędy, bo przecież trzeba było wszystko pozmieniać, nawet jeśli nie było takiej potrzeby...
To jest dość prosty program, może komuś będzie się chciało go naprawić i opublikować, bo ja niestety nie mam w tej chwili czasu...

Awatar użytkownika

Autor tematu
tuxcnc
Lider FORUM (min. 2000)
Lider FORUM (min. 2000)
Posty w temacie: 5
Posty: 9319
Rejestracja: 26 lut 2011, 23:24
Lokalizacja: mazowieckie

Re: M177

#3

Post napisał: tuxcnc » 20 kwie 2025, 19:54

Częściowy sukces.
Skrypt działa z Python3 i LinuxCNC 2.10.
Niestety, z nieznanej przyczyny, nie obsługuje znaków \n i po prostu je wyświetla zamiast przejść do nowej linii.
Nie będę z tym walczył, bo Pythona nienawidzę i dłubanie w nim to dla mnie dopust boży.
Bez nowych linii też działa.
Co do samego przerobienia kodu, to oczywiście, tak jak pisałem, nawiasy zamiast przecinka, małe litery zamiast dużych, złe typy danych i temu podobne bzdury.
Krótko mówiąc, filozofia Pythona w całej okazałości - było źle i działało, to poprawiono żeby było dobrze i nie działało...
Nie gwarantuję, że czegoś nie pominąłem, ale to co trzeba działa.
M177.tar
(10 KiB) Pobrany 6 razy


qqaz
Lider FORUM (min. 2000)
Lider FORUM (min. 2000)
Posty w temacie: 2
Posty: 2347
Rejestracja: 28 sty 2007, 16:12
Lokalizacja: Łódź

Re: M177

#4

Post napisał: qqaz » 21 kwie 2025, 10:04

czyli wstawiasz w Gkod zatrzymanie programu i czytasz komunikat który sobie sam napisałeś.
Jest progres.

Awatar użytkownika

Autor tematu
tuxcnc
Lider FORUM (min. 2000)
Lider FORUM (min. 2000)
Posty w temacie: 5
Posty: 9319
Rejestracja: 26 lut 2011, 23:24
Lokalizacja: mazowieckie

Re: M177

#5

Post napisał: tuxcnc » 21 kwie 2025, 10:17

qqaz pisze:
21 kwie 2025, 10:04
czyli wstawiasz w Gkod zatrzymanie programu i czytasz komunikat który sobie sam napisałeś.
Dokładnie tak i jest to opisane w pierwszym poście.
Tylko z pozoru to jest głupie, że sobie wyświetlasz to, co sam napisałeś.
Kiedy sięgniesz po program, którego użyłeś jeden i ostatni raz trzy lata temu, bo teraz musisz dorobić jeszcze jedną sztukę, to docenisz te komunikaty...


qqaz
Lider FORUM (min. 2000)
Lider FORUM (min. 2000)
Posty w temacie: 2
Posty: 2347
Rejestracja: 28 sty 2007, 16:12
Lokalizacja: Łódź

Re: M177

#6

Post napisał: qqaz » 21 kwie 2025, 10:22

głupie czy nie to uwagę zwraca wyższość specjalnych narzędzi celowo pisanych bo standard nie wystarcza.
Jaki ten linukx jest skomplikowany

Awatar użytkownika

Autor tematu
tuxcnc
Lider FORUM (min. 2000)
Lider FORUM (min. 2000)
Posty w temacie: 5
Posty: 9319
Rejestracja: 26 lut 2011, 23:24
Lokalizacja: mazowieckie

Re: M177

#7

Post napisał: tuxcnc » 21 kwie 2025, 10:37

qqaz pisze:
21 kwie 2025, 10:22
głupie czy nie to uwagę zwraca wyższość specjalnych narzędzi celowo pisanych bo standard nie wystarcza.
Jaki ten linukx jest skomplikowany
Do prostych prac to i GRBL wystarczy.
Natomiast kiedy trzeba detal ręcznie obracać w imadle, to jest ten sam problem we wszystkich sterowaniach, a nie tylko w Linuksie...
Ja wiem dokąd zmierzasz.
Zamiast pisać głupie posty, napisz makro do Mach3, żeby udowodnić że tam też się da, bo pewnie się da, a komuś może się to przydać...
Ale to już nie w tym dziale...

ODPOWIEDZ Poprzedni tematNastępny temat

Wróć do „LinuxCNC (dawniej EMC2)”