podprogramy heidenhain
-
Autor tematu - Nowy użytkownik, używaj wyszukiwarki
- Posty w temacie: 2
- Posty: 3
- Rejestracja: 02 lis 2015, 14:29
- Lokalizacja: Niemce
podprogramy heidenhain
Literatura ostrzega przed uzywaniem M02 lub M30 w podprogramach. Skoro (pod)program konczy "END PGM" to czy mozna ujac to w klamry LBL, by nastepnie zakonczyc podprogram odwolaniem do takiej LBL tak, zeby wykonal natychmiastowy skok do programu glownego? Ponizej przyklad:
BEGIN PGM A
...
...
CALL PGM B
...
...
END PGM A
i podprogram:
BEGIN PGM B
...
...
CALL LBL1 <--tutaj chcialbym zakonczyc i wrocic do nast. linii programu A
...
...
LBL2
...
LBL0
LBL1
END PGM B
LBL0
czy taki zapis zadziala, czy powinienem inaczej napisac podprogram?
Z gory dziekuje za pomoc. Pozdrawiam.
BEGIN PGM A
...
...
CALL PGM B
...
...
END PGM A
i podprogram:
BEGIN PGM B
...
...
CALL LBL1 <--tutaj chcialbym zakonczyc i wrocic do nast. linii programu A
...
...
LBL2
...
LBL0
LBL1
END PGM B
LBL0
czy taki zapis zadziala, czy powinienem inaczej napisac podprogram?
Z gory dziekuje za pomoc. Pozdrawiam.
Tagi:
-
- ELITA FORUM (min. 1000)
- Posty w temacie: 1
- Posty: 1255
- Rejestracja: 08 cze 2010, 23:37
- Lokalizacja: Piastów
Zawsze starałem się, żeby podprogram kończył się w miejscu END PGM i w ten sposób wracał do programu głównego. Zresztą chyba plik programu HH musi kończyć się END PGM. Program dobrze jak się kończy M30/M02 bo wtedy masz resetowane wszystkie ustawienia np przesunięcia (Iso G54/G55), odbicia lustrzane itd. Inaczej możesz się zdziwić po wystartowaniu następnego programu.
-
- Specjalista poziom 1 (min. 100)
- Posty w temacie: 1
- Posty: 153
- Rejestracja: 30 gru 2010, 21:08
- Lokalizacja: TARNÓW
M2 M30
Czesc. Majster70 ma racje. Chodzi oto , zeby w glownym programie , wywolywane podprogramy nie zawieraly w sobie M2 M30. Bo program nie pojedzie dalej. Ja najczesciej uzywam M2 do resetowania WSZYSTKIEGO. Glownie w , przy nie dojechanych programach . Zwlaszcza jak sie cos testuje. Wazne jest tez jak Q-parametry sa przeliczane czasem pare razy. Co pozostaje w pamieci. Przy starszych sterowaniach najlepiej M2 jest odpalic w wykonaniu programu AUTO. Do skoku na dany blok w Q-parametrach sluza funkcje FN 9 10 11 12. Na miejsce co jest dany "LBL" .
-
Autor tematu - Nowy użytkownik, używaj wyszukiwarki
- Posty w temacie: 2
- Posty: 3
- Rejestracja: 02 lis 2015, 14:29
- Lokalizacja: Niemce
Bardzo Panom dziekuje za zainteresowanie.
Porady wykorzystalem i moj program wyglada aktualnie tak:
BEGIN PGM lfdnr
FN0: Q6 = 0
FN0: Q7 = 0
CALL LBL 2
END PGM lfdnr
LBL2
(...)
CALL LBL4
(...)
LBL0
LBL4
(...)
LBL0
itd.
zadbalem o strukture programu tak, zeby kolejne LBL po wykonaniu wracaly w gore, az do bloku 'CALL LBL2'.
Jestem poczatkujacym programista CNC, z pewnym doswiadczeniem w programowaniu komputerow (BASIC, PASCAL, odrobina assemblera) i musze przyznac, ze ilosc dialektow oraz, nawe to, jezykow programowania dla obrabiarek nieco mnie zaskoczyla. Pozostaje sie uczyc, uczyc i jeszcze raz uczyc, jak to w zyciu.
Jeszcze raz wielkie dzieki.
Klaniam sie.
PS. prosze wybaczyc brak polskich krzaczkow - pisze ze sluzbowej, niemieckiej klawiatury.
Porady wykorzystalem i moj program wyglada aktualnie tak:
BEGIN PGM lfdnr
FN0: Q6 = 0
FN0: Q7 = 0
CALL LBL 2
END PGM lfdnr
LBL2
(...)
CALL LBL4
(...)
LBL0
LBL4
(...)
LBL0
itd.
zadbalem o strukture programu tak, zeby kolejne LBL po wykonaniu wracaly w gore, az do bloku 'CALL LBL2'.
Jestem poczatkujacym programista CNC, z pewnym doswiadczeniem w programowaniu komputerow (BASIC, PASCAL, odrobina assemblera) i musze przyznac, ze ilosc dialektow oraz, nawe to, jezykow programowania dla obrabiarek nieco mnie zaskoczyla. Pozostaje sie uczyc, uczyc i jeszcze raz uczyc, jak to w zyciu.
Jeszcze raz wielkie dzieki.
Klaniam sie.
PS. prosze wybaczyc brak polskich krzaczkow - pisze ze sluzbowej, niemieckiej klawiatury.
-
- Nowy użytkownik, używaj wyszukiwarki
- Posty w temacie: 1
- Posty: 1
- Rejestracja: 09 paź 2024, 08:49
Re: podprogramy heidenhain
Szukałem odpowiedzi na ten sam problem i z pomocą przyszedł manuał Heidenhaina.
W podprogramie wykonuję funkcję 9 która jest prawdą np 0 equ 0 goto lbl x
Label x (albo dowolna nazwa) jest pusty i na końcu podprogramu. W głównym programie po wywołaniu podprogramu mam linie odjazdu stołu. Bez błędu i z zieloną lampką pracy maszyny, co było problemem aby szukać rozwiązanie
W podprogramie wykonuję funkcję 9 która jest prawdą np 0 equ 0 goto lbl x
Label x (albo dowolna nazwa) jest pusty i na końcu podprogramu. W głównym programie po wywołaniu podprogramu mam linie odjazdu stołu. Bez błędu i z zieloną lampką pracy maszyny, co było problemem aby szukać rozwiązanie
