Con lo sviluppo di esperimenti a distanza, didattica online e tecnologie dell'Internet delle Cose, fornire accesso web a modelli di simulazione locali o dispositivi sperimentali è diventata una direzione importante nello sviluppo delle piattaforme sperimentali1,2,3,4. Lavori recenti hanno ulteriormente integrato laboratori dotati di tecnologia IoT con metodologie di apprendimento basate su progetti e accesso locale o remoto, dimostrando il continuo sviluppo di piattaforme sperimentali flessibili e interconnesse nell'ambito della formazione ingegneristica5. Per gli esperimenti sui sistemi di controllo, gli utenti devono solitamente regolare i parametri di ingresso tramite un browser e osservare gli stati di uscita in tempo reale6,7. I metodi convenzionali richiedono tipicamente una pagina web dedicata, logica di associazione del controllo e interfaccia di comunicazione dati per ciascun oggetto sperimentale8,9. Quando le variabili nel modello di back-end cambiano, spesso è necessario modificare di conseguenza la pagina front-end, generando un notevole lavoro di sviluppo ripetitivo e limitando l'espansione rapida della piattaforma sperimentale.
Il protocollo di interoperabilità remota (RIP) fornisce un livello middleware tra modelli sperimentali back-end e interfacce Web front-end10,11. Nell'approccio basato su RIP per la generazione automatica di interfacce utente descritto in lavori precedenti, il server RIP fornisce metadati per ogni esperimento, inclusi nomi delle variabili, attributi di input/output, tipi di dati, valori minimi, valori massimi, precisione, descrizioni e metodi di lettura/scrittura disponibili11. Un client Web può quindi utilizzare questi metadati per creare gli elementi HTML corrispondenti, come etichette, campi di input numerici, cursori, controlli booleani e visualizzazioni di output, durante il caricamento o l'aggiornamento della pagina11. Il presente protocollo non reimplementa né ridefinisce la specifica RIP. Al contrario, utilizza il servizio RIP open source esistente e la logica di generazione dell'interfaccia utente da metadati a HTML basata su RIP come fondamento per la comunicazione e la generazione dell'interfaccia, concentrandosi sulla costruzione, registrazione, distribuzione tramite proxy e verifica riproducibili di due esempi di VI LabVIEW.
Rispetto allo sviluppo tradizionale di interfacce web personalizzate, la generazione automatica di interfacce utente basata su RIP riduce la necessità di implementare layout di controllo, logica di associazione delle variabili e funzioni di comunicazione di base quando più esperimenti LabVIEW espongono variabili scalari di ingresso e uscita simili8,9,10,11. Una volta che un nuovo VI viene registrato e le sue variabili sono disponibili per il server RIP, la stessa logica di lettura dei metadati e di generazione dei controlli può essere riutilizzata per costruire l'interfaccia web di base10,11. Questa caratteristica è utile per il rapido deployment, le dimostrazioni didattiche e le piattaforme di laboratorio remoto che richiedono un accesso coerente a diversi esperimenti simili3,8,9. Tuttavia, l'interfaccia generata automaticamente presenta anche alcune limitazioni. Non riesce a inferire completamente le relazioni fisiche tra le variabili, a determinare automaticamente le associazioni per i grafici o a progettare visualizzazioni e interazioni specifiche per il dominio in materia di sicurezza11. Pertanto, lo sviluppo manuale dell'interfaccia web rimane preferibile quando un esperimento richiede grafiche altamente personalizzate, flussi di lavoro utente complessi, visualizzazioni avanzate, interblocchi hardware per la sicurezza o l'arbitraggio della scrittura tra più utenti.
Il flusso di lavoro complessivo del protocollo è riassunto in Figura 1. In questo flusso di lavoro, un VI LabVIEW definisce innanzitutto i controlli di input richiesti e gli indicatori di output nel pannello frontale. Il VI viene quindi registrato nella configurazione del server RIP specificando il nome dell'esperimento e il percorso del VI. Dopo la registrazione, il server RIP legge i metadati dell'esperimento selezionato e fornisce accesso in lettura e scrittura alle variabili disponibili. La pagina Web XHTML utilizza i metadati restituiti per generare automaticamente i controlli di input e le visualizzazioni di output corrispondenti, mentre Caddy fornisce un percorso di accesso unificato per la pagina Web statica e per le rotte di comunicazione RIP. I modelli di ventola e di motore a corrente continua sono utilizzati in questo studio come due implementazioni dello stesso flusso di lavoro. Per altri esperimenti LabVIEW che forniscono variabili compatibili di tipo scalare, numerico e booleano, gli sviluppatori possono seguire lo stesso flusso di lavoro di creazione-registrazione-distribuzione-verifica per creare un'interfaccia Web generata automaticamente, aggiungendo al contempo visualizzazioni specifiche per l'esperimento, logiche di sicurezza o gestione complessa dei dati quando necessario.
Questo articolo non propone una nuova architettura RIP né estende la gamma di tipi di dati già supportati da RIP. Piuttosto, utilizza RIP come meccanismo consolidato di comunicazione e di generazione dell'interfaccia utente basato su metadati, concentrandosi sulla validazione dello stesso processo con due diversi sistemi LabVIEW, documentando al contempo un protocollo di implementazione riproducibile. Lavori precedenti hanno presentato un metodo di base per la generazione automatica di interfacce web basata sui metadati RIP, utilizzando un esperimento online su un motore servo come caso di studio11. Architetture di laboratori remoti abilitati al web, che combinano interfacce interattive con software ingegneristici e LabVIEW, sono state inoltre riportate in studi precedenti9,12. Tuttavia, durante la riproduzione pratica, alcuni modelli LabVIEW del caso originale sono risultati influenzati dalla compatibilità tra versioni del software e moduli, rendendoli difficili da utilizzare direttamente in un ambiente più recente. Il presente lavoro, pertanto, ricostruisce due VI back-end compatibili — un modello di ventola e un modello di controllo di posizione proporzionale-integrale-derivativo (PID) per un motore in corrente continua (DC) — e applica lo stesso processo di generazione dell'interfaccia utente guidato dai metadati a entrambi. Il contributo consiste nella validazione incrociata del flusso di lavoro RIP consolidato e in un protocollo dettagliato per riprodurre il processo, piuttosto che in un'estensione della generalità di RIP.
Gli utenti previsti per questo protocollo sono ricercatori, insegnanti e sviluppatori di laboratorio che utilizzano già VI LabVIEW e necessitano di esporre modelli di simulazione o sistemi sperimentali a basso rischio attraverso un browser Web, senza dover implementare autonomamente un'interfaccia personalizzata completa per ciascun modello. Il protocollo è particolarmente adatto a esperimenti che utilizzano variabili numeriche e booleane standard, regolazione di parametri e monitoraggio in tempo reale dello stato10,11. È meno adatto come soluzione autonoma per esperimenti che richiedono strutture dati complesse, visualizzazioni specializzate, interblocchi di sicurezza hardware rigorosi o arbitrato della scrittura multiutente11. L'obiettivo di questo lavoro è validare la generazione automatica di interfacce utente Web basate su RIP con due diversi sistemi LabVIEW e fornire un protocollo completo e riproducibile, che va dalla costruzione del VI sul back-end all'interazione basata su browser. Il protocollo comprende la definizione delle variabili di ingresso e uscita, la registrazione dell'esperimento nel server RIP, la generazione dell'interfaccia utente basata su metadati, il deployment del proxy Caddy e la verifica remota di lettura/scrittura. L'applicazione dello stesso flusso di lavoro ai modelli del ventilatore e del motore in corrente continua dimostra che il processo stabilito può essere riprodotto senza dover riscrivere manualmente un'interfaccia Web completa per ogni esempio9,10,11.