Iris _

Pixsys Forum

everybody's effort for the same goal

Errore di compilazione con FB SCALING_REAL

Post Reply
user7490
Posts: 50
Joined: 21/01/2014, 8:23

Errore di compilazione con FB SCALING_REAL

Post by user7490 »

Buona sera a tutti
Dopo parecchi anni di Simatic, ho deciso di lavorare anche su questa piattaforma, mi rendo conto però che ci sono parecchie differenze, in particolare sull'utilizzo delle FB; per cui, dopo aver letto qualche discussione che potesse farmi capire alcune cose e aver provato varie soluzioni, senza esito positivo, vi sottopongo il mio quesito:
Sto lavorando con un TD710 con 2 ET1644-AD, 1 MCM260X e ovviamente Logiclab 5.10.0.14 in LD e Movicon 11.6.
Devo lavorare con la FB in oggetto , la inserisco in un Programma a sua volta inserito su task Fast (o Background), quando salvo e compilo (o ricompilo tutto), mi ritorna sempre l'errore "Scaling_DINT(2) - errore A4097: Input_Value => Oggetto non trovato" , anche se l'istanza è dichiarata.
Sicuramente devo ancora capire come trattare le FB, quindi Vi chiedo una vostra valutazione sul motivo dell'errore e magari qualche delucidazione in più sull'utilizzo delle FB disponibili da software.
Un'ultima domanda: esiste una documentazione specifica, anche solamente in inglese, che tratti questi argomenti ?
Grazie
Buon anno a tutti
Pixsys tecnico 6
Moderatore
Posts: 1185
Joined: 12/09/2016, 14:49

Re: Errore di compilazione con FB SCALING_REAL

Post by Pixsys tecnico 6 »

Buongiorno,
nell'eseguire la compilazione e il download dell'applicativo su un TD710 con medesima versione software di Logiclab, non abbiamo riscontrato alcun problema per il FB Scalin Real.
LogicLab_Scaling_Real_Compile.PNG
Per risolvere il suo problema le consigliamo di verificare i seguenti step:

1. Disinstalli e reinstalli l'ultima versione di LogicLab onde evitare che nell'ultima installazione non siano state aggiornate correttamente le librerie di sistema.
2. Dall'output di compilazione che ci ha inviato sembra esserci un problema nella dichiarazione delle variabili. Sembra che il blocco funzione non trovi una variabile collegata ai pin in ingresso.


Per la documentazione inerente ai blocchi funzione la può reperire attivando da menù la finestra Properties windows. Cliccando sull'oggetto della libreria verranno mostrate le specifiche del blocco funzione di interesse.
LogicLab_Properties_Windows.PNG
Cordiali Saluti.
You do not have the required permissions to view the files attached to this post.
user7490
Posts: 50
Joined: 21/01/2014, 8:23

Re: Errore di compilazione con FB SCALING_REAL

Post by user7490 »

Buona sera
Innanzitutto vi ringrazio della solerte risposta. Ho eseguito quanto avete suggerito:ho scaricato la suite Logiclab dal sito, ho disinstallato la versione presente sul Pc, ho reinstallato la versione scaricata, ho lanciato il progetto di prova che mi dava il problema (è una copia, ma anche l'originale lo fa), ho cestinato la FB Scaling_REAL presente e ho inserito la FB dalla libreria appena installata, ho creato una nuova Global_vars con 6 variabili Real, ho assegnato le variabili Real alla FB, ho salvato e ricompilato tutto il codice ma ha concluso con "Scaling_DINT(2) - errore A4097: Input_Value => Oggetto non trovato".
Tra l'altro è strano che venga citato "Scaling_DINT" anziché "Scaling_REAL", ma questo forse dipende solo dal fatto che si tratta di DWord in entrambi i casi.
Per quanto riguarda la richiesta di documentazione, io non intendevo la documentazione di carattere generale che si trova sull'help_online , ma eventualmente una documentazione più approfondita sugli aspetti tipo: la possibilità di incapsulamento di una FB in una F, o di una FB in un'altra FB, le avvertenze e prescrizioni da rispettare, ecc. ecc.
Grazie a Voi
You do not have the required permissions to view the files attached to this post.
user7490
Posts: 50
Joined: 21/01/2014, 8:23

Re: Errore di compilazione con FB SCALING_REAL

Post by user7490 »

Buon giorno
Aggiungo un ukteriore particolare che non avevo inserito nel precedente post, l'FB è inserito in un programma che è a sua volta assegnato ad un task ciclico Fast o Background ; ebbene, se lancio la compilazione prima di assegnare il programma ad uno dei task sopra menzionati, la compilazione si conclude senza errori ma con 3 warning:

Scaling_REAL(11) - warning G0051: NE => Conversione del dato
Scaling_REAL(17) - warning G0051: MOVE => Conversione del dato
Scaling_REAL(17) - warning G0015: MOVE => Estensione accumulatore

Quando poi il programma in cui è inserita la FB lo assegno ad un task ciclico e ricompilo, non da più warning ma ritorna l'errore in oggetto.
Spero di avere fornito le indicazioni necessarie alla comprensione del problema.
Grazie a Voi
Pixsys tecnico 6
Moderatore
Posts: 1185
Joined: 12/09/2016, 14:49

Re: Errore di compilazione con FB SCALING_REAL

Post by Pixsys tecnico 6 »

Buongiorno,
probabilmente nel suo caso ci sono due cose da controllare:

1. l'errore "Scaling_DINT(2) - errore A4097: Input_Value => Oggetto non trovato" è dovuto al fatto che il blocco funzione "Scaling_DINT" non è stato istanziato correttamente nelle variabili locali di progetto. Nel suo ladder è presente il blocco funzione "Scalind_DINT" e la relativa istanza nelle variabili locali? NB (Attenzione questo errore non ha nulla a che vedere con il blocco funzione Scaling_Real)

2. Il progetto fa capo a librerie aggiornate oppure no? Ogni progetto mantiene il link alle proprie librerie, e quanto viene aperto con una versione più aggiornata del LogicLab, viene chiesto se si vuole aggiornare o meno le librerie. Con l'aggiornamento delle librerie di progetto si potrebbe incorrere in nuovi warning o errori, dovuti al nuovo standard di compilazione secondo le normative vigenti. Se invece si decide di mantenere le librerie precedenti non dovrebbe avere nuovi errori in compilazione.

In ogni caso controlli da menù Progetto--> Gestione Librerie, che sia presente il link alla libreria attuale Pixsys.pclib nel path: "C:\Program Files (x86)\Pixsys PC Tools\Catalog\TDxxx_3p0\Libraries".
LogicLab_5_10_0_14_Screen_Path_Librerie.PNG
PS In allegato trova anche un blocco funzione "Scaling" generico. Lo importi come oggetto e oltre a vedere come è strutturata una FB, potrà utilizzare il blocco funzione con variabili diverse dal REAL, senza generare errori in compilazione, ma solo dei Warning che la avviseranno che non sta utilizzando delle REAL.
Cordiali Saluti.
You do not have the required permissions to view the files attached to this post.
user7490
Posts: 50
Joined: 21/01/2014, 8:23

Re: Errore di compilazione con FB SCALING_REAL

Post by user7490 »

Eccomi, buona sera
Non ho risposto subito perché volevo approfondire la questione in modo da fornire risposte chiare.
Innanzitutto rispondo ai quesiti posti:
1) Nel progetto non ho mai utilizzato la funzione Scaling_Dint semplicemente perché mi serve la Scaling_Real e non la Dint, quindi non è possibile che sia stata istanziata bene o male.
2) Ho appena iniziato ad utilizzare la piattaforma Logiclab e quindi software e librerie sono quelle disponibili sul sito Pixsys.
Detto questo, ho fatto un'attente analisi della discussione e ho notato che negli esempi che mi sono stati proposti, la FB Scaling era stata istanziata direttamente in un programma assegnato poi ad un task, mentre io provavo ad inserire la FB Scaling_Real in un'altra FB che a sua volta veniva caricata in un programma. Ebbene , mi sono reso conto che non è possibile fare l'incapsulamento di una FB in un'altra FB, perlomeno con la FB Scaling_Real, pena l'errore in fase di compilazione.
Istanziando, anche ripetutamente, la FB direttamente in un programma e assegnando ad essa le variabili global già utilizzate in precedenza, non fa più l'errore di compilazione ma solo i tre warning già descritti.
Rimane il fatto che il compilatore mi dava un errore inesitente (Scaling_Dint....) e questo porta inevitabilmente a considerazioni che non aiutano alla risoluzione del problema.
Pixsys tecnico 6
Moderatore
Posts: 1185
Joined: 12/09/2016, 14:49

Re: Errore di compilazione con FB SCALING_REAL

Post by Pixsys tecnico 6 »

Buongiorno,
l'incapsulamento di una FB all'interno di un'altra FB che poi verrà assegnata ad un Task di programma, mi risulta sia possibile farlo. Nello specifico le posto l'esempio. Provi ad aprire il progetto e ad eseguire una compilazione, vedrà che non da errori. Probabilmente gli errori di compilazione che le risultano nel suo progetto sono da ricercare nella stesura del progetto. Se lo ritiene opportuno può inviarci il progetto a support@pixsys.net o postarlo nel forum.

Cordiali Saluti
You do not have the required permissions to view the files attached to this post.
Post Reply