
To „przejęzyczenie” to nie przypadek. Jedno ze środowisk pracy (ang. workbench) we FreeCAD pozwala na przeprowadzanie analiz metodą elementow skończonych (ang. FEM lub FEA).
I oparte jest właśnie na CalculiX
Autor: Maciej Stanisławski
Tym bardziej nie mogłem oprzeć się chęci nawiązania do popełnionego kilka(naście) lat temu artykułu pt. „Kalkulacje z CalculiX” (Projektowanie i Konstrukcje Inżynierskie, czerwiec 2008 rok). Pisałem wtedy o wersji 1.7 tego bardzo dobrego narzędzia do analiz głównie wytrzymałościowych. Już wtedy bardzo dobrego i – co więcej – dostępnego bezpłatnie, na licencji GNU (General Public License). Równoległy rozwój bezpłatnego CAD 3D – jakim jest FreeCAD (opisywany swego czasu stosunkowo często na łamach CADblog.pl) – i bezpłatnego narzędzia do analiz CalculiX, doprowadził z czasem do integracji obu rozwiązań. Nie trzeba już importować plików do CalculiX. Jeśli nasz model zaprojektowaliśmy we FreeCAD, wiele analiz możemy przeprowadzić nie opuszczając środowiska tego programu CAD/CAE. W praktyce oznacza to korzystanie z tego samego obszaru roboczego i znanego już nam interfejsu.
Analizy z poziomu FreeCAD
Darmowy FreeCAD, zupełnie jak większość nowoczesnych systemów wspomagających projektowanie inżynierskie, wykorzystuje koncepcję „workbench” – tzw. środowisk pracy. Inaczej mówiąc: zestawów narzędzi specjalnie dobranych dla potrzeb realizacji konkretnego zadania. Przy przełączaniu się do innego środowiska pracy, zmieniają się narzędzia dostępne z poziomu interfejsu użytkownika – paski narzędzi, paski poleceń, wstążki etc. Ale zawartość obszaru roboczego nie ulega zmianie, przed nami dostępny jest cały czas nasz rysunek, model.
W przypadku FreeCAD (i innych systemów) można spotkać się z określeniem „moduł” w odniesieniu do środowiska pracy. Różnica polega jednak na tym, że o ile moduł może być w zasadzie dowolnym rozszerzeniem FreeCAD, o tyle środowisko pracy to specjalna konfiguracja interfejsu graficznego (GUI) – grupująca niektóre paski narzędzi i menu. Tak jest i w przypadku opisywanego środowiska analiz (ang. FEM Workbench).


Krok po kroku
Aby przeprowadzić analizę wytrzymałościową we FreeCAD, musimy zacząć od jej zdefiniowania dla geometrii utworzonej we FreeCAD lub zaimportowanej z innego systemu. Tworzymy model lub otwieramy istniejący i przechodzimy do środowiska FEM.

Następnie:
1. Włączamy tzw. kontroler analiz (ikona „A”). W drzewie operacji pojawi się nowa analiza („Analisys”).

2. Tworzymy we FreeCAD siatkę elementów skończonych dla naszego modelu geometrycznego (lub importujemy ją z innej aplikacji – tutaj import na razie pominiemy). W tym celu po zaznaczeniu naszej bryły (lub ostatniej operacji – tutaj zaokrąglenia), klikamy ikonę „Siatka MES przez Gmsh”, i w oknie operacji klikamy „Apply”.

Siatka zostanie wygenerowana „z automatu”. I dla elementu bez zaokrągleń, czy fazowań, zapewne nie byłoby problemu. Ale w tym przypadku, przy domyślnych ustawieniach, pojawia się błąd (komunikat na czerwono informujący, że w siatce znajduje się 9 źle ukształtowanych trójkątów, plus informacja o stopniu zniekształcenia).

Rozwiązaniem będzie np. ręczne ograniczenie wielkości elementów siatki do maks. 1 mm. Po wprowadzeniu zmian, klikamy Apply, a potem OK. Siatka jest zdefiniowana. (Przy okazji warto zwrócić uwagę, o ile wydłużył się czas generowania dokładniejszej siatki: z 0,5 s do 11,9 s).

3. Teraz znowu zaznaczamy model i definiujemy materiał. Proponuję na początek wybrać CalculiX-Steel (ta definicja materiału powinna działać w każdej instalacji FreeCAD). Klikamy OK.


Jeśli teraz w drzewie operacji klikniemy na naszą „Analysis”, zobaczymy, że mamy już widoczny domyślnie ustawiony solwer, następnie siatkę mesh (nieaktywną) i zdefiniowany materiał.

4. Przyszła pora na ustalenie wiązań. Klikamy ikonę „Create a FEM constraint”.

Następnie wskazujemy jedną ze ścian naszego modelu (tą, która będzie domyślnie „zamocowana”
– w tym przypadku jest to tylna ścianka).
W oknie operacji klikamy „Add”, na liście pojawi się zaznaczony przez nas element. Ponownie wychodzimy z okna, klikając OK. Uwaga na marginesie – w przypadku, gdy nasz model ma proste ściany, widocznych jest więcej punktów mocujących (czerwony kwadrat widoczny na modelu).

5. Klikamy ikonę „Constraint Force”, która służy do definiowania siły w [N] przyłożonej równomiernie do wybranej ściany w kierunku, który także zdefiniujemy.

Kolejno wskazujemy ścianę, a następnie kierunek działania siły – klikając przycisk „kierunek” i wpisując nazwę ściany, lub wskazując krawędź modelu (na tym etapie zawsze zaczyna irytować mnie nie do końca spolszczone menu programu; problem ten dotyczy też dostępnej w sieci dokumentacji). Nie zapomnijmy też o wpisaniu interesującej nas wartości obciążenia (domyślnie jest to 1 [N]).


W ten sposób mamy zdefiniowane wszystkie warunki i parametry do przeprowadzenia analizy.
6. W drzewie operacji zaznaczamy/klikamy na solver (domyślnie po włączeniu kontrolera analizy ustawiony zostaje „SolverCcxTools”, zewnętrzny solwer CalculiX).

Teraz wystarczy kliknąć na ikonę „Run solver calculations”. Analiza zostanie przeprowadzona. W przypadku gęstej siatki/skomplikowanego modelu, może pojawić się okno DOS sygnalizujące, że FreeCAD wykonuje obliczenia na solwerze CalculiX – przyp. autora. W moim przypadku czasu wystarczyło na to, by wstać od komputera i pójść zaparzyć kawę :).

Oprócz tego, że na naszym modelu wyświetlona zostanie teraz siatka mesh, w drzewie operacji pojawi się pozycja „CCX_Results”.

Aby obejrzeć szczegółowo wyniki tej analizy, musimy kliknąć „CCX Results”, a następnie – ikonę „Show Results”. Bez tego na naszym widoku w obszarze roboczym nie zobaczymy żadnych rezultatów, gdyż domyślne ustawienie zakłada „brak” jakiegokolwiek wyniku.

Zaznaczmy opcję „Displacement Magnitude” (wielkość przemieszczenia), lub uplastycznienia (von Mises Stress).


Od razu lepiej. Jeśli chcemy zobaczyć wizualizację zniekształcenia, zaznaczmy opcję „Pokaż” i przesuńmy suwak.

Czy uzyskane wyniki są miarodajne? O to warto zapytać osoby, które na co dzień zajmują się tego typu analizami. Wizualizacja w moim odczuciu wygląda na mocno przesadzoną.
W każdym razie w ten sposób mamy za sobą pierwszą analizę FEM w środowisku FreeCAD wspartą przez CalculiX. W miarę prosto. I bezpłatnie. Tym bardziej zachęcam wszystkich do samodzielnego eksperymentowania. FreeCAD w wersji 0.19 ze wszystkimi dostępnymi środowiskami pracy można pobrać tutaj.
(ms)
Niniejszy artykuł to fragment nie napisanej (chociaż zaczętej kilka lat temu) książki o bezpłatnych systemach CAD. W tzw. międzyczasie DraftSight przestał być bezpłatny, Onshape – już nie jest tym, czym był i na placu boju pozostał w zasadzie FreeCAD jako 3D i Solid Edge 2D Drafting (pisałem o tym tutaj). Jednak nie wszystko stracone, w okresie wakacyjnym planuję przygotowanie e-booka poświęconego w całości FreeCAD. Dlaczego? Dlatego że dostępne w sieci tutoriale nie do końca mi odpowiadają…
Bądź pierwszy, który skomentuje ten wpis