Wykop.pl Wykop.pl
  • Główna
  • Wykopalisko197
  • Hity
  • Mikroblog
  • Zaloguj się
  • Zarejestruj się
Zaloguj się

Popularne tagi

  • #ciekawostki
  • #informacje
  • #technologia
  • #polska
  • #swiat
  • #motoryzacja
  • #podroze
  • #heheszki
  • #sport

Wykop

  • Ranking
  • Osiągnięcia
  • FAQ
  • O nas
  • Kontakt
  • Reklama
  • Regulamin

495

Programowanie obrabiarek CNC cz.1

Programowanie obrabiarek CNC cz.1

Porównanie programowania frezarek CNC metodami CAM oraz manualnego programowania w edytorze tekstu. Część 1 ponieważ będzie to dużo materiału, a nie chciałbym wrzucać książki.

G.....r
G.....r
konto usunięte
z
wykop.pl
dodany: 20.07.2019, 17:36:38
  • #
    technologia
  • #
    zainteresowania
  • #
    ciekawostki
  • #
    informatyka
  • #
    cnc
  • #
    pracafrezerazrobizemniemilionera
  • 68
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

   To już trzeci mój wpis w tematyce cnc. Jestem pod wrażeniem tego, jakim zainteresowaniem cieszyły się poprzednie wpisy, dlatego zamierzam kontynuować tą zabawę i tym razem omówię temat programowania cnc. Nie przedłużając więcej zapraszam do lektury.


   Znane są mi dwa sposoby programowania obrabiarek CNC. Pierwszy ręczne pisanie kodu oraz drugi programowanie w CAMie. Oba sposoby mają swoje wady i zalety, które omówię poniżej. Program jest to zestaw instrukcji w języku G-code  interpretowanym i wykonywanym przez maszynę CNC.

   CAM jest rodzajem oprogramowania z graficznym interfejsem użytkownika, w którym renderowany jest dwu lub trójwymiarowy model detalu. Programowanie przy pomocy CAM polega na wybieraniu cykli będących poszczególnymi etapami obróbki(frezowanie, wiercenie itp.) i przypisywanie im odpowiednich ścieżek narzędzi odpowiadających modelowi 3D. Następnie postprocesor zajmuje się resztą tłumacząc naszą pracę na język maszyny CNC. Mimo tego użytkownik wciąż musi posiadać wiedzę na temat obróbki materiałów i technologii produkcji, aby móc efektywnie i bezpiecznie wykorzystać możliwości obrabiarki.

595839776151494642425578_mwjzQ6bdJ8P0jUAesdI5963LkVP3AJJ5.jpg

Proces tworzenia programu przy użyciu CAM.


   Niewątpliwą zaletą oprogramowania CAM jest znaczne skrócenie i ułatwienie programowania maszyn CNC, zwłaszcza przy bardziej skomplikowanych detalach o nieregularnych kształtach itp. Użytkownik nie musi szczegółowo znać kodu programowanej obrabiarki, a dzięki trójwymiarowej wizualizacji nie musi również wysilać swojej wyobraźni. Niestety kod wygenerowany tą metodą bywa trudny do odczytania, a wprowadzanie ewentualnych korekcji z poziomu maszyny czy zwykłego edytora tekstu zakrawają o masochizm. Również koszt licencji na tego typu oprogramowanie może mocno obciążyć budżet mniejszych przedsiębiorców.

Przykładowy filmik przedstawiający symulację pracy obrabiarki CNC w programie typu CAM.


   Tańszą metodą(czy na pewno?) jest pisanie kodu ręcznie. Nie wymaga ona
żadnego oprogramowania, a w wielu przypadkach nawet komputera, ponieważ większość maszyn posiada własne edytory. Nie będę się za bardzo zagłębiać w języki programowania, bo jest to temat rozległy jak wody dniepru, ale jeśli kogoś interesują takie szczegóły to odsyłam do lektury podręczników będących równocześnie manualami do popularnych obrabiarek (uwaga na pakiety danych! Duże pliki PDF) Haas , Heidenhain, Sinumerik. Przedstawię natomiast na przykładzie obrabiarek Haas ogólną strukturę programu oraz kilka sposobów, dzięki którym program będzie znacznie krótszy(będzie zawierać mniej instrukcji) i łatwiejszy w wprowadzaniu zmian od programu wygenerowanego w CAMie. Zważywszy na ograniczone zasoby pamięci w maszynach CNC redukcja objętości programów jest przydatną umiejętnością.

   Poza samą nazwą programu, czy oznaczeniem jego rozpoczęcia i zakończenia w edytorze tekstu symbolem %, na samym początku każdy program powinien zawierać podstawowe instrukcje, deklaracje, informujące maszynę o wybranym układzie współrzędnych roboczych, wybranym układzie jednostek na międzynarodowy lub imperialny(metry/cale, nie dotyczy Haas’a), anulowanie wszystkich cykli, kompensacji długości i promienia narzędzi, oraz reset z położenia inkrementalnego na absolutne w układzie współrzędnych.
   Wybrany układ współrzędnych roboczych odnosi się do rzeczywistych punktów zerowych w osiach XYZ układu kartezjańskiego prostokątnego, oraz osi obrotowych maszyny ABC. Do wyboru układu współrzędnych służą funkcje “G54 - G59” odnoszące się do zapisanych w tabeli kordynatów punktów bazowych.

595839776151494642425578_aOxeek3XjYlP47OeKYZ6ZWArGM8MUh9Z.jpg

Osie układu współrzędnych w maszynie CNC.


   Najprościej mówiąc przestrzeń robocza maszyny jest opisana przy pomocy trzech osi układu współrzędnych(jak w Minekrafcie), w której operator umieszcza detal, a następnie przy pomocy sondy pomiarowej(mechanicznej lub cyfrowej) informuje obrabiarkę o jego położeniu, wyznaczając tym sposobem punkty zerowe układu współrzędnych i przypisując je funkcjom G54-G59

595839776151494642425578_WUpAJZ7CwPIs6WWjLoOMO1bmiBgFzqRk.jpg

Mechaniczna sonda pomiarowa. Występuje również w wersjach zdigitalizowanych umożliwiających zautomatyzowanie procesu wyznaczania punktów bazowych.


   Później na podstawie tych punktów opisywane są instrukcje obróbki, miejsca w których maszyna wykonuje kolejne cykle i operacje, dlatego najwygodniej jest dobrać je tak, żeby odpowiadały informacjom zawartym w rysunku technicznym. Dla przykładu, jeśli wszystkie otwory są zwymiarowane od lewej i “tylnej” krawędzi detalu, to najbardziej rozsądnym miejscem dla wyznaczenia bazy jest lewa i tylna krawędź obrabianego materiału, tak aby w trakcie programowania nie wykonywać niepotrzebnych obliczeń związanych z geometrią.
   Następnie przy pomocy kodów G40 i G49 należy wyzerować kompensacje narzędzi, która była używana w poprzednich programach. Kompensacja to nic innego, jak odsunięcie w osi o długość lub promień narzędzia. Są to parametry pobierane z tabeli narzędzi dotyczące wymiarów danego narzędzia. Jeśli nie wyzerujemy tych parametrów maszyna może zachować się w nieoczekiwany i nieprzewidywalny dla nas sposób, np przesunąć oś Z na wysokość, która znajduje się już pod stołem prowadząc tym samym do kolizji.
Zerowanie cykli również służy bezpieczeństwu i zapobieżeniu kolizji, a odbywa się przy wywołaniu funkcji G80. Cykle wykorzystywane w poprzednich programach mogły nie zostać anulowane, wówczas chcąc przesunąć narzędzie na np. koordynaty X-0 Y-0 maszyna może rozpocząć wykonywanie ostatniego cyklu w tych koordynatach.
   Ważnym również jest zadeklarowanie funkcją G90 pozycjonowania absolutnego. Pozycjonowanie absolutne oznacza, że maszyna będzie przemieszczać narzędzie do zadeklarowanych koordynatów XYZ, natomiast pozycjonowanie inkrementalne (G91) oznacza, że maszyna będzie przemieszczać narzędzie z aktualnego punktu o wartość XYZ. Czyli, jeśli X będzie równe 10, to maszyna przemieści narzędzie o 10 jednostek w prawo wzdłuż osi X(albo przesunie stół w lewo o tę samą wartość).
   Mając w ten sposób zadeklarowany wstęp w programie możemy przejść do programowania obróbki nie mając przy tym obaw, że jakieś demony przeszłości narobią nam niezłego bigosu w trakcie pracy.

W związku z tym, że temat programowania jest znacznie bardziej obszerny postanowiłem podzielić go na co najmniej dwa, a może nawet trzy wpisy, które będą dotyczyć programowania narzędzi oraz cykli obróbki i przedstawię kilka sposobów na skrócenie objętości kodu.
Zapraszam również do zapoznania się z poprzednimi artykułami.

https://www.wykop.pl/link/5046...
https://www.wykop.pl/link/5048...


Pisząc ten i poprzednie artykuły posiłkowałem się następującymi tekstami:
   1. Obsługa i programowanie obrabiarek CNC. Podręcznik operatora autorstwa Witolda Harbata,
   2. Wikipedią CAM, CNC, G-Code.
   3. Portal wiedzy CNC.
   4. Instrukcja obsługi operatora frezarki Haas

Treści powiązane (1)

Poradniki od Haas na YT
konto usunięte
z wykop.pl
  • 0

Komentarze (68)

najlepsze

G.....r
G.....r
konto usunięte
Autor
20.07.2019, 18:50:50
  • 92
A czy @Ksenia654 dostanie plusa? Pomogła mi w redagowaniu tekstu (sprawdziła orty) xD
  • 8
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych odpowiedziach

Ksenia654
Ksenia654
21.07.2019, 10:49:58
  • 183
@Gviazdor: pisze cos xDD
  • Odpowiedz
Ksenia654
Ksenia654
21.07.2019, 11:07:36
  • 32
@Gviazdor: Na fryzjera zbieram :)
  • Odpowiedz
dziki_pl
dziki_pl
dziki_pl
21.07.2019, 10:50:32
  • 27
Ponieważ pracuję na cnc to rozwinę trochę jak ja to widzę. Najbardziej to widoczne jest na tokarkach. Programować można na trzy podstawowe sposoby:
- przez sterownik metodami graficznymi, najlepsze dla tokarzy z doświadczeniem ale trochę za starych na naukę programowania. Tokarz podaje maszynie kroki przez kreatory, np zbierz 10mm materiału na długości 100mm po 1mm na przebieg, prędkość posuwu x, obroty wrzeciona i.
- przez zwykły G code - G code podobne jest trochę
  • 14
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych odpowiedziach

dziki_pl
dziki_pl
dziki_pl
21.07.2019, 11:14:07
  • 2
@Gviazdor: Programowanie kreatorami jest super dla starszych operatorów. Znam takich co się przesiadali na CNC i to było optymalne. Mieli bardzo duże doświadczenie na tokarkach manualnych i warto tą wiedzę wykorzystać. Takie kreatory są dla nich jasne, G-Code nie widzą bo nie muszą. Mają symulację całości. Niektórych to trzeba do noży "składaków" przekonać ( ͡° ͜ʖ ͡°)

@LabGuy: same operacje różnią się od siebie
  • Odpowiedz
dziki_pl
dziki_pl
dziki_pl
21.07.2019, 14:36:44 via Android
  • 1
@PaulSeba po co moveBy jak to jeden kod g01? Warto poczytać o makrach w gcode, można parametryzować kod. Bardzo wygodne.
  • Odpowiedz
retzev
retzev
21.07.2019, 11:26:58 via Wykop Mobilny (Android)
  • 5
Warto dodac, że przy rozpoczęciu programowania recznego należy wpisać kody dla płaszczyzny obrabianej, czyli G17 (plaszczyzna XY) dla frezowania lub G18 dla toczenia (plaszczyzna XZ). Wartości te powinny byc ustawione fabrycznie, ale dobra praktyka nakazuje uwzględnić to w tzw. linii bezpieczeństwa.
  • 1
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych odpowiedziach

G.....r
G.....r
konto usunięte
Autor
21.07.2019, 14:30:33
  • 1
@retzev: ważna uwaga. Nie korzystalem z tego nigdy.
  • Odpowiedz
mielonkazdzika
mielonkazdzika
20.07.2019, 21:03:10
  • 5
Bardzo dobra robota
  • 1
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych odpowiedziach

G.....r
G.....r
konto usunięte
Autor
20.07.2019, 21:20:00
  • 11
@mielonkazdzika: Coraz więcej czasu zajmuje mi przygotowanie tych artykułów. Pierwszy był strzelony z palca jeszcze, drugi już lekki research, a do tego już nawet książkę sobie kupiłem xD
  • Odpowiedz
Naluzie
Naluzie
21.07.2019, 11:41:33 via Android
  • 2
Trzecim sposobem programowania. Jest programowanie dialogowe
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych odpowiedziach

Zetek
Zetek
Zetek
21.07.2019, 15:12:22
  • 1
Gdyby ktoś był zainteresowany bazowaniem (definiowaniem punktu zerowego) różnymi rodzajami to na kanale Haasa na yt dość dobrze to pokazali. https://www.youtube.com/watch?v=kvkO_If3UVg
W artykule na zdjęciu jest sonda 3D
  • 1
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych odpowiedziach

InnyWymiar90
InnyWymiar90
21.07.2019, 15:30:52
  • 0

Komentarz usunięty przez moderatora

KrKOP
KrKOP
KrKOP
21.07.2019, 11:46:25
  • 1
Czekam z niecierpliwością na dalsze części, mnie interesuje w danej chwili programowanie z palca frezarek, w tym jak korzystać z cykli maszyny, z których chciałbym zacząć korzystać. Niestety w haasie jest z nimi tragedia z tego co zauważyłem nie da się z nich korzystać tak wygodnie jak np. w heidenhainie gdzie jest to dużo prostrze.

Chodzi mi o bazowanie wykonywanej operacji. Niejednokrotnie widzialem potrzebe by z nich skorzystać na już zbazowanym detalu
  • 11
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych odpowiedziach

KrKOP
KrKOP
KrKOP
23.07.2019, 21:27:29
  • 0
@Gviazdor: Dziekuję, czekam z niecierpliwością na kolejne wpisy.
  • Odpowiedz
KrKOP
KrKOP
KrKOP
29.07.2019, 13:15:04
  • 0
@KrKOP: Jak tam postępy nad kolejnym wpisem? Ostatnio z braku roboty bawiłem sie cyklami vqc, w sumie nie taki diabeł straszny, choć do wygody im daleko. Najbardziej denerwującą rzeczą jest to, że rozne cykle wymagają różnych baz i nie można tego w łatwy sposób zmienic. Planowanie górny prawy narożnik, objazd detalu środek itd. Jest jakiś odpowiednik cyklu zdaje się 7(z hh... Przesuniecie współrzędnych bazowych w programie bez zmiany bazy w
  • Odpowiedz
Naluzie
Naluzie
21.07.2019, 10:33:08 via Android
  • 1
Napisz coś o programowaniu macro
  • 3
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych odpowiedziach

lutecki
lutecki
21.07.2019, 10:47:53
  • 1
@Naluzie: ja napisałem swój „program” w vbs do zmiany narzędzia i pozycjonowania rogu dla Macha3. Jeśli chcecie to mogę udostępnić go wszystkim, łącznie z kształtem narzędzia do pozycjonowania.
  • Odpowiedz
dziki_pl
dziki_pl
dziki_pl
21.07.2019, 11:01:49
  • 1
@lutecki: pewnie chodziło o macro w G-code, ale dawaj. Używam Mach3 i chętnie się zapoznam :)
  • Odpowiedz
a.....5
a.....5
konto usunięte 21.07.2019, 09:39:16 via Android
  • 1
Fajne. Dobra robota
  • 1
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych odpowiedziach

G.....r
G.....r
konto usunięte
Autor
21.07.2019, 20:03:35
  • 0
@axelus25: dzięki
  • Odpowiedz
G.....r
G.....r
konto usunięte
Autor
24.07.2019, 03:13:10
  • 0
@Bele2000: może podrecznik - instrukcje do tego. Ja tak się uczyłem. Plus programy z cama. Ale ja się uczyłem przy maszynie a nie w domu. Najlepiej jakbyś wziął sobie jakiś rysunek I próbował go na.program przenieść.
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych odpowiedziach

  • <
  • 1
  • 2
  • Strona 1 z 2
  • >

Hity

tygodnia

"Nie doprowadzilem do tej tragedii" Majtczak
"Nie doprowadzilem do tej tragedii" Majtczak
4027
Skandaliczny materiał TVN o nieruchomościach. Podstawiona pracownica dewelopera
Skandaliczny materiał TVN o nieruchomościach. Podstawiona pracownica dewelopera
3716
Na kole zapasowym nie ma śladów. Linia obrony Sebastiana M. upadnie?
Na kole zapasowym nie ma śladów. Linia obrony Sebastiana M. upadnie?
2539
Włączasz telewizor i reklama. Użytkownicy Hisense wściekli na nową funkcję
Włączasz telewizor i reklama. Użytkownicy Hisense wściekli na nową funkcję
2486
Skandal w Słupcy: Wyrysowali działkę pod hotelarza, by ominąć przetarg?
Skandal w Słupcy: Wyrysowali działkę pod hotelarza, by ominąć przetarg?
2360
Pokaż więcej

Powiązane tagi

  • #ciekawostki
  • #nauka
  • #komputery
  • #zainteresowania
  • #stacjakosmiczna
  • #wydarzenia
  • #polska
  • #informatyka
  • #sztucznainteligencja
  • #internet
  • #swiat
  • #rozrywka
  • #ai
  • #motoryzacja
  • #telefony

Wykop © 2005-2026

  • O nas
  • Reklama
  • FAQ
  • Kontakt
  • Regulamin
  • Polityka prywatności i cookies
  • Hity
  • Ranking
  • Osiągnięcia
  • Changelog
  • więcej

RSS

  • Wykopane
  • Wykopalisko
  • Komentowane
  • Ustawienia prywatności

Regulamin

Reklama

Kontakt

O nas

FAQ

Osiągnięcia

Ranking