Rozwiązanie problemu produkcji precyzyjnej: Dlaczego jest to takie trudne?

Chris Emery
5 marca 2023 r.
Rozwiązanie problemu produkcji precyzyjnej: Dlaczego jest to takie trudne?

Kiedy Theo Saville i ja założyliśmy CloudNC w 2015 roku, mieliśmy jedną wspólną ambicję: sprawić, by produkcja czegokolwiek stała się autonomicznym procesem opartym na jednym kliknięciu.

Osiem lat później wciąż pracujemy nad osiągnięciem tego celu! Jednak teraz mamy zamiar uruchomić nasze pierwsze rozwiązanie programowe, CAM Assistktóre zautomatyzuje znaczną część procesu programowania maszyn CNC do precyzyjnej produkcji komponentów.

Będzie to znacząca zmiana w sposobie funkcjonowania produkcji na całym świecie. Słoń w pokoju: dlaczego zajęło nam to tak dużo czasu?

Prosta odpowiedź: to bardzo złożony problem! Oto dlaczego.

Sam problem

Przyjrzyjmy się najpierw temu, co staramy się ulepszyć: globalnej produkcji.

Mówiąc dokładniej, prawie wszystko, co jest obecnie produkowane na świecie, opiera się w pewnym stopniu na wysokiej jakości, precyzyjnie wykonanych komponentach - a my możemy wykorzystać technologię, aby usprawnić proces ich wytwarzania.

Komponenty te są wytwarzane na frezarkach (takich jak maszyny CNC) i są wykorzystywane w produktach, których używamy i konsumujemy - od zegarków, przez laptopy i telefony, po samochody, turbiny i samoloty - lub w formach, które są wykorzystywane do tworzenia aparatury do innych procesów przemysłowych, takich jak tworzywa sztuczne i opakowania.

Są więc wszędzie: w rzeczywistości każdego roku produkuje się komponenty o wartości blisko 1 biliona dolarów. Jednak ich produkcja nie jest tak prosta, jak użycie drukarki 3D. Zamiast tego, maszyny muszą zostać poinformowane, jak wykonać każdą część, w procesie zwanym komputerowym wspomaganiem produkcji (CAM). A do tego potrzebny jest wykwalifikowany człowiek, który zaprogramuje maszynę.

Zaangażowanie czynnika ludzkiego powoduje zmienność. Programowanie maszyn CNC wymaga szkolenia i specjalistycznej wiedzy, a nie ma zbyt wielu osób, które potrafią to robić (a luka w umiejętnościach rośnie wraz ze wzrostem popytu na komponenty i liczbą osób wchodzących do branży w tyle za liczbą osób odchodzących na emeryturę).

Jest jeszcze mniej ekspertów, a poziom umiejętności ma znaczenie. Istnieje nieskończona liczba potencjalnych sposobów na stworzenie dowolnego komponentu, a nowy programista jest znacznie bardziej skłonny do bycia mniej wydajnym i bardziej marnotrawnym niż bardzo utalentowany.

Dzięki naszym rozwiązaniom chcemy zautomatyzować jak największą część tego procesu, pomagając osobom z mniejszym doświadczeniem programować tak szybko i optymalnie, jak najlepsi programiści CAM - odkrywając na nowo proces produkcyjny dla wszystkich.

Wyzwanie 1: Nieskończoność

Jednak słowo "nieskończony": to właśnie w nim tkwi większość problemu. Jeśli pomyślimy o procesie programowania sposobu produkcji pojedynczego komponentu, potencjalna przestrzeń rozwiązań jest bardzo duża.

To nie jest jak druk 3D, w którym masz jedno narzędzie i możesz opracować najlepszy sposób pracy warstwa po warstwie - w przypadku maszyny CNC istnieje wiele narzędzi (o różnych rozmiarach i typach), które mogą być używane do osiągnięcia określonych rezultatów, a wszystkie z nich mogą być stosowane pod różnymi kątami, głębokościami lub prędkościami oraz w dowolnej kolejności.

Tak więc liczba rozwiązań jest w efekcie wykładniczo duża, co stwarza ogromne problemy z obliczeniowego punktu widzenia. Mówiąc prościej, rozważenie ich wszystkich w celu ustalenia najlepszej ścieżki naprzód wymaga od komputera pomnożenia prawie nieskończoności przez prawie nieskończoność, wiele razy (złożoność kombinatoryczna!) - co zajmuje o wiele za dużo czasu, aby uzyskać wyniki, które mogą być przydatne dla kogokolwiek.

Wyzwanie polega zatem na tym, aby skala problemu była wykonalna. Nie zdradzając zbyt wiele z naszego "sekretnego sosu", jednym z elementów procesu CloudNC jest zmniejszenie skali problemu: na przykład poprzez odrzucenie niemożliwych lub bardzo trudnych ścieżek narzędzi, przy jednoczesnym upewnieniu się, że optymalne rozwiązania zostaną zachowane.

W rezultacie nasze algorytmy są w stanie zlokalizować potencjalnie najlepsze sposoby działania, bez konieczności rozważania wszystkich możliwych rozwiązań, co oznacza, że możemy dostarczać wyniki w ciągu kilku sekund, a nie lat.

Wyzwanie 2: Fizyka

OK, więc możemy poradzić sobie z potencjalnie nieskończoną liczbą sposobów tworzenia tych komponentów. Inny problem polega jednak na tym, że jest to złożone środowisko fizyczne, z - dosłownie - wieloma ruchomymi częściami.

Podczas obróbki elementu materiały bardzo się nagrzewają. Rozszerzają się i kurczą. Frezarki muszą odcinać wióry od metalowych bloków, a jeśli wióry są zbyt grube, narzędzie pęka, lub jeśli są zbyt cienkie, powierzchnia metalu rozszczepia się. Narzędzia ulegają uszkodzeniu i zużyciu. Cały zespół wibruje.

Połączenie tych fizycznych ograniczeń z wykładniczą liczbą rozwiązań podnosi poziom trudności rozwiązania wyzwania produkcji precyzyjnej z "trudnego" do "koszmarnego".

Nie wystarczy znaleźć rozwiązanie, które wykorzystuje najszybszą i najbardziej wydajną ścieżkę narzędzia. Zamiast tego, droga naprzód musi również uwzględniać wiele różnych fizycznych aspektów używanych narzędzi i surowców, a jedna błędna kalkulacja może zrujnować setki tysięcy dolarów drogich maszyn.

Na czym więc polega kod? Cóż, znowu chodzi o to, by problem był wykonalny. Realistycznie rzecz biorąc, nie jesteśmy w stanie zrozumieć integracji każdego elementu fizycznego z każdym możliwym sposobem obróbki komponentu. Możemy jednak wygenerować i ocenić najbardziej optymalne i dopasować je do zrozumienia najbardziej powszechnych, regularnie używanych i stosowanych technik oraz upewnić się, że nasze rozwiązania uwzględniają je już dziś.

W rezultacie nasze rozwiązania można już zastosować do większości wyzwań związanych z obróbką CNC, a my cały czas ulepszamy i dopracowujemy sposób ich działania. W rezultacie możemy przyspieszyć proces programowania produkcji stosunkowo złożonego komponentu w maszynie CNC z godzin (lub nawet dni) do sekund.

Optymalna ścieżka

Oczywiście powyższy opis naszych rozwiązań jest mało szczegółowy, czego można się spodziewać po krótkim eseju podsumowującym ponad 8 lat pracy i ponad milion linii kodu (i wciąż rośnie). Nie chcę też zdradzać szczegółów: sposób działania naszych algorytmów jest zastrzeżony dla CloudNC - poświęciliśmy wiele czasu i wysiłku na ich stworzenie!

Ta dyskrecja nie oddaje zatem tego, co musieliśmy zbudować: na przykład złożonych algorytmów przyspieszających i dopracowujących złożone aspekty geometrii obliczeniowej, łączących ze sobą obróbkę różnych kształtów i aspektów oraz generujących wyniki w ramach czasowych, które stanowią wartość dodaną dla użytkowników.

Ponadto, nie podkreśla on wystarczająco ścisłych parametrów, w ramach których działamy. Dosłownie tworzymy rozwiązania w zakresie obróbki skrawaniem, które są wykorzystywane do tworzenia części do myśliwców i elektrowni jądrowych - co oznacza, że muszą być dokładne. Nie ma marginesu błędu.

Dlatego nie spieszyliśmy się z przygotowaniem CAM Assist - było wiele do rozwiązania. I nie jesteśmy szczególnie blisko końca tej podróży: nasza wizja wprowadzenia na świat produkcji za pomocą jednego kliknięcia pozostanie jeszcze przez jakiś czas odległa - wciąż pokonujemy wcześniej trudny do rozwiązania problem!

Dokonujemy jednak ogromnych postępów w tej dziedzinie, a to, co do tej pory udało nam się osiągnąć, stanowi znaczną część całego problemu. Umożliwiamy przyspieszenie programowania maszyn CNC, dzięki czemu możemy tworzyć komponenty szybciej i szybciej, umożliwiając innowacje i pomagając wypełnić lukę w umiejętnościach w produkcji.

To właśnie osiągnęliśmy do tej pory - i nie mogę się doczekać, aby zobaczyć efekty.

(PS: chcesz pomóc nam rozwiązać te problemy? Sprawdź nasze otwarte stanowiska w zakładce Kariera).