iz0bav Inserito: 16 marzo 2016 Segnala Share Inserito: 16 marzo 2016 Salve ho un plc omron cs1h con modulo ad003 e sensore di temperatura della crouzet che ha una lettura da - 10 a +40 gradi e tensione in uscita 0 +10v Vorrei visualizzare la temperatura su un monitor ns5 ma non riesco a gestire il tutto. Se gentilmente potete darmi qualche informazione su come effettuare la logica ve ne sarei grato. Premetto che di plc non ne so tantissimo, e lo uso solo per gestire in modo semplice la gestione della domotica di casa e dell'antifurto. Ho provato ad usare la funzione scl ma senza risultati Di seguito quello che ho fatto Allora l'ingresso della sonda sta sul cio 2011 del modulo ad003 Muovo con la funzione mov l'ingresso su una dm2000 Poi la funzione scl la configuro nel seguente modo, dm2000, dm2010 e il risultato dm2020 Premetto che i valori nella dm2010 sono 0000 +1 0000 +2 50(lettura massima dei grandi del modulo temperatura) +3 4000 (lettura massima del modulo temperatura in tensione pari a 10v) Nella dm2020 ho la lettura in gradi che poi visualizzo sul monitor ns5 Ma la lettura non mi varia in modo costante ma solo a salti, ossia se leggo 22 gradi e soffio nel sensore per aumentare la temperatura mi salta a 35 gradi Dove sbaglio? Dimenticato di dire che la sonda se la misuro con un voltmetro aumenta in modo graduale come anche il valore che leggo in ingresso su cio2011 Grazie a presto Link al commento Condividi su altri siti More sharing options...
Ctec Inserita: 16 marzo 2016 Segnala Share Inserita: 16 marzo 2016 L'errore dovrebbe stare nel tipo dei dati. La SCL vuole valori UINT per i valori di ingresso e di scalatura X, mentre vuole BCD per le scalature Y e per il risultato. Nei tuoi parametri, il 50 deve essere espresso in BCD (quindi #0050) e non in decimale (&50), altrimenti il valore che scivi effettivamente è #0032 (50 in decimale espresso in esadecimale). Quindi, te scaleresti l'ingresso 0-4000 (lettura convertita) in 0-50°. Però te prima dici che devi scalare tra -10° e 40°. Allora la SCL non va bene e devi usare la SCL2 o la APR (meglio la seconda se conti di usare tutti interi e non BCD) Link al commento Condividi su altri siti More sharing options...
iz0bav Inserita: 16 marzo 2016 Autore Segnala Share Inserita: 16 marzo 2016 Grazie per la disponibilità nel venirmi in aiuto, appena rientro a casa provo subito e posto i risultati Di nuovo grazie Link al commento Condividi su altri siti More sharing options...
iz0bav Inserita: 17 marzo 2016 Autore Segnala Share Inserita: 17 marzo 2016 Niente da fare non riesco a far funzionare la lettura, in uscita del scl o scl2 o apr non ho valori graduali ma va a salti del tipo ; se ho in uscita 16 gradi e soffio dentro al sensore invece di salire in modo proporzionale mi sale a step di 3 e passa gradi, tipo 16,19,22,26, 35 Gentilmente potete inviarmi sulla mail un esempio compilato Grazieeeee L'ingresso del modulo analogico ad003 è il cio2011 Link al commento Condividi su altri siti More sharing options...
Ctec Inserita: 17 marzo 2016 Segnala Share Inserita: 17 marzo 2016 Ti metto qui (aiutiamo tutti, così) la parte di uso con APR, funzionante perfettamente su simulatore con tutti i dati in INT (non usare BCD): La lettura dal modulo è supposta da 0 a 4000, limite inferiore temperatura (con ingresso a 0V) -10°C, limite superiore temperatura (con ingresso 10V) +40°C Te lo scrivo in pseudoistruzioni utilizzando gli indirizzi che hai specificato te Tabella dati per APR MOV #0801 D2010 ; useremo tabella a 2 punti con dati con segno (INT) MOV +0 D2011 ; valore di ingresso X0 MOV -10 D2012 ; valore in ° Y0 MOV +4000 D2013 ; valore in ingresso X1 MOV +40 D2014 ; valore in° Y1 A questo punto basta fare così: MOV 2011 D2000 ; metti in D2000 la lettura 0-4000 APR D2010 D2000 D2020 ; esegui la conversione e metti il risultato in D2020 Link al commento Condividi su altri siti More sharing options...
iz0bav Inserita: 17 marzo 2016 Autore Segnala Share Inserita: 17 marzo 2016 Innanzitutto grazie per la pazienza ,allora ho fatto come da te suggerito ma in uscita non ho nulla. Sicuramente a causa delle mie poche basi sulla programmazione non riesco a trovare il problema ti allego screenshot delle istruzioni che mi hai cortesemente illustrato. Link al commento Condividi su altri siti More sharing options...
Ctec Inserita: 17 marzo 2016 Segnala Share Inserita: 17 marzo 2016 Questo è l'esempio di cui sopra, fatto lavorare in simulazione. Come vedi, con il valore da me immesso di 2000 in CIO2011 (metà range), mi dà una conversione corretta di 15°C Link al commento Condividi su altri siti More sharing options...
iz0bav Inserita: 17 marzo 2016 Autore Segnala Share Inserita: 17 marzo 2016 Allora in effetti provando in simulazione funziona bene e i valori cambiano. Se pero vado con il plc connesso non ho valori Link al commento Condividi su altri siti More sharing options...
Ctec Inserita: 17 marzo 2016 Segnala Share Inserita: 17 marzo 2016 Leva la MOV che da CIO2011 scrive in D2000, e mettici te un valore in D2000 (collegato col PLC). Se il valore in uscita non cambia, controlla che i dati nelle varie D2000-D2014 non vengano sovrascritte da qualcosa d'altro. Deve andare. Link al commento Condividi su altri siti More sharing options...
iz0bav Inserita: 17 marzo 2016 Autore Segnala Share Inserita: 17 marzo 2016 Il mistero si infittisce, ho tolto la mov e inserito i valori manualmente ma niente da fare non ho valori in uscita, ho anche cambiato tutte le dm usando da 3000 in poi e stesso problema, in simulazione funziona. La ad003 e il sensore di temperatura funzionano perfettamente e in cio2011 vedo le variazioni. Domani resetto tutte le memorie e il plc e vedo di capire dove sta il problema. Link al commento Condividi su altri siti More sharing options...
iz0bav Inserita: 18 marzo 2016 Autore Segnala Share Inserita: 18 marzo 2016 ho resettato tutto ma niente da fare non ho valori in uscita Link al commento Condividi su altri siti More sharing options...
Ctec Inserita: 18 marzo 2016 Segnala Share Inserita: 18 marzo 2016 Non so che dire. Oltre che nel simulatore, è una parte di programma che ho dentro innumerevoli macchine... Link al commento Condividi su altri siti More sharing options...
iz0bav Inserita: 19 marzo 2016 Autore Segnala Share Inserita: 19 marzo 2016 Perfetto ho appena risolto il problema Non so il motivo ma mettendo la funzione apr all'inizio del progetto del mio plc che comprende una trentina di sezioni magicamente mi da i valori in uscita e risponde perfettamente al variare della temperatura. Se la funzione apr la rimetto alla fine del progetto quindi prima del end non va più. Ctec che dire grazie per la pazienza e complimenti per la pronta disponibilità 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