Linotix Inserito: 15 giugno 2019 Segnala Share Inserito: 15 giugno 2019 Salve, vorrei capire come funziona la variabile in pointer in un fb. Ho fatto varie prove e sembra che a differenza di un fc , dove i’in pointer prende il valore dato nel richiamo del blocco , es p#0.0 nel fb esso prenda l’indirizzo del pointer nella tabella delle dichiarazioni variabili. Cioè se nella tabella variabile il dato dichiarato pointer ha indirizzo 20.0 questo viene trasferito al richiamo della variabile, fregandosene del dato inserito al richiamo del blocco e di ciò che viene scritto nella db di istanza. Cosa sbaglio? inoltre vorrei che qualcuno mi spiegasse come caricare i valori nella db di istanza senza dover modificare i dati dalla tabella variabili e ricreare il blocco dati ogni volta. Spero di essere stati chiaro grazie Link al commento Condividi su altri siti More sharing options...
TravelMen Inserita: 21 giugno 2019 Segnala Share Inserita: 21 giugno 2019 Ciao non è molto chiaro quello che vuoi fare, e sopratutto cosa intendi per caricare il valore nel DB d'istanza? per caricare un valore basta fare un semplice transfer ( L Valore T Variabile), il DB viene ricompilato solo se viene cambiato FB, altrimenti id rimane sempre lo stesso, a me che tu non voglia far modificare il tuo FB al programma PLC, cosa che reputo abbastanza impossibile. Saluti Link al commento Condividi su altri siti More sharing options...
batta Inserita: 22 giugno 2019 Segnala Share Inserita: 22 giugno 2019 TravelMen dice che per lui "non è molto chiaro" quello che vuoi fare. Questo significa che ha capito molto più di quanto ho capito io, cioè nulla. La variabile di tipo Pointer è una variabile di 6 byte, composta come segue: byte 0-1: numero del DB (0 = non è un DB) byte 1: area di memoria byte 3-4-5: indirizzo della variabile (riferito al bit) Trovi tutte le informazione dettagliate nella guida in linea sia del TIA, sia del Simatic Manager. Ad una variabile Pointer non viene passato il valore della variabile, ma l'indirizzo della variabile. E questo vale sia per le FC che per le FB. Mi pare di capire che tu stia imparando la programmazione dei PLC. Penso sarebbe il caso di iniziare con cose più semplici, prima di passare ai puntatori. Inoltre, nel TIA rispetto al Simatic Manager si usa molto di più l'SCL (l'editor è migliorato infinitamente) e, nelle CPU 1200/1500, ci sono altri tipi di variabili (any, variant, solo per citarne un paio) e si sente sempre meno la necessità di ricorrere a variabili di tipo pointer. Link al commento Condividi su altri siti More sharing options...
Messaggi consigliati
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 accountAccedi
Hai già un account? Accedi qui.
Accedi ora