silvio83mn Inserito: 18 giugno 2007 Segnala Inserito: 18 giugno 2007 BUON GIORNO DOPO AVER RISOLTO BUONA PARTE DEI PROBLEMI DURANTE L'ESECUZIONE DEL MIO PROGETTO ORA MI TROVO DIFRONTE A UN NUOVO PROBLEMA......UNA VOLTA IMPORTATO IL VALORE DI HSC0 (IL NUMERO DEGLI IMPULSI DEVO FAR ESEGUIRE DELLE OPERAZIONI AL PLC PER CALCOLARE LA POSIZIONE DEL PRRACCIO:DEVO DIVIDERE E MOLTIPLICARE IL VALORE HC0 PER DELLE VARIABILI!!!DURANTE LA COMPILAZIONE NON SCRIVE NESSUN TIPO D'ERRORE!!! MA POI SE VADO A VEDERE LA COMPILAZIONE DEL PROGRAMMA IL BLOCCO DELLA DIVISIONE REALE DIVENTA ROSSO E NON BLU!!! SCRIVENDO IN USCITA NAN!!!COSA VUOL DIRE ??IL SIGNIFICATO DA GUIDA DICE CHE IL VALORE NON è VALIDO!!!MA PERCHE SONO VADIABILI REALI PERCIO.. DOVREBBE FUNZIONARE!!!!
Luca Bettinelli Inserita: 18 giugno 2007 Segnala Inserita: 18 giugno 2007 Regolamento PLCForum+-->CITAZIONE(Regolamento PLCForum)Grazie
Gianmario Pedrani Inserita: 18 giugno 2007 Segnala Inserita: 18 giugno 2007 Prima di tutto scrivi in minuscolo (senza gridare ) seconda cosa hsc0 è un numero a 32 bit intero e non reale.... quindi prima devi salvare il valore in una variabile a 32 bit poi la trasformi in reale e da li fai le tue operazioni....ciaoooooo
silvio83mn Inserita: 18 giugno 2007 Autore Segnala Inserita: 18 giugno 2007 (modificato) scusate per il maiuscolo!!non ci ho fatto caso !!!è che stavo disegnano e normalmente inserisco il look per le maiuscole!!per quanto riguarda il mio problema io ho copiato il valore di hc0 in vd8..questo valore lo devo dividere per 4 e qui se si genera l'errore!!!!!e non capisco a cosa è dovuto!!! Modificato: 18 giugno 2007 da silvio83mn
dany-dm Inserita: 18 giugno 2007 Segnala Inserita: 18 giugno 2007 ciao,Hai usato il comando "DIV_DI" (divisione a 32 bit di numeri INTERI)oppure "DIV_R" (divisione a 32 bit di numeri REALI)? Se hai usato il primo hai fatto giusto.Come detto da Gianmario Pedrani, il contatore utilizza numeri INTERI a 32 bit
silvio83mn Inserita: 18 giugno 2007 Autore Segnala Inserita: 18 giugno 2007 per essere più preciso ho trasferito il valore di hc0 in vd0.....poi poi ho fatto la divisione!!!un numero intero diviso un altro numero intero non sempre da come risultato numeri interi per questo ho usato div_r!!perchè avrei sbagliato
puntalino Inserita: 18 giugno 2007 Segnala Inserita: 18 giugno 2007 (modificato) segui le spiegazioni date da gianmario prima devi convertire da doppio intero in reale Modificato: 18 giugno 2007 da puntalino
Simone70 Inserita: 18 giugno 2007 Segnala Inserita: 18 giugno 2007 un numero intero diviso un altro numero intero non sempre da come risultato numeri interi per questo ho usato div_r!!Per effettuare una divisione tra numeri reali, i numeri, appunto, devono essere reali e non interi.
dany-dm Inserita: 19 giugno 2007 Segnala Inserita: 19 giugno 2007 Se ti serve anche la virgola dopo la divisione hai ragione, devi usare i numeri reali.L'hsc ha un numero intero a 32 bit quindi, prima di dividere, devi convertirlo in reale usando il comando "DI_R". fai tutti i tuoi calcoli con numeri reali e se devi riconvertirlo in numero intero devi usare il comando "round"
silvio83mn Inserita: 24 giugno 2007 Autore Segnala Inserita: 24 giugno 2007 ok avevate gagione ....dividevo numeri interi a 32bit con operazioni reali...comunque risolto....questo broblema.... almeno aprirò un altro post per spiegarmi meglio.....grazie
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