Immagina di avere un processo in più fasi, come forse un processo di erogazione di additivi, in cui sto utilizzando pompe ben caratterizzate per fornire i volumi impostati al contenitore e quindi alla fine controllo la massa del contenitore. Quello che vorrei sapere è quanta variazione aspettarsi nel peso di riempimento finale. Nel mio precedente blog Ho mostrato come simulare un livello categoriale. Estendere questo approccio a più input sarà un po' complicato e richiederà molto più lavoro. Esiste un altro modo per affrontare il problema utilizzando insieme diversi strumenti in JMP.
Passaggio 1. Crea una tabella di dati come questa:
In questa tabella ci sono SOLO 2 RIGHE! La colonna :Final ha una formula che somma le prime 4 colonne. C'è anche una formattazione speciale. Sono andato in Column Info e Properties e ho aggiunto una proprietà Sigma (circa 2/3 dell'elenco a discesa delle proprietà). Dato che sto usando una pompa ben definita simile per ogni passaggio, ho impostato sigma a 0,25 ml.
Esegui questo bit di JSL per creare la tabella:
dt=New Table( "Propagation of Error Profiler",
Add Rows( 2 ),
New Column( "Step 1", Set Property( "Sigma", 0.25 ), Set Values( [10, 12] )),
New Column( "Step 2", Set Property( "Sigma", 0.25 ), Set Values( [4, 5] )),
New Column( "Step 3", Set Property( "Sigma", 0.25 ), Set Values( [20, 22] )),
New Column( "Step 4", Set Property( "Sigma", 0.25 ), Set Values( [10, 12] )),
New Column( "Final",Formula( :Step 1 + :Step 2 + :Step 3 + :Step 4 ))
);
Passo 2. Profila la formula
Dal menu Grafico, scegli Profiler. Aggiungi la colonna "Finale" alla finestra di dialogo e fai clic su OK.
Nel Profiler Red Triangle Menu (RTM) è disponibile un'opzione speciale per aiutare a visualizzare l'errore noto dagli input. (cioè è lì solo quando sigma è specificato come proprietà di colonna.) Scegli l'opzione Prop of Error Bars.
Il passaggio successivo nel profiler è accendere il simulatore. Questa opzione si trova sotto la barra di contorno di Prediction Profiler RTM. Poiché sigma è specificato, il simulatore inizia automaticamente con la simulazione di una distribuzione normale di ciascuna variabile nel punto medio dei valori specificati nella tabella e il sigma nella proprietà della colonna. (risparmia un sacco di clic)
A questo punto il tuo profiler dovrebbe apparire così:

Passaggio 3 Inizia la simulazione
Qui è dove diventa interessante. Ho bisogno di simulare l'esecuzione del processo un numero sufficiente di volte in modo da poter gestire bene la variazione del peso finale. Per ottenere un numero rappresentativo di esecuzioni, cambia 5000 nelle N run in qualcosa come 500.000. (1 milione va bene, ma 100 milioni richiederanno un po' di tempo, anche se la stima alla fine sarà leggermente migliore)
Quindi apri la barra di struttura Simula su tabella e fai clic sul pulsante "crea tabella".
Ora ho una tabella con 500.000 esecuzioni. Ogni corsa è a un livello casuale diverso per ciascuno degli input del processo. Controllando la distribuzione degli ingressi e delle uscite, posso vedere che il lato alto del mio peso di riempimento finale deriva principalmente dalla corsa in cui gli ingressi si trovano sul lato alto del loro intervallo.
Ora che ho un'idea abbastanza precisa della variazione del peso di riempimento finale, posso utilizzare un flusso di lavoro tipico nella piattaforma di distribuzione per calcolare un intervallo ragionevole che posso aspettarmi che occupino i pesi di riempimento.
Passaggio 4 Ottenere 4 limiti sigma
Quindi, sì, potrei semplicemente calcolare un intervallo di 4 deviazioni standard su una calcolatrice quasi il più velocemente possibile per fare quello che farò dopo. Ma questo è un po' meglio e molto più interessante.
Analizza>Distribuzione> scegli la colonna finale simulata.
Dalla barra del profilo Distribuzione, seleziona Adatta continua e seleziona Normale.
Dalla barra di contorno Fitted Normal, fare clic su Set Spec Limits for k Sigma.
In questo caso, sceglierò 4 sigma. Voglio un peso di riempimento finale che è estremamente improbabile che si verifichi per attivare un allarme o un'azione di controllo.
Ultimo passaggio, sotto la barra di contorno Fitted Normal, scegli l'opzione "Save Spec Limits"
e non chiudere questo rapporto. (idealmente JMP renderebbe dinamicamente disponibile la proprietà del limite delle specifiche al simulatore del profiler, ma non è così e dovremo trasferire manualmente i valori.)
Passaggio 5
Tecnicamente ho finito. Ho eseguito una massiccia simulazione Monte Carlo dell'effetto degli input di processo sul mio peso di riempimento finale e quindi ho stimato una serie di limiti che è improbabile che si verifichino per caso.
Ma aspetta, c'è di più.
Tornerò al rapporto del profiler. In basso, sotto la barra di struttura del simulatore, attiva due opzioni. 1. Limiti delle specifiche e 2. Aggiornamento automatico dell'istogramma.
Nella finestra di dialogo dei limiti delle specifiche, utilizzare 45.5 e 49.5 come LCL e UCL. Questi sono i valori arrotondati che abbiamo derivato dall'analisi nella piattaforma di distribuzione.
Quindi, in alto a destra del profiler, c'è un pulsante Simula accanto ai grafici del profiler, fai clic su quello. Prova anche a spostare i cursori per gli input del processo, in questo modo posso vedere quanta tolleranza ha il processo per la deriva in una o più pompe. Posso anche vedere abbastanza chiaramente che se avessi pompe di precisione più elevata potrei tollerare molto più sporco o errori di calibrazione senza rischiare pesi di riempimento finali alti o bassi.
Questo è lo script per generare il profiler nelle figure
dt<<PROFILER></PROFILER>
Questo script genererà l'analisi dalla piattaforma di distribuzione
dt<<DISTRIBUTION></DISTRIBUTION>
Spero che lo trovi utile. Sono sicuro che qualcuno (o me) ha scritto questo flusso di lavoro in precedenza, ma non potevo farlo all'inizio di questa settimana, quindi eccolo di nuovo qui.
Saluti,
B