Egyenes meghatározása kettőnél több mérési pontból

Minden, amit a vezérlésekről tudni lehet...
Avatar
go98admin
Adminisztrátor
Hozzászólások: 376
Csatlakozott: 2016.08.18. 23:17

Egyenes meghatározása kettőnél több mérési pontból

HozzászólásSzerző: go98admin » 2016.08.22. 00:38

Egyenes meghatározása kettőnél több mérési pontból
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.
Kép
A táblázat létrehozása után írjuk be a programot:
0 BEGIN PGM egyenes MMprogram kezdete
1 TOOL CALL 99 Zszerszám (tapintó) hívása
2 L X+0 Y-5 Z+40 R0 FMAXelőpozícionálás
3 L Z-5 FMAXmerülés tapintási mélységre
4 FN 26: TABOPEN pontok.tabtáblázat megnyitása
5 Q1 = 5mérési pontok száma
6 Q2 = 0futó változó
7 LBL 1címke az ugráshoz
8 TCH PROBE 3.0 MERESY irányú mérés
9 TCH PROBE 3.1 Q10mé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 + 1futó változó léptetése
15 FN 9: IF +Q1 EQU +Q2 GOTO LBL 2kilépés az ismétlésből
16 L IX+50 FMAXkövetkező mérési pontra állás
17 FN 9: IF +1 EQU +1 GOTO LBL 1ugrás a mérés ismétléséhez
18 LBL 2címke a mérés végéhez
19 L M140 MB MAX F5000Z irányú kiemelés
20 Q2 = 0változók inicializálása
21 Q10 = 0
22 Q11 = 0
23 Q12 = 0
24 Q13 = 0
25 LBL 3címke az adatok kiértékeléséhez
26 FN 28: TABREAD Q3 =Q2 /P_X,P_Yadatok olvasása
27 Q2 = Q2 + 1futó változó léptetése
28 Q10 = Q10 + Q3 ;XiX koordináták összegzése
29 Q11 = Q11 + Q4 ;YiY koordináták összegzése
30 Q12 = Q12 + SQ Q3 ;Xi2X koordináták négyzetének összegzése
31 Q13 = Q13 + ( Q3 * Q4 ) ;Xi*Yikoordiná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 ;aa paraméter meghatározása
36 Q8 = ( Q11 - ( Q7 * Q10 ) ) / Q1 ;bb paraméter meghatározása
37 END PGM egyenes MMprogram vége
Figyelem! A program nem vizsgálja, hogy tapintás közben történt-e hiba (a tapintó elérte-e a munkadarabot). Amennyiben a gyakorlatban erre szükség lehet, akkor a negyedik mérési eredmény (Q13) kiértékelésével ez megoldható.
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.
Kép
A számítás menete (20-dik sortól kezdődően) szorulhat némi magyarázatra.
Az egyenes egyenlete a következő:
Kép
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:
Kép
Az egyenletben szereplő szumma jelek ne riasszanak meg senkit, ezek az összegzést jelentik, azaz például a
Kép
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
Kép
és
Kép
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:
Kép
Amikor a mérési pontok tökéletesen illeszkednek az egyenesre, akkor:
Kép
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.

Avatar
go98admin
Adminisztrátor
Hozzászólások: 376
Csatlakozott: 2016.08.18. 23:17

Re: Egyenes meghatározása kettőnél több mérési pontból

HozzászólásSzerző: go98admin » 2016.08.25. 19:31

Primtuning 2012. feb. 08. 20:56 #38
Üdv.
Korábbi posztban olvastam egy olyan programot amely több pontból számítja ki a rá legjobban illeszkedő egyenest.
Olyan kérdésem lenne hogy ezt a programot hogy tudnám alkalmazni koordináta rendszer forgatásához a darabok ráállásánál ??
Választ előre is köszönöm !

Avatar
go98admin
Adminisztrátor
Hozzászólások: 376
Csatlakozott: 2016.08.18. 23:17

Re: Egyenes meghatározása kettőnél több mérési pontból

HozzászólásSzerző: go98admin » 2016.08.25. 19:31

go98 2012. feb. 08. 21:12 #40
A 35-ös sorban az a paraméter az egyenes "meredeksége". Remélem nem jelent gondot ebből meghatározni az egyenes szögét.

Avatar
go98admin
Adminisztrátor
Hozzászólások: 376
Csatlakozott: 2016.08.18. 23:17

Re: Egyenes meghatározása kettőnél több mérési pontból

HozzászólásSzerző: go98admin » 2016.08.25. 19:32

Primtuning 2012. feb. 08. 21:50 #41
Nem vagyok egy profi a paraméter programozásban és sajnos gondot okoz az a paraméterből a szög kiszámítása
Megköszönném a magyarázatát a szög megállapítására!

Avatar
go98admin
Adminisztrátor
Hozzászólások: 376
Csatlakozott: 2016.08.18. 23:17

Re: Egyenes meghatározása kettőnél több mérési pontból

HozzászólásSzerző: go98admin » 2016.08.25. 19:33

go98 2012. feb. 08. 22:52 #42
A (nem függőleges) egyenes meredeksége ezen egyenes irányszögének tangensével egyenlő.
A 35-dik sortól például az FN 13: Q9 = Q5 ANG Q6 funkcióval meghatározható az egyenes szöge (ami a Q9 paraméterbe kerül).