Vai al contenuto
PLC Forum


Aiuto Conversione Vecchio Programma AWL - Parametri FC


84paolo

Messaggi consigliati

Buongiorno a tutti.

In questo periodo di Home Working mi sto dedicando alla conversione di un vecchio software dal 300 al 1500. 

Il programma a sua volta era già stato convertito 20 anni fa dall'S5 quindi immaginate come può essere ordinato.

Ora oltre alla conversione sto anche cercando di rendere più leggibili alcune parti di codice.

Ma veniamo al mio problema.

Nel software in Step 7 ci sono alcuni richiami ad FC con il passaggio di parametri solo di Input. Ma magicamente sul 300 anche se tu passi il parametro come solo input e nell'FC lo modifichi, fuori dall'FC ti trovi il parametro modificato. Ho provato questa cosa con il simulatore perchè non ci credevo ed effettivamente funziona.

Lo stesso software invece convertito in TIA come parametro di input non ti porta all'esterno le modifiche e infatti per farlo funzionare ho dovuto spostare i parametri come IN/OUT.

A voi risulta questa cosa che sul vecchio 300 (o anche S5) anche se passi i parametri come input li puoi modificare lo stesso?

 

Non sono fatti in altre parti di programma, perchè ho fatto un programma nuovo solo con quel blocco di codice..

 

Grazie

Link al commento
Condividi su altri siti


L'unico caso in cui mi viene in mente che un parametro passato come ingresso a un fc del 300 possa essere modificato è se viene passato attraverso un puntatore.

Questo perchè non viene modificato il parametro passato (che è l'indirizzo nell'area di memoria), ma ciò che è contenuto nell'area di memoria

Modificato: da elettrix01
Link al commento
Condividi su altri siti

Trovo molto sensato ciò che dice Elettrix01.
In ogni caso, ritengo la cosa più corretta sia controllare come sono gestiti questi parametri all'interno delle funzioni.
Se vengono anche scritti, era sbagliato dichiararli come parametri in input, e la cosa più corretta sarebbe quindi farli diventare in/out.

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...