NC-alarmen
Verklaring:
In de onderprogrammadefinitie werd een formale REF-parameter (call-by-reference-parameter) aangegeven, waaraan bij
de oproep geen actuele parameter werd toegewezen.
De toewijzing gebeurt bij de SP-oproep op basis van de positie van de variabelenaam en niet op basis van de naam!
Voorbeeld:
Onderprogramma: (2 call-by-value parameter X en Y,
1 call-by-reference parameter Z)
PROC XYZ (INT X, INT Y, VAR INT Z)
:
M17
ENDPROC
Hoofdprogramma:
N10 DEF INT X
N11 DEF INT Y
N11 DEF INT Z
:
N50 XYZ (X, Y)
of
N50 XYZ (X, Z)
Reactie:
Correctieblok met reorganiseren.
Naadsignalen worden gezet.
Alarmweergave
Oplossing:
Toets NC-stop bedienen en met de softkey PROGRAMMA CORRECT. de functie "Correctieblok" selecteren. De
correctiewijzer gaat op het foute blok staan.
Aan alle REF-parameters (call-by-reference-parameters) van het onderprogramma bij oproep een variabele toewijzen.
Aan "normale" formele parameters (call-by-value-parameters) hoeft geen variabele te worden toegewezen; ze werden
voorbezet met 0.
Voortzetting
Met NC-START of RESET-toets alarm wissen en programma voortzetten.
programma:
12310
[Kanaal %1: ] Blok %2 Asparameter ontbreekt bij procedure-aanroep %3
Parameter:
%1 = Kanaalnummer
%2 = Bloknummer, label
%3 = Bron-string
Verklaring:
Bij de oproep van het onderprogramma ontbreekt een AXIS-parameter, die volgens EXTERN-declaratie aanwezig zou
moeten zijn.
Met de EXTERN-instructie worden gebruikersgedefinieerde onderprogramma's (procedures) "bekend" gemaakt die een
parametertransfer hebben.
Procedures zonder parametertransfer vereisen geen EXTERN-declaratie.
Voorbeeld:
Onderprogramma XYZ (met de formele parameters):
PROC XYZ (INT X, VAR INT Y, AXIS A, AXIS B)
EXTERN-instructie (met de variabelentypes):
EXTERN XYZ (INT, VAR INT, AXIS, AXIS) onderprogramma-oproep (met de actuele parameter):
N10 XYZ (, Y1, R_TISCH)
Variabele X krijgt de waarde 0
Variabele Y wordt van de waarde van de variabele Y1 voorzien en geeft het resultaat na de SP-uitvoering terug naar het
oproepende programma
Variabele A wordt met de as in R_TISCH gevoed
Variabele B ontbreekt!
Reactie:
Correctieblok met reorganiseren.
Naadsignalen worden gezet.
Alarmweergave
140
;REF-parameter Z ontbreekt
;REF-parameter Y ontbreekt!
Diagnosehandboek, 01/2015, 6FC5398-8BP40-5JA2
Alarmen