Razvejanost programskih tehnik

Uporaba

Programske tehnike lahko tudi kombinirate med seboj, npr. v ponovitvi dela programa drugega, ločenega NC-programa ali v priklicu podprograma.

Če se po vsakem priklicu znova vrnete na izvor, uporabite samo eno ravnino razvejanosti. Če pred vrnitvijo na izvor programirate dodaten priklic, preidete eno ravnino razvejanosti globlje.

Opis funkcije

Upoštevajte največje globine razvejanosti:

  • Največja globina razvejanosti za priklice podprogramov: 19
  • Največja globina razvejanosti za priklice zunanjih NC-programov: 19, pri čemer CYCL CALL deluje kot priklic zunanjega programa
  • Ponovitve delov programov lahko poljubno pogosto programsko razvejate

Primer

Priklic znotraj podprograma

0 BEGIN PGM UPGMS MM

* - ...

11 CALL LBL “UP1“

; priklic podprograma LBL "UP1"

* - ...

21 L Z+100 R0 FMAX M30

; zadnji programski niz glavnega programa z M30

22 LBL “UP1“

; začetek podprograma "UP1"

* - ...

31 CALL LBL 2

; priklic podprograma LBL 2

* - ...

41 LBL 0

; konec podprograma "UP1"

42 LBL 2

; začetek podprograma LBL 2

* - ...

51 LBL 0

; konec podprograma LBL 2

52 END PGM UPGMS MM

Krmiljenje NC-program obdela na naslednji način:

  1. NC-program UPGMS se izvede do NC-niza 11.
  2. Podprogram UP1 se prikliče in izvaja do NC-niza 31.
  3. Podprogram 2 se prikliče in izvaja do NC-niza 51. Konec podprograma 2 in vrnitev na podprogram, iz katerega je bil priklican.
  4. Podprogram UP1 se izvede od NC-niza 32 do NC-niza 41. Konec podprograma UP1 in vrnitev v NC-program UPGMS.
  5. NC-program UPGMS se izvede od NC-niza 12 do NC-niza 21. Konec programa in vrnitev na NC-niz 0.

Ponovitev dela programa v ponovitvi dela programa

0 BEGIN PGM REPS MM

* - ...

11 LBL 1

; začetek dela programa 1

* - ...

21 LBL 2

; začetek dela programa 2

* - ...

31 CALL LBL 2 REP 2

; priklic dela programa 2 in dvakratna ponovitev

* - ...

41 CALL LBL 1 REP 1

; priklic dela programa 1 vklj. z delom programa 2 in enkratna ponovitev

* - ...

51 END PGM REPS MM

Krmiljenje NC-program obdela na naslednji način:

  1. NC-program REPS se izvede do NC-niza 31.
  2. Del programa se dvakrat ponovi med NC-nizom 31 in Nc-nizom 21, torej je skupno obdelan trikrat.
  3. NC-program REPS se izvede od NC-niza 32 do NC-niza 41.
  4. Del programa se enkrat ponovi med NC-nizom 41 in NC-nizom 11, torej je skupno obdelan dvakrat (vsebuje ponovitev dela programa med NC-nizom 21 in NC-nizom 31).
  5. NC-program REPS se izvede od NC-niza 42 do NC-niza 51. Konec programa in vrnitev na NC-niz 0.

Priklic podprograma znotraj ponovitve dela programa

0 BEGIN PGM UPGREP MM

* - ...

11 LBL 1

; začetek dela programa 1

12 CALL LBL 2

; priklic podprograma 2

13 CALL LBL 1 REP 2

; priklic dela programa 1 in dvakratna ponovitev

* - ...

21 L Z+100 R0 FMAX M30

; zadnji NC-niz glavnega programa z M30

22 LBL 2

; začetek podprograma 2

* - ...

31 LBL 0

; konec podprograma 2

32 END PGM UPGREP MM

Krmiljenje NC-program obdela na naslednji način:

  1. NC-program UPGREP se izvede do NC-niza 12.
  2. Podprogram 2 se prikliče in izvaja do NC-niza 31.
  3. Del programa se dvakrat ponovi med NC-nizom 13 in NC-nizom 11 (vklj. s podprogramom 2), torej je skupno obdelan trikrat.
  4. NC-program UPGREP se izvede od NC-niza 14 do NC-niza 21. Konec programa in vrnitev na NC-niz 0.