Vai al contenuto
PLC Forum


Problema su richiamo db tramite variabile.


ugoilbruko

Messaggi consigliati

Salve volevo porvi un problema che mi sta tenendo fermo da ormai giorni.

Ho da fare una gestione porte di uno stabilimento.

Ho creato 80 db nominate come le porte con i rispettivi ingressi uscite delle porte.

con una FC Vado a richiamare le 4 DB Porte (per far ciclare il programma della stanza)  ma funziona solo se metto nella funzione il nome esatto della DB creata , se invece come vorrei fare io legare la db ad un puntatore, per poter scegliere quale DB porta inserire nella funzione FC, direttamente da HMI ho problemi sia nella dichiarazione che nel risultato(non funziona).

Praticamente non riesco a caricare una DB in un FC tramite puntatore.

scusate  sembra complicato ma solo da spiegare ,potrei mandare il file a chi mi puo aiutare. 

Link al commento
Condividi su altri siti


Io farei così, se ho ben capito la tua esigenza:

  1. Crei un UDT con la struttura che ti serve (ingressi e uscite di comando di una porta): chiamiamolo "UDT_porta".
  2. Crei le 80 DB tutte derivate da UDT_porta.
  3. Nell'FB che gestisce una singola porta metti una variabile Input/Output di tipo "UDT_porta".
  4. Nell'FC metti quanti richiami vuoi dell'FB (quattro nel tuo esempio); ognuno ha una istanza fissa, non parametrizzabile. Come parametro di Ingresso/Uscita del richiamo, ci metti la DB che vuoi.
  5. All'interno dell'FB ti trovvi tutte le varibili che hai dichiarato nell'UDT, nella tabella di dichiarazione.

    Allego qualche immagine.

Porta_1.PNG

Porta_2.PNG

Porta_3.PNG

Link al commento
Condividi su altri siti

Grazie di avermi risposto ma io voglio parametrizzare l'ingresso che tu hai come io_db con una variabile che richiama la dbporta da me interessata nella funzione fbportadb per poter permettere ad un operatore di cambiare porta nella logica di funzionamento da solo senza un mio intervento dal hmi

Link al commento
Condividi su altri siti

  • 2 weeks later...

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