Strona 1 z 1

radius to end of arc differs from radius to start

: 12 maja 2019, 23:56
autor: ekrzychooooxx
Witam.
Często podczas wczytywaniu pliku ngc w LINUXCNC mam taki błąd:
radius to end of arc differs from radius to start
Obrazek
W CAMBAM w ustawieniach postprocesora :
LinuxCNC -> Tryb środka łuku
przetestowałem wszystkie ustawienia i lipa. Błąd dalej jest.
Zauważyłem że błąd zawsze jest w pierwszym łuku po zmianie narzędzia (ale to może przypadek).
Proszę o pomoc w rozwiązaniu tego problemu.

Re: radius to end of arc differs from radius to start

: 13 maja 2019, 09:13
autor: Steryd
A uzywasz korekcji?

Re: radius to end of arc differs from radius to start

: 13 maja 2019, 12:51
autor: ekrzychooooxx
Offsetu narzędzia nie używam. Mam G40.
To jest plik CamBam :
chwytak1.cb.txt
(15.27 KiB) Pobrany 109 razy

Re: radius to end of arc differs from radius to start

: 14 maja 2019, 12:31
autor: ekrzychooooxx
Problem rozwiązany.
Przyczyną u mnie był plik tc.ngc który przechwytuje działanie kodu M6 a wyglądał tak:

Kod: Zaznacz cały

o<tc> sub
;tool_change
M73
G21
G90
(; tool changed - move to toolensor)
G53 G0 Z0 F200
G53 G0 X #<_ini[toolsensor]x> Y #<_ini[toolsensor]y> F1000
;G53 G0 Z #<_ini[toolsensor]z>
M6
G91
G38.3 Z -60 F200
G38.4 Z10 F2
G90
o111 if [#5070 EQ 0]
   (MSG, Zły pomiar)
o111 endif
G92 Z[#1000-#5223]
G53 G1 Z #<_ini[after_change_position]z> F300
G53 G0 X #<_ini[after_change_position]x> Y #<_ini[after_change_position]y>
o<tc> endsub
m2
Naprowadziła mnie ujemna wartość Y w komunikacie błędu. Zawsze projekt umieszczam dla dodatnich X i Y.
Program próbował wykonać łuk gdzie punktem startowym był ostatnia pozycja ze zmiany narzędzia:

Kod: Zaznacz cały

X #<_ini[after_change_position]x> Y #<_ini[after_change_position]y>
a nie punkt z przed wymiany narzędzia.
Wystarczy dodać na początek pliku

Kod: Zaznacz cały

#1 = #5420 ;zachowanie pozycji X
#2 = #5421 ;zachowanie pozycji Y
a na końcu

Kod: Zaznacz cały

G0 X#1 Y#2    ;odtworzenie poprzedniej pozycji
I pliki wczytują się teraz bez błędów.
W sumie temat można by przenieść do działu LinuxCNC.