Sonda pomiarowa i funkcje

Sonda pomiarowa i funkcje

Dyskusje na temat systemu Faunc

Autor tematu
nemasek
Nowy użytkownik, używaj wyszukiwarki
Nowy użytkownik, używaj wyszukiwarki
Posty w temacie: 4
Posty: 9
Rejestracja: 03 gru 2020, 22:42

Sonda pomiarowa i funkcje

#1

Post napisał: nemasek » 08 kwie 2024, 16:36

Witam,
mam pewne zadanie w firmie i poszukuję wskazówek lub rozwiązania. Póki co przeszukałem sporo forum i nie znalazłem wszystkiego, ale będę szukać dalej.
Pomyślałem, że wstawię to jako temat i możliwe, że ktoś wspomoże.

Temat tyczy się:
Napisania programu na maszynę Doosan MYNX (Fanuc), gdzie zostanie wybrana sonda pomiarowa.
Następnie sonda zmierzy wartość w osi 'Z' w wskazanych współrzędnych 'XY'.
Te wartości zostaną następnie wykorzystane w działaniu matematycznym, wyliczając różnicę względem zadanej sztywnej wartości.
Następnie zostanie wybrane wiertło i wykona otwór na wyliczonej współrzędnej 'Z'.

Jeśli ktoś chciałby zrozumieć to dokładniej to chętnie tłumaczę szerzej.
W części produkcyjnej krytyczna jest głębokość wiercenia względem powierzchni czołowej, a jest ona sferą wykonaną w bardzo słabej jakości.
Czyli chcę, żeby sonda zmierzyła 'Z' w danym punkcie. Następnie ma wyliczyć jaka jest odchyłka względem 'Z' idealnego i o tyle płycej/głębiej wykonać otwór.
Baza 'Z' jest na spodzie materiału.

Jeśli dobrze rozumiem dotychczas zdobytą wiedzę to będzie to np.
"
N36 ( OPER : 2. WIERCENIE_2 )
N38 ( NARZ : WIERTLO_15 )
N40 ( D = 15.0 )
N42 S3183 M3
N44 G54
N46 G90 G0 X100. Y75.
N48 G98 G81 X100. Y75. Z[#500-20.] R53. F318.
N50 G80
N52 M1
"
Czyli wiertło będzie wiercić na głębkość Z-20. z uwzględnieniem zmiennej #500, gdzie będzie wartość 'Z' zmierzonej.
Podprogram na mierzenie osi 'Z' zakładam, że zdobędę z maszyny czy jakiejś książki (aktualnie operatorzy używają sondy tylko manualnie do złapania 'Z', więc funkcji w kodzie nie znamy od razu z głowy).

Potrzebuję poznać jak zapisać, aby pomiar został wrzucony do tej zmiennej, np. #500.
Z góry dziękuję :)



Tagi:


rc666
ELITA FORUM (min. 1000)
ELITA FORUM (min. 1000)
Posty w temacie: 1
Posty: 1255
Rejestracja: 27 cze 2011, 14:48
Lokalizacja: Chrząszczyżewoszyce

Re: Sonda pomiarowa i funkcje

#2

Post napisał: rc666 » 08 kwie 2024, 16:42

W uproszczeniu, chcesz mierzyć głębokość otworu?
Nie ma głupich pytań, są tylko głupcy którzy ich nie zadają...


Autor tematu
nemasek
Nowy użytkownik, używaj wyszukiwarki
Nowy użytkownik, używaj wyszukiwarki
Posty w temacie: 4
Posty: 9
Rejestracja: 03 gru 2020, 22:42

Re: Sonda pomiarowa i funkcje

#3

Post napisał: nemasek » 08 kwie 2024, 16:52

Głębokość otworu jest znana, wynosi np. 20mm względem powierzchni czołowej - to ją chce mierzyć dla kilku otworów położonych na sferycznym czole (zanim otwór zostanie wywiercony).
Mierzenie każdej pozycji w osi 'Z' i wpisywanie do kolejno G55, G56, itd., a potem wiercić na tych bazach nie wchodzi w grę.
Pracujemy tylko na G54, zmierzone 'Z' w bazie jest stałe. Głębokość otworu względem czoła jest stała. Zmienna ma być głębokość wiercenia na podstawie wysokości powierzchni przed obróbką.


mateu5
Specjalista poziom 3 (min. 600)
Specjalista poziom 3 (min. 600)
Posty w temacie: 1
Posty: 621
Rejestracja: 31 paź 2009, 16:20
Lokalizacja: PL

Re: Sonda pomiarowa i funkcje

#4

Post napisał: mateu5 » 12 kwie 2024, 08:25

Jeśli masz sondę renishaw oraz oprogramowanie inspection plus to tak to będzie wyglądać:


%
O001(WIERCENIE)

(SONDA RENISHAW)
G40G80G90
T1 M6 (SONDA
G04 X1
G54
G0 X0 Y0
G0 G43 H1 Z150
M74 (M-KOD WLACZENIA SONDY)


G65 P9810 X20 Y20 Z10 F3000 (PRZEJAZD NAD 1 POMIAR)
G65 P9811 Z0 Q20(POMIAR W OSI -Z-)
#101=#137 (PRZEPISANIE WYNIKU POMIARU W OSI -Z- DO #101)
G65 P9810 Z10 F3000 (WYCOFANIE DO Z10)

G65 P9810 X-20 Y20 Z10 F3000 (PRZEJAZD NAD 2 POMIAR)
G65 P9811 Z0 Q20(POMIAR W OSI -Z-)
#102=#137 (PRZEPISANIE WYNIKU POMIARU W OSI -Z- DO #102)
G65 P9810 Z10 F3000 (WYCOFANIE DO Z10)

G65 P9810 X-20 Y-20 Z10 F3000 (PRZEJAZD NAD 3 POMIAR)
G65 P9811 Z0 Q20(POMIAR W OSI -Z-)
#103=#137 (PRZEPISANIE WYNIKU POMIARU W OSI -Z- DO #103)
G65 P9810 Z10 F3000 (WYCOFANIE DO Z10)

G65 P9810 X20 Y-20 Z10 F3000 (PRZEJAZD NAD 4 POMIAR)
G65 P9811 Z0 Q20(POMIAR W OSI -Z-)
#104=#137 (PRZEPISANIE WYNIKU POMIARU W OSI -Z- DO #102)
G65 P9810 Z10 F3000 (WYCOFANIE DO Z10)

G65 P9810 Z100 F3000 (WYCOFANIE DO Z100)
G90
M73 (M-KOD WYLACZENIA SONDY)
G64

(--WIERCENIE--)
T0 M6 (WIERTLO)
H0 D0 (NR TOOL OFFSET)
S1200 M3 F120 G54
G0 G43 Z400 M8
G94
G0 X20 Y20
G0 Z20
G98 G81 X20 Y20 Z[#101-20] R5 F120
X-20 Y20 Z[#102-20]
X-20 Y-20 Z[#103-20]
X20 Y-20 Z[#104-20]
G80
G0 Z100

M30

%
Mazak -> Fanuc -> Acramatic -> Sinumeric -> Heidenhain -> Mitsubishi meldas -> EdgeCAM -> NX CAM -> Postprocesory.


Autor tematu
nemasek
Nowy użytkownik, używaj wyszukiwarki
Nowy użytkownik, używaj wyszukiwarki
Posty w temacie: 4
Posty: 9
Rejestracja: 03 gru 2020, 22:42

Re: Sonda pomiarowa i funkcje

#5

Post napisał: nemasek » 12 kwie 2024, 22:47

mateu5 wielkie dzięki, to dokładnie to co miałem na myśli.
Problem się pojawił podczas testów na maszynie. Próbowałem G65 P9810, G65 P9811, jednak "FILE NOT FOUND". Próbowałem z M165 zamiast G65 (podobno tak może być na DOOSAN), ale program przeskakuje do końca, jakby został wykonany, gdzie nic się nie stało. Próbowałem też P9770 i P9771 również bez skutku.
Szczerze nie wiem, czy mamy aż taką ubogą wersję czy po prostu wciąż nie trafiłem na odpowiedni nr makro.
Na włączenie i wyłączenie sondy jest odpowiednio O8501 i O8503.
Póki co temat się dłuży, czekam od odpowiedź od dostawcy maszyny i piszę swoje makro.

Na ten moment jestem na takim etapie:

%
O6511 (PODPROGRAM POMIAR W -Z-)
IF[#26 EQ #0] GOTO 99 (SPRAWDZ CZY PODANO -Z-)
#11 = #4001 (PODTRZYMAJ G KODY GR 01)
#13 = #4003 (PODTRZYMAJ G KODY GR 03)
#16 = #4006 (PODTRZYMAJ G KODY GR 06)
#32 = -10.0 (DODAJ DOD GLEB W -Z-)
#9 = 50.0 (POSUW PODCZAS POMIARU)
#33 = #26+#32 (OSTATECZNY -Z- POMIARU)

N100 (START POMIARU)
G90 G00 Z[#26+15.0] (NAJAZD WSTEPNY -Z-)
G90 G31 Z#33 F[#9*2] (POMIAR WSTEPNY NA WIEKSZYM POSUWIE)
G91 G00 Z5. (ODJAZD OD POMIARU)
G90 G31 Z#33 F#9 (OSTATECZNY POMIAR NA NORM POSUWIE)
#523 = #5063 (ZAPISZ POMIAR DO PARAM 523)
G91 G00 Z50. (ODJAZD PO POMIARZE)

(JESLI MIERZY OS Z MASZYNOWA ZAMIAST WZGL G54 TO TRZEBA WYLICZYC WARTOSC)
(#524=#2702-#523)

IF [#523 GT #521] GOTO 98
IF [#523 LT #522] GOTO 97
GOTO 999
N99 #3000=99 (BRAK WYSOKOSCI Z)
N98 #3000=98 (SFERA NA CZOLE ZBYT WYSOKO)
N97 #3000=97 (SFERA NA CZOLE ZBYT NISKO)
N999
G#11 G#13 G#16 (POWROT G KODOW Z GR 01 03 06)
M99
%


%
O0202 (TEST SONDA)
N1 G21 (JEDNOSTKI NA MM)
N2 G17 G40 G80 G49 (BLOK BEZPIECZENSTWA)
N3 G90 G54 (WSP ABSOLUTNE I BAZA)
N4 (G00 X200. Y200.) (NAJAZD DO WYM NARZEDZIA)
N5 T23 M06 (WYBIERZ SONDE)
N6 G00 X0. Y0. (NAJAZD NA PIERWSZA POZYCJE)
N7 G43 Z200. H23
#520 = 50. (WYSOKOSC CZOLA)
#521 = [#520+1.0] (WYSOKOSC CZOLA MAX)
#522 = [#520-2.0] (WYSOKOSC CZOLA MIN)
N8 G65 P8501 (WLACZ SONDE)
N9 G65 P6511 Z50.
N10 G65 P8503 (WYLACZ SONDE)
#531=#523 (PRZEPISZ POMIAR DO PARAM)
N11 M30
%

%
O8501(SONDA START)
M184 (RUCH OSI WL PRZY WRZECIONO STOP)
M74 (SONDA WL)
G4X1. (CZEKAJ SEKUNDE)
G5.1Q0 (HSM OFF)
M99
%

Nie będę oszukiwał - czuję się, jakby wymyślał koło od nowa, ale po wycenie wgrania pakietu Renishaw to chyba jedyna opcja. Chyba, że uda się znaleźć i uruchomić standardowe makro.

Oczywiście jeszcze nie skończyłem, muszę opracować podprogram do ruchu podjazdowego na G31, żeby sonda była bezpieczna, ale ogólny zamysł raczej mam.
Tak czy tak dzięki wielkie za pomoc. Jakbym miał te podprogramy to by pasował idealnie.


Autor tematu
nemasek
Nowy użytkownik, używaj wyszukiwarki
Nowy użytkownik, używaj wyszukiwarki
Posty w temacie: 4
Posty: 9
Rejestracja: 03 gru 2020, 22:42

Re: Sonda pomiarowa i funkcje

#6

Post napisał: nemasek » 13 kwie 2024, 19:19

Ciekawe czy cokolwiek z tego co piszę zadziała na maszynie :D.
Ale wstępny pomysł jest. Starałem się przewidzieć co ktoś może źle wpisać czy zapomnieć wpisać. Niby jest to potrzebne tylko do jednego projektu, ale nic nie wiadomo co będzie w przyszłości. Napisałem w miarę standardowe cykle i ruchy do zastosowania gdzie indziej, ale na pewno nie są idealne.

Cykl na ruch bezpieczny:
%
O6510( RUCH BEZP SONDY )
(JESLI W DOL TO NAJPIERW -X- I -Y-)
(JESLI W GORE TO NAJPIERW -Z-)
IF[#4003NE90]GOTO98
IF[#9EQ#0]GOTO97
#107 = #5043 (ZAPISZ -Z- POCZATKOWE BAZY)
#108 = 1. (LICZNIK)

N5
IF[#108EQ4.]GOTO80
IF[#107LT#26]GOTO9 (-Z- PIERWSZY)
IF[#107GT#26]GOTO7 (-Z- OSTATNI)

N7(-)
IF[#108EQ1.]GOTO20(-)
IF[#108EQ2.]GOTO30(-)
IF[#108EQ3.]GOTO10(-)

N9 (+)
IF[#108EQ1.]GOTO10(+)
IF[#108EQ2.]GOTO20(+)
IF[#108EQ3.]GOTO30(+)

N10
#108=#108+1.
IF[#26NE#0]GOTO40 (-Z-)
GOTO 5

N20
#108=#108+1.
IF[[#24NE#0]AND[#25NE#0]]GOTO50 (-X- I -Y-)
IF[#24NE#0]GOTO60 (-X-)
GOTO 5

N30
#108=#108+1.
IF[#25NE#0]GOTO70 (-Y-)
GOTO 5 (80)

N40 G31 Z#26 F#9 (TYLKO -Z-)
IF[[#26NE#0]AND[#5043NE#26]]GOTO99
GOTO 5

N50 G31 X#24 Y#25 F#9 (-X- I -Y-)
IF[[#24NE#0]AND[#5041NE#24]]GOTO99
IF[[#25NE#0]AND[#5042NE#25]]GOTO99
GOTO 5 (80)

N60 G31 X#24 F#9 (TYLKO -X-)
IF[[#24NE#0]AND[#5041NE#24]]GOTO99
GOTO 5

N70 G31 Y#25 F#9 (TYLKO -Y-)
IF[[#25NE#0]AND[#5042NE#25]]GOTO99
GOTO 5

N80 (RESET PARAMETROW)
#24=#0
#25=#0
#26=#0
#108=#0
GOTO1000 (DO WYJSCIA)

N99 #3000=99 (KOLIZJA SONDY)
N98 #3000=98 (PROG NIE JEST NA G90)
N97 #3000=97 (PODAJ POSUW F)

N1000
M99
%

Cykl na pomiar w osi Z. Branie pod uwagę osi X czy Y sporo utrudni, a do aktualnego zadania nie potrzebne.
%
O6511( SONDA POMIAR W -Z- )
IF[#26EQ#0]GOTO99 (SPRAWDZ CZY PODANO -Z-)
#11 = #4001 (PODTRZYMAJ G KODY GR 01)
#13 = #4003 (PODTRZYMAJ G KODY GR 03)
#32 = -6.0 (DODAJ DOD GLEB W -Z-)
#9 = 50.0 (POSUW PODCZAS POMIARU)
#33 = #26+#32 (OSTATECZNY -Z- POMIARU)

G90 G00 Z[#26+10.0] (NAJAZD WSTEPNY -Z-)
G90 G31 Z#33 F[#9*2] (POMIAR WSTEPNY NA WIEKSZYM POSUWIE)
IF[#5043EQ#33]GOTO98
G91 G00 Z5. (ODJAZD OD POMIARU)
G90 G31 Z#33 F#9 (OSTATECZNY POMIAR NA NORM POSUWIE)
#523 = #5063 (ZAPISZ POMIAR DO PARAM 523)
G90 G00 Z[#26+10.0] (ODJAZD PO POMIARZE)
GOTO1000 (DO WYJSCIA)

N99 #3000=99 (PODAJ WYSOKOSC -Z-)
N98 #3000=98 (KONIEC ZAKRESU POMIARU)

N1000
G#11 G#13 (POWROT G KODOW Z GR 01 03)
M99
%

I jakiś wstępny szkielet do prób wiercenia.
%
O0202 (TEST SONDA)
N1 G21 (JEDNOSTKI NA MM)
N2 G17 G40 G80 G49 (BLOK BEZPIECZENSTWA)
N3 G90 G54 (WSP ABSOLUTNE I BAZA)
N4 (G00 X200. Y200.) (NAJAZD DO WYM NARZEDZIA)
N5 T23 M06 (WYBIERZ SONDE)
N6 G00 X0. Y0. (NAJAZD NA OS DETALU)
N7 G43 Z200. H23

#520 = 50. (WYSOKOSC CZOLA)
#521 = [#520+1.0] (WYSOKOSC CZOLA MAX)
#522 = [#520-2.0] (WYSOKOSC CZOLA MIN)

N8 G65 P8501 (WLACZ SONDE)

(1 OTWOR)
N9 G65 P6510 X150. Y0. Z60. F3000.
N10 G65 P6511 Z30.
IF[#523GT#521]GOTO98
IF[#523LT#522]GOTO97
#531=#523 (PRZEPISZ POMIAR 1 DO PARAM)

(2 OTWOR)
N11 G65 P6510 X-150. Y0. Z60. F3000.
N12 G65 P6511 Z30.
IF[#523GT#521]GOTO98
IF[#523LT#522]GOTO97
#532=#523 (PRZEPISZ POMIAR 2 DO PARAM)

N13 G65 P6510 Z100. F3000. (ODJAZD SONDY)
N14 G65 P8503 (WYLACZ SONDE)

(---WIERCENIE---)
T1 M6 D1 (WIERTLO)
S1200 M3
G54
G0 G43 H1 Z200. M8
G94
G0 X150. Y0.
Z60.
G98 G81 X150. Y0. Z[#531-20.] R5. F120.
X-150. Y0. Z[#532-20.]
G80
G0 Z100.

GOTO1000

N98 #3000=98 (SFERA NA CZOLE ZBYT WYSOKO)
N97 #3000=97 (SFERA NA CZOLE ZBYT NISKO)

N1000 M30
%

Coś przy maszynie na pewno wyjdzie.
Póki co pozdrawiam. Nie wiem ile ludzi pisze takie specjalne makro i cuduje z sondami, ale trzeba przyznać ciekawe zajęcie.


grzeszko
Specjalista poziom 1 (min. 100)
Specjalista poziom 1 (min. 100)
Posty w temacie: 1
Posty: 263
Rejestracja: 03 lip 2012, 20:36
Lokalizacja: Tarnów

Re: Sonda pomiarowa i funkcje

#7

Post napisał: grzeszko » 22 kwie 2024, 20:09

strasznie cudujesz z tym makro

wybierasz sonde, jedziesz na G43 na bezpieczne Z
wł sonde
jedziesz bezpiecznym ruchem i mierzysz baze w Z
pozniej fukcja na różnice pomiarów,
10 bloków makro max.
dopiero się uczę

ODPOWIEDZ Poprzedni tematNastępny temat

Wróć do „Fanuc”