(cykl publikowany na łamach dwumiesięcznika „Stal. Metale i Nowe Technologie”)
W poprzednim poście o tej tematyce (link tutaj) przedstawiłem – bardziej jako ciekawostkę – prosty program napisany w latach 80. na 8-bitowy komputer, realizujący zadanie optymalizacji rozmieszczenia identycznych regularnych elementów na arkuszu o określonych rozmiarach. Przy okazji stanowiło to wstęp do rozwinięcia pojęcia nestingu i zasygnalizowania, jak z rozplanowaniem elementów na danej powierzchni (zwanym też „zagnieżdżeniem”) radzą sobie współczesne systemy komputerowe
Autor: Maciej Stanisławski
Wróćmy na chwilę do określenia samego pojęcia „nestingu”. W ujęciu ogólnym, problem zagnieżdżenia jest jednym z zagadnień optymalizacji kombinatorycznej związanej z cięciem. Występują one w wielu różnych branżach, np. w przemyśle papierniczym, drzewnym, metalowym, szklanym i pochodnych (np. meblarskim). Wszystkie wymienione wyżej gałęzi produkują ogromne ilości produktów w odpowiedzi na globalne zapotrzebowanie. Dobre rozplanowanie wycinanych elementów pomaga w zminimalizowaniu ilości odpadów powstałych w procesie produkcji, skraca czas produkcji, zmniejsza zużycie energii – jednym słowem, czyni produkcję bardziej opłacalną.
Przez ostatnie trzy dekady skupiano się na opracowywaniu metod pozwalających na zautomatyzowane rozwiązanie kwestii optymalnego zagnieżdżenia elementów. Realizujący to zadanie program musi uwzględniać dwa główne czynniki: z jednej strony dobór materiału o powierzchni wystarczającej do realizacji danego projektu (zwłaszcza w przypadku części o większych gabarytach i nieregularnych kształtach), z drugiej – równolegle – takie rozplanowanie geometrii małych elementów, aby możliwe było ich wytwarzanie w tym samym cyklu technologicznym, aby uniknąć nakładania się na siebie dużych i małych elementów, aby zmaksymalizować liczbę wspólnych krawędzi (zmniejszenie przebiegów narzędzia tnącego). Wreszcie – aby uwzględnić zastosowaną technologię cięcia.
Obsługa geometrii części
Stosunkowo nieliczne publikacje naukowe poświęcone zagadnieniom związanym z cięciem i planowaniem rozmieszczenia elementów o nieregularnych kształtach podkreślają, że dobra metoda obsługi geometrii takich elementów nie jest łatwa do opracowania i wdrożenia. Wymaga o wiele więcej czasu (i wysiłku umysłowego), niż w przypadku regularnych kształtów, umieszczanych na regularnych powierzchniach (jak miało to miejsce w przypadku wspomnianego poprzednio programu na ZX Spectrum).
Gdy umieszczamy regularne kształty, takie jak np. prostokąty, bez problemu możemy zawrzeć wszystkie możliwe warianty ich występowania w skończonym zestawie możliwości, ponieważ wszystkie „składowe” elementy są prostokątne – zarówno te wycinane, jak i sam arkusz.
Gdy wielokąt składa się z jednej lub więcej krzywych tworzących jego geometrię, ilość możliwych pozycji na arkuszu jest w zasadzie… nieskończona. Kluczem jest poszukiwanie takiego rozwiązania, które zmaksymalizuje liczbę elementów występujących na określonej powierzchni. Gdy dokonujemy tego „ręcznie”, posługując się modelami/rysunkami 2D i wzrokowo kontrolując nasze poczynania, może się to wydawać względnie proste, chociaż pracochłonne. Wyobraźmy sobie jednak złożoność takiego problemu, gdy będziemy poszukiwali rozwiązania tylko metodą algorytmiczną, obliczeniową… W grę wchodzą zestawy wierzchołków, wzory krzywych i szereg równań do rozwiązania. Pasjonujące? Dla niektórych na pewno.
Na szczęście użytkownik końcowy oprogramowania do rozwiązywania problemów nestingu nie musi się przejmować tym, jak „to działa” – jego najczęściej interesuje tylko optymalny efekt końcowy możliwy do uzyskania w jak najkrótszym czasie i za rozsądną cenę. Zdroworozsądkowe podejście. Ale nie jest to takie proste…
Tylko w specjalnym module?
Prawdę mówiąc byłem przekonany, że duże „kombajny” (np. klasy NX) oferują automatyczny nesting w standardzie. Tymczasem… użytkownik NX CAM w przypadku konieczności rozplanowania rozkładu elementów na arkuszu blachy znajduje się w podobnej sytuacji, co użytkownik… bezpłatnego CAD klasy Solid Edge 2D Drafting! Bez dodatkowego narzędzia nie będzie w stanie tego zrealizować – chyba, że zrobi to ręcznie. Myliłem się zatem pisząc, że taka automatyczna funkcjonalność bywa obecna jako „standard” w profesjonalnych rozwiązaniach. Chyba, że w „standardzie” otrzymamy system wzbogacony o dodatkowy moduł – i tak w przypadku wspomnianego NX CAM, musimy zaopatrzyć się w moduł Progressive Die Wizard, który posiada dedykowane narzędzie umożliwiające automatyczne rozmieszczenie półfabrykatu na arkuszu blachy. Zadając między innymi minimalną odległość między częściami, uzyskujemy najbardziej optymalne ułożenie i dostęp do wszelkich informacje o wykorzystanym materiale. Funkcjonalność taką oferował na pewno NX 8.5 (podkreślę raz jeszcze – ze wspomnianym modułem), natomiast na marginesie dodam, że w najnowszym NX 12 w module Additive Manufacturing (wspomagającym wytwarzanie przyrostowe) znajdziemy nesting 3D… Ciarki przechodzą na myśl o złożoności obliczeń przestrzennych!
Dedykowane rozwiązania
Tak jak w przypadku systemu NX CAD/CAM użytkownik może skorzystać z dodatkowego implementowanego modułu, tak użytkownicy innych systemów mogą sięgnąć po dedykowane aplikacje – przygotowane pod kątem współpracy z ich rozwiązaniami. Dla DS SOLIDWORKS dobrym rozwiązaniem może okazać się SolidNest, albo NestingWorks (znany do niedawna jako CAMWorks Nesting), opracowany przez GEOMETRIC TECHNOLOGY. Podobnie jak inne tego typu aplikacje, automatycznie pomogą znaleźć optymalny rozkład elementu na powierzchni, tak aby zmieścić jak najwięcej detali oszczędzając przy tym sam materiał. Efektem ich pracy będą plik złożenia z ułożonym detalem oraz plik DXF. Wykorzystamy je później do wygenerowania ścieżki dla obrabiarki wycinającej zaprojektowane elementy.
W przypadku Solid Edge godnym polecenia narzędziem może okazać się SigmaNest (współpracujące zresztą także z innymi systemami CAD). SigmaNEST umożliwia kompleksowe zarządzanie całym parkiem maszyn tnących, obsługuje procesy takie jak cięcie plazmowe, cięcie laserowe, cięcie tlenem, cięcie wodą, router, wykrawarki, nóż, gięcie oraz cięcie rur i kształtowników. SigmaNEST to również system do zarządzania magazynem arkuszy blach, rolek blach, arkuszy odpadowych. Kalkuluje, oblicza np. masowy udział konstrukcji na rozkładach, trasuje cięte detale, tworzy zlecenia produkcyjne itd. I oczywiście oferuje zautomatyzowany nesting.
Inną aplikacją, działającą niezależnie od zainstalowanego systemu CAD, jest Lantek Cut. Zalety tego rozwiązania to m.in. nowoczesny interfejs użytkownika, praca w oparciu o profesjonalną bazę danych Microsoft SQL Server Express, a także fakt, iż oprogramowanie obsługuje wszystkie dostępne na rynku maszyny do cięcia blach, a za pomocą jednej licencji programu można sterować wszystkimi wycinarkami, na które wykupiono postprocesor.
Jeśli chodzi o sam nesting warto dodać, że Lantek nie tylko zapamiętuje wprowadzone arkusze blach, ale w trakcie pracy zapamiętuje także odpady użytkowe, co umożliwia ich automatyczne wykorzystanie w następnych rozkrojach.
Polak potrafi
Mamy także rodzime oprogramowanie, które może okazać się interesującą alternatywą dla zagranicznych rozwiązań. Wskażę tutaj na dwie aplikacje: WRYKRYS (proszę nie zrażać się brzmieniem nazwy programu) firmy STIGAL i Neron CNC firmy Pro.Winkler. Ten pierwszy to technologiczny program typu CAD/CAM, służący do przygotowania procesu kształtowego cięcia elementów na sterowanych numerycznie przecinarkach. WRYKRYS umożliwia optymalizację procesu cięcia, minimalizację odpadów, kosztorysowanie, zarządzanie blachami odpadowymi i wiele więcej. Wyposażony został w stale aktualizowaną bibliotekę standardowych kształtów i zintegrowany moduł rysunkowy CAD, które wspomagają przygotowanie własnych rysunków niezależnie od posiadanego „zewnętrznego” systemu CAD. Gwarantuje oczywiście w pełni automatyczny rozkład różnych elementów na arkuszu blachy (vide rys.), pozwala na łączenie wypaleń i rysunków, cięcie na wspólną krawędź, a także na zarządzanie blachami odpadowymi. Co ciekawe, pozwala także na symulację rozkładu temperatur występujących na arkuszu blachy podczas procesu cięcia.
Neron CNC wydaje się być mniej zaawansowany pod względem możliwości nestingu. Daje możliwość półautomatycznego rozkładu elementów na arkuszu (szyk pionowy oraz poziomy), prostokątnego rozkładu elementów (tzw. mini – nesting, tzn. od najmniejszego, od największego, w jednym wierszu itp), dzielenie arkusza na pasy, prostokąty, okręgi (umożliwiające cięcie łańcuchowe). Program pozwala także na cięcie na wspólną krawędź. Neron CNC umożliwia wygenerowanie w jednym pliku nc kodu do kilku narzędzi jednocześnie. Możliwe zatem jest zastosowanie np. najpierw wiertarki do wywiercenia otworów, a następnie palnika plazmowego do wycięcia/wypalenia elementu. Na podstawie wybranej technologii program Neron CNC może automatycznie wygenerować kosztorys projektu. Dane fizyczne takie jak droga i czas cięcia, waga obiektów i odpadu – liczone są na podstawie rysunku CAD oraz parametrów wprowadzonych przez użytkownika. Z kolei na podstawie danych fizycznych wykonywana jest szacunkowa kalkulacja ekonomiczna – dzięki niej użytkownik pozna przybliżony koszt projektu… Jak widać, nie tylko nesting ma znaczenie…
Budżetowe nie znaczy… złe
Użytkownicy, którzy korzystają z bezpłatnych narzędzi CAD, albo nie dysponują budżetem pozwalającym na zakup dodatkowych modułów do już posiadanego oprogramowania, mogą być mile zaskoczeni możliwościami oferowanymi przez dostępne na rynku bezpłatne (lub dostępne za niewielką odpłatnością) narzędzia do realizacji automatycznego nestingu. Przykładem bezpłatnej (w wersji bazowej) aplikacji może być tutaj program MaxCut (dostępny na stronie www.maxcutsoftware.com), ale ciekawiej prezentują się funkcjonalności MyNesting (www.mynesting.com).
Ta aplikacja pod względem działania nie ustępuje droższym, profesjonalnym rozwiązaniom. Oczywiście, należy mieć świadomość jej ograniczeń – służy ona tylko do szeroko rozumianego w pełni zautomatyzowanego nestingu. Będzie w stanie zoptymalizować położenie w zasadzie każdego kształtu na arkuszu (lub kilku arkuszach) o zadanym wymiarze. Aby korzystać z aplikacji, wystaczy pobrać plik instalacyjny (ze strony mynesting.com), założyć konto w serwisie i uruchomić program, wykorzystując login i hasło otrzymane podczas zakładania/rejestracji konta.
MyNesting jest przykładem aplikacji dostępnej za niewielką odpłatnością. Polega to na tym, że samo korzystanie z oprogramowania jest bezpłatne – wydawcy aplikacji nie pobierają opłaty z góry, ani za okres jej wykorzystywania (jak w przypadku np. miesięcznej subskrypcji), a jedynie w momencie generowania przez użytkownika pliku z wynikiem operacji nestingu. Innymi słowy, opłatę ponosimy za uzyskany efekt końcowy – jeśli jesteśmy z niego zadowoleni. To ciekawy model sprzedaży i kto wie, czy nie spotkałby się z aprobatą ze strony użytkowników także innych rozwiązań…
(ms)
Źródło:
• Mattijs Timmerman: Optimization methods for nesting problems. University West, 2013
• www.nxcad.pl
• www.solidmania.com
• www.wrykrys.pl
• www.winkler.pl
• www.maxcutsoftware.com
• www.mynesting.com
Ciekawe linki
• Czytaj także o ZW Nesting – polskim rozwiązaniu dla ZWCAD
Bądź pierwszy, który skomentuje ten wpis