Pomiary z użyciem maszynki cnc i MACH-a

Oprogramowanie i systemy pomiarowe

Autor tematu
stan924
Nowy użytkownik, używaj wyszukiwarki
Nowy użytkownik, używaj wyszukiwarki
Posty w temacie: 1
Posty: 8
Rejestracja: 09 sty 2005, 19:18
Lokalizacja: Jaslo

Pomiary z użyciem maszynki cnc i MACH-a

#1

Post napisał: stan924 » 04 sty 2012, 18:42

Witam.

Poniżej moje "osiągnięcia" w dziedzinie "półautomatycznego" pomiaru w osi Z.
Ponieważ potrzeba zmusza człowieka czasami do karkołomnych sztuczek więc zrobiłem coś takiego:
G-kod wygenerowałem i pod potrzeby pomiarów edytowałem sam.
MAKRO wyedytowane własnoręcznie na podstawie gotowca znalezionego w necie.
Ważne było to by pomiary były realizowane w sciśle określonych punktach.
Oczywiście w oryginale punktów było duuuuuuuużo wiecej, dla tej ilości nie opłacałoby się tak kombinować.

N1 G49 G40 G17 G80 G50 G90
N11 T01 S2000 M3
N21 G98 G81 X-8.44 Y-64.108 Z0 R0 F250.0 M0
N31 X-8.667 Y-65.833 Z0 M0
N41 X-8.916 Y-67.721 Z0 M0
N51 X-9.203 Y-69.902 Z0 M0
N61 X-9.397 Y-71.379 Z0 M0
N71 X9.421 Y-71.559 Z0 M0
N81 X9.244 Y-70.215 Z0 M0
N91 X8.947 Y-67.957 Z0 M0
N101 X8.696 Y-66.051 Z0 M0
N111 X8.454 Y-64.216 Z0 M0
N121 G80
N131 M30

Po wjechaniu na współrzędne X i Y program zatrzymyje się (M0)
Wówczas naciskam "Auto Tool zero" uruchamiane jest poniższe MAKRO
Sonda zamocowana we wrzecione jedzie w dół.
Po dotknięciu sondy do styku MAKRO zapisuje do pliku "digi.txt" współrzęne
X, Y, Z i realizowany jest powrót do programu, inaczej mówiąc MAKRO samo sobie wciska
przycisk "Start"(DoOEMButton (1000))i realizowany jest
Wyjazd na kolejny punkt i znów naciskam "Auto Tool zero" i tak w kółko aż ko końca. NUDNE !!!!

MAKRO
Dim Z As Single
Dim X As Single
Dim Y As Single
CurrentFeed = GetOemDRO(818) 'Get the current feedrate to return to later
PlateThickness = GetUserDRO(1151) 'Z-plate thickness DRO

If GetOemLed (825)=0 Then 'Check to see if the probe is already grounded or faulty
Code "G4 P0.5" ' two second delay
Code "G31 Z-20.0 F25" 'Z goes down a max of 1.0 at 5IPM
While IsMoving() 'wait while it happens
Wend
ZProbePos = GetVar(2002) 'get the axact point the probe was hit
Code "G0 Z" &ZProbePos 'go back to that point, always a very small amount of overrun
While IsMoving ()
Wend

Open "C:\Mach3\digi.txt" For Append As #1
Z = GetDRO(2)
X = GetDro(0)
Y = GetDro(1)
Write #1, "x=" & X & " y=" & Y & " z=" & Z

Code "G4 P0.2" 'Pause for Dro to update.
Code "G01 Z0 F1500" 'retract Z to 1.0 inch
Code "(Z axis is now zeroed)" 'puts this message in the status bar
Code "F" &CurrentFeed 'Returns to prior feed rate
Else
Code "(Z-Plate is grounded, check connection and try again)" 'this goes in the status bar if aplicable
Exit Sub
End If
Close #1
Code "G4 P0.5" 'Pause for Dro to update
DoOEMButton (1000)

Poniżej efekt pracy tej hybrydy.


"x=-8.44 y=-64.1081 z=-0.635"
"x=-8.667 y=-65.8328 z=-1.202"
"x=-8.916 y=-67.7217 z=-0.695"
"x=-9.203 y=-69.9019 z=-0.812"
"x=-9.397 y=-71.3794 z=-0.58"
"x=9.421 y=-71.5596 z=-0.414"
"x=9.244 y=-70.2152 z=-1.167"
"x=8.947 y=-67.957 z=-1.383"
"x=8.696 y=-66.051 z=-0.848"
"x=8.454 y=-64.2162 z=-0.655"

Byłoby suuuuuuuuper gdyby G-kod jakimś cudem sam wciskał "Auto Tool zero"
Ale to już wykracza poza moje kompetencje
Może ktoś coś doradzi??



Tagi:


michal
Sympatyk forum poziom 1 (min. 40)
Sympatyk forum poziom 1 (min. 40)
Posty w temacie: 1
Posty: 49
Rejestracja: 29 sie 2005, 08:07
Lokalizacja: Łódź
Kontakt:

#2

Post napisał: michal » 02 wrz 2012, 11:59

Też borykam się z problemem skanowania ale przy użyciu czujnika zegarowego podłączanego pod USB. Ma on możliwość odczytania i zapisu pomiaru poprzez wciśnięcie klawisza na klawiaturze.
Zrobiłem tak: kupiłem klawiaturę do kompa pod USB, rozebrałem ją, po ścieżkach odnalazłem które styki są zwierane w momencie wciśnięcia wybranego klawisza, dolutowałem do nich dwa przewody i podłączyłem do sterownika maszyny pod styki odpowiedzialne za włączanie wrzeciona lub chłodziwa. Do G-kodu musiałem dopisać komendę "zatrzymanie maszyny, włączenie i wyłączenie wrzeciona/chłodziwa (zwarcie styków powodujących wciśnięcie klawisza na klawiaturze ale na ok 0,5 sekundy lub krócej) i start maszyny"
Może i Tobie zamiast ręcznego wciskania klawisza ułatwiłaby taka modernizacja?

Moja maszynka niestety jest sterowana pod DOS-em więc chyba nie mam możliwości automatycznego zapisywania wszystkich trzech parametrów (XYZ) - dwóch z pozycji maszyny a trzeciego z czujnika. Po skanowaniu siedzę kilka godzin i tworzę G-kod poprzez kopiuj/wklej


yeti1981
Stały bywalec (min. 70)
Stały bywalec (min. 70)
Posty w temacie: 1
Posty: 76
Rejestracja: 23 gru 2008, 08:38
Lokalizacja: Kraków

#3

Post napisał: yeti1981 » 26 paź 2012, 15:04

Witam kolegów.
Bardzo prosta rzecz dla Ciebie kolego.
Weź i skopiuj zawartość makra(klawisza) auto tool zero i zapisz je w pliku np M102.m1s w katalogu Mach3/macros/nazwa twojego profilu
Wtedy po najeździe na żądaną współrzędną wpisz zamiast M0 to M102.
Program automatycznie wykona pomiar długości narzędzia, po czym pojedzie na następną współrzędną i tak do końca.
Pozdrawiam Bartek

ODPOWIEDZ Poprzedni tematNastępny temat

Wróć do „Oprogramowanie pomiarowe”