Come utilizzare le app per la produzione in ambienti ad alta concentrazione di lavoro
  • 04 Nov 2023
  • 8 Minuti da leggere
  • Contributori

Come utilizzare le app per la produzione in ambienti ad alta concentrazione di lavoro


Article Summary

Come utilizzare le app di produzione in ambienti ad alto tasso di miscelazione

Scoprite come impostare le istruzioni di lavoro in un ambiente ad alta miscelazione con Tulip.

In questa guida imparerete...

  • Come combinare le funzioni di Tulip per adattarle al vostro ambiente ad alta miscelazione.
  • I pro e i contro di ogni approccio alla gestione delle variazioni in Tulip.

Gestite centinaia di SKU in officina? Oppure avete una serie di processi che vengono riutilizzati per più linee di prodotto?

Questa guida illustra tutti i modi in cui Tulip può aiutarvi a gestire l'elevata variabilità dei vostri prodotti.

I fattori che possono creare un "ambiente ad alta variabilità" sono molteplici, per cui non esiste un singolo strumento o funzione in Tulip che possa coprire tutti gli scenari ad alta variabilità. Al contrario, è possibile combinare più funzioni, a seconda della situazione. I fattori chiave includono

  • Numero di dispositivi collegati
  • Variazione tra le SKU
  • Requisiti analitici per i dati Tulip
  • Esistenza di "famiglie" di prodotti

In generale, esistono 5 modi diversi per gestire un elevato mix di prodotti:

  • App: Creare applicazioni specializzate per ogni prodotto o per ogni famiglia di prodotti.
  • Passi: Creare diverse combinazioni di gruppi di passi
  • Tabelle: Caricare dinamicamente i dati delle istruzioni di lavoro dalle tabelle senza creare più passaggi.
  • Trigger: Utilizzo di istruzioni "If" o concatenazioni di stringhe per gestire centinaia di combinazioni
  • SQL: Se avete scritto SQL in passato, potete usare le funzioni di Connector per lavorare con un database SQL esterno.

Ecco alcune strategie che si possono utilizzare con ciascuna di queste funzioni.

Nota: questa guida è destinata agli utenti di Tulip con una certa esperienza nella creazione di applicazioni. Se non avete ancora costruito un'applicazione, dovreste iniziare con Tulip Basics.

Le applicazioni

Ci sono due modi per sfruttare più app per gestire la complessità.

Il primo consiste nel creare un'applicazione distinta per ogni prodotto o SKU e utilizzare un'applicazione di routing per inviare automaticamente gli operatori all'applicazione corretta. Questa soluzione funziona bene se i prodotti presenti sul vostro piano hanno una sovrapposizione limitata nelle istruzioni di lavoro.

Ecco una guida completa alle app di routing.

Per ottenere questo risultato, è necessario creare un'applicazione unica chiamata "Routing". Questa potrebbe essere eseguita su ogni stazione del piano per impostazione predefinita. Quando un operatore inizia un nuovo ordine di lavoro, può scannerizzare l'ordine di lavoro e viene automaticamente indirizzato all'app corretta.

La fase potrebbe assomigliare a questa fase del terminale Tulip.

Si potrebbe quindi scrivere una serie di dichiarazioni "If" in un trigger sul passo per indirizzare gli operatori al set di istruzioni corretto.

Ecco come apparirebbe un'istruzione "If" per un prodotto con SKU "1A2B3X4D".

Ciò rappresenta una sfida: se un operatore scansiona un codice a barre nell'applicazione di routing, è necessario trovare un modo per passare questi dati all'applicazione successiva. Utilizzate questa guida per imparare a passare i dati tra le app.

Potreste poi includere una sorta di conferma all'inizio di ogni app per assicurarvi che l'operatore non abbia digitato male lo SKU e non sia finito nell'app sbagliata.

Duplicazione di un'app con una serie completa di istruzioni

È possibile utilizzare l'approccio "app multiple" anche quando tutte le app utilizzano un sottoinsieme di una serie di passaggi. Questo funziona quando ci sono molti passaggi comuni tra i prodotti.

Per prima cosa, si dovrà creare un'applicazione "Modello generale" che contenga tutti i passaggi utilizzati da più prodotti o SKU. Poi, per ogni prodotto distinto, duplicate l'applicazione e tagliate tutti i passaggi che non sono rilevanti per quel particolare prodotto.

Queste strategie basate sulle app sono facili da gestire per tutti i nuovi utenti di Tulip, poiché tutti i Trigger sono semplici. Il modello "un'app per un prodotto" è facile da capire. Tuttavia, se si desidera modificare il design dei singoli passi, questo approccio richiede di rifare il passo in ogni singola applicazione.

Passi/gruppi di passi

Se i vostri prodotti hanno istruzioni di lavoro simili, potete anche rendere più dinamici i singoli passaggi e i gruppi di passaggi. Invece di creare più app, si possono creare molti gruppi di passi all'interno di un'unica app e instradare gli operatori attraverso i gruppi di passi con una logica di attivazione.

È possibile che si voglia includere una fase di scansione del codice a barre, come nell'esempio riportato nella sezione precedente. In questo caso, si dovranno memorizzare i dati del codice a barre come variabile per collegare il codice a barre a un completamento dell'applicazione e indirizzare l'operatore alla fase corretta.

Poiché i dati del codice a barre sono ora memorizzati all'interno dell'applicazione, è possibile farvi riferimento anche in un secondo momento, se si desidera ricombinare le istruzioni di lavoro in più modi utilizzando i Trigger.

In questo modo è facile aggiornare tutte le fasi delle istruzioni di lavoro in un unico posto dall'interfaccia principale di Tulip. Tuttavia, se avete centinaia o migliaia di SKU, potreste voler rendere ancora più semplice l'aggiornamento delle fasi in tempo reale, in modo che gli operatori principali o i supervisori possano apportare modifiche in tempo reale.

Per aggiornare in tempo reale ogni serie di istruzioni di lavoro, si può usare un modulo di passo con pochi campi. Immaginiamo che ogni fase delle istruzioni di lavoro abbia i seguenti campi:

  1. Titolo dell'istruzione principale
  2. Dettagli dell'istruzione
  3. Immagine
  4. Note speciali

L'aspetto potrebbe essere il seguente:

Per aggiornare queste istruzioni in tempo reale, è possibile utilizzare un modulo passo come questo:

Quindi, è possibile memorizzare i risultati in una tabella o in un database SQL e recuperarli dinamicamente quando un operatore passa attraverso l'applicazione in base al campo "Numero di passo". Ecco come fare.

Tabelle

La funzione Tabelle di Tulip consente di creare un database con i dati dell'applicazione o con una serie di istruzioni senza scrivere alcun codice. È possibile utilizzarle per le istruzioni se:

  1. Tutti i prodotti hanno diverse serie di istruzioni.
  2. I prodotti condividono una serie di processi comuni, come la fusione, la pulizia o la revisione, e la variabilità all'interno di questi processi è minima o nulla.

Inoltre, ogni fase delle istruzioni deve avere lo stesso contenuto, come un titolo, una serie di dettagli e un'immagine.

Se le vostre istruzioni di lavoro non rientrano in nessuna di queste due categorie, le tabelle potrebbero non essere adatte.

Tuttavia, se seguono uno di questi schemi, è possibile creare un'applicazione con un solo passaggio che carica dinamicamente le istruzioni di lavoro da una tabella.

Per prima cosa, creare una tabella con campi come questo:

Quindi, aggiungere almeno un record, ad esempio:

Quindi, create un'applicazione e create un passo che carichi tutte le istruzioni di lavoro in modo dinamico. Utilizzerete il widget di testo "Table Record" per modificare il testo e le immagini del passo non appena l'operatore è pronto a procedere.

Ecco un esempio di layout che utilizza i campi del widget "Table Record":

Poi, quando un operatore preme il pulsante "Avanti", non si vuole passare al passo successivo. Si dovrà invece scrivere la logica in modo che venga caricato il record successivo della tabella. È necessario utilizzare una variabile che si incrementi a ogni pressione del pulsante per cambiare il record. In questo modo:

QUANDO

  • "Il pulsante è premuto"

ALLORA

  • "Manipolazione dei dati" "Incremento del valore" "Contatore"
  • Da: "Valore statico" "Numero" "1"
  • "Tabella Record" "Carica record"
  • Per ID "Valore statico" "testo" (variabile contenente SKU) + (variabile contatore) in: (segnaposto record)

In questo modo, avrete bisogno di una variabile che contenga lo SKU attivo e di un'altra che conta costantemente man mano che l'operatore avanza.

Questo approccio facilita la manutenzione di tutti i contenuti in più serie di istruzioni di lavoro. Funziona bene se le istruzioni hanno un formato coerente, ma se le istruzioni contengono più tipi di passaggi, probabilmente si dovrà usare un metodo diverso.

Uso della logica di attivazione

In quasi tutti gli scenari sopra descritti, è necessario creare trigger personalizzati per costruire con successo le vostre applicazioni. Ne abbiamo già mostrati di semplici, come

  • Incrementare una variabile contatore
  • Passare a una nuova applicazione
  • Passare a un altro gruppo di passi
  • Memorizzare un numero di codice a barre

Ecco alcuni schemi più avanzati che potrebbero comparire in uno qualsiasi degli schemi di costruzione dell'app descritti sopra:

Serie di dichiarazioni IF

Supponiamo di avere 50 diversi SKU attivi in fabbrica. Ognuno di essi ha una serie separata di istruzioni di lavoro. Se volete creare una "app di routing" che invii automaticamente gli operatori alla serie di istruzioni corretta, dovrete creare 50 dichiarazioni "if" con numeri di SKU diversi. È possibile fare tutto questo in un unico Trigger. Sebbene questo richieda la creazione manuale di molti if/then, consente a chiunque di fare clic sul trigger e di capire facilmente cosa sta accadendo.

Ecco un esempio di un'istruzione if/then:

Concatenazione di stringhe

Concatenazione significa semplicemente "combinare due stringhe". Poiché gli ID dei record della tabella sono stringhe, si può essere creativi nell'usare l'ID della stringa per servire il contenuto corretto all'operatore.

Supponiamo di avere un processo di pulizia comune a più linee di prodotto. Ha 5 fasi. Non si vuole ricostruire le stesse istruzioni di pulizia in più applicazioni, perché sarebbe difficile da mantenere.

Si potrebbe invece creare una tabella chiamata "Procedure comuni" che includa le istruzioni per i processi comuni. Quindi, si potrebbero usare ID di record come "Pulizia-1" e "Pulizia-2" per mostrare una serie di passaggi intorno a un processo.

Poi, nell'Editor di trigger, si combinerà il processo specifico con una variabile che si incrementa a ogni avanzamento di fase. Ecco l'esempio della sezione "Tabelle" di combinare due variabili nel campo "Valore statico: testo".

Con la concatenazione di stringhe, si può non sapere quando fermarsi. In altre parole, se ci sono 5 fasi nel processo di pulizia, è necessario passare a un'altra fase quando il contatore raggiunge "6". Per ottenere questo risultato, è possibile utilizzare un'istruzione "If" nel trigger per verificare innanzitutto se il passo esiste.

In questo modo:

SE

  • "Tabella" "istruzioni_di_lavoro_dinamiche" "ha un record con ID".
  • "Valore statico" "testo" (inserire qui il contenuto dinamico)

Utilizzo di SQL

Se avete esperienza nella creazione di database SQL, potete anche creare un connettore SQL per caricare dinamicamente testo e immagini da un database SQL. Ciò consente di creare un modello in un unico passaggio e di caricarvi i dati, proprio come nell'esempio delle Tabelle.

Questo funziona bene se avete requisiti complicati per il caricamento dei dati. Se intendete utilizzare questo approccio, contattate un rappresentante Tulip, che sarà lieto di consigliarvi su come configurare il vostro database.

Ulteriori letture


Avete trovato quello che cercavate?

Potete anche andare su community.tulip.co per porre la vostra domanda o vedere se altri hanno affrontato una domanda simile!


Questo articolo è stato utile?