Skąd wiadomo jaki kształt ma mieć projektowany element? Odpowiedź wydaje się oczywista: taki, jaka jest intencja konstruktora, który biorąc pod uwagę funkcję części w kontekście jej otoczenia projektowego, obciążenia, sposobu mocowania, dostępną przestrzeń projektową oraz ograniczenia technologiczne, proponuje najlepszy jego zdaniem kształt. Ale czy jest to kształt najlepszy z możliwych, czyli optymalny? Jeśli optymalny oznacza najlepszy z tych, który spełnia wszystkie funkcje projektowanej części, zadane wymagania i ograniczenia, to intencja konstruktora wcale nie musi być optymalna.
Andrzej Wełyczko
W zakresie poszukiwania optymalnego kształtu projektowanego komponentu od lat dostępne są systemy do optymalizacji topologicznej. Te jednak realizują jedynie część procesu (Rys. 1), w którym dane, definiowane zwykle przez kilku uczestników i to w różnych systemach CAD i CAE, muszą być pomiędzy tymi systemami transferowane.
Rys. 1
Problemem jest także to, że optymalizacja topologiczna (bazująca na metodzie elementów skończonych) generuje rezultat w postaci siatki MES, która w systemie CAD musi być „zamieniona” na dokładną definicję geometryczną, a proces takiej rekonstrukcji geometrycznej nie jest ani łatwy, ani szybki. W takim mało zintegrowanym środowisku trudno jest zrealizować pętlę optymalizacyjną, której zadaniem byłoby zdefiniowanie, porównanie oraz wybór rozwiązania optymalnego spośród kilku wariantów. Wybór optymalnego kształtu projektowanej części to też jednak nie wszystko, bo do pełni szczęścia potrzebny jest jeszcze zintegrowany z CAD/CAE system CAM, w którym zostanie zdefiniowany optymalny proces wytwarzania, uwzględniający specyficzne wymagania technologiczne (na przykład kucie, odlewanie czy druk 3D).
Rys. 2
Rozważmy zastosowanie aplikacji CATIA Functional Generative Design (GDE), która wspomaga kompleksowo proces generowania optymalnej geometrii na podstawie specyfikacji funkcji projektowanej części:
A. Specyfikacja funkcjonalna:
- Definicja przestrzeni projektowej oraz obszarów funkcjonalnych.
- Definicja wszystkich możliwych przypadków obciążeń oraz warunków brzegowych.
- Ustalenie granicznych wartości parametrów wynikowych (dopuszczalnych naprężeń, odkształceń, częstotliwości własnych) oraz ograniczeń kształtu wynikających z planowanej technologii wykonania, a także minimalna grubość ścianek i symetria.
- Definicja funkcji celu optymalizacji topologicznej.
A. Definicja wariantów rozwiązania:
- Optymalizacja topologiczna i definicja różnych wariantów rozwiązania oraz sprawdzenie ich wytrzymałości/odkształceń.
- Porównanie wariantów i wybór rozwiązania optymalnego.
B. Finalna rekonstrukcja modelu.
- „Asystent” (Exploration Assistant na rysunku 2), dostępny w tej aplikacji, ułatwia definicję kolejnych kroków procedury projektowej oraz zarządzanie wszystkimi danymi i wynikami obliczeń.
Rozważmy kolejne kroki takiego procesu na przykładzie elementu mocowania silnika lotniczego. Na rysunku 3 pokazano zestawienie zaprojektowanej metodami klasycznymi wersji (kolor pomarańczowy) tego komponentu z dostępną przestrzenią projektową (kolor szary).
Rys. 3
Bryła Design Space (Rys. 4) określa maksymalną przestrzeń dostępną i niezbędną dla wykonania funkcji projektowanej części w ruchu z uwzględnieniem rodzaju powiązania z innymi częściami zespołu. Celem zastosowania aplikacji GDE jest znalezienie takiego kształtu projektowanej części, który jest zawarty w przestrzeni projektowej i jednocześnie spełnia wszystkie wymagania funkcjonalne oraz narzucone ograniczenia.
Rys. 5
Każdy złożony (wieloetapowy) proces projektowy, a takim niewątpliwie jest poszukiwanie optymalnego kształtu, powinien uwzględniać zalecenia metodologiczne. Z tego i tylko z tego powodu bryła Design Space została skopiowana (Copy/Paste As Result with Link) i zapamiętana pod nową nazwą: Partitions (Rys. 4). Dzięki temu różne warianty bryły Design Space mogą być łatwo zintegrowane z kolejnymi etapami procedury konstrukcyjnej po zastosowaniu polecenia Replace. Jeśli zadaniem jest optymalizacja topologiczna, to przed rozpoczęciem procesu poszukiwania optymalnego kształtu trzeba zdefiniować materiał (tu: Titanium) oraz miejsca, które z oczywistych powodów nie mogą być modyfikowane (mocowanie i kontakt z innymi częściami zespołu) – tu: Solid Partition.1 (otwór centralny), Solid Partition.2 (cztery otwory mocujące w podstawie) i Solid Partition.3 (gniazdo pozycjonowania podstawy – niewidoczne) zdefiniowane za pomocą polecenia Partition Design Space. Dzięki takiej definicji ustalone później obciążenia oraz rodzaj mocowania/usztywnienia tego komponentu będą powiązane zawsze z tymi samymi fragmentami bryły, niezależnie od geometrii wybranej jako optymalna.
Po takim wstępnym przygotowaniu modelu przestrzennego można rozpocząć definiowanie zadania optymalizacyjnego. W tym celu należy uruchomić polecenie Exploration Assistant, które tworzy strukturę danych niezbędnych do wykonania zadania oraz zapamiętania wyników – tu: Sim_WA4_Joiner_Variant0 (Rys. 5).
Ta struktura zawiera trzy podstawowe węzły:
- Model – wstępna definicja geometrii optymalizowanej części, czyli przestrzeń projektowa oraz obszary, które nie mogą być modyfikowane w czasie optymalizacji,
- Scenario – definicje wszystkich scenariuszy obliczeniowych (szczegóły poniżej),
- Result – węzeł grupujący wyniki obliczeń dla każdego scenariusza.
Lista kolejnych etapów procedury prezentowana w oknie Exploration Assistent ułatwia zachowanie odpowiedniej kolejności realizowanych zadań, a ponadto jest też czytelnym wskaźnikiem poprawności i kompletności kolejnych kroków. Pierwszy z tych kroków to wskazanie bryły, która definiuje przestrzeń projektową: Design Space → Partitions. W tym samym kroku konstruktor ma możliwość wyboru rodzaju generowanej siatki oraz wielkości jej elementów. Metoda generowania siatki jest automatyczna i pewnie dla eksperta oferuje zbyt mało możliwości (na przykład zagęszczenie siatki w pewnych obszarach), ale przypominam, że to jest narzędzie dla konstruktora, a nie specjalisty z zakresu MES. Jakkolwiek wskazanie obszarów funkcjonalnych nie jest konieczne do wykonania optymalizacji topologicznej, to jednak w wielu przypadkach jest konieczne dla spełnienia funkcji części w zespole. Tu wskazano obszary funkcjonalne (Rys. 6), które wcześniej zostały zdefiniowane za pomocą polecenia Partition Design Space.
Rys. 6
Kolejnym krokiem procedury (po zdefiniowaniu wymaganych elementów geometrycznych) jest definicja obciążeń (Analysis Setup/Loads na rysunku 7) oraz wszystkich zadanych warunków brzegowych (Boundary Conditions i Connections). Dla wskazanej powierzchni i wybranego typu obciążenia (Pressure, Force, ..., Remote Torque) zadajemy jego wielkość (tu: Bearing Load.1=33420N i Bearing Load.2=54640N), a następnie definiujemy różne przypadki obciążenia, czyli dowolne kombinacje obciążeń (tu Linear Load Case.1, Linear Load Case.2 i Linear Load Case.3).
Rys. 7
W zakresie definiowania warunków brzegowych (Boundary Conditions na rysunku 8) system proponuje wybór jednego z czterech typów: Clamp, Fixed Displacement, Ball Joint lub Hinge. W przypadku Fixed Displacement konieczne jest wskazanie, w których kierunkach przemieszczenia są zablokowane.
Rys. 8
Równie łatwo definiujemy różne rodzaje połączeń (Connections na rysunku 9).
Rys. 9
Jeśli wybrane zostało połączenie śrubowe, to w oknie Bolt Editor można ustalić typ śruby, rozmiar oraz parametry jej sztywności. Warto zauważyć, że system rozpoznaje otwory o tej samej średnicy i jeśli w tych otworach mają być zdefiniowane identyczne śruby, to polecenie Bolt Replication kopiuje taką definicję we wskazane lub automatycznie wybrane miejsca.
Na tym etapie można, choć nie trzeba, wykonać sprawdzenie poprawności zdefiniowanych dotychczas elementów (Setup Validation w oknie Exploration Assistant). Celem takiego sprawdzenia jest wykrycie ewentualnych nieścisłości, które mogłyby wpłynąć na przebieg i rezultat optymalizacji. Czasami błędna lub niekompletna definicja zadania może uniemożliwić rozwiązanie zadania optymalizacyjnego.
Elementy zdefiniowane do tej pory są typowe dla każdego zadania MES. Jeśli zadanie dotyczy optymalizacji kształtu, a dokładniej – optymalizacji topologicznej, to należy także zdefiniować cel optymalizacji (Optimization Target na rysunku 10). Celem może być znalezienie takiego modelu optymalnego, dla którego:
- sztywność jest największa (Maximize Stiffness),
- wartości pięciu najniższych częstotliwości własnych są maksymalne (Maximize Frequencies),
- masa jest najmniejsza (Minimize Mass).
Rys. 10
Jeśli wybranym celem optymalizacji nie jest Minimize Mass, to dodatkowo trzeba ustalić wartość jednego z kryteriów: Target Mass % of Design Space lub Target Mass Value.
Poszukiwanie rozwiązania optymalnego może być dodatkowo ograniczone (patrz: Constraints na rysunku 11).
Rys. 11
Na przykład jeśli naprężenia nie mogą przekroczyć pewnej wartości, to po wybraniu Stress Constraint należy zadać tę wartość i zdecydować, czy to ograniczenie dotyczy wszystkich przypadków obciążenia (Load Cases), czy tylko wybranych.
Ograniczenia w poszukiwaniu rozwiązania optymalnego mogą także dotyczyć także samego kształtu projektowanej części (patrz: Shape Controls na rysunku 12). Trzeba przecież uwzględnić planowany sposób wytwarzania projektowanej części, minimalną grubość, symetrię względem zadanej płaszczyzny lub symetrię cykliczną, czyli kątową powtarzalność względem zadanej osi.
Rys. 12
Tu warto zauważyć, że jeśli projektowany element ma być wykonany w technologii przyrostowej, to nie narzucamy żadnych ograniczeń technologicznych (tryb No Constraint), bo druk 3D jest możliwy dla każdego kształtu. Jeśli planujemy wykonać projektowany element za pomocą znanych od lat technologii (na przykład: odkuwka, odlew, wypraska), to trzeba wybrać jedną z pozostałych opcji: Single Draw, Split Draw lub Extrusion. W tym kontekście powinno być oczywiste, że aplikacja GDE może być stosowana nie tylko dla komponentów wykonywanych na drukarkach 3D, ale także tych, które mają być wytwarzane metodami tradycyjnymi. Zasadnicza różnica polega na tym, że o ile w podejściu tradycyjnym koncepcja kształtu projektowanej części powstaje w głowie konstruktora, a jej model model bryłowy jest w systemie CATIA definiowany za pomocą aplikacji Part Design i czasami Generative Shape Design, to w przypadku zastosowania aplikacji Functional Generative Design propozycja kształtu jest generowana przez system, a rolą konstruktora jest „tylko” wybór i weryfikacja rozwiązania optymalnego.
Andrzej Wełyczko
artykuł pochodzi z wydania 7/8 (118/119) lipiec/sierpień 2017