Przygotowane wcześniej w artykule NESTING – optymalizacja rozkroju arkuszy do cięcia na platformie 3DEXPERIENCE i w DELMIA CAM arkusze z różnymi wariantami nestingu, są właściwie gotowe, aby wykonać w nich operację wycinania poszczególnych elementów. Operacje wycinania Laserem czy maszyną Waterjet są dostępne właśnie w aplikacji DELMIA Laser&Waterjet wchodzącej w skład roli NC Shop Floor Programmer NSR. Przejdziemy wspólnie przez proces przygotowania takiej obróbki oraz zbudowania celi z Wirtualnym Bliźniakiem maszyny. Dzięki niemu będziemy mogli zasymulować proces wycinania, uwzględniając kinematykę i bryły maszyny. Pozwoli to na bezpieczne przygotowanie ścieżek maszyny, weryfikację ich poprawności oraz optymalizację ruchów, włączając w to czas operacji.
Sprawdź również artykuł: Przygotowanie celi zrobotyzowanej w oprogramowaniu DELMIA.
Dodanie maszyny do procesu wycinania
Pracę kontynuujemy na poprzedniej Celi Maszynowej, jesteśmy w aplikacji Laser&Waterjet Cutting. Z paska Action Bar u dołu ekranu wybieramy sekcję Setup, a następnie, aby dodać nową maszynę, wybieramy Import and Mount Resources (1).

Dodajemy nową maszynę klikając w funkcję Add new machine or configured machining cel (2). Maszynę możemy w każdej chwili podmienić na inną za pomocą funkcji Replace machine
, która jest widoczna tuż obok ikony dodania maszyny.
Po wybraniu tej opcji włącza nam się okno wyszukiwania maszyny. W górnej części okna mamy do wyboru trzy przyciski, określające jakiego typu obiektu mamy szukać na platformie tj.: Machining Cell, Machine, Robot. W naszym wypadku będzie to Machine (1). Maszyna została zaprojektowana dzięki odpowiednim aplikacjom na platformie 3DEXPERIENCE, przez co ma określony typ jako maszyna, a to oznacza, że ma odzwierciedloną kinematykę rzeczywistej maszyny, uwzględniającą osie przesuwne, ich zakres pracy, czy postprocesor tłumaczący kod rozumiany przez kontroler maszyny.
Jeżeli znamy nazwę maszyny to możemy zaznaczyć checkbox Title (2) i wprowadzić w oknie obok nazwę maszyny. Następnie klikamy w przycisk Search in Database (3). Program szuka na platformie wszystkich obiektów typu Machine, które w nazwie mają słowo Plasma. W oknie wyszukiwania wybieramy odnalezioną maszynę i klikamy Ok(4).

Maszyna została dodana do naszej celi. Teraz umieścimy na jej stole jeden z arkuszy do wycinania. Pozostając w trybie włączonej funkcji Import and Mount Resources wybieramy funkcję
Import Manufacturing Product.
Pojawia się nowe okno wyszukiwania produktów. Z dwóch przycisków wybieramy NC Assembly i z drzewa obiektów Tree po lewej stronie ekranu wybieramy jedno ze złożeń do wycinania.

Definiowanie portu do orientacji i przenoszenia złożenia produkcyjnego
Program zapyta nas o układ współrzędnych, z jakim chcemy umieścić złożenie na maszynie. Jeżeli na złożeniu nie było, żadnego układu to klikamy Allows creation/modyfication of ports on Accessory.

W nowym oknie Mechanical Port managment klikamy w ikonę plus, aby dodać nowy układ współrzędnych.

W oknie Port Type zostawiamy Base port, możemy zmienić nazwę portu na ‘Układ montażu’ (1). Z listy Part, wybieramy NestedAssembly_2mm (2). Układ będzie wtedy przypisany do całego złożenia i może być ustalony na każdym elemencie. Klikamy w ikonę Snap the robot to specific location (3).

Układ będzie nam najłatwiej wstawić klikając w przycisk Define Origin of desired plane – Select a corner/center of face or Edge on gemetry i wybrać dolny prawy róg naszego złożenia. Dobrze, aby układ był na dnie złożenia, ponieważ po wybraniu układu na maszynie, który leży na płaszczyźnie stołu, od razu wstawimy złożenie w odpowiednim miejscu. Orientacja pozostałych osi nie jest tak ważna, ponieważ po wstawieniu złożenia na maszynę nadal będziemy mogli manipulować położeniem detalu. Co więcej, przesuwając go i obracając, tak aby leżał na maszynie w odpowiedniej orientacji.

Wybór akceptujemy ikoną
. Przechodzimy przez kolejny menu klikając Ok, aż do momentu, w którym zobaczymy na naszym ekranie pytające ponownie o wybór układu okno. Tym razem wskazujemy żółty układ, który został przez nas wstawiony w poprzednich krokach. Klikamy kursorem w ten układ.

Pozycjonowanie złożenia i konfiguracja głowicy tnącej
W kolejnym kroku wskazujemy żółty układ na maszynie, symbolizujący zaprojektowany przy tworzeniu maszyny jej odpowiednik układu Base port. Po kliknięciu ten układ pojawi nam się możliwość manipulacji położeniem złożenia na stole maszyny.

Chwytając kursorem za osi, możemy przesuwać całe złożenie. Po przesunięciu w osi pojawia się symboliczna miarka. Klikając w niebieską liczbową wartość przesunięcia, uruchamiamy okno, w którym możemy sami wprowadzić dokładną wartość przesunięcia względem początku układu współrzędnych.

Złożenie możemy obrócić o dowolny kąt, klikając w pół-łuki pomiędzy osiami lub okrąg u podstawy ‘robota manipulacji’. Po skończeniu przesuwania detalu klikamy Ok, aby zaakceptować wybór i wyjść z tej funkcji.
Zanim przystąpimy do wycinania, stworzymy głowicę do wycinania, która ma odpowiadać wiązce lasera lub strumienia wody (Waterjet). Przechodzimy do sekcji Setup w dolnym pasku i wybieramy funkcję Laser Cutting Head.

Wprowadzamy nazwę głowicy, najlepiej taką, która opisuje średnicę wiązki np. Laser 0.5mm. W zakładkach Geometry i Technology możemy ustawić więcej szczegółów dotyczących głowicy. Następnie akceptujemy zmiany, klikając Ok.

Przy zapisie całej celi maszynowej głowica trafi do przestrzeni platformy, więc będziemy mogli następnym razem wybrać ją do projektu, a nie tworzyć od nowa.
Przygotowanie złożenia i materiału do symulacji obróbki
Chcąc symulować obróbkę na naszej maszynie uwzględniającą ubytek materiału, powinniśmy przejść w kolejnym kroku do drzewa Activities Process View i edytować stworzone automatyczne ustawienia Part Operation. Zaczniemy od wyczyszczenia pozycji odpowiadającej za Setup Assmebly (złożenia produkcyjnego), a następnie wskazania złożenia nestingu, które jest już na stole maszyny.

Teraz przejdziemy do wskazania części do wycięcia i półfabrykatu. Jeżeli zaczynamy od wskazania części, to dobrze jest ukryć widoczność płyty, z której będziemy je wycinać. W drzewie obiektów Tree odnajdujemy nasze złożenie NestedAssembly, rozwijamy obiekty, klikamy PPM na Stock_2mm i wybieramy Ukryj/Pokaż. Następnie przechodzimy w Part Operation do Design Part i wskazujemy kursorem wszystkie części.

Akceptujemy wybór dwa razy klikając Lewym Przyciskiem Myszy na wolne obszar. Teraz możemy wrócić do drzewa Tree i przywrócić widoczność płyty Stock_2mm. Aby wskazać ją jako półfabrykat klikamy w przycisk Rough Stock i wskazujemy płytę.

Przygotowanie bazy detalu (G54)
Teraz ustalimy układ współrzędnych, względem którego zostanie wygenerowany program NC na naszą maszynę. Pozostając w Part Operation przechodzimy do edycji układu.

Na początku wybieramy tryb From directions, a następnie klikamy w Origin, aby wskazać punkt początkowy bazy.

Początek układu umieszczamy na górnej płaszczyźnie płyty w prawym górnym narożniku. Ważniejsze od miejsca, w którym w umieszczamy układ jest to by był on wyznaczony w tym samym miejscu, w którym wyznaczy go na maszynie jej operator. Względem tego układu będą generowane wszystkie współrzędne w kodzie NC.

Należy też pamiętać o zwrotach wektorów osi X i Z, można je zmodyfikować klikając w przyciski Z direction i X direction. Ostatnia istotna rzecz to numer bazy. W polu NC Origin output zaznaczamy checkbox, jeśli chcemy, żeby program wygenerował numer bazy. Jeżeli nasz program NC i zmierzona baza na maszynie to G54, to wystarczy w polu Number wpisać 1. Postprocesor do wpisanej wartości dodaje liczbę 53, w efekcie otrzymujemy 1 + 53 = G54. Adekwatnie działa to z wyższymi bazami G54-G59.
Klikamy Ok i wychodzimy z okna.
Projektowanie ścieżek cięcia
Do tworzenia operacji cięcia wykorzystamy Cutting Activity z sekcji Laser&Waterjet. Po uruchomieniu operacji zaczynamy od zadeklarowania narzędzia.

Przy tworzeniu pierwszej operacji, głowica prawdopodobnie nie będzie wskazana. Dlatego w zakładce dotyczącej narzędzia klikamy w przycisk ‘ – Click to search and select a tool – ’ i z drzewa po lewej stronie menu wskazujemy stworzoną wcześniej przez nas głowicę Laser 0.5 mm. Możemy również użyć narzędzi i filtrów do przeszukania głowic na platformie, gdybyśmy mieli wcześniej stworzone inne głowice. Przechodzimy do zakładki Geometry. Program wskazuje na brak krzywych Guides, po których mielibyśmy poprowadzić wycinanie. Klikając w Guides, możemy wybierać krawędzie do wycięcia. Z uwagi na to, że mamy na stole powtarzające się detale, a więc i krawędzie to użyjemy bardziej zautomatyzowanej opcji. Klikamy w ikonę
przy Guides i wybieramy Menage Contours.

Po pojawieniu się okna Contours klikamy w ikonę plusa
.
Przechodzimy do trybu wskazywania. Mamy dostępne tu dwie bardzo przydatne opcje:
![]()
Pierwsza Extract Inner edges of Face i druga Extract Outer Edges of Face. Pierwsza wykrywa wszystkie wewnętrzne krawędzie detalu, druga tylko zewnętrzne krawędzie części. Wystarczy wybrać pierwszą opcję, żeby rozpoznała ona wszystkie wewnętrzne krawędzie. Klikamy opcję Extract Inner edges of Face i wskazujemy większy stojak (Stojak_Laptop) – dowolny z 5 tych elementów.

Program sam wskazał nam wszystkie wewnętrzne krawędzie detalu. Klikamy
, żeby zaakceptować wybór i wyjść z menu. Na liście w oknie Contours pojawiły się wszystkie krawędzie.
Zamiast wskazywać w opisany wcześniej sposób pozostałe duże stojaki i ich krawędzie, wystarczy, że zaznaczymy wszystkie krzywe na liście (np. z użyciem klawisza SHIFT – trzymając klawisz, klikamy pierwszą i ostatnią na liście) i wybierzemy opcję Copy selected contour to nested parts.

Dzięki temu zabiegowi wskazaliśmy wszystkie wewnętrzne krawędzie na wszystkich instancjach detalu Stojak_Laptop.

Klikamy Ok i wracamy do menu operacji. Przechodzimy do zakładki Strategy. W zakładce tej możemy ustawić wiele parametrów m.in. kierunek cięcia, wydłużenie cięcia po krawędzi, żeby ścieżka nie zaczynała i kończyła się w tym samym punkcie, możemy ustawić parametry zaokrągleń dla ostrych narożników, ale również kompensację Kerf wynikającą ze zmiany średnicy wiązki. Do tego ćwiczenia wykorzystamy parametr Separation length, służący do wygenerowania ‘mostów’, aby wycinane elementy o zamkniętych konturach nie wypadały swobodnie podczas wycinania.

W Separation length (długość mostów) ustawimy wartość 3 mm, zaznaczamy checkbox Separation pass (zaznaczamy, aby po skończonym wycinaniu z mostami, dołożyć przejścia, które wytną ‘mosty’) oraz Stop at begining of separation pass (maszyna ma zatrzymać się przed uruchomieniem przejść wycinających ‘mosty’).
Przechodzimy do zakładki Macros, aby ustawić ruchy przyjazdu, odjazdu i połączeń między konturami. Edytor makr daje szerokie możliwości użytkownikowi na tworzenie własnych zestawów ruchów, więc użytkowni może je dostosować do maszyny, wycinanego materiału itd. W swoich ruchach użyję podjazdu i odjazdu pionowego.

Symulacja operacji i generowanie programu NC
W ostatniej zakładce Feeds and Speeds użytkownik może ustalić posuwy dla wszystkich ruchów. Po wypełnieniu wartości posuwów możemy przejść do symulacji klikając Simulate.
Z włączonym trybem Enable material removal i Enable machine kinematic (1) możemy zaobserwować usuwanie materiału i ruchy maszyny podczas symulacji. W pierwszej fazie tej ścieżki ustaliliśmy, że program stworzy ‘most’ przy wycinaniu, możemy je zaobserwować na zrzucie ekranu z przebiegu symulacji. Zostaną one obrobione jeszcze w tym samym procesie.

Teraz wystarczy, że skopiujemy istniejącą operację i podmienimy kontury na zewnętrzne kontury tego elementu, oraz powtórzymy kroki dla mniejszego detalu Stojak_Telefon.

W efekcie otrzymujemy obróbkę dla wszystkich krawędzi i mamy wycięte wszystkie elementy na maszynie.
Pozostaje nam wygenerować program na maszynę. W zależności od typu kontrolera maszyny będziemy potrzebować dedykowanego postprocesora. Warto zgłosić się do sprzedawcy oprogramowania, aby porozmawiać o napisaniu dedykowanego postprocesora. Producent oferuje kilka darmowych postprocesorów i są zainstalowane z oprogramowaniem. Dla maszyny użytej w opisanym procesie użyliśmy darmowego postprocesora od ICAM Foundation dla maszyny Bystronic.

Aby wygenerować program dla zaprojektowanych ścieżek, przechodzimy do sekcji Analysis&Output i wybieramy Generate NC Code Input.

W nowym oknie możemy ustawić kilka parametrów dotyczących generowanego programu NC, my skorzystamy z deklaracji, z których operacji chcemy uzyskać program NC, wybierzemy for all selected programs (1), aby program został wygenerowany dla wszystkich stworzonych przez nas operacji. W zakładkach Tool motions i Formatting użytkownik znajdzie więcej szczegółowych kwestii dotyczących formatowania kodu i składni. W celu wykonania postprocessingu klikamy w Execute (2).

Program w naszym wypadku generuje się w rozszerzeniu .CATNCCode (1), możemy go otworzyć klikając PPM na niego i wybrać View (2). Program otwiera się w wybranym przez nas edytorze tekstowym. Wystarczy go zapisać w wybranym miejscu i przesłać na maszynę.

Program jest newralgiczny dla poprawności przebiegu procesu. Należy pamiętać o jego dokładnym przeanalizowaniu. Wszelkie potrzebne zmiany w kodzie można w większości wprowadzić odpowiednio modyfikując postprocesor. Dlatego zaleca się kontakt z dystrybutorem w celu analizy potrzeb.
Zobacz także:
- Wirtualny Bliźniak – Klucz do przewagi konkurencyjnej Twojej firmy
- Wirtualna Rzeczywistość w połączeniu z Wirtualnymi Bliźniakami
- Przemysł 4.0 – czym jest i jak jest adaptowany w Polsce?
- Cyfrowy bliźniak lub wirtualny bliźniak – jaka jest różnica?
- NESTINGWorks – optymalizacja rozkroju elementów na arkuszu

