A TNC vezérlések ugyan számos mérőciklust tartalmaznak, melyekkel a munkadarab egy oldalának helyzetét meghatározhatjuk, de ezek a ciklusok csak két mérésből számolják ki azt. Ezzel nincs is baj, ha a munkadarab oldala valóban egyenes, azonban ez a gyakorlatban nem mindig teljesül. Például öntött előgyártmányoknál, vagy nagyméretű hegesztett darabok megmunkálása során a vetemedés miatt célszerűbb lenne több mérés alapján a mérési pontokra legjobban illeszkedő egyenest megkeresnünk.
A mérési pontokat egy táblázatban fogjuk tárolni, majd az eredményeket egy paraméteres programmal kiértékeljük. Eredményeképpen megkapjuk az egyenes egyenletét.
Első lépésként készítsünk egy pontok.tab táblázatot P_X és P_Y oszlopokkal a mérési eredmények tárolásához.
A táblázatok készítéséről és használatáról lásd egy előbbi hozzászólást (#5). A táblázatban a sorok száma legyen elegendő a mérési eredmények tárolására, a kezdeti értékekre írjunk nullát.
A táblázat létrehozása után írjuk be a programot:
0 BEGIN PGM egyenes MM | program kezdete |
1 TOOL CALL 99 Z | szerszám (tapintó) hívása |
2 L X+0 Y-5 Z+40 R0 FMAX | előpozícionálás |
3 L Z-5 FMAX | merülés tapintási mélységre |
4 FN 26: TABOPEN pontok.tab | táblázat megnyitása |
5 Q1 = 5 | mérési pontok száma |
6 Q2 = 0 | futó változó |
7 LBL 1 | címke az ugráshoz |
8 TCH PROBE 3.0 MERES | Y irányú mérés |
9 TCH PROBE 3.1 Q10 | mérési eredmény címe X=Q10, Y=Q11, Z=Q12 (hiba=Q13) |
10 TCH PROBE 3.2 Y SZOG:+0 | |
11 TCH PROBE 3.3 BIZT.M+10 F500 MB10 BAZIS RENDSZER:0 | |
12 TCH PROBE 3.4 ERRORMODE0 | |
13 FN 27: TABWRITE Q2 /P_X,P_Y = Q10 | írás a táblázatba |
14 Q2 = Q2 + 1 | futó változó léptetése |
15 FN 9: IF +Q1 EQU +Q2 GOTO LBL 2 | kilépés az ismétlésből |
16 L IX+50 FMAX | következő mérési pontra állás |
17 FN 9: IF +1 EQU +1 GOTO LBL 1 | ugrás a mérés ismétléséhez |
18 LBL 2 | címke a mérés végéhez |
19 L M140 MB MAX F5000 | Z irányú kiemelés |
20 Q2 = 0 | változók inicializálása |
21 Q10 = 0 | |
22 Q11 = 0 | |
23 Q12 = 0 | |
24 Q13 = 0 | |
25 LBL 3 | címke az adatok kiértékeléséhez |
26 FN 28: TABREAD Q3 =Q2 /P_X,P_Y | adatok olvasása |
27 Q2 = Q2 + 1 | futó változó léptetése |
28 Q10 = Q10 + Q3 ;Xi | X koordináták összegzése |
29 Q11 = Q11 + Q4 ;Yi | Y koordináták összegzése |
30 Q12 = Q12 + SQ Q3 ;Xi2 | X koordináták négyzetének összegzése |
31 Q13 = Q13 + ( Q3 * Q4 ) ;Xi*Yi | koordináták szorzatának összegzése |
32 FN 10: IF +Q2 NE +Q1 GOTO LBL 3 | összegzés ismétlése |
33 Q5 = ( Q11 * Q10 ) - ( Q1 * Q13 ) | |
34 Q6 = SQ Q10 - ( Q1 * Q12 ) | |
35 Q7 = Q5 / Q6 ;a | a paraméter meghatározása |
36 Q8 = ( Q11 - ( Q7 * Q10 ) ) / Q1 ;b | b paraméter meghatározása |
37 END PGM egyenes MM | program vége |
A 10 és 16 sorok megváltoztatásával a mérés, a mért felület iránya beállítható, jelenleg az X tengellyel párhuzamos felületet mér 5 ponton, 50 mm-es távolságokban.
A számítás menete (20-dik sortól kezdődően) szorulhat némi magyarázatra.
Az egyenes egyenlete a következő:
Az X-Y síkban a fenti képlettel lehet meghatározni, hogy adott X pontban milyen Y értéket vesz fel az egyenes. Az a az egyenes meredeksége, a b pedig az Y tengelyen található metszéspont magassága.
Amikor csak két mérési pontunk van, akkor egy kétismeretlenes lineáris egyenletrendszer megoldása triviális, azonban kettőnél több (az elméleti egyenesre csak kis hibával illeszkedő) mérési pont esetén a helyzet kicsit bonyolultabb. Ilyenkor célszerű a legkisebb négyzetek módszerét használni az alábbi képlet szerint:
Az egyenletben szereplő szumma jelek ne riasszanak meg senkit, ezek az összegzést jelentik, azaz például a
annyi mérési eredmény szorzatának összeadását jelenti, ahány (n) mérést végeztünk. Ezt az összegzést a program 31-es sora végzi.
Az egyenletrendszer átrendezése után
és
A programmal először az a paramétert határozzuk meg (33-35 sorok), miután az Xi, Yi, Xi négyzet és XiYi összegzését elvégezte.
A b paraméter meghatározása a következő (36) sorban már egy lépésben elvégezhető.
A két paraméter ismeretében a mérési pontokra legjobban illeszkedő egyenes bármely pontja meghatározható az első egyenlettel.
Fontos megjegyezni, hogy az egyenes illesztésének van más módja is, de abban az esetben, amikor a mérési pontok hibája közel egyforma (ez általában elmondható a tapintóval végzett automatikus mérésekről), akkor jól használható ez az egyszerű módszer.
Amennyiben szükséges az illeszkedés pontosságáról is tudnunk valamit (például a különböző munkadaraboknál váratlan mérési hibák adódhatnak), akkor kiszámolhatjuk az r korrelációt:
Amikor a mérési pontok tökéletesen illeszkednek az egyenesre, akkor:
Az r abszolút értéke a gyakorlatban 1-nél kisebb lesz, és néhány méréssel meghatározható, hogy milyen értékre lehet számítani a jó daraboknál. Ha értéke körülbelül 0.8-nál kisebb, akkor már nem nevezhetjük egyenesnek a mért felületet.