Newsgroup: it.comp.appl.access
Titolo: Tracciati... dati...

Ciao, ho un "particolare" quesito (o esigenza).
ho realizzato un sistema che acquisisce una serie di dati da un
processo di produzione e li archivia in un database in maniera
sequenziale. Ogni minuto il sistema colletta una serie di dati e li
registra in una tabella. Semplificando il tutto diciamo che il sistema
acquisisce ogni minuto una temperatura e la memorizza in una tabella
così formata:
   DATA    TEMPERATURA 
-----------------------------------------------
20/08/04         43,2
   ... ...    .. .. . .. . . . . . 
il numero dei record può arrivare a qualche milione.
Ora la mia esigenza è la seguente.
Durante l'acquisizione è necessario valutare lo stato del processo di
produzione e, durante una specifica fase, le temperature devono essere
"seguite".
Cioè l'andamento di temperatura deve essere "confrontato" con un
tracciato ideale e se il discostamento è superiore ad un certo valore
emettere una segnalazione.
Tenendo presente che in una tabella separata ho il contenuto del
tracciato ideale nel formato seguente:
  ID      TEMPERIDEALE
------------------------------------------
   1         40,2
   2         40,3
 .. .. .. ... .. .. ... . .
Il sistema acquisisce sempre la temperatura in tempo reale dal
processo ogni minuto, ma solo allo scatenarsi di un evento di processo
deve confrontare i dati acquisiti con il tracciato ideale.
Il mio problemino è che il campionamento del processo è ogni minuto,
mentre la tabella che contiene il tracciato ideale potrebbe avere una
scala del tempo differente e quindi "imparagonabile" con il processo.
Faccio un esempio per chiarire:
CAMPIONI                CAMPIONI
PROCESSO              IDEALI
ID=1 T=1                   ID=1 T=1
ID=2 T=2                   ID=2 T=2
...                               ...
...                               ...
...                               ...
...                               ...
ID=200 T=200           ID=50 T=50
Cioè le due tabelle descrivono entrambe un processo di 200 minuti,
solo che la prima lo fa con campioni di 1 minuto, mentre la seconda lo
fa con campioni di 4 minuti. Tra l'altro la seconda potrebbe avere
campioni variabili tipo:
CAMPIONI                CAMPIONI
PROCESSO              IDEALI
ID=1 T=1                   ID=1 T=1 c=4
ID=2 T=2                   ID=2 T=2 c=3
...                               ...
...                               ...
...                               ...
...                               ...
ID=200 T=200           ID=50 T=50 c=4
dove "c" indica il numero dei minuti dal campione successivo....
come posso creare un algoritmo che mi possa "interpolare" i dati 
per poterli rendere confrontabili punto a punto fra le tabelle?
grazie a tutte le anime pie...
aiutatemi... sono sommerso di idee ma nessuna veramente "seria".
GRAZIE!!!!
ciao


Circa 500.000 record all'anno se misuri e scrivi ogni minuto. Una inezia per
Access; questo non č un problema.
Perchč non costruisci una tabella con le letture ogni 4 minuti da affiancare
a quella con le letture ogni minuto?
Ogni quattro minuti lo stesso dato č scritto su due tabelle. Potresti
eventualmente leggere il numero di minuti dal campione successivo ("c") e
usare questo intervallo per la scrittura sulla seconda tabella.
Alla fine mi sembra di aver capito che ti interessa paragonare un intervallo
per esempio di 200 minuti tra due tabelle.
Fare una media? Riempire i vuoti con un valore medio?
Comunque non sono sicuro di aver capito il tutto. Puoi essere piů preciso?
Ciao, Carlo


Si, Carlo, mi rendo conto di essere stato abbastanza confuso...
vediamo di essere più chiari.
Ho la tabella DATI che contiene i dati acquisiti, mentre la tabella
IDEALE contiene i dati ideali di lettura che il processo dovrebbe
assumere. 
Su dati acquisisco anche il momento della lettura, leggendo ogni
minuto avrei una tabella del genere:
IDREC  ISTANTE VALORE
   1        10.00.00   10,2
   2        10.01.00   10,3
   3        10.02.00   10,4
e così via
nella tabella ideale non ho un riferimento temporale vero e proprio.
Diciamo che se il processo durasse 200 minuti la tabella reale
conterrebbe 200 record. La tabella ideale esprimerebbe lo stesso
intervallo di tempo di 200 minuti con meno record, è come se avessi
meno campioni all'interno. Si tratta di riferire i campioni di ideale
ai campioni del processo nei giusti tempi. Ti riporto in basso questo
piccolo schema:
T A B E L L A R E A L E             TABELLA IDEALE
IDREC  ISTANTE VALORE        IDREC VALORE
   1        10.00.00   10,2               1          10,4
   2        10.01.00   10,3               record mancante
   3        10.02.00   10,4               record mancante
   4        10.03.00   10,2               2          10,5
   5        10.04.00   10,3               3          10,6
   6        10.05.00   10,4               record mancante         
   7        10.06.00   10,2               record mancante
   8        10.07.00   10,3               record mancante
   9        10.08.00   10,4	            4          10,5
   10      10.09.00   10,2               5          10,4
   11      10.10.00   10,3               record mancante
   12      10.11.00   10,4               6          10,8
Praticamente la tabella ideale ha record in meno rispetto alla reale.
in questo caso la reale ne ha 12 e l'ideale 6.
Nella ideale praticamente ho i punti critici in cui eseguire
effettivamente il controllo, mentre in quelli che ho indicato come
record mancanti (perchè riferiti ad un istante che esiste in tabella
reale) il risultato dovrebbe essere ricavato per interpolazione con i
valori noti. (so di essere confuso).
Se può aiutarti:
immagina che con tabella reale tracci un grafico e con tabella ideale
tracci un altro grafico.
Entrambi i grafici saranno ricavati da punti noti... solo che il primo
avrà maggiori punti, mentre il secondo avrà minori punti. Il mio
problema è verificare che il primo grafico sia nell'intorno del
secondo grafico.
Come se po fa?
grazie Carlo per la tua disponibilità.


Me ne occuperò domani mattina.
Se trovi una soluzione che non sia la media, e credo che questa sia l'unica,
fammelo sapere.
Ciao, Carlo



OK, grazie Carlo.
Veramente Grazie.
Aspetto Tue Notizie.