ms4369 Inserito: 25 febbraio 2016 Segnala Share Inserito: 25 febbraio 2016 Buongiorno, non riesco a fare funzionare la funzione APR, i parametri sembrano giusti. Sul plc e' installato un modulo analogico CS1W-AD081 con l'ingresso analogico 1 collegato ad un segnale da 0 a 10V non lineare. Ho pensato di utilizzare la funzione APR per creare una scalatura del segnale tramite punti intermedi predefiniti, esempio: a 2V corrisponde 2mm a 3V corrisponde 4mm, .... ingresso segnale: 0... FA0 (0..10V) risultato APR: 0...1000 (BCD) (corrispondente a 10,00 mm) canale di controllo: C=#4004, C+1=#1000, C+2=&0, C+3=&903, C+4=#200, C+5=&1025, C+6=#400, C+7=&1184, C+8=#600, C+9=&1331, C+10=#800, C+11=&1475, C+12=#1000 ----------- Funzione -----| APR | ----------- | C | primo canale di controllo D960 ----------- | S | canale ingresso analogico (0..FA0) ----------- | R | risultato in D980 (0..1000) BCD ----------- la funzione non da errori, ma il risultato rimane a zero. Qualcuno mi può aiutare? Grazie. Link al commento Condividi su altri siti More sharing options...
Ctec Inserita: 25 febbraio 2016 Segnala Share Inserita: 25 febbraio 2016 Ci son diverse cose che non vanno. Innanzi tutto, in C devi specificare nel tuo caso #4005, perché hai elencato 6 punti, e quindi davi mettere 6-1=5 nella parte bassa. Poi, nel tuo caso, in C+1 devi mettere il valore dell'ultimo X, cioè &1475. Invece hai messo #1000. E infine la cosa che non fa funzionare un tubo: i valori X devono essere crescenti (X0<X1<...<Xm), ma nel tuo caso nella sequenza c'è (non metto gli &) 0, 903, 1025, 1184, 1131, 1475. Come vedi il 5° è minore del 4° e non può essere. Pertanto, riguarda la tabella, ti sconsiglio di usare valori UINT, usa invece INT (quindi immetti #0005 in C), tanto per valori fino a 4000, INT e UINT sono identici. Imposta quindi X0 a 0 anziché al valore massimo, viene più chiaro. E se non sei sicuro che il valore di ingresso non superi 1475 nel tuo caso, aggiungi un punto in tabella come X=4000 (massimo valore possibile in ingresso analogico) e Y=#1000, così che non potrai avere valori che eccedano la misura massima in caso di letture analogiche "strane". 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