Reverse Engineering avagy a pontfelhő feldolgozás és manipulálás

Navigáció

Elérhetőségeink

+36 30 823 0149

info@upengineering.hu

Kövessen bennünket a Facebookon!

UP Engineering Official | Facebook

Egyre több cég kezd el foglalkozni az úgynevezett Reverse Engineering technológiával, amit magyarul talán úgy lehet legtalálóbban lefordítani, hogy “fordított mérnöki tevékenység”. A ZW3D az első olyan tervezőrendszerek egyike, amelyben teljesen integrálva megtaláljuk ezt, neve Point Cloud. A folyamat röviden az, hogy az elkészült szkennelt pontfelhőt a 3D modellről felmérjük egy koordináta mérőgép segítségével, legyen az gipszmodell vagy egy régi dokumentáció nélküli alkatrész és erre a ZW3D tervezőrendszer segítségével egy szabadformájú felületet feszítünk rá. Így aránylag jó közelítéssel határozhatjuk meg a CAD geometriát, amelyet már akár megmunkálás tervezésre is használhatunk a ZW3D-ben vagy egy másik CAD/CAM rendszerben. A Point Cloud teljesen integrált a rendszerbe, ezért az így keletkező szabadformájú felület asszociatív marad mindvégig az eredeti modellel. Azaz bármilyen mértékű módosítást végzünk a modellen, az kihatással lesz a már elkészült folyamatokra, legyen az egy marási szerszámpálya vagy 2D-s rajz. A legtöbb CAD rendszer rendelkezik pontfelhő beolvasást végző modullal, amelyek a pontokat úgy helyezik el a modelltérben mintha egy objektum lenne. Ezek kisebb pontfelhőknél aránylag jó megoldást jelenthetnek, de a több millió pontból álló felhőnél kiakadnak, mivel nem erre a célra találták ki ezeket a modulokat.

A másik nagy probléma a pontfelhők kezelése a beolvasás után. Az átlagos CAD/CAM rendszerek a sok objektum egyidejű mozgatását nehezen kezelik le, az hogy egy ilyen pontfelhőre ráhúzzunk egy felület pedig már elérhetetlen feladatnak bizonyul sok esetben. A ZW3D Point Cloud lehetőséget biztosít a pontfelhők gyors és hatékony kezelésére, így a feladat minősége szempontjából a legoptimálisabb megoldást hozhatjuk létre.

Nézzük ezt a gyakorlatban röviden, a teljesség igénye nélkül:

Importálás STL fájlból
  1. válassza ki a manipulálni kívánt STL fájlt az importáláshoz
  2. Kattintson a megnyitásra az import fájlon
  3. Állítsa be a formátum specifikus beállításokat vagy szűrőket
  4. Kattintson az OK gombra az importálás megkezdéséhez
Távolítson el pontokat a pont blokkokból

Ezzel a paranccsal osztva eltávolítható egy pontkészlet egy vagy több pontblokkból. A pontokat felveszi és egy sor átméretezhető gömb alakú térfogatot csatol hozzá. Opcionális bement áll rendelkezésre a kiválasztott pontok törléséhez vagyis levágja a pontblokkot. Ez a parancs több pontblokkban működik, mindegyiket a kiválasztott módon osztja vagy vágja el.

  • Kötelező bemenetek
  1. Center > a gömb középpontjának megadása
  2. Boundary (határ) > adja meg a sugarat, amelyen belül a pontok vannak. 
  • Választható bemenetek
  1. Delete Input Points (bementi pontok törlése) > akkor jelölje be ezt ha a kiválasztott pontokat törölni szeretné, ellenkező esetben a kijelölt pontok megmaradnak külön pont blokként.

 

Távolítson el pontokat a pontblokkokból polyline megjelölés segítségével

Ezzel a paranccsal osztva eltávolítható  egy pontkészlet egy vagy több meglévő pontblokkból. A pontokat “kiveszi” ha a kívánt pontok köré rajzol egy vonalat. Opcionális bement áll rendelkezésre a kiválasztott pontok törléséhez (vagyis levágja a pontblokkot). Ellenkező esetben a kiválasztott pontok különálló pontblokként maradnak. Ez a parancs több pontblokkban működik, mindegyiket a kívánt módon osztja vagy vágja le.

  • Kötelező bemenetek
  1. Point > a törölni kívánt pont megadása
  2. Inside > törlli a görbe belsejében lévő pontokat
  3. Outside > törli a görbén kívül eső pontokat
  • Választható bemenet
  1. Delete Selected Points > jelölje be ezt a négyzetet a kiválasztott pontok törléséhez, ellenkező esetben a kiválasztott pontok külön pontblokként maradnak.

 

Trimmelje a pontblokkot síkkal (plane)

Ezzel a paranccsal a pontblokkot egy nullapont síkkal, egy sík felülettel vagy egy vázlattal vághatja el. Először válassza ki a pontblokkot, majd válassza ki a síkot. Egy nyíl jelzi, hogy a pontblokk melyik oldala marad. A nyíl irányát megváltoztathatja a Flip oldal használatával. Bármely pontblokk objektumot lehet osztani egyszerre a nullapont síkok, sík felületek és vázlatok bármely kombinációjával.

  • Kötelező bementek
  1. Blocks > adjon meg egy pontblokkot
  2. Trimming > határozza meg a nullapont síkokat, sík felületeket vagy vázlatokat
  • Választható bemenetek
  1. Flip side to keep > jelölje be ezt a négyzetet hogy a kijelölés irányát megváltoztatta a nyíl irányába. Ez a nyíl jelzi, hogy a pontblokk melyik oldala kerül megtartásra.

 

Csökkentse a pont adatokat

Ezzel a paranccsal csökkentheti a pontfelhő teljes pontszámát. Először válassza ki az összes megfontolandó pontot. Opcionálisan beállíthatja a csökkentési tűrést, megtarthatja az eredeti pontokat és létrehozhat egy pontblokkot a pontadatok tárolására kompaktabb módszerrel. 

  • Kötelező bementek
  1. Points > válassza ki az összes figyelembe venni kívánt pontot
  • Választható bementek
  1. Manual / Automatic > A manuális módszer lehetővé teszi, hogy a tolerancia beállítását eltávolításra kerülő pontoknál. Az automatikus módszernél a ZW3D határozza meg.
  2. Tolerance > A fenti Manual módszer használatával. Ez a parancs elrendezi a térben a pontokat és csak egy pontot tart minden tolerancia-méretű régióban. Ha a tűrés nullára van állítva vagy üresen marad, akkor a becslés egy elfogadható tűréshatáron történik. Például a 0,01 tűréshatár 85% -kal csökkentette a pontok összértékét (17 697-ről 2761-re). Azonban kevesebb pont kevesebb pontosságot eredményez, de nagyobb rendszer teljesítményt jelent. Az alsó tűréshatároknál használja a Create point block parancsot alább.
  3. Use Uniformly Spaced Points > Jelölje be ezt a négyzetet ha azt szeretné, hogy az összes többi pont egyenletesen távolságban legyen egymástól.
  4. Delete Input Points > Jelölje be ezt a négyzetet, ha nem szeretné megtartani az eredeti pontfelhőt. Ellenkező esetben minden eredeti pontot megtart a rendszer.
  5. Create Point Block > Jelölje be ezt a négyzetet a csökkentett pontfelhő 3D pontblokkjának létrehozásához. Ez egy kompakt forma a pontadatok tárolásához. A “Blokk” a Pick Szűrő listán jelenik meg a mozgáshoz, törléshez. Az eredeti pontfelhőnél nem hoz létre pontblokkot.

Robbantsa fel a pontblokkokat

Használja ezt a parancsot egy vagy több pontblokk felrobbantásához (vagyis külön), hogy minden pont ismét különálló entitás legyen. Ez lehetővé teszi az egyes pontok szerkesztését, a pontfelhő csökkentését vagy a pontfelhő különálló régiókba való elkülönítését. A pontokat a Group Points into Block parancs segítségével csoportosíthatja.

  • Kötelező bementek
  1. Blocks > adja meg a pontblokkokat
  • Választható bementek
  1. Delete Input Point  Blocks > jelölje be ezt a négyzetet ha törölni szeretné az eredeti pontblokkot

Keresztmetszet

Ezzel a paranccsal  keresztmetszet-görbéket hozhat létre egy STL modell és egy sík között.

  • Kötelező bemenet
  1. STL model > válassza ki az STL modellt
  2. Plane> válassza ki a síkot, alappontot vagy vázlatot
  • Választható bement
  1. Lenght > határozza meg a görbe legkisebb hosszát

 

Fit face

Ezzel a paranccsal hozzon létre egy vágott felületet, amely áthalad egy pontkészleten vagy egy pontfelhőben említett pontblokkon. Ezzel a megközelítéssel fel lehet osztani a túlságosan összetett pontadatokat külön szakaszokra. Egy nagyon nagy felület helyett számos kisebb, tangenciálisan összekapcsolt folt keletkezhet. Minden egyes javítás a bemeneti pontok egy részére alapozható, amelyre a közös vetítési irány nem létezik.Mindkettőnek fel kell gyorsítania az átfogó folyamatot, és lehetővé kell tennie a “360 fokos” mérési adatok feldolgozását is. Az egyetlen szükséges bemenet a bemeneti pont, amin a görbének át kell haladnia. Ez a parancs használható az importált STL adatokon.

  • Kötelező bemenetek
  1. Points > adjon meg pontokat vagy pontblokkokat
  • Választható bementek
  1. Normal > Ezzel meghatározhatja az alapfelület irányát. Lehetővé teszi az illesztett forma teljes irányának újbóli irányítását, amennyiben a beépített módszer nem érzékeli megfelelően vagy más irányt kíván használni, mint a a szoftver felkínált. 
  2. Curves > Megadhat határgörbe készletet, tehát a trimmelt felületeket a pontok és határgörbék alkotáj. A pontok összegyűjtése és a határvonal érintése csak akkor ellenőrizhető ha ezt a lehetőséget nem hagyja üresen.
  3. Collect Points > Ez a beállítás csak akkor érhető el, ha a Curves mező nem üres. Ellenőrizze ezt az opciót, hogy az összegyűjtse a pontokat melyek illeszkednek a felülethez.
  4. Side > válasszon ki egy pontot, amely meghatározza a határgörbék oldalát ahonnan összegyűjti a pontkat
  5. Face > Válassza ki a nem módosított alapfelületet a módosításhoz. Ha egy felület ki van kiválasztva, az éleket automatikusan úgy kezeli, hogy a tangenciát nagyrészt a varraton tartja fenn. A folytonosság a varrat szélén függ a pont szélétől és a pontadatoktól.
  6. FEM Settings, Spring Constant, Bending Resistance > Ezek a parancsok az energia minimalizálásán alapuló felületeket hoznak létre. Használja a csúszkát a rugóállandó és a hajlítási ellenállás értékének beállítására.
  7. Tangent at boundary > Jelölje be ezt a négyzetet, hogy érvényesítse az éritnő folytonosságát a létrejövő felülethatáron keresztül.
  8. U degrre, V degree > Ez a kapott felület mértéke. A mért értékek csökkentése általában egyszerűbb felületet eredményez.
  9. Specify sample design > Ezzel beállíthatja a mintapont sűrűségét
  10. Sew shapes > jelölje be ezt a négyzetet a felületek automatikus összevarrásához.
  11. Shapes > Ez a mező csak akkor érhető el, ha a Sew shapes alakzatok be van jelölve. Adja meg a mezőhöz tartozó alakzatokat az összevarráshoz. Ha ez a mező üres, akkor az összes formát alapértelmezés szerint varrja össze.
  12. Keep curves > Jelölje be ezt a jelölőnégyzetet a Kötelező bemenetek alatt a görbék megtartásához. Ellenkező esetben törlésre kerül.
  13. Refit base face > Ha a Face opciót használja (lásd fent), jelölje be ezt a négyzetet az alapfelület felhelyezéséhez a parancs alatt. Ez azt jelenti, hogy szükség esetén több pontot lehet hozzáadni a felszínhez, hogy jobban illeszkedjen a pontfelhő adatokhoz.Ha nincs bejelölve, akkor megakadályozhatja, hogy a parancs több pontot adjon hozzá mielőtt a felületet a pontadatokon keresztül fel tudná illeszteni. A meglévő ellenőrzési pontokat szabadsági fokként fogja használni és megpróbálja illeszteni az adatokat.

    Ez felgyorsítja a folyamatot és ugyanazokat az UV felületi paraméter értékeket is megőrzi a minta adatpontjainak többszörös felszíni illesztési iterációi során. Ez segít megelőzni egy “eltolódás” vagy “csipesz” effektust, amely akkor keletkezhet, ha némileg eltérő UV paramétereket rendelnek hozzá minden egyes iteráció során.

Elemezzük a pontfelhő illeszkedését

Ezzel a paranccsal elemezheti az egyes pontok közötti távolságot egy pontblokkban és egy adott felületen, amelyet a pontblokkon keresztül helyezett fel. Egy adott pont távolsága a felszíntől és a felhasználó által megadott max. távolságtartomány érték határozza meg a pont színét. Használja az RMB popup Attributes opciót a pontok színének, méretének és egyéb attribútumainak visszaállításához.

A “tökéletes illeszkedés” (vagy a 0.0-es arány) zöld, a “1/2 tartomány max.” (Vagy 0,5-es arány) sárga, és a max. Tartomány (> = 1,0 arány) vörös. Minden egymás közötti értéket a zöld-> sárga-> piros színű standard lineáris RGB színátmenethez kell leképezni.

Ez a parancs a min / max / átlag távolságokat is mutatja az üzenetterületen.

Ha STL vagy mozaikkal kirakott adatokat választunk ki “bemeneti pontokként”, először azokat el kell takarítani mielőtt megjelenik a megjelenített színes térkép. 

 

 

 

A ZW3D Point Cloud olyan eszközöket kínál, amelyek lehetővé teszik a szkennelési adatok (CMM-kből), a pontfelhő adatok és az importált STL-adatok feldolgozását. Tekintse át a Point Cloud Design Tool Baron található eszközöket. A parancsok szintén szerepelnek a Kapcsolódó témakörök részben. Ezeket a parancsokat is használhatja pontfelhő adatokhoz, hogy a felületeket a pont vagy az STL adatainak kisebb alfejein keresztül illessze. A megközelítés az, hogy a túlságosan összetett adatkészleteket külön szakaszokra osztják fel. Egy nagyon nagy felület helyett számos kisebb, tangenciálisan összekapcsolt folt keletkezhet.