|
Istruzioni Con la funzione "GetLinkedVariable" si legge il nome della variabile, che è combinata con una proprietà dell'oggetto. Ha luogo una verifica del nome di variabile ritornato dalla funzione "GetLinkedVariable()". Dopo un controllo terminato con successo si può poi preparare, nella parte di programma specifica dell'applicazione, il nome della variabile secondo le proprie esigenze, leggere e scrivere variabili di WinCC opp. impostare altre proprietà oggetto.
Esempio
Esempio per la lettura del nome di una variabile, che è combinata con la proprietà dell'oggetto "OutputValue" di un campo di I/O.
{
char* pszVarName = NULL;
char szVarName[_MAX_PATH+1];
//Lettura del nome di variabile di una connessione diretta
//
pszVarName = GetLinkedVariable(lpszPictureName,lpszObjectName,"OutputValue");
//Verifica del valore di ritorno
//
if (strlen(pszVarName) <= 0){
printf("Errore: La proprietà non è collegata con una variabile di WinCC !\r\n");
}
else if (strlen(pszVarName) >= sizeof (szVarName)){
printf("Errore: La variabile C occupa troppo poco spazio per poter accettare l'intero nome della variabile \r\n");
}
else{
strncpy(szVarName,pszVarName,sizeof (szVarName));
printf("Info: szVarName=\"%s\" value=%f\r\n", szVarName, value);
//============================================
//
//parte di programma specifica dell'applicazione
//
//============================================
//In questo punto si può programmare il proprio
//codice di programma
}
}
Parametri della funzione GetLinkedVariable:
- lpszPictureName: puntatore per la pagina attuale
- lpszObjectName: puntatore all'oggetto attuale
- "OutputValue": nome della proprietà dell'oggetto, con cui è combinata la variabile.
Esecuzione del programma
- Memorizzare provvisoriamente in pszVarName il valore di ritorno della funzione GetLinkedVariable.
Poiché la funzione GetLinkedVariable non fornisce un pointer NULL, con strlen si verifica se è stato letto un valore.
- Nel caso si sia ricevuto di ritorno un valore valido, memorizzarlo in szVarName. Vengono memorizzati come massimo _MAX_PATH caratteri.
- Eseguire il codice definito dall'utente per il trattamento del valore di ritorno.
Avvertenza sui trigger
Nelle pagine di processo si devono evitare azioni con trigger ciclici, poiché questi portano ad un carico eccessivo del sistema. Se è possibile, utilizzare trigger di variabili.
Nell'impiego di trigger di variabili occorre fare attenzione che nel collegamento dell'oggetto utente con variabili di processo anche il trigger per la generazione dell'azione in C viene adattato.
|