Kierunki rozwoju systemów CAD: KBE (cz. IV)

Pomysł nowego wyrobu, nawet jeśli nie rodzi się w biurze konstrukcyjnym czy technologicznym, jest realizowany przez konstruktora lub zespół konstruktorów, którzy oceniają przydatność, możliwość wykonania, koszt itd., aby dobre idee zamienić w gotowe do wdrożenia projekty. Każda, nawet najbardziej wyrafinowana koncepcja nowego wyrobu jest na kolejnych etapach wdrażania projektu opisana szczegółowo za pomocą koniecznych do wykonania zadań lub standardowych procedur konstrukcyjnych. Te z kolei trafiają do realizacji w wyspecjalizowanych zespołach konstruktorów 

RYS. 1. Struktura początkowa modelu przestrzennego przedniej części samochodu

Można więc z pewnym, ale niewielkim, uproszczeniem powiedzieć, że praca konstruktora jest zazwyczaj „rutynowym przetworzeniem” wymagań funkcjonalnych, konstrukcyjnych i technologicznych na poprawną definicję (2D/3D) tej części wyrobu, za jaką jest on odpowiedzialny. Określenie „rutynowe przetworzenie” oznacza, że konstruktor wie JAK i DLACZEGO, co w kontekście nowego wyrobu oznacza jedynie zastosowanie znanej procedury i wiedzy konstrukcyjnej.

Jeśli konstruktor pracuje w środowisku CAD, to w jakimś stopniu jego rutynowe zadania są wspomagane przez katalogi elementów typowych. A dlaczego nie zrobić kroku dalej w kierunku wspomagania nie tylko pojedynczych zadań, ale pewnych procesów konstrukcyjnych? Zwłaszcza wtedy, gdy taki typowy proces konstrukcyjny może być zdefiniowany jako zestaw kolejnych typowych zadań, które konstruktor musi wykonać.

Kiedy zastanawiałem się nad tym, w jaki sposób omówić tak rozumiane zastosowanie KBE w projektowaniu, doszedłem do wniosku, że nic tak nie przemawia do wyobraźni konstruktora jak rysunek lub obraz. Najlepszy byłby w tym miejscu model przestrzenny lub jeszcze lepiej nagranie wideo, ale na razie musi wystarczyć słowo i statyczny obraz. Kto wie, może kiedyś w internetowym polskim wydaniu Design News (http://www.designnews.pl) będzie można zamieszczać wersje multimedialne? Dzisiaj proponuję omówienie kolejnego przykładu w formule nieco komiksowej – mało słów, ale za to dużo obrazków, które, mam nadzieję, można „czytać” i wyobrazić sobie historię powstawania nowego wyrobu. W tym miejscu muszę przeprosić fachowców z branży samochodowej za uproszczenie przykładu a na swoje usprawiedliwienie mam jedynie to, że jestem po prostu inżynierem mechanikiem „ogólnego rażenia”, czyli bez praktycznego doświadczenia w tej branży.

„Show time”

Rzecz dzieje się w jednym z wielu biur konstrukcyjnych – chyba nie w Polsce, bo nazwy są po angielsku. Konstruktor X otrzymał zadanie wykonania projektu szczegółowego zderzaka przedniego. Nieważne, do jakiego auta, bo – zderzak, jaki jest, każdy widzi. Ważne, jak sobie poradzi z tym rutynowym dla niego zadaniem. Jako doświadczony konstruktor zna się na tym i ma w tym celu przygotowane wszystkie potrzebne narzędzia, czyli środowisko KBE. Od swojego szefa odpowiedzialnego za konstrukcję całej karoserii nowego modelu samochodu otrzymał wszystkie potrzebne dane: (Front_Assembly na rys. 1.), czyli model powierzchniowy od stylisty (StyleCat1), model zawieszenia (WheelAssembly) oraz strukturę zespołu zderzaka przedniego (Front_Bumper). Gdyby potrzebował więcej, na przykład model chłodnicy czy silnika, to jako firmowy weteran wie, do kogo zwrócić się po dodatkowy model przestrzenny. Zespół Front_Bumper składa się z dwóch (na razie pustych) modeli części: zderzaka (Bumper) i listwy zabezpieczającej (Protection).

W pierwszym odruchu X chciał rozpocząć pracę od zastosowania koncepcji Skeleton Based Design, w której powierzchnie stylistyczne byłyby modelem szkieletowym projektowanego zderzaka. Ale projektowanie wszystkiego krok po kroku już go nie bawi i ponadto, jak napisałem wcześniej, X ma przygotowane środowisko KBE, w którym jego wieloletnie doświadczenie zostało zapisane w postaci szablonów konstrukcyjnych. Dlatego porzucił pierwszy pomysł i przygotował model Front_Assembly do zastosowania inteligentnego szablonu zderzaka (Bumper Template na rys. 2). W tym celu usunął niepotrzebny na tym etapie model zespołu zderzaka przedniego, schował model zawieszenia, pozostawiając 3 zdefiniowane przez stylistę powierzchnie podstawowe: powierzchnię listwy (Protection skin), powierzchnię zderzaka (Bumper skin) oraz powierzchnię pomocniczą (Support skin). Dzięki temu może zachować asocjatywne powiązanie szczegółowego modelu bryłowego zderzaka z powierzchniami stylistycznymi, zautomatyzować „rutynowe” zadania i zapewnić przestrzeganie wszystkich reguł sztuki konstruowania zderzaków, w której jest niekwestionowanym guru nie tylko w swoim biurze. 

RYS. 2. Wybrane powierzchnie stylistyczne jako elementy wejściowe szablonu konstrukcyjnego zespołu zderzaka przedniego

Pomysł zdefiniowania szablonu zderzaka przyszedł mu do głowy, kiedy po raz 123 musiał wykonać projekt zderzaka, który różnił się niewiele od zderzaka właśnie zakończonego. Wtedy zrozumiał, że parametryczny model szablonu zderzaka powiązany asocjatywnie z powierzchniami otrzymanymi od stylisty (rys. 3.) ułatwi nie tylko projekt nowego zderzaka, ale także skróci czas potrzebny na wykonanie dowolnych zmian konstrukcyjnych. Także takich, które wynikają ze zmiany koncepcji stylistycznej, czyli innych warunków wejściowych (wymiary, materiał itp.). 

RYS. 3. Zastosowanie szablonu konstrukcyjnego zespołu zderzaka przedniego

Już po 20 sekundach od potwierdzenia definicji zderzaka w nowym otoczeniu geometrycznym otrzymał parametryczny (rys. 4.) model zespołu zderzaka (Front_Bumper) oraz pierwsze (jeszcze bez szczegółów konstrukcyjnych) wersje modeli bryłowych zderzaka (Bumper) i listwy zabezpieczającej (Protection). Rezultat zastosowania szablonu Bumper Template to nie tylko modele bryłowe części zespołu zderzaka, ale także:

  • parametry globalne (na przykład grubość zderzaka Bumper_Thickness = 1,8 mm),
  • formuły obliczeniowe (na przykład grubość listwy = grubość zderzaka + 0,3 mm),
  • pomocnicze elementy geometryczne (na przykład krzywa Protection_boundary),
  • parametry pomocnicze (na przykład Protection_ boundary_length), których wartość jest wyznaczana przez odpowiednie formuły,
  • tajemnicza „11” obok węzła Relations jest liczbą ukrytych zasad konstruowania i skryptów określających inteligentne zachowanie zderzaka. Dlaczego ukrytych? Dlatego że X nie musi ich widzieć, aby wiedzieć jak działają. 

RYS. 4. Rezultat zastosowania szablonu konstrukcyjnego zderzaka przedniego 

Realizacja procedury konstruowania zderzaka jest kontrolowana przez zmienną tekstową Step (tu Step=Solid Instantiation). Na kolejnym etapie (Step = Points Creation) system sprawdza położenie punktów mocowania (Clip Points) listwy zabezpieczającej oraz odległości pomiędzy nimi. W strukturze zespołu Front_Bumper pojawiły się warunki sprawdzające minimalną (Clip distance is too low) oraz maksymalną (Clip distance is too high) odległość punktów mocowania (rys. 5). 

RYS. 5. Kolejny krok procedury konstrukcyjnej – definicja punktów mocowania listwy zabezpieczającej 

Drugi z tych warunków nie był spełniony (533,042 mm > 400 mm) i dlatego konieczne było zwiększenie liczby punktów (Clip_Number= 3 -> Clip_Number=4 na rys. 6.). Rola X polega oczywiście na tym, aby na każdym etapie procedury konstruowania zderzaka wykonać takie modyfikacje, które zapewnią spełnienie wszystkich warunków sprawdzających. 

RYS. 6. Korekta odległości pomiędzy punktami mocowania listwy 

Przejście do kolejnego etapu (Step = All clips instantiation) oznacza definicję szczegółów konstrukcyjnych – zatrzasków mocujących w modelu Protection i odpowiednich otworów w modelu Bumper (rys. 7.). 

RYS. 7. Kolejny krok procedury konstrukcyjnej – definicja geometryczna szczegółów mocowania listwy 

Każda z tych cech konstrukcyjnych została automatycznie wstawiona w strukturę części jako element typu User Feature, czyli też jako szablon konstrukcyjny. Oczywiście każda zmiana liczby punktów (parametr Clip_Number) spowoduje odpowiednio zmianę liczby i położenia punktów mocowania oraz zmianę liczby i położenia cech Bumper_Hole.N i Bumper_clip.N (rys. 8). 

RYS. 8. Struktura modelu zderzaka i listwy z otworami i zatrzaskami

Na tym etapie system uaktywnił także kolejny warunek sprawdzający (Check paint clips). Proces technologiczny (tu lakierowanie zderzaka) musi być uwzględniony w projekcie konstrukcyjnym – tu przynajmniej połowa wszystkich zatrzasków musi być typu Paint Clip (rys. 9). 

RYS. 9. Warunek sprawdzający liczbę zatrzasków różnego typu

Typ zatrzasku, zdefiniowany jako atrybut szablonu Bumper_clip określa jego kształt i wymiary (rys. 10.), a te oczywiście wynikają z wymagań konstrukcyjnych i technologicznych. 

RYS. 10. Różne typy zatrzasków mocujących listwę zabezpieczającą

Jak już napisałem wcześniej, zadaniem X było wykonanie takich zmian konstrukcyjnych, które zagwarantują spełnienie wszystkich warunków sprawdzających. Nie jest możliwa „ręczna” zmiana wartości parametru Paint_Clip_Number (rys. 11.), bo byłoby to sprzeczne z logiką konstruowania. Jego wartość jest obliczana przez odpowiednią formułę i dlatego konieczna jest zmiana typu dla co najmniej dwóch zatrzasków (clip_type=paint clip), na przykład dla Bumper_clip.1 i Bumper_ clip.3. 

RYS. 11. Kolejny krok procedury konstrukcyjnej – sprawdzenie

Kolejny etap (Step=Validation) generuje następne dwa warunki sprawdzające stabilność mocowania listwy zabezpieczającej (rys. 12.). Jeśli jej masa jest mniejsza od 0,18 kg, to wystarczą 4 zatrzaski. W przeciwnym przypadku koniecznych jest 6 zatrzasków. Tu Protection_Mass=0,13 kg i Clip_Number=4 – oba warunki (CheckMassInf i CheckMass- Sup) są spełnione. 

RYS. 12. Warunki sprawdzające liczbę zatrzasków w powiązaniu z masą listwy zabezpieczającej

Projekt zderzaka jest prawie ukończony i X tak się ucieszył, że zrobił sobie zasłużoną przerwę na kawę. Nawet wizyta jego szefa z informacją o zmianie materiału listwy zabezpieczającej nie zakłóciła przyjemności rozkoszowania się jej aromatem. Nie ma problemu, pomyślał X i wykonał stosowną zmianę (rys. 13.). 

RYS.13. Zmiana materiału listwy zabezpieczającej

Co prawda po zmianie materiału zderzak wyglądał równie ładnie jak przed zmianą, ale zmieniła się też masa listwy. Warunek CheckMassSup nie był spełniony, bo zamiast 4 potrzebnych było 6 zatrzasków mocujących (rys. 14.). 

RYS. 14. Naruszenie warunku CheckMassSup

Zmiana materiału wymusiła też zmianę wymiarów zatrzasku, ale z tym X nie miał problemów, bo w szablonie Bumper Clip zdefiniował stosowną „Tabelę wariantów konstrukcyjnych”, w której niektóre wymiary zatrzasku zostały powiązane z rodzajem materiału listwy (rys. 15.). 

RYS. 15. Wpływ materiału na wymiary zatrzasku 

Aby spełnić warunek CheckMassSup musiał jeszcze zmienić wartość parametru Clip_Number, a potem zmienić typ jeszcze jednego zatrzasku na paint clip… i gotowe. Zmiana materiału została wykonana w czasie krótszym niż 1 minuta i można było zakończyć proces konstruowania zderzaka przechodząc do ostatniego etapu (Step=Mirroring na rys. 16.). 

RYS. 16. Kolejny krok procedury konstrukcyjnej – odbicie lustrzane

Po mniej więcej 15 minutach od chwili rozpoczęcia prac nad nowym zderzakiem jego projekt szczegółowy został zakończony. X miał teraz dużo wolnego czasu na opracowanie szablonów konstrukcyjnych kolejnych cech konstrukcyjnych, wspomagających projektowanie błotnika i klapy silnika. W międzyczasie rozmyślał o premii za wydajność i przyjemności relaksu podczas zbliżającego się urlopu.  

Ciąg dalszy nastąpi, ale… po urlopie.

andrzej.welyczko@pl.ibm.com

Autor: TEKST I RYSUNKI: ANDRZEJ WEŁYCZKO