Imbricación de las técnicas de programación
Aplicación
Se pueden combinar técnicas de programación, p. ej. llamar a otro programa NC o a un subprograma en una repetición parcial del programa.
Si tras cada llamada se vuelve al origen, utilizar únicamente un plano de imbricación. Si antes de la vuelta al origen se programa otra llamada, se logrará un plano de imbricación más profundo.
Temas utilizados
- Subprogramas
- Repeticiones de parte del programa
- Llamar a un programa NC separado
Descripción de la función
Tenga en cuenta las profundidades de imbricación máximas:
- Profundidad de imbricación máxima para las llamadas de subprogramas: 19
- Profundidad de imbricación máxima para llamadas de programas NC externos: 19, donde un CYCL CALL actúa como una llamada de programa externo
- Las repeticiones de parte del programa se pueden entrelazar con cualquier frecuencia
Ejemplo
Llamada de subprograma dentro de un subprograma
0 BEGIN PGM UPGMS MM | |
* - ... | |
11 CALL LBL “UP1“ | ; Llamar el subprograma LBL "SP1" |
* - ... | |
21 L Z+100 R0 FMAX M30 | ; Ultima frase del programa principal con M30 |
22 LBL “UP1“ | ; Principio del subprograma "SP1" |
* - ... | |
31 CALL LBL 2 | ; Llamar al subprograma LBL 2 |
* - ... | |
41 LBL 0 | ; Final del subprograma "SP1" |
42 LBL 2 | ; Final del subprograma LBL 2 |
* - ... | |
51 LBL 0 | ; Final del subprograma LBL 2 |
52 END PGM UPGMS MM |
El control numérico ejecuta el programa NC de la forma siguiente:
- El programa NC UPGMS se ejecuta hasta la frase NC 11.
- Se llama al subprograma SP1 y se ejecuta hasta la frase NC 31.
- Se llama el subprograma 2 y se ejecuta hasta la frase NC 51. Final del subprograma 2 y vuelta al subprograma desde donde se ha realizado la llamada
- El subprograma SP1 se ejecuta desde la frase NC 32 hasta la frase NC 41. Final del subprograma SP1 y regreso al programa NC UPGMS.
- El programa NC UPGMS se ejecuta desde la frase NC 12 a la frase NC 21. Final del programa y retroceso a la frase NC 0.
Repetición parcial del programa dentro de una repetición parcial del programa
0 BEGIN PGM REPS MM | |
* - ... | |
11 LBL 1 | ; Principio de parte del programa 1 |
* - ... | |
21 LBL 2 | ; Principio de parte del programa 2 |
* - ... | |
31 CALL LBL 2 REP 2 | ; Llamar a la parte del programa 2 y repetir dos veces |
* - ... | |
41 CALL LBL 1 REP 1 | ; Llamar a la parte del programa 1 (incl. la segunda parte) y repetir una vez |
* - ... | |
51 END PGM REPS MM |
El control numérico ejecuta el programa NC de la forma siguiente:
- El programa NC REPS se ejecuta hasta la frase NC 31.
- La parte del programa presente entre la frase NC 31 y la frase NC 21 se repite dos veces, con lo que se ejecuta tres veces en total.
- El programa NC REPS se ejecuta desde la frase NC 32 a la frase NC 41.
- La parte del programa entre la frase NC 41 y la frase NC 11 se repite una vez, con lo que se ejecuta dos veces en total (contiene la repetición parcial del programa presente entre la frase NC 21 y la frase NC 31).
- El programa NC REPS se ejecuta desde la frase NC 42 a la frase NC 51. Final del programa y retroceso a la frase NC 0.
Llamada de subprograma dentro de una repetición parcial del programa
0 BEGIN PGM UPGREP MM | |
* - ... | |
11 LBL 1 | ; Principio de parte del programa 1 |
12 CALL LBL 2 | ; Llamar al subprograma 2 |
13 CALL LBL 1 REP 2 | ; Llamar a la parte del programa 1 y repetir dos veces |
* - ... | |
21 L Z+100 R0 FMAX M30 | ; Ultima frase NC del programa principal con M30 |
22 LBL 2 | ; Principio del subprograma 2 |
* - ... | |
31 LBL 0 | ; Final del subprograma 2 |
32 END PGM UPGREP MM |
El control numérico ejecuta el programa NC de la forma siguiente:
- El programa NC UPGREP se ejecuta hasta la frase NC 12.
- Se llama el subprograma 2 y se ejecuta hasta la frase NC 31.
- La parte del programa presente entre la frase NC 13 y la frase NC 11 (incl. el subprograma 2) se repite dos veces, con lo que se ejecuta tres veces en total.
- El programa NC UPGREP se ejecuta desde la frase NC 14 a la frase NC 21. Final del programa y retroceso a la frase NC 0.