Wczytywanie podprogramu - SinuTrain

Dyskusje na temat systemu Sinumerik

Autor tematu
piotrmax
Sympatyk forum poziom 1 (min. 40)
Sympatyk forum poziom 1 (min. 40)
Posty w temacie: 4
Posty: 49
Rejestracja: 15 maja 2012, 15:33
Lokalizacja: Mazowieckie

Wczytywanie podprogramu - SinuTrain

#1

Post napisał: piotrmax » 01 lut 2015, 18:01

Witam taj jak w temacie mam problem z wczytywaniem podprogramu,
przykład


CYCLE62("KON2",0,,) - przywołanie konturu w taki sposób nie działa (wyskakuje kounikat, że podprogram nie istnieje)
CYCLE952("Z1",,"",2101311,0.1,0,0,1,0.1,0.1,0.1,0.1,0.1,0,1,0,0,,,,,2,2,,,0,1,,0,12,1100010,1,0,0.1)

Jeżeli skorzystam z komendy EXTCALL "KON2" wczyta mi kontur ale znowu cykl odpowiedzialny za obróbkę nie interpretuje tej komendy.

CALL "KON2" ;#SM;*RO* tak samo to też nie działa

Czy ktoś się z tym kiedyś spotkał i wie jak to uruchomić??


Dotyczy się to tylko opcji local drive

M30



Tagi:

Awatar użytkownika

djronin
Specjalista poziom 1 (min. 100)
Specjalista poziom 1 (min. 100)
Posty w temacie: 2
Posty: 262
Rejestracja: 22 kwie 2011, 01:19
Lokalizacja: Jarocin

#2

Post napisał: djronin » 02 lut 2015, 20:40

CYCLE62("KON1:KON2",0,,)

M30
KON1:
...
...
KON2:


ALBO ZOBACZ TAK (KONTUR W OSOBNYM PLIKU W KATALOGU PROGRAMU)

CYCLE62(_N_KON2_MPF,0,,)

LUB Z CIAPKAMI

CYCLE62("_N_KON2_MPF",0,,)

coś zadziała :razz:
...Programowanie ma to do siebie, że urzeczywistnienie nawet najbardziej
oczywistego pomysłu jest znakomitą definicją słowa "frustracja"...


Autor tematu
piotrmax
Sympatyk forum poziom 1 (min. 40)
Sympatyk forum poziom 1 (min. 40)
Posty w temacie: 4
Posty: 49
Rejestracja: 15 maja 2012, 15:33
Lokalizacja: Mazowieckie

#3

Post napisał: piotrmax » 06 lut 2015, 20:18

djronin pisze:CYCLE62("KON1:KON2",0,,)

M30
KON1:
...
...
KON2:


ALBO ZOBACZ TAK (KONTUR W OSOBNYM PLIKU W KATALOGU PROGRAMU)

CYCLE62(_N_KON2_MPF,0,,)

LUB Z CIAPKAMI

CYCLE62("_N_KON2_MPF",0,,)

coś zadziała :razz:

Witam, niestety podana procedura nie działa.
Przypuszczam, że coś jest nie tak z ścieżką dostępu do pliku, ponieważ, jeśli zapisze w NC, to wszystko działa poprawnie. Program główny zaczytuje informacje z podprogramu. Problem jest wtedy, gdy zapisana są dane w drugiej zakładce czyli local drive. Pozdrawiam

Awatar użytkownika

djronin
Specjalista poziom 1 (min. 100)
Specjalista poziom 1 (min. 100)
Posty w temacie: 2
Posty: 262
Rejestracja: 22 kwie 2011, 01:19
Lokalizacja: Jarocin

#4

Post napisał: djronin » 07 lut 2015, 03:40

piotrmax pisze:Przypuszczam, że coś jest nie tak z ścieżką dostępu do pliku, ponieważ, jeśli zapisze w NC, to wszystko działa poprawnie.
Chyba Cię źle zrozumiałem na początku albo nadal Cię nie rozumiem...
Rozmawiamy o konturze do obróbki w cyklu tak? Czyli kilka prostych, kilka łuków... no dajmy na to, że uzbiera nam się z 50 bloków opisujących kontur. Proszę Cię, wytłumacz mi bo najwidoczniej nie mieści mi się to w głowie, jaki sens ma wywołanie tak małego podprogramu z dysku poleceniem EXTCALL? cykle napisano po to aby uprościć pisanie programów i po to aby program obróbki zajmował mało miejsca i w całości mieścił się w pamięci nc.

Pozdrawiam!!
...Programowanie ma to do siebie, że urzeczywistnienie nawet najbardziej
oczywistego pomysłu jest znakomitą definicją słowa "frustracja"...

Awatar użytkownika

janale
Specjalista poziom 1 (min. 100)
Specjalista poziom 1 (min. 100)
Posty w temacie: 3
Posty: 101
Rejestracja: 25 lis 2004, 13:22
Lokalizacja: Bialystok

#5

Post napisał: janale » 12 lut 2015, 18:20

Witam,

I. Dotyczy wywoływania podprogramów:
a. Sterowanie szuka podprogramów w następujących kartotekach:
i. Aktualny katalog Katalog programu wywołującego (ale tylko w obszarzeNC)
ii. /_N_SPF_DIR / Globalny katalog podprogramów
iii. /_N_CUS_DIR / Cykle użytkownika
iv. /_N_CMA_DIR / Cykle producenta
v. /_N_CST_DIR / Cykle standardowe

b. Powyższe kartoteki znajdują się w obszarze DANE NC, pozostałe miejsca składowania programów są już poza tym obszarem. Zaliczamy do nich ( w przypadku sinutrain-a): dysk lokalny, dysk twardy systemowy, usb oraz podłączone urządzenia zewnętrzne. Dlatego też program, zapisany na dysku lokalnym czy usb nie znajdzie podprogramu, zapisanego nawet w tej samej kartotece.

c. Wywołanie podprogramu w programGuide (SINUTRAIN ver.4.5 ed. 2) następuje poprzez instrukcję: CALL "KON2" ;#SM;*RO*, wywołaną z obszaru funkcyjnego PROGRAM/Różne (Menu poziome H6)/Podprogram (Menu pionowe V6) . W przypadku, kiedy program główny jest zapisany w kartotece NC/Programy obróbki to warunkiem działania tej instrukcji jest umieszczenie podprogramu KON2.spf również w kartotece NC/Programy obróbki lub w kartotece NC/Podprogramy. Jest jeszcze możliwość zapisania programu głównego wraz z podprogramem w kartotece utworzonej w NC/Obrabiane programy np. NC/Obrabiane przedmioty/Program_test, w takim przypadku program główny poprawnie wywołuje podprogram.

d. Do wywołanie podprogramu z poza obszaru NC stosujemy instrukcję EXTCALL(„ścieżka:podprogram”) np. EXTCALL(LOCAL_DRIVE:KON2). Istnieje też dana ustawcza kanału SD42700 $SC_EXT_PROG_PATH do której możemy wpisać znaną ścieżkę do przeszukiwania zewnętrznych programów np.: $SC_EXT_PROG_PATH=”LOCAL_DRIVE:”, wówczas w programie głównym wystarczy zadeklarować wywołanie EXTCALL(„KON2”).

II. Dotyczy wywoływania konturów:
a. Jeżeli chodzi o wywołanie konturu, to deklarujemy jego wywołanie instrukcją CYCLE62("KON2",1,,) i tyle dla standardowych ustawień sinutraina. Wywołanie zawartości konturu, w przeciwieństwie do podprogramu, nie może być wykonane z zewnątrz programu, w którym obrabiany jest kontur w rozumieniu konturu tworzonego przez procesor konturu w sterowaniu.
b. Nie ma instrukcji CALL w odniesieniu do konturu, a tym samy nie jesteśmy w stanie przydzielić ścieżki dostępu do konturu. W parametrach cyklu 62 „KON2” definiowany jest zakres wykorzystania konturu poprzez etykiety lub numery bloków. Gdybyśmy nawet chcieli wpisać ścieżkę do parametru wywołania cyklu, np.: „LOCAL_DRIVE:KON2” to pole do wprowadzenia nazwy konturu nie pozwoli wpisać znaku „:”.
c. Kontur więc musi być zapisany w programie, który go wywołuje, a w przypadku programGuide powinien być zapisany za M30, ponieważ nie bierze czynnego udziału w sterowaniu ( w odróżnieniu do do Shop-ów jest widoczny w programie).

Pozdrawiam
Technologia CNC od 1979r.
Programowanie technologiczne
SINUMERIK Operate


Autor tematu
piotrmax
Sympatyk forum poziom 1 (min. 40)
Sympatyk forum poziom 1 (min. 40)
Posty w temacie: 4
Posty: 49
Rejestracja: 15 maja 2012, 15:33
Lokalizacja: Mazowieckie

#6

Post napisał: piotrmax » 15 lut 2015, 13:20

janale pisze:Witam,

I. Dotyczy wywoływania podprogramów:
a. Sterowanie szuka podprogramów w następujących kartotekach:
i. Aktualny katalog Katalog programu wywołującego (ale tylko w obszarzeNC)
ii. /_N_SPF_DIR / Globalny katalog podprogramów
iii. /_N_CUS_DIR / Cykle użytkownika
iv. /_N_CMA_DIR / Cykle producenta
v. /_N_CST_DIR / Cykle standardowe

b. Powyższe kartoteki znajdują się w obszarze DANE NC, pozostałe miejsca składowania programów są już poza tym obszarem. Zaliczamy do nich ( w przypadku sinutrain-a): dysk lokalny, dysk twardy systemowy, usb oraz podłączone urządzenia zewnętrzne. Dlatego też program, zapisany na dysku lokalnym czy usb nie znajdzie podprogramu, zapisanego nawet w tej samej kartotece.

c. Wywołanie podprogramu w programGuide (SINUTRAIN ver.4.5 ed. 2) następuje poprzez instrukcję: CALL "KON2" ;#SM;*RO*, wywołaną z obszaru funkcyjnego PROGRAM/Różne (Menu poziome H6)/Podprogram (Menu pionowe V6) . W przypadku, kiedy program główny jest zapisany w kartotece NC/Programy obróbki to warunkiem działania tej instrukcji jest umieszczenie podprogramu KON2.spf również w kartotece NC/Programy obróbki lub w kartotece NC/Podprogramy. Jest jeszcze możliwość zapisania programu głównego wraz z podprogramem w kartotece utworzonej w NC/Obrabiane programy np. NC/Obrabiane przedmioty/Program_test, w takim przypadku program główny poprawnie wywołuje podprogram.

d. Do wywołanie podprogramu z poza obszaru NC stosujemy instrukcję EXTCALL(„ścieżka:podprogram”) np. EXTCALL(LOCAL_DRIVE:KON2). Istnieje też dana ustawcza kanału SD42700 $SC_EXT_PROG_PATH do której możemy wpisać znaną ścieżkę do przeszukiwania zewnętrznych programów np.: $SC_EXT_PROG_PATH=”LOCAL_DRIVE:”, wówczas w programie głównym wystarczy zadeklarować wywołanie EXTCALL(„KON2”).

II. Dotyczy wywoływania konturów:
a. Jeżeli chodzi o wywołanie konturu, to deklarujemy jego wywołanie instrukcją CYCLE62("KON2",1,,) i tyle dla standardowych ustawień sinutraina. Wywołanie zawartości konturu, w przeciwieństwie do podprogramu, nie może być wykonane z zewnątrz programu, w którym obrabiany jest kontur w rozumieniu konturu tworzonego przez procesor konturu w sterowaniu.
b. Nie ma instrukcji CALL w odniesieniu do konturu, a tym samy nie jesteśmy w stanie przydzielić ścieżki dostępu do konturu. W parametrach cyklu 62 „KON2” definiowany jest zakres wykorzystania konturu poprzez etykiety lub numery bloków. Gdybyśmy nawet chcieli wpisać ścieżkę do parametru wywołania cyklu, np.: „LOCAL_DRIVE:KON2” to pole do wprowadzenia nazwy konturu nie pozwoli wpisać znaku „:”.
c. Kontur więc musi być zapisany w programie, który go wywołuje, a w przypadku programGuide powinien być zapisany za M30, ponieważ nie bierze czynnego udziału w sterowaniu ( w odróżnieniu do do Shop-ów jest widoczny w programie).

Pozdrawiam
Witam, dziękuję bardzo za szczegółową odpowiedź, powiem szczerze, że wydrukowałem sobie ją i dołączyłem do dokumentów związanych z programowanie S.

Ma jeszcze jedno pytanie a jak użyć tego cyklu:

Obrazek

Niestety jak wpiszę nazwę kontur to nie działa ta funkcja jak ją prawidłowo zastosować??

Awatar użytkownika

janale
Specjalista poziom 1 (min. 100)
Specjalista poziom 1 (min. 100)
Posty w temacie: 3
Posty: 101
Rejestracja: 25 lis 2004, 13:22
Lokalizacja: Bialystok

#7

Post napisał: janale » 16 lut 2015, 22:42

Witam,

Przycisk, który kolega wskazał na ekranie sinutrain-a to przycisk skrawania resztkowego pozostałego materiału po poprzednim przejściu. Aby zaistniała obróbka zbierania materiału resztkowego materiał ten musi być dostępny do skrawania. Powstaje on przeważnie z takiego powodu, że poprzednie narzędzie nie mogło zebrać całego konturu. System tworzy wówczas nowy kontur samodzielnie i w postaci podprogramów je obsługuje. Do tego są potrzebne te wszystkie nazwy, które podajemy w cyklu. Do skrawania resztkowego naturalnym jest to, że przeprowadzamy innym narzędziem, ponieważ poprzednie nie byłoby w stanie zdjąć tego, czego nie mogło zdjąć za pierwszym razem. To tyle tytułem wyjaśnienia, ten szablon programu nie przedstawia takiej sytuacji. Pisanie programów na skrawanie resztkowe w programGuide jest dość uciążliwe, ale można więcej zrobić niestandardowych obróbek. Skrawania resztkowego najlepiej się uczyć na ShopTurn-ie, tam praktycznie takie programy robi się z marszu, nie trzeba podawać i generować nazw do cyklu, ShopTurn robi to automatycznie, aczkolwiek z pewnymi ograniczeniami.
Poniżej screen z programu chodzącego, który prawdopodobnie kolega chciał uruchomić.

PozdrawiamObrazek
Technologia CNC od 1979r.
Programowanie technologiczne
SINUMERIK Operate


Autor tematu
piotrmax
Sympatyk forum poziom 1 (min. 40)
Sympatyk forum poziom 1 (min. 40)
Posty w temacie: 4
Posty: 49
Rejestracja: 15 maja 2012, 15:33
Lokalizacja: Mazowieckie

#8

Post napisał: piotrmax » 20 mar 2015, 15:19

janale,
Witam, mam takie pytanie jakie są różnice w używaniu w sinutrain symulatora obrabiarki z iso i bez iso dialect??

Pierwszą podstawową różnicą jest to co zauważyłem, że nie ma shopMill w ISO.

Jednak jak używam w symulatorze z ISO G290 to ma te same funkcje co w symulatorze bez ISO.

Więc gdzie to znajduje zastosowanie??

Awatar użytkownika

janale
Specjalista poziom 1 (min. 100)
Specjalista poziom 1 (min. 100)
Posty w temacie: 3
Posty: 101
Rejestracja: 25 lis 2004, 13:22
Lokalizacja: Bialystok

#9

Post napisał: janale » 20 mar 2015, 15:36

Witam,

o kodzie ISO można przeczytać w http://pl.wikipedia.org/wiki/G_code . Jeżeli chodzi o SINUMERIK-a (w tym też o SINUTRAIN-ie for SINUMERIK OPERATE, gdzie są załączone maszyny programowane w kodzie ISO https://www.industry.siemens.com/topics ... -ed-2.aspx ) to można wyróżnić następujące sposoby programowania:

1. Wspomniany tryb ISO (jest to oprogramowanie zgodne z normą ISO). Program w ISO może być przeczytany przez programGuide po wymianie znaczników komentarza "()" na ";". Programy w ISO nie będą interpretowane przez ShopTurn/Mill, ponieważ z racji swego składu nie wejdą do procesora leksykalnego shopów, natomiast mogą być zrozumiane jako wstawki do ShopTurn/Mill w programach startujących jako ShopTurn/Mill na podobnej zasadzie jak w programGuide. Dodatkowo możemy w ISO wykorzystać zasoby trybu SIEMENS (np: definicję przygotówki do symulacji) poprzez włączenie trybu SIEMENS w trybie ISO funkcją G290. Wyłączenie tego trybu i powrót do trybu ISO następuje po funkcji G291. Zastosowanie tego trybu jest w maszynach które ten tryb akceptują, a nie są koniecznie sterowane prze SINUMERIKA- jednym słowem wymienność z innymi sterowaniami, lub korzystanie z postprocesorów generujących tylko kod ISO.

2. programGuide (tryb programowania SIEMENS - podobieństwo do ISO jest w stosowaniu adresów N,G,X,Y,Z itp), nie jest w tym trybie zachowana kompatybilność do ISO. Dotyczy to głównie obsługi narzędzi oraz ich zużycia ale też innych dodatkowych elementów programowania, np: deklaracja przygotówki WORKPIECE, komentarza, zakresu i stosowania innych funkcji przygotowawczych G). Stworzono nazwę własną "programGuide", aby odróżnić programy pisane w tym systemie (w sumie w G-kodzie) od programów pisanych w G-kodzie ale z zachowaniem wymogów w ISO.

3. shopTurn/Mill - ten sposób programowania bazuje na programGuide (wykorzystywane są cykle systemu programGuide). Różnica między shopTurn/Mill a programGuide głównie jest taka, że w odróżnieniu od cykli w programGuide cykle w ShopTurn/Mill mają zawarte w sobie też definicję narzędzia i prędkość obrotową narzędzia/wrzeciona lub szybkość skrawania.
Technologia CNC od 1979r.
Programowanie technologiczne
SINUMERIK Operate

ODPOWIEDZ Poprzedni tematNastępny temat

Wróć do „Siemens Sinumerik CNC”