• Non ci sono risultati.

5.3 Creazione di una routine a supporto dell’implementazione AR

Durante l’applicazione pratica di tutti gli step procedurali descritti al paragrafo precedente, è stato riscontrato che le problematiche maggiori si incontrano durante lo step di implementazione. I programmi impiegati infatti non sono sempre così intuitivi, e il gran numero di operazioni da gestire e di informazioni da fornire rende ostica la programmazione software del sistema AR.

Inoltre spesso sono richieste buone conoscenze informatiche e di programmazione, e operatori/programmatori che non siano specializzati in questo tipo di software possono incontrare diverse difficoltà.

Durante la fase di studio, è stato quindi creato un wizard, usando il linguaggio di programmazione C#, che aiuti il programmatore durante l’implementazione di una procedura basata sulla AR e faciliti la stessa.

In particolare, è stato realizzata una procedura guidata per le operazioni di assemblaggio di componenti che utilizza un sistema di tracking marker based. L’algoritmo utilizzato è mostrato nella figura seguente (Figura 5-7).

Analizziamo la procedura. Come primo passo, la sequenza di assemblaggio deve essere divisa in task: attraverso questa divisione preliminare, si individuano delle sequenze di sub assemblaggio da eseguire.

Ogni task è composto a sua volta da operazioni elementari. Analizzando quest’ultime, è stato riscontrato che si tratta, nella maggior parte dei casi, di ripetizione di operazioni standard. Per esempio, la classica sequenza di sub assemblaggio potrebbe essere “prendi utensile/componente da…”, “assembla il componente su…”, “posiziona l’utensile/il componente in….”, “usa utensile per…”. Da questa classificazione è emerso che le operazioni elementari differiscono solo in parte, per quanto riguarda ad esempio l’utensile/componente da prendere e collocare, o il modo in cui usarli; valutate quindi dal punto di vista della successiva generazione dei contenuti virtuali, ci sono gruppi di operazioni elementari che hanno la stessa struttura.

E’ stata creata dunque una tabella (Tabella 5-3) riassuntiva delle operazioni elementari standard ritrovate nell’esempio particolare, eper ogni operazione sono state identificate le istruzioni da fornire:

• Istruzioni testuali

• Elementi virtuali standard (file .wrl di utilizzo tipico,come frecce lineari, toroidale, riquadri,o etc.)

• Immagini

o Del singolo componente o Dell’assemblato/subassemblato • Strumentazione

• Animazionie (file .wrl più complessi e dotati di movimento, costruiti ad hoc per simulare l’operazione da compiere)

• --- Operazione

elementare

Testo Contenuto virtuale

Posizione Immagine Animazione Altro

Tabella 5-3: Istruzioni di supporto all’operatore

Sulla base di questa tabella, per ogni operazione elementare è stata creata una procedura AR standard tramite il software dedicato all’implementazione della procedura AR (nella fattispecie Metaio Unifeye), e memorizzata in un database. Ognuna di loro è di fatto un file master, in formato .xml, che sarà estratto e sottoposto a variation tramite modifica automatica dello script,e compatibilmente con il software AR.

È stata appositamente ideata un’interfaccia per la gestione, modifica e data input dello script. La schermata in Figura 5-8 consente l’apertura del file master da modificare.

Figura 5-8: Interfaccia AR Wizard

Una volta selezionato il file master dalla finestra “inserimento operazioni elementari”, clikkando su “gestione elementi virtuali” si apre la schermata in Figura 5-9 dx per l’inserimento dei parametri principali che possono essere modificati a seconda del caso particolare, ossia:

• Numero d’ordine dell’operazione; • Testo;

• Contenuto virtuale statico in formato .wrl. Per ciascuno di essi: o Associazione wrl al marker corretto;

o Inserimento dei parametri di posizione (in termini di scostamenti lungo X, Y e Z dal sistema di riferimento del marker);

o Inserimento parametri di scala; • Immagine

• Animazioni. Per ciascuna di esse:

o Associazione wrl al marker corretto;

o Inserimento dei parametri di posizione (in termini di scostamenti lungo X, Y e Z dal sistema di riferimento del marker);

o Inserimento parametri di scala

Ogni operazione creata viene inserita automaticamente in un workflow che rispecchia il flowchart creato inizialmente, cioè ogni operazione creata viene collegata automaticamente all’operazione precedente.

Questo vale per le operazioni elementari che si succedono ordinatamente. In alternativa, il programmatore può decidere di creare punti di verifica, (Figura 5-9:punto di verifica nel workflow Sx) schema; Dx) interfaccia) cioè scelte da porre all’operatore, la cui risposta può creare collegamenti a step non subito precedenti nel flowchart, già effettuati ma che devono essere ripetuti, oppure creare una strada alternativa collegandosi a un workflow esterno.

Figura 5-9:punto di verifica nel workflow Sx) schema; Dx) interfaccia

Quest’ultimo caso è chiarificabile con questo esempio: durante il controllo della correttezza di un montaggio, nel caso in cui l’operatore dovesse verificare che lo stesso non è andato a buon fine, dando l’apposito comando sull’interfaccia il software richiama il file con la procedura dì smontaggio, procedura costruita in un workflow esterno, al termine della quale si rimanda al flow chart principale.

L’unico compito che prevede la conoscenza del software AR da parte del programmatore, è la creazione del file di tracking nel quale vengono definiti i marker presenti nella scena, ed eventuali connessioni e distanze tra i marker stessi (vedi descrizione software Metaio in 5.2 -).

Dato il grande sviluppo dei sistemi CAD e dei software di simulazione per l’aspetto critico del posizionamento dei contenuti virtuali rispetto ai marker può essere utile inserire, nella simulazione 3D virtuale dell’ambiente, i marker che saranno presenti nella scena reale e calcolare tramite il CAD le distanze marker-posizione wrl nell’ambiente di lavoro, dato da inserire nel workflow master.

Durante l’implementazione di una nuova procedura l’operatore può aggiornare il database delle procedure AR e il database dei contenuti virtuali.

Attraverso questo tool, il programmatore delle istruzioni AR è guidato nella creazione di un operation sheet innovativo, senza in realtà conoscere appieno le fondamenta della programmazione AR.

Questo primo approccio rappresenta una base di partenza che può essere migliorata in modo da aprire la programmazione di software AR a scenari più ampi.