Sławomir ŁĄCKI-GOLC, Julian JAKUBOWSKI Instytut Politechniczny PWSZ w Sulechowie Instytut Informatyki i Zarządzania Produkcją, Uniwersytet Zielonogórski e mail: j.jakubowski@pwsz.sulechow.pl, s.lacki-golc@veehal.net Techniki projektowania odwrotnego w wybranych systemach CAx 1. Wprowadzenie Rozwój techniki komputerowej i technologii informatycznych w ostatnich latach znacznie zmienił podejście do technicznego przygotowania produkcji. Coraz szersze upowszechnianie się i znajomość technik komputerowo wspomaganego projektowania i wytwarzania przyczyniają się do upowszechnienia takich technik jak projektowanie odwrotne RE (Reverse Engineering) oraz technik szybkiego wytwarzania prototypów i krótkich serii wyrobów. Podstawą inŝynierii odwrotnej jest odtwarzanie kształtu na podstawie punktów pomiarowych uzyskanych ze współrzędnościowych maszyn pomiarowych lub optycznych skanerów przestrzennych. W duŝej mierze jest to odpowiedź na potrzeby wdraŝania do produkcji elementów o dowolnych kształtach, będących wynikiem prac stylistów i projektantów. ZłoŜoność takiego procesu powoduje konieczność stosowania bardzo często niespójnych systemów komputerowych, zarówno przy digitalizacji powierzchni, jak i przy modelowaniu przestrzennym. W artykule przedstawiono przykłady realizacji techniki projektowania odwrotnego w systemie AMD oraz w Catii. Rozwój techniki RE jest w duŝej mierze spowodowany zmieniającymi się wymaganiami firm poszukujących tańszych podwykonawców lub producentów części. Równoległość działań w zakresie rozwoju nowego produktu często doprowadza do sytuacji, Ŝe potencjalny kontrahent otrzymuje gotowy model wyrobu (bez dokumentacji technicznej) z zapytaniem o cenę, czas realizacji określonej wielkości partii, itd. Brak dokumentacji technicznej uniemoŝliwia przeprowadzenie takich analiz. Rozwiązaniem w takich przypadkach jest zastosowanie techniki inŝynierii odwrotnej w połączeniu z technikami szybkiego wytwarzania prototypów. ZbliŜona sytuacja występuje często w przemyśle samochodowym, kiedy to wykonawca otrzymuje gotowe formy do produkcji, np. do tłoczenia elementów karoserii, bez dokumentacji technicznej. Często jednak formy te ulęgają zuŝyciu, uszkodzeniu, itp. Wykonawca musi w jak najkrótszym czasie odtworzyć geometryczny kształt formy w celu wykonania nowej. W takich przypadkach sensownym rozwiązaniem jest zastosowanie techniki projektowania odwrotnego. Spotykane są juŝ przemysłowe rozwiązania stosowania techniki projektowania odwrotnego. Do najbardziej obiecujących zaliczyć moŝna bezpośrednie skanowanie na obrabiarkach CNC odtwarzanego kształtu i następnie generowanie na tej podstawie programu wykonawczego. Wymaga to jednak znajomości technik komputerowo wspomaganego projektowania na specjalistycznym poziomie. Wykonane rozeznanie wśród kilku firm w województwie lubuskim wykazało, Ŝe wśród kadry technicznej poziom wiedzy na temat tych technik jest niezadowalającym poziomie. Z drugiej strony praca z modelami 3D dla wielu projektantów i technologów jest duŝym wyzwaniem. Tylko niewielka liczba pytanych osób wiedziała, Ŝe nawet tak popularne systemy (stosowane u nich w biurach), jak np. AutoCAD Mechanical, Inventor posiadają juŝ narzędzia po- 107
zwalające na generowanie plików akceptowalnych przez systemy szybkiego wytwarzania prototypów. Rozwój produktu zgodny z techniką RE obejmuje pięć podstawowych działań: digitalizację 3D modelu, budowę modelu powłokowego przy wykorzystaniu specjalistycznego oprogramowania, budowę modelu 3D w systemach klasy CAD, transformację do postaci modelu warstwowego STL i ewentualne bitmapowanie, wykonanie modelu fizycznego w centrach obróbczych lub urządzeniach do szybkiego tworzenia prototypów, np. sterolitografach. Najczęściej technika ta łączona jest z technikami szybkiego przygotowania prototypu lub krótkiej serii wyrobów. Schemat wykorzystania tych technik przedstawia rys.1. Pierwszą i najbardziej pracochłonną fazą przetwarzania swobodnego modelu jest digitalizacja (dyskretyzacja numeryczna), czyli cyfrowy zapis przestrzennej i geometrycznej formy modelu do postaci współrzędnych punktów, na których moŝna rozpiąć tzw. powierzchnię swobodną, oddającą kształt pierwowzoru. Charakterystyczną tendencją w budowie maszyn jest wykorzystanie do tych celów specjalnych głowic skanujących, montowanych bezpośrednio na obrabiarkach CNC. Rys. 1. Schemat kompleksowego podejścia w technikach RP/RE [1] Fig. 1. Scheme of complex approach to the RP/RE techniques [1] Technika RE znalazła najszersze zastosowanie w przypadku odtwarzania geometrii elementów o złoŝonych kształtach, np. elementy budowy człowieka, odtwarzanie rzeźb itp. NaleŜy jednakŝe podkreślić, Ŝe technika ta, w swojej aktualnej postaci, obarczona jest wieloma błędami związanymi głównie z pozyskiwaniem i przetwarzaniem danych. Dodatkowym ograniczeniem jest złoŝona obróbka duŝej ilości danych, które najczęściej podlegają procesom filtracji i redukcji. 2. Pozyskiwanie i obróbka danych w technice RE Jak wspomniano pierwszym etapem w technice RE jest pomiar i identyfikacja nieznanej powierzchni. Pomiary mogą być realizowane za pomocą dotykowych i bezdotykowych metod. Do dotykowych naleŝą pomiary na maszynach współrzędnościowych oraz pomiary wykonywane bezpośrednio na maszynach technologicznych (frezarkach) wyposaŝonych w specjalne głowice oraz oprogramowanie. Do bezdotykowych naleŝą: ska- 108
nowanie skanerami przestrzennymi, skanowanie głowicami laserowymi, technika fotogrametrii oraz tomografia komputerowa. PoniewaŜ analizowana w technice RE powierzchnia jest najczęściej powierzchnią nieznaną, natomiast znana jest jej funkcja, od operatora zaleŝy wybór odpowiedniej techniki skanowania. JeŜeli to tylko moŝliwe zaleca się stosowanie podejścia płaszczyznowego. Jest to najprostsza metoda skanowania polegająca na podziale analizowanego obiektu na warstwy. Efektem takiego podejścia jest zbiór płaskich krzywych (lub zbiór punktów leŝących na jednej płaszczyźnie). Przykład takiego podejścia przedstawiono w następnym rozdziale wykorzystując system AMD. Wśród bezdotykowych urządzeń pomiarowych do najlepiej rozwiniętych naleŝą skanery oparte o pomiary triangulacyjne. Schemat skanera triangulacyjnego z jedną kamerą na rys. 2. Znajomość bazy (b) oraz połoŝenia punktów na kamerze CCD umoŝliwia wyznaczenie współrzędnych punktu P(x,y,z). Rys. 2. Schemat skanera triangulacyjnego z jedną kamerą [2] Fug. 2. Scheme of triangulation scanner with single CCD camera [2] Konstruktorzy trójwymiarowych skanerów laserowych wykorzystują do budowy układów optycznych lasery małej mocy, emitujące promienie światła pomarańczowego (długość fali-632 nm) lub podczerwonego (długość fali-780 nm), obrotowe lustra odchylające promień lasera oraz przetwornik CCD o wysokiej rozdzielczości, podobne do tych, które spotyka się w kamerach wideo. Promień lasera jest odchylany za pomocą sterowanego przez komputer lustra po to, aby umoŝliwić oświetlenie obiektu w płaszczyźnie pionowej lub poziomej bez wprowadzania zbyt wielu zakłóceń odczytu, chociaŝby, dlatego, Ŝe ruchem małego lustra moŝna sterować bardziej precyzyjnie niŝ obrotem samego lasera. Obraz miejsca oświetlanego przez laser jest rejestrowany przez czarno-białą kamerę wideo, na której obiektywie umieszczono filtr przepuszczający wyłącznie światło lasera. Współrzędne punktów na powierzchni skanowanego przedmiotu oblicza się po odczytaniu współrzędnych najintensywniej oświetlonych punktów na matrycy CCD i połączeniu ich z informacją o kącie odchylenia lustra. Aby umoŝliwić skanowanie obiektów ze wszystkich stron, umieszcza się je na sterowanych komputerowo platformach 109
obrotowych. Przykład skanowania obiektu 3D pokazano na rys. 3. Na rys. 4 przedstawiono efekt skanowania triangulacyjnego w postaci tzw. chmury punktów. Rys. 3. Przykład skanowania obiektu 3D Fig. 3. An example of 3D scanning Rys. 4. Przykład realizacji skanowania triangulacyjnego oraz początkowy obraz w systemie CAD Fig. 4. Result of triangulation scanning and picture obtained in CAD system 110
Triangulacja Efektem skanowania 3D jest z reguły zbiór punktów 3D, nazywany chmurą punktów. Punkty te muszą zostać doprowadzone do postaci umoŝliwiającej generowanie siatek powierzchni. Realizują to procedury triangulacji. Triangulacja jest pojęciem definiującym podział wielokąta na sumę nienakładających się na siebie trójkątów, których wierzchołkami mogą być tylko wierzchołki danego wielokąta lub łączenia wybranych punktów w trójkąty. Triangulacja jest podstawowym zagadnieniem w geometrii obliczeniowej. Przy badaniu skomplikowanych obiektów geometrycznych przeprowadza się rozbicie ich na prostsze obiekty geometryczne. Klasyczne zadanie triangulacji sprowadza się do analizy skończonej liczby elementów i wyznaczeniu zbioru przekątnych dzielących wielokąt na trójkąty. Istotnym elementem jest tutaj takŝe waga określająca stopień dopasowania trójkątów do poszczególnych punktów. Najczęściej stosowana jest triangulacja Delaunaya polegająca na podziale obszaru na trójkąty poprzez wyznaczenie okręgów opisanych na trzech sąsiadujących wierzchołkach. Bazuje ona na punktach wyznaczonych poprzez podział płaszczyzny na segmenty utworzone przez odcinki równoodległe od punktów A i B (tesalacja Voronina), gdzie A i B to dwa dowolnie wybrane punkty naleŝące do obszaru (rys.5). a) b) c) d) Rys. 5. Podstawy triangulacji, a,b,c) tesalacja Voronoia, d) triangulacja Delaunaya [2] Fig. 5. Basic of triangulation, a,b,c) Voronoi s tesalation, d) Delaunay s triangulation [2] Szczegółowy algorytm moŝna znaleźć, m. in. w pracach [2,3,4,5]. Zbudowana w ten sposób siatka 3D, w kolejnych etapach przetwarzana jest w systemach CAx do postaci umoŝliwiającej jej wykorzystanie przy budowie modeli bryłowych czy teŝ generowaniu kodu NC. Czyli, następuje proces adaptacji siatki do funkcji modelu, przy zachowaniu warunków brzegowych, stałych materiałowych, itd. Niestety, wygenerowane siatki wymagają często ingerencji w celu ich poprawy. Najczęściej stosowanym kryterium oceny (i poprawy) siatki jest kryterium oparte na analizie gradientu tzw. zmiennej stanu u lub jej drugiej pochodnej: 2 u u = h ε = h 2 x x ε, gdzie: x połoŝenie punktu, h rozmiar elementu. Kryterium to umoŝliwia minimalizację lokalnego błędu, gdyŝ rozmiar elementu h zmienia się wraz ze zmianą gradientu pola. 111
3. Przykładowe realizacje techniki RE W celu praktycznego przedstawienia realizacji techniki RE poniŝej przedstawiono dwa przykłady: pierwszy zrealizowany w systemie AMD (Mechanical Desktop); drugi w systemie Catia. W tabeli 1 pokazano kolejne etapy realizacji techniki RE w systemie AMD. Otrzymany z maszyny pomiarowej zbiór punktów został wczytany za pomocą pliku scriptowego do systemu (a). Pomiary wykonano stosując stały przyrost w osi Z wynoszący 2 mm. Ze względu na tylko dydaktyczny charakter przykładu ograniczono dokładność pomiaru do 1 mm. Następnie zbiór punktów został zamieniony na krzywe typu splajn (b). Kolejne etapy (c i d) obejmowały generację pomocniczych krzywych umoŝliwiających rozpięcie powierzchni typu NURBS. Siatka powstała przy wykorzystaniu polecenia 3Dmesh (e). Do budowy powierzchni w systemie AMD moŝna wykorzystać takŝe polecenie Amsweepsf, które generuje powierzchnię poprzez przeciągnięcie krzywej linią przekrojową wzdłuŝ innej krzywej zwanej prowadnicą. W metodzie tej moŝna uŝyć wielu linii przekrojowych, ale co najwyŝej dwóch prowadnic. RównieŜ polecenia typu powłoka U oraz powłoka UV umoŝliwiają generowanie powierzchni w oparciu o istniejące krzywe. JednakŜe ze względu na najbardziej uniwersalny charakter zaleca się stosowanie polecenia 3Dmesh. Tak przygotowany model moŝe być wykorzystany do generowania plików w formacie STL uŝywanym w stereolitografii. W tym przypadku naleŝy szczególna uwagę zwrócić na jakość powierzchni. Najczęściej występującym błędem podczas eksportu do formatu STL jest źle skierowany wektor normalny. MoŜe on dotyczyć tylko poszczególnych trójkątów lub całej powierzchni. W takim przypadku naleŝy zamienić kolejność mnoŝenia wektorów. Kolejnym błędem, jaki występuję w systemie AMD jest nieciągłość powierzchni wynikająca z zagubienia niektórych trójkątów. Wynika to niestety ze stosunkowo niskiej jakości pliku STL generowanego w systemie AMD. Przy eksporcie do formatu STL naleŝy szczególną uwagę zwrócić na wartość zmiennej systemowej FACETRES, która określa sposób podziału na trójkąty. Im większa wartość tym dokładniejsza siatka, ale teŝ większy plik. Wykorzystując polecenie amstlout w systemie AMD naleŝy poprawnie przypisać wartości do poszczególnych opcji: tolerancja kątowa; steruje wartością kata pomiędzy dwoma wektorami normalnymi przylegającymi do sąsiadujących ścian, im mniejsza wartość tym dokładniejsze dopasowanie, ale obywa się to kosztem zwiększenia pliku; współczynnik proporcji; określą stosunek wysokości do szerokości kaŝdej ze ścian; np. wartość 1 powoduje, ze szerokość będzie zawsze większa od wysokości; tolerancja powierzchniowa; steruje wartością odchylenia cięciwy lub określa dopuszczalną odległość miedzy krawędzią ściany i ścianą rzeczywistej powierzchni lub geometrii brzegu; oczywiście im mniejsza wartość tym powierzchni jest lepiej wygładzona; odstępy miedzy wierzchołkami; opcja ta steruje maksymalną dopuszczalną odległością pomiędzy sąsiednimi wierzchołkami ścian. Zastosowanie systemu AMD do generowania siatek powierzchniowych a następnie plików STL nie wymaga duŝego przygotowania i moŝe być zrealizowane nawet przez mało doświadczonego operatora. JednakŜe, jakość generowanych siatek oraz plików STL nie zawsze odpowiada oczekiwaniom. Zaleta jednakŝe jest to, Ŝe system ten jest wykorzystywany do projektowania w większości zakładów produkcyjnych. 112
Tab. 1. Etapy generowania siatki 3D w systemie Mechanical Desktop Tab.1. Stages of 3D mesh generation in Mechanical Desktop system a) wczytany zbiór punktów b) wstępne generowanie linii c) splajny i krzywe prowadzące d) krzywe pomocnicze e) wygenerowana siatka f) model przygotowany do exportu w formacie.stl Drugi przykład przedstawia wykorzystanie systemu Catia do realizacji techniki RE. Obiektem analizy jest fragment matrycy dla wyrobu pokazanego na rys. 6a. Jest to wy- 113
rób tłoczony, będący częścią karoserii samochodowej (dane wejściowe uzyskano z firmy Gedia). Zadanie polegało na przygotowaniu modelu 3D, tak, aby moŝliwe było na jego podstawie wykonanie matrycy na frezarce CNC bez konieczności przygotowywania dokumentacji 2D. Skanowanie zrealizowano no frezarce TME FS2 (rys. 6b) wykorzystując głowicę skanującą Reinshaw SP2, instalowaną bezpośrednio w głowicy narzędziowej frezarki (rys. 6c). a) b) c) Rys. 6. Digitalizacja wyrobu, a) analizowany wyrób, b) stanowisko do digitalizacji, frezarka FS2, c) głowica skanująca Reinshaw Fig. 6. Digitalization of the product, a) a part, b) machining station milling FS2, c) Reinshaw head Uzyskany zbiór punktów został poddany przetwarzaniu w systemie Catia w module Digitizer Shape Editor. Otrzymany zbiór punktów przedstawiono na rys. 7. W procesie filtracji moŝliwe jest zastosowanie jednej z dwóch metod: jednorodnej filtracji lub teŝ adaptacyjnej. Parametry filtracji dobrano na podstawie przeprowadzonych prób wstępnych. Rys. 7. Zbiór punktów po przeprowadzeniu filtracji Fig. 7. A set of point after filtration process Na podstawie otrzymanego zbioru punktów wygenerowane zostały powierzchnie (siatki). Największym problemem okazał się odpowiedni dobór parametru neighborhood, który jest wagą określającą dokładność dopasowania siatki do zbioru punktów. Na podstawie przeprowadzonych prób w zakresie zmiany wagi od 1 do 20 określono, Ŝe najlepsze dopasowanie otrzymuje się dla wartości w pobliŝu 15. Przy czym czas generowania siatki nie ma większego znaczenia. Dla miliona punktów czas ten wynosił na stacji graficznej około 1 s. Przykładowe, wygenerowane siatki pokazane zostały na rys. 8. 114
a) b) Rys. 8. Wygenerowane siatki modelu a) przy wykorzystaniu metody jednorodnej, b) przy wykorzystaniu metody adaptacyjnej (waga n=15 identyczna dla obu przykładów) Fig. 8. The views of created mesh, a) in homogenous method, c) using adaptive method. (weight factor n=15 equal for both cases) Niestety, w przypadku generowania siatki wymagana była interwencja uŝytkownika. NaleŜało mianowicie ręcznie usunąć nieciągłości powstałe zarówno na krawędziach, jak i otworach będących wynikiem nieprawidłowego połączenia wierzchołków trójkątów (rys. 8). Końcową postać modelu przedstawiona został na rysunku 9. Weryfikację modelu przeprowadzono dla kilkunastu wybranych punktów poprzez porównanie z obiektem rzeczywistym. Analiza to pozwoliła stwierdzić, Ŝe przygotowany model jest zgodny z obiektem rzeczywistym, przy załoŝonej klasie dokładności. Rys. 9. Końcowa postać modelu wyrobu Fig. 9. Finished view of the product model 4. Wnioski Projektowanie odwrotne RE (Reverse Engineering) to jedna z najnowocześniejszych technik informatycznych rozwijających się w ostatnich latach. Dzięki tej technice moŝliwa rekonstrukcja kształtu na podstawie istniejącego fizycznie obiektu i jego zapis w postaci cyfrowej. Podstawową zaletą budowy modeli w rzeczywistości wirtualnej jest szybsze uzyskanie informacji o projektowanym obiekcie, co ma istotne znaczenie dla samego procesu projektowania jak i jakości produktu końcowego. Zaoszczędzony czas powstawania produktu powoduje znaczne zmniejszenie kosztów jego wytwarzania, przez co produkt staje się bardziej konkurencyjny na rynku. Takie uelastycznienie produkcji moŝliwe jest dzięki wprowadzeniu technik szybkiego wytwarzania, do których zalicza się rapid prototyping oraz rapid tooling. 115
Przedstawione w artykule najwaŝniejsze elementy wspomagające rozwój produktu w systemach CAx, sposoby pozyskiwania i przetwarzania geometrii przedmiotów 3D są przykładem praktycznego podejścia do techniki określanej jako CARE Computer Aided Reverse Engineering. Literatura 1. Chlebus E.: Techniki komputerowe Cax w inŝynierii produkcji. Wyd. WNT Warszawa 2000. 2. Peter Su and Robert L. Scot Drysdale, A Comparison of Sequential Delaunay Triangulation Algorithms. Proceedings of the Eleventh Annual Symposium on Computational Geometry, pages 61-70. Association for Computing Machinery, June 1995 3. Mavriplis D. J., Unstructured mesh generation and adaptivity, ICASE Report No. 95-26 4. Marviplis D. J., An Advancing Front Delaunay Triangulation algorithm design for robustness, ICASE Report No. 92-49 5. Lawson C. L., Properties of n-dimensional triangulation, CAGD, 3:213-246, April 1986 6. Chew L. P., Constrained Delaunay triangulations, Algorithmica, 4:97-108, 1989 Streszczenie W artykule przedstawiono krótko wybrane zagadnienia związane z techniką projektowania odwrotnego. Na podstawie dwóch systemów klasy CAD przedstawiono moŝliwości budowy modelu 3D na podstawie zbioru punktów otrzymywanych poprzez digitalizację istniejącego fizycznie obiektu. Metoda ta umoŝliwia znaczące skrócenie czasu projektowania oraz ocenę jakości powierzchni poprzez porównanie danych rzeczywistych z modelem wirtualnym. Reverse Engineering techniques in same CAx systems Sumary The paper describes in short way basis of the Reveres Engineering techniques. Two examples are presented to show how it can be realized in CAD systems. In reverse engineering, a points of cloud typically acquired using scanning techniques is used as a basis for constructing 3D CAD surface data from a physical model. This enables a considerable speed-up of the design and construction process as well as an early quality control of the physical model through comparison of physical object data with CAD surface data. 116