ZACHODNIOPOMORSKI UNIWERSYTET TECHNOLOGICZNY W SZCZECINIE WYDZIAŁ INŻYNIERII MECHANICZNEJ I MECHATRONIKI Projektowanie technologii maszyn w systemach CAD/CAM Projektowanie krzywych typu spline i ich programowanie na różnych układach sterowania numerycznego Michał Czechowicz & Grzegorz Mądry M2-L13
Wstęp teoretyczny Splajn (ang. Spline)- jest to tak zwana funkcja sklejana stopnia s. Oznacza to, że splajnem będziemy nazywali dowolną funkcję S określoną na przedziale [a,b] spełniającą warunki: w każdym przedziale [ti,ti+1], gdzie a=t0<t1<..<tm=b, S jest wielomianem stopnia co najwyżej s. S oraz jej pochodne rzędu 1,2..,s-1 są ciągłe dla wszystkich argumentów x z przedziału [a,b]. W przeszłości kreślarz wykorzystywał kaczki oraz paski drewna aby narysować krzywą. Krzywe te miały ciągłość drugiego stopnia oraz przechodziły przez stopnie/punkty kontrolne.
Wstęp teoretyczny Splajn możemy przedstawić za pomocą zbioru punktów. Reprezentacja krzywej nie będzie wówczas oddawała dokładnie gładkiej krzywej (poprzez wykorzystanie odcinków liniowych). Należy nadmienić również iż sam proces kreowania „wielolini” – polilini jest uciążliwy i monotonny Dokładniejszą metodą jest przedstawienie splanuj jako odcinków wielomianów.
Wstęp teoretyczny Mówiąc o splajnach należy zwrócić uwagę na pewne terminy: Punkty kontrolne- zbiór punktów, które decydują o kształcie krzywej – mają one wpływ na kreowanie kształtu krzywej. Węzły- punkty kontrolne na krzywej. Interpolacja- dopasowanie krzywej do punktów kontrolnych. (krzywa przechodzi przez punkty kontrolne) Aproksymacja- punkty kontrolne jedynie „ sterują” kształtem krzywej. kropki – punkty kontrolne Kwadraty – węzły
Na rysunku przedstawiono przykład splajnu typu B Wstęp teoretyczny Na rysunku przedstawiono przykład splajnu typu B
Wstęp teoretyczny Podział splajnów: A-spline – tworzy krzywą przechodzącą przez zaprogramowane punkty pomocniczne (wielomian trzeciego stopnia) B-spline – Zaprogramowane punkty nie są punktami pomocniczymui, lecz tylko punktami kontrolnymi. Powstała krzywa przechodiz w pobliżu powstałych punktów (wielomian 1, 2 lub 3 stopnia). C-spline – Jest najbardziej znaną i rozpoznawaną interpolacją spline’u. Przebieg krzywej przez punkty przechodzi po stycznej bądź w sposób łukowy po zadanych punktach.
Wstęp teoretyczny Matematyczne przedstawienie splajnu – krzywa B-sklejana Krzywa B-sklejana (ang. B-spline) jest jedną z najczęściej stosowanych reprezentacji parametrycznych krzywych sklejanych. Angielska nazwa spline (postulowana nazwa polska to splajn, lub łącznica) wzięła się z gwary kreślarzy i odnosiła do długiej elastycznej metalowej taśmy, której używano do rysowania samolotów, samochodów, statków itp. Zawieszając odpowiednio dobrane obciążniki można było uzyskać krzywą o ciągłości geometrycznej drugiego rodzaju. Odpowiednikiem matematycznym spline jest krzywa B-sklejana trzeciego stopnia. Angielska nazwa krzywych B-sklejanych – B-spline jest skrótem od basis spline function, co znaczy "funkcja bazowa splajnów".
Wstęp teoretyczny Krzywa B-sklejana Na rysunku poniżej przedstawiono krzywą B-sklejaną. Na przedstawionym rysunku zaznaczono również węzły (kropki koloru czarnego) Wstęp teoretyczny
Przedstawiony splajn wraz z punktami dopasowania Do stworzenia Splajnu wykorzystanu program AutoCAD Własny przykład splajnu Przedstawiony splajn wraz z punktami dopasowania I ich współrzędnymi 1
Własny przykład splajnu Tworzenie polilini – zabieg przekształcenia splajnu mający Na celu zaprogramowanie obrabiarki bez implementacji typu splajn ( implementacja liniowo kołowa) Splajn przekonwertowana na polilinię przy użyciu dokładności rzędu „2” w programie AutoCAD
Własny przykład splajnu Stowrzenie listy punktów charakterystycznych dla polilini: Własny przykład splajnu LWPOLYLINE Warstwa: "0" Obszar: Obszar modelu Identyfikator = 202 Otwarta Stała grubość 0.0000 obszar 80.6809 długość 176.9240 od punktu X= 17.9976 Y= 11.1614 Z= 0.0000 od punktu X= 12.4007 Y= 21.2358 Z= 0.0000 od punktu X= 10.7362 Y= 26.2331 Z= 0.0000 od punktu X= 10.4326 Y= 31.1827 Z= 0.0000 od punktu X= 11.5428 Y= 35.2513 Z= 0.0000 od punktu X= 15.4133 Y= 40.7921 Z= 0.0000 od punktu X= 25.7357 Y= 48.5389 Z= 0.0000 od punktu X= 31.1692 Y= 50.9092 Z= 0.0000 od punktu X= 35.8389 Y= 51.8422 Z= 0.0000
Własny przykład splajnu Stowrzenie listy punktów charakterystycznych dla polilini c.d.: Własny przykład splajnu od punktu X= 38.9531 Y= 51.0766 Z= 0.0000 od punktu X= 40.3000 Y= 48.2393 Z= 0.0000 od punktu X= 40.0676 Y= 43.8773 Z= 0.0000 od punktu X= 38.9745 Y= 38.3969 Z= 0.0000 o od punktu X= 36.7507 Y= 25.9660 Z= 0.0000 od punktu X= 36.8922 Y= 19.9579 Z= 0.0000 od punktu X= 38.9531 Y= 14.3477 Z= 0.0000 od punktu X= 42.6959 Y= 10.6412 Z= 0.0000 od punktu X= 48.4479 Y= 7.7704 Z= 0.0000 od punktu X= 62.6826 Y= 5.3339 Z= 0.0000 od punktu X= 76.2392 Y= 6.7917 Z= 0.0000 od punktu X= 81.1438 Y= 8.7886 Z= 0.0000 od punktu X= 83.9355 Y= 11.5283 Z= 0.0000 od punktu X= 84.1736 Y= 14.3477 Z= 0.0000 od punktu X= 81.1611 Y= 18.9045 Z= 0.0000 od punktu X= 72.5860 Y= 27.8926 Z= 0.0000 od punktu X= 69.9218 Y= 32.5718 Z= 0.0000 od punktu X= 70.4094 Y= 37.1493 Z= 0.0000
Osiągnięcie splajnu na obrabiarce posiadającą implementację liniowo kołową, jest możliwe przez realizację przez maszynę polilini: Pseudo algorytm Interpolacja liniowa między punktami: G1 X0.2 Y0.3 F100 T- wywołanie narzędzia G54- przesunięcie punktu zerowego G90- przesunięcie programowane absolutnie M03 – kierunek obrotów wrzeciona w prawo G71- ustawienie jednostek pomiarowych w mm G95- ustawienie posuwu F w mm/obr G1- interpolacja liniowa
Zapis programu sterującego N5 G90 S500 T1 D1 M03 N15 G54 G71 G95 G1 X=17.9976 Z=11.1614 F0.2 G1 X=12.4007 Z=21.2358 F0.5 G1 X=10.7362 Z=26.2331 F0.5 G1 X=10.4326 Z=31.1827 F0.5 G1 X=11.5428 Z=35.2513 F0.5 G1 X=15.4133 Z=40.7921 F0.5 G1 X=25.7357 Z=48.5389 F0.5 G1 X=31.1692 Z=50.9092 F0.5 G1 X=35.8389 Z=51.8422 F0.5 G1 X=38.9531 Z=51.0766 F0.5 G1 X=40.3000 Z=48.2393 F0.5 G1 X=40.0676 Z=43.8773 F0.5 G1 X=38.9745 Z=38.3969 F0.5 G1 X=36.7507 Z=25.9660 F0.5 G1 X=36.8922 Z=19.9579 F0.5 G1 X=38.9531 Z=14.3477 F0.5 G1 X=42.6959 Z=10.6412 F0.5 G1 X=48.4479 Z=7.7704 F0.5 G1 X=62.6826 Z=5.3339 F0.5 G1 X=76.2392 Z=6.7917 F0.5 G1 X=81.1438 Z=8.7886 F0.5 G1 X=83.9355 Z=11.5283 F0.5 G1 X=84.1736 Z=14.3477 F0.5 G1 X=81.1611 Z=18.9045 F0.5 G1 X=72.5860 Z=27.8926 F0.5 G1 X=69.9218 Z=32.5718 F0.5 G1 X=70.4094 Z=37.1493 F0.5 N200 M30
SINUMERIK 840D sl i 828D Dla najbardziej zaawansowanych technologii wytwarzania form, matryc i skomplikowanych elementów przestrzennych, realizowanych w technologii 5-osiowej, firma Siemens opracowała pakiet technologiczny MDynamics. Oprogramowanie SINUMERIK 840D sl i 828D zawierające ten pakiet posiadają interpolacja funkcjami Spline dla powierzchni krzywoliniowych, dzięki czemu omija się proces zamiany Splinów na polilinie w programach CAD.
Krzywe typu Spline a SINUMERIK Ponieważ obecnie stawia się coraz większy nacisk na dokładność powierzchni opartych na krzywych typu Spline powstają specjalne systemy programowania obrabiarek CNC takie jak NX CAM Komunikacja SINUMERIKA z NX CAM – to obsługa bez konwersji danych dla krzywych typu Spline, zapewnia szybszy start obrabiarki CNC, dużo większą jakość powierzchni dla szybkich obróbek oraz lepszy wynik niż wygładzanie i upłynnianie przez NC.
Krzywe typu Spline a HEIDENHAIN Również inne układy sterowania takie jak: HEIDENHAIN iTNC530 lub GE GE-Fanuc posiadają interpolację typu Spline. Kod GE-Fanuc realizujący krzywą NURBS Przykładowy kod zawierający krzywą stworzoną przy pomocy polecenia Spline w oprogramowaniu HAIDENHAIN przedstawiono na kolejnym slajdzie.
Przykładowy kod programu Przykładowy kod programu sterującego dla sterowania typu Heidenhain iTNC530 realizujący krzywą typu Spline: 3 TOOL CALL 1 Z S4500 - wywołanie narzędzia, 12 L X0 Y0 Z0 F1000 - ustalenie posuwu SPL X100 Y100 Z-0.5 - końcowa pozycja Splinu K3X0.0 K2X0.0 K1X-100.0 - punkty kontrolne K3Y0.0 K2Y100.0 K1Y-200.0 K3Z0.0 K2Z0.0 K1Z0.0 W Heidenhain iTNC530 Spline oparta jest na wielomianach 3 stopnia.
Symulacja kodu Symulacja kodu zawierającego krzywą typu Spline w programie NC Program
Spliny - ciągły rozwój W AutoCad 2011 nowe opcje splajnów zwiększają elastyczność i zapewniają większą kontrolę. Pozwalają na łatwe dodawanie i usuwanie wierzchołków, edytowanie punktów dopasowania lub wierzchołków sterujących i punktów nieciągłości, a nawet określanie stopnia dopasowania splajnu do krzywej