Tokarka - bazowanie i soft-limity

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: 3
Posty: 9874
Rejestracja: 26 lut 2011, 23:24
Lokalizacja: mazowieckie

Tokarka - bazowanie i soft-limity

#1

Post napisał: tuxcnc » 20 kwie 2025, 14:53

W pierwszej tokarce mam założone krańcówki i po włączeniu maszyny na nich ją bazuję.
Działa to tak, jak się można spodziewać, ale jest dość upierdliwe, bo się nie da tego zrobić z zablokowanym koniem (trzeba go odsuwać na sam koniec łoża).
Wiem, że niektórzy w ogóle bronią się przed takim rozwiązaniem i wolą bazować bez krańcówek, czyli tam gdzie suport stoi, tam będą zera.
Ma to też swoje minusy, choćby taki, że soft-limity kompletnie tracą sens.
W swojej drugiej tokarce póki co krańcówek nie założyłem i kombinuję jak pracować bez nich...
Na razie przyszło mi do głowy, żeby wykorzystać m-kod użytkownika, na przykład M199 (nazwa jest dowolna, byleby z zakresu M100-M199).
Ten m-kod z odpowiednim parametrem powinien ustawić soft limit tak, żeby nie zrobić dzwona w uchwyt.
O ile banalnie proste jest napisanie takiego skryptu, żeby nie grzmotnąć suportem w uchwyt, to zabezpieczenie przed przywaleniem nożem już proste nie jest, bo trzeba wziąć pod uwagę offset narzędzia i wykonać dość proste, ale jednak obliczenia...
Przyznam się, że rozbolała mnie od tego głowa, bo skrypt działał mi z terminala, ale nie chciał z poziomu MDI...
W końcu okazało się, że bash wykonuje arytmetykę na zmiennych int, a LinuxCNC wydaje parametry float...
(Jeśli w oknie MDI napiszesz M199 P-10 to wywołany zostanie skrypt z parametrem -10.000000 i wywali się bo liczb zmiennoprzecinkowych dodawać nie potrafi...)
Rozwiązanie jest dość proste (użycie programu bc (taki terminalowy kalkulator)), ale ból głowy pozostał i chwilowo nie pozwala mi na kontynuowanie projektu...

Może znajdzie się ktoś chętny zrobić kilka prostych testów i je opisać?
Skrypt działa, brakuje tylko instrukcji obsługi...
Powinno się go uruchamiać po każdej zmianie narzędzia, ale w sumie to można dowolną ilość razy, bo wartość pinów ini.n.xxx_limit jest wczytywana przed każdym ruchem...
Bez większego problemu można go rozpisać też na inne osie i inne soft-limity i używać także na innych maszynach, nie tylko na tokarce, choć tutaj jest chyba największa potrzeba.

Poniższe trzeba zapisać w pliku M<ileśtam> i umieścić we właściwym folderze ncfiles.

Kod: Zaznacz cały

#!/bin/bash
param=$1
offset=$(halcmd getp motion.tooloffset.z)
limit=$(echo "$param + $offset" | bc)
halcmd setp ini.z.min_limit $limit
exit 0



Awatar użytkownika

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

Re: Tokarka - bazowanie i soft-limity

#2

Post napisał: tuxcnc » 21 kwie 2025, 18:34

Byłem dzisiaj przy tokarce i sprawdziłem.
Zasadniczo to działa, ale wyszły pewne kwiatki, które wymagają zbadania.
Nie chodzi o sam kod, tylko o jego interakcje z innymi kodami, możliwość zmapowania na M6, możliwość użycia w postprocesorze CAM, lub dostosowania już istniejącego kodu.
Tak w wielkim skrócie, to chodzi o Tn, M6, G43 i o to, że w jednej linii (np. T2 M6 G43 M199 P-10) to nie zadziała...
Muszę sobie przypomnieć jak mapowałem wymianę narzędzia z pomiarem na M6, a to dawno było...


daisymaria
Nowy użytkownik, używaj wyszukiwarki
Nowy użytkownik, używaj wyszukiwarki
Posty w temacie: 1
Posty: 2
Rejestracja: 17 sty 2023, 04:17

Re: Tokarka - bazowanie i soft-limity

#3

Post napisał: daisymaria » 13 gru 2025, 08:34

Poniżej masz praktyczne i zwięzłe wyjaśnienie obu pojęć oraz tego, jak działają razem w codziennej pracy na tokarce CNC.
Bloodmoney


kszumek
Specjalista poziom 2 (min. 300)
Specjalista poziom 2 (min. 300)
Posty w temacie: 1
Posty: 586
Rejestracja: 04 kwie 2006, 18:08
Lokalizacja: Białystok

Re: Tokarka - bazowanie i soft-limity

#4

Post napisał: kszumek » 13 gru 2025, 15:22

Witam
wiem że to mało profesjonalne rozwiązanie ale może bazowanie przy uchwycie zdało by egzamin w twojej tokarce
lub raz na jakiś czas bazować i nie przestawiać maszyny bez prądu, w końcu linuxcnc
pamięta gdzie wyłączyłeś maszynę , u mnie zdaje to egzamin

w zasadzie u mnie nawet nie było by problemem bazowanie gdzieś na środku

Awatar użytkownika

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

Re: Tokarka - bazowanie i soft-limity

#5

Post napisał: tuxcnc » 13 gru 2025, 15:39

kszumek pisze:
13 gru 2025, 15:22
Witam
wiem że to mało profesjonalne rozwiązanie ale może bazowanie przy uchwycie zdało by egzamin w twojej tokarce
lub raz na jakiś czas bazować i nie przestawiać maszyny bez prądu, w końcu linuxcnc
pamięta gdzie wyłączyłeś maszynę , u mnie zdaje to egzamin

w zasadzie u mnie nawet nie było by problemem bazowanie gdzieś na środku
To jest stary temat i szczerze mówiąc o nim zapomniałem...
W tej nowszej tokarce, na dzień dzisiejszy mam założoną krańcówkę na osi X.
Oś Z jest bazowana tam gdzie stoi.
Jeżeli tokarka ma jeden imak, to można X bazować w tym kierunku, w którym narzędzie odjeżdża od materiału, co jest względnie bezpieczne (no chyba że ktoś zostawi wytaczak w otworze).
Natomiast w osi Z nie da się przewidzieć w co się grzmotnie przy bazowaniu i jak na razie nie mam na to pomysłu.

ODPOWIEDZ Poprzedni tematNastępny temat

Wróć do „LinuxCNC (dawniej EMC2)”