Vai al contenuto
PLC Forum


Importazione di funzioni in AWL


lock

Messaggi consigliati

Ciao a tutti e complimenti per il forum.

Ho assoluto bisogno di sapere come si fa per riuscire ad importare, o meglio a referenziare utilizzando il linguaggio AWL, una funzione tipo il multiplexer FC 97 nel proprio codice AWL.

Grazie in anticipo a chiunque vorrà contribuire alla discussione.

Lock.

Link al commento
Condividi su altri siti


Federico Milan

Cosa intendi per referenziare ?!?

Se intendi la definizione classica e stai parlando di S7 penso proprio che non puoi referenziare la funzione!

Se referenziare (nemmeno puntare è corretto) intendi chiamare la FC, basta solo che dal tuo codice faccia qualcosa del tipo

CALL FC97.

Se referenziare intendi passare come argomento al parametro di una FC o FB lla funzione, all'ora (devo ammettere di non aver mai usato questa possibilità) non ti resta che dichiarare come ingresso della tua funzione una parametro di tipo BLOCK_FC e quindi richiamarlo con una uncoditional call UC per intenderci! ATTENTO non credo puoi usare parametri in questo caso ...

LA FC97 non la conosco ... dipende come è dichiarata ... ha forse qualche paramentro ANY ?!? e quindi non sai come puntare al quel parametro ?!?

ciao

Link al commento
Condividi su altri siti

Ciao Federico,

innanzitutto grazie per aver risposto al mio argomento.

Ti spiego meglio cosa intendo fare.

Io scrivo un listato AWL con un editor di testo, poi da quel listato voglio ottenere un progetto Step 7 importando il listato e facendolo compilare a Step 7. Il mio problema è questo: se nel mio listato faccio riferimento a FC 97 (proprio utilizzando il comando CALL FC 97), nel momento della compilazione Step 7 mi dice che non riesce a far riferimento alla funzione FC 97. Questo perchè, come tu saprai benissimo, quando io voglio utilizzare una funzione di sistema (quale FC 97 è), devo importarla. A me quindi interessa capire come fare per importare via codice le funzioni di sistema, non solo come chiamarle.

Grazie ancora per l'interessamento.

Lock.

Link al commento
Condividi su altri siti

Federico Milan

Scusa ma FC97 non è una funzione di sistema,

le funzioni di sistema sono le SFC e SFB ... che per altro non hanno bisogno di essere importate ... almeno ...

Comunque non importa ... praticamente tu hai un file di testo lo importi come sorgente e da questo vuoi ottenere i blocchi, ho capito ?!?

Se la funzione è proprietaria della siemens o protetta devi averla nel tuo

progetto, io non uso tanto questo metodo, ma per esempio mi è toccato con le FB41, io le ho importate nel mio progetto, ma non nel sorgente non avvendo i sorgenti, quindi ho compilato il sorgente che avevo modificato ...

effettivamente mi è successo qualcosa di simile che non ho avuto tempo di capire cos'èra, ma di regola va ... anche perchè quando compili, se non erro i blocchi non importati come sorgente vengono cercati nei blocchi del tuo progetto o programma che sia ...

comunque se ho tempo riprovo e ti farò sapere meglio ...

ciao

Link al commento
Condividi su altri siti

Ciao Federico,

hai capito perfettamente il problema. Voglio ottenere i blocchi dal sorgente e ho bisogno di importare da codice la FC 97, senza farlo manualmente utilizzando il menu Inserisci -> Elementi di programma.

Grazie ancora un volta per l'interessamento.

Attendo con ansia tue nuove.

Lock.

Modificato: da NULL
Link al commento
Condividi su altri siti

Crea un account o accedi per commentare

Devi essere un utente per poter lasciare un commento

Crea un account

Registrati per un nuovo account nella nostra comunità. è facile!

Registra un nuovo account

Accedi

Hai già un account? Accedi qui.

Accedi ora
×
×
  • Crea nuovo/a...