HEIDENHAIN iTNC 530

diskuze tykajici se ridicich systemu a software komercnich CNC stroju

Re: HEIDENHAIN iTNC 530

Příspěvekod itbart » 14 čer 2018, 12:15

Zdar hošani!

může mi prosím někdo objasnit funkci LBL 0 ? Řádek 16 po vyhodnocení skočí na řádek 23 a program následně po provedení řádku 25 (LBL 0) pokračuje vesele na řádek 26 nikoliv zpět na řádek 17, jak bych očekával a program končí. Proč tomu tak je?
Použití LBL až za M30 je nutné (pokud neni splněna podmínka, pak nechci LBL provádět). Díky borci! :idea:

Kód: Vybrat vše
0  BEGIN PGM AAA MM
1  BLK FORM 0.1 Z  X+35.9999  Y-61  Z+20
2  BLK FORM 0.2  X+2486  Y+1329  Z+35
3  ;
4  PLANE RESET STAY
5  CYCL DEF 7.0 NULOVY BOD
6  CYCL DEF 7.1  X+7.5
7  CYCL DEF 7.2  Y+17.5
8  CYCL DEF 7.3  Z+0
9  L  Z+0 R0 FMAX M91
10 L  B+0  C+0 FMAX
11 ;
12 Q50 = 0
13 Q51 = 10
14 ;
15 Q60 = Q50 ;MAX
16 FN 11: IF +Q51 GT +Q60 GOTO LBL "MAX2"
17 FN 16: F-PRINT TNC:\MERENI_Z_FORMAT.A / SCREEN:
18 FN 14: ERROR= 1010
19 L  Z+0 R0 FMAX M91
20 L  B+0  C+0 FMAX
21 M30
22 ;MAX
23 LBL "MAX2"
24 Q60 = Q51
25 LBL 0
26 L IX+100 FMAX
27 END PGM AAA MM
itbart
 
Příspěvky: 9
Registrován: 11 čer 2018, 13:12

Re: HEIDENHAIN iTNC 530

Příspěvekod testone » 14 čer 2018, 14:07

zkus místo M30 na ř. 21 příkaz M2
Obvykle se dějí věci obvyklé. Méně často se dějí věci neobvyklé a zcela vyjímečně se dějí věci vyjímečné...
Masturn 40 CNC, Hermle UWF1200H CNC a pár klasik
http://www.radialengine.cz
http://www.autopejsek.cz
testone
Sponzor fora
 
Příspěvky: 4427
Registrován: 03 pro 2010, 18:56
Bydliště: Slaný

Re: HEIDENHAIN iTNC 530

Příspěvekod itbart » 14 čer 2018, 14:45

testone píše:zkus místo M30 na ř. 21 příkaz M2

Nezabralo. Je možné, že GOTO prostě neumožňuje návrat? CALL LBL 10 a LBL 0 mi funguje správně.
itbart
 
Příspěvky: 9
Registrován: 11 čer 2018, 13:12

Re: HEIDENHAIN iTNC 530

Příspěvekod jcerki » 14 čer 2018, 18:10

Ak chces aby ti LBL "skakal" v PGM , M30 (M2)musi byt az za danym LBL ... ty si vlastne preskocil M30 (M2), posunul si sa v X-e o 100mm a ukoncil si PGM bez M30 (M2) ...Pusti si to po bloku a uvidis ako to "skace" ...
V opacnom pripade musis PGM vytvorit tak , aby to pri splneni resp. nesplneni podmienky "skakalo" spravne ...
V tvojom PGM bude podmienka vzdy splnena ...

Pozn. M30 a M2 su identicke funkcie...
Uživatelský avatar
jcerki
 
Příspěvky: 109
Registrován: 24 říj 2008, 12:47
Bydliště: Bratislava , Slovakia , jcerki@gmail.com

Re: HEIDENHAIN iTNC 530

Příspěvekod jcerki » 14 čer 2018, 18:43

Tolerance prekrocena.png
Tolerance prekrocena


Pozor, pri takto definovanom ERROR-e ti stroj zastavi na danej vete (118) ... PGM sa nedokonci ...
Naposledy upravil jcerki dne 14 čer 2018, 19:04, celkově upraveno 2
Uživatelský avatar
jcerki
 
Příspěvky: 109
Registrován: 24 říj 2008, 12:47
Bydliště: Bratislava , Slovakia , jcerki@gmail.com

Re: HEIDENHAIN iTNC 530

Příspěvekod itbart » 14 čer 2018, 18:56

Diky moc za reakce. Po bloku jsem to zkousel - podminku to vyhodnoti podle ocekavani, ale LBL 0 se nevrati na radek 17 jak jsem ocekaval. Pouziti LBL za M30 si myslim ze je ok, pokud existuje predpoklad, ze LBL provest nechci, jen pokud bude splnena podminka. Musim to zkratka uchopit nejak jinak a vymyslet jine skoky :D Ano, na obrazku to vypad tak jak potrebuju :)
itbart
 
Příspěvky: 9
Registrován: 11 čer 2018, 13:12

Reklama

Průmyslové snímače tlaku, hustoty, teploty, průtoku a výšky hladiny.
Staňte se partnerem jednoho z předních výrobců prumyslových snímačů v Evropě
www.aplisenscz.cz Jičín, Jaselská 636, PSČ 506 01 tel. 737 423 730

Re: HEIDENHAIN iTNC 530

Příspěvekod jcerki » 14 čer 2018, 19:05

Dostal si moj mail ?
Uživatelský avatar
jcerki
 
Příspěvky: 109
Registrován: 24 říj 2008, 12:47
Bydliště: Bratislava , Slovakia , jcerki@gmail.com

Re: HEIDENHAIN iTNC 530

Příspěvekod jcerki » 14 čer 2018, 21:55

Este som to trochu vylepsil :-)
Tolerance prekrocena.png
Uživatelský avatar
jcerki
 
Příspěvky: 109
Registrován: 24 říj 2008, 12:47
Bydliště: Bratislava , Slovakia , jcerki@gmail.com

Reklama

Průmyslové snímače tlaku, hustoty, teploty, průtoku a výšky hladiny.
Staňte se partnerem jednoho z předních výrobců prumyslových snímačů v Evropě
www.aplisenscz.cz Jičín, Jaselská 636, PSČ 506 01 tel. 737 423 730

Re: HEIDENHAIN iTNC 530

Příspěvekod doncarlos » 15 čer 2018, 04:53

Koukám, že žádná rada nejde na podstatu věci, umístění před nebo za M30 s tím niiak nesouvisí,
LBL 0 je prostě návratová instrukce pro ukončení podprogramu vyvolaného příkazem - pouze a jedině - CALL LBL,
interně v Heidnu při použití CALL LBL dojde k uložení adresy aktuálního řádku na tzv stack - zásobník, pak skok na podprogram,
ten se provádí až narazí na LBL 0, tehdy si přečte ze stacku návratovou adresu a přenese chod programu na tuto + 1,
pokud program jen tak narazí na LBL 0, tak na stacku nic není a program normálně pokračuje. Tento mechanismus
řeší i vnoření podprogramů, kdy se z podprogramu volá další podprogram. Celá interní realizace stacku je složitější,
ale pro vysvětlení to určitě stačí
doncarlos
 
Příspěvky: 487
Registrován: 09 led 2008, 10:49

Re: HEIDENHAIN iTNC 530

Příspěvekod itbart » 15 čer 2018, 09:06

Díky, takhle jsem to chtěl slyšet :) Nakonec jsem to dal nějak dohromady - určitě to jde elegantnějším způsobem. :idea:
Přílohy
PHOTO-2018-06-15-07-36-45.jpg
itbart
 
Příspěvky: 9
Registrován: 11 čer 2018, 13:12

Re: HEIDENHAIN iTNC 530

Příspěvekod doncarlos » 15 čer 2018, 12:37

Díky, takhle jsem to chtěl slyšet :) Nakonec jsem to dal nějak dohromady - určitě to jde elegantnějším způsobem.


No z výpisu vidím, že vše marno, nepochopil jsi vůbec nic.
doncarlos
 
Příspěvky: 487
Registrován: 09 led 2008, 10:49

Re: HEIDENHAIN iTNC 530

Příspěvekod itbart » 15 čer 2018, 12:57

To si nemyslím, chápu to správně. Jen je zkrátka problém v tom, že IF a LBL jsem použil poprvé v životě - nemám přesnou představu o struktuře těchto cyklů v PGM, to je vše.

Edit: uznavam - pouziti LBL 0 je blbost, ale zaroven je to fuk.
itbart
 
Příspěvky: 9
Registrován: 11 čer 2018, 13:12

Re: HEIDENHAIN iTNC 530

Příspěvekod OompaLoompa » 15 čer 2018, 15:44

LBL 0 ti len označuje koniec tzv. "sub-rutiny"
ak chceš, aby ti to po "LBL 0" skákalo späť, musíš použiť CALL :!: namiesto GOTO

a myslím že podľa štandardu by mali byť všetky sub-rutiny/bloky v programe zadefinované až po M30, čiže minimálne z tohto pohľadu to jedno asi nie je..
 
Uživatelský avatar
OompaLoompa
 
Příspěvky: 80
Registrován: 28 čer 2017, 13:45
Bydliště: Západný Slovakistan

Re: HEIDENHAIN iTNC 530

Příspěvekod itbart » 15 čer 2018, 18:09

Souhlasim. Ale, IF CALL LBL zapsat nelze.
itbart
 
Příspěvky: 9
Registrován: 11 čer 2018, 13:12

Re: HEIDENHAIN iTNC 530

Příspěvekod OompaLoompa » 15 čer 2018, 20:54

itbart píše:Souhlasim. Ale, IF CALL LBL zapsat nelze.

No veď OK, a čo tak namiesto toho tú podmienku znegovať, a použiť IF → GOTO na preskočenie CALL LBL? :)

Teda namiesto:
Kód: Vybrat vše
15 Q60 = Q50 ;MAX
16 FN 11: IF +Q51 GT +Q60 GOTO LBL "MAX2"
17 FN 16: F-PRINT TNC:\MERENI_Z_FORMAT.A / SCREEN:

to poňať dáko takto:
Kód: Vybrat vše
15 Q60 = Q50 ;MAX
16 FN 11: IF +Q51 LT +Q60 GOTO LBL "NOMAX"
17 FN 12: IF +Q51 EQU +Q60 GOTO LBL "NOMAX"
18 CALL LBL "MAX2"
19 LBL "NOMAX"
20 FN 16: F-PRINT TNC:\MERENI_Z_FORMAT.A / SCREEN:

Tie čísielka riadkov, FN, atď. si už uprav podla potreby..
 
Uživatelský avatar
OompaLoompa
 
Příspěvky: 80
Registrován: 28 čer 2017, 13:45
Bydliště: Západný Slovakistan

PředchozíDalší

Zpět na Ridici systemy

Kdo je online

Uživatelé procházející toto fórum: Žádní registrovaní uživatelé a 0 návštevníků

smishek.com