AlessandroRH Inserito: 28 giugno 2018 Segnala Inserito: 28 giugno 2018 buongiorno a tutti, avrei bisogno di un'informazione riguardante gli avvisi del compilatore del TIA Portal (attualmente utilizzo la versione 15) e spero possiate aiutarmi. durante la compilazione del progetto vengono fuori delle innocue segnalazioni che però mi vengono contestate dal cliente. Quindi avrei la necessità di trovare un modo per deselezionare un determinato tipo di avvisi (dalle impostazioni possibilmente) e non tutti quanti tramite il pulsante "Visualizza/Nascondi Avvisi". o nel caso qualcuno sapesse qualche altra soluzione, per il caso che vi illustrerò di seguito, ben venga 😉 venendo al dunque, ho una DB (DB100) dedicata alla diagnostica dell'impianto composta da vari campi BOOL raggruppati in delle strutture per differenziare i tipi di allarmi: all'interno del progetto avrò poi un risolutivo degli allarmi che vien su tramite la comparazione in serie dell'interrogazione in DBD: come potrete notare su qualsiasi operando DBD mi viene fuori l'avviso "L'indirizzo non viene occupato da una variale". Qualcuno di voi ha un'idea di come nascondere quella segnalazione o di risolvere il problema in qualche altro modo ?? P.S. sto utilizzando da poco il TIA per progettare i PLC, quindi per molte operazioni se pur banali sto riscontrando degli intoppi. Vi ringrazio in anticipo per la vostra attenzione 😊
sae Inserita: 1 luglio 2018 Segnala Inserita: 1 luglio 2018 Premessa non è materia di mia competenza, ma puoi dare un occhiata qui credo sia similare il discorso ciao.
drn5 Inserita: 1 luglio 2018 Segnala Inserita: 1 luglio 2018 Cosi su 2 piedi... nella dichiarazione del DB usi delle strutture che poi compari a livello di dw, è proprio necessario ? Magari basta comparare un bit solo? Hai provato a scriverlo in awl o scl? ti da sempre lo stesso warning? ciao
batta Inserita: 1 luglio 2018 Segnala Inserita: 1 luglio 2018 Il TIA è orientato completamente all'uso del simbolico, e non gli piace l'uso di indirizzi assoluti. Ovviamente l'indirizzamento assoluto non è vietato, ma viene segnalato come warning in casi, come questo, ai quali non è possibile assegnare un nome alla variabile. Le soluzioni per evitare l'uso di indirizzamento assoluto sono più di una. Per esempio, potresti dichiarare delle variabili sovrapposte alle variabili booleane degli allarmi (vedi sovrapposizione con AT), oppure usare le funzioni GATHER o GATHER_BLK per appoggiare le strutture di BOOL a variabili Word o DWord. Altra possibilità è creare una funzione, alla quale potresti passare in ingresso il DB, l'indirizzo del byte di partenza e il numero di variabili da analizzare. In uscita potresti avere direttamente un bit di presenza allarme. Un modo per fare questo, è l'utilizzo dell'istruzione PEEK. Vedi esempio: #DW_Alm := PEEK_DWORD(area := 16#84, dbNumber := #DB_Alm, byteOffset := #OfsAlm); Se metti questa istruzione in un ciclo FOR, analizzi lo stato della variabile DW_Alm, ed incrementi OfsAlm, hai già risolto tutto, senza bisogno di tirare in ballo variabili e comparazioni.
AlessandroRH Inserita: 11 luglio 2018 Autore Segnala Inserita: 11 luglio 2018 scusate il ritardo, ma ero disperso in qualche stabilimento. ho seguito le soluzioni indicate dall'utente Batta e affermo che sono state tutte efficaci 👍 ringrazio tutti per essersi interessati alla mia richiesta !!
Cesare Nicola Inserita: 1 agosto 2018 Segnala Inserita: 1 agosto 2018 Mi sembra un po' un eccesso di zelo la contestazione che ti fa il cliente: se paga, però, allora ha ragione! 🙂
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