Software Supremacy

Il software riveste un ruolo fondamentale nella misurazione (firmware) e nella conseguente elaborazione dei dati fatta dall’utente (interfaccia). Per questo motivo dedichiamo grandi sforzi nel mantenimento e nell’innovazione delle nostre componenti software e nel rilascio di aggiornamenti puntuali.

Lo sviluppo del nostro software è totalmente prodotto internamente. Prima di essere sviluppatori, siamo anche utilizzatori. Questo vuole dire che diamo valore ai vostri suggerimenti per nuove funzionalità come se fossero pensate internamente, e agiamo rapidamente per le necessità più urgenti dei vostri Laboratori, come se fossero i nostri.

Sicuro e User-friendly

Il nostro firmware gira su un potente computer di controllo incorporato I8 o superiore con un sistema operativo GNU/Linux. Firmware e sistema operativo possono essere migliorati e rinforzati per una sicurezza estrema.

Il nostro strumento è completamente indipendente: Monitor USB, tastiera e mouse sono direttamente connessi per accedere ad una interfaccia su misura per operare in contemporanea misurazioni ed elaborazione dati. Non è necessario alcun PC aggiuntivo. Se necessario, puoi lavorare con Windows, Mac, Linux: il tuo PC si connetterà perfettamente via WiFi o ethernet ed eseguirà le stesse operazioni. Grazie al nostro moderno controllo di design del firmware, sono supportate anche connessioni client contemporanee. La scelta di GNU/Linux per il nostro ambiente di controllo più critico è unica nel settore. Questo per assicurare:

  • Sicurezza elevata e protezione nativa contro la maggioranza dei file e degli eseguibili maligni. Le minacce di Linux sono rivolte a server web e database e nussuno di questi è installato sui nostri strumenti.
  • Interfaccia dedicata, l’interfaccia utente nativa è potenziata per eseguire perfettamente i controlli e le applicazioni di elaborazione dati. Ottimizzando il sistema operativo ci assicuriamo che il flusso di lavoro rimanga veloce e che i nostri bug siano vicini allo 0.
  • Interfaccia minimale per un software utente personalizzato, che solitamente non vengono eseguite su computer Linux. Questo assicura che il fine principale dello strumento rimanga quello di effettuare misurazioni.
  • Integrazione nella LAN dell’utente per abilitare il lavoro di gruppo, condividendo i dati con più computer Windows.

Le nostre applicazioni sono concepite per integrarsi con diverse piattaforme e i nostri strumenti sono progettati per funzionare nella configurazione di rete più flessibile. Ci preoccupiamo delle vostre preferenze e abitudini in termini di di ambiente software e di politiche di sicurezza della rete. Il risultato è la straordinaria adattabilità dei dei nostri prodotti, che non ha eguali nel mercato degli strumenti analitici.

Interfaccia utente e software di elaborazione di alto livello

La nostra interfaccia utente e il sotware di elaborazione dati offrono:

  • Tracciati vettoriali adatti alla pubblicazione con manipolazioni matematiche avanzate e importazione/esportazione da file esterni di diversi formati (svg, jpg, csv).
  • Automazione specifica per le analisi termiche (CTE, calibrazione, viscosità, ecc…).
  • Estensibilità con plugin di Python.
  • Interfaccia utente multi-piattaforma e open-source per GNU/Linux (sul pc integrato) e Windows con connettività ethernet.

Laboratorio nel cloud

Lo strumento può essere connesso ai nostri servizi cloud (Ceramics Genome®). Penseremo noi al backup dei tuoi dati e ti offriamo anche un’interfaccia web ottimizzata per accedere e graficare direttamente i dati dei tuoi test.

Attraverso i nostri servizi clouod, forniamo funzionalità avanzate con un’interfaccia semplificata: non avrai bisogno di essere un utente esperto per sbloccare tutto il potenziale dei nostri strumenti.

Con i nostri servizi puoi anche accedere ai dati nativi, alla versione attuale o a quelle passate ed anche agli eventuali file rimossi in locale. I file possono essere scaricati e condivisi con link temportanei, e aperti direttamente nelle applicazioni installate tramite chiamate API ottimizzate (utili per file di grandi dimensioni).

Noi stiamo con gli sviluppatori

Abbiamo un approccio unico al software, che guida lo sviluppo di caratteristiche uniche nel panorama dello sviluppo degli strumenti.

Affrontare la crisi della riproducibilità scientifica

L’articolo intitolato “The case for open computer programs” (Darrel C. Ince, Nature 2012) esordiva asserendo che:

Scientific communication relies on evidence that cannot be entirely included in publications, but the rise of computational science has added a new layer of inaccessibility. […] We argue that, with some exceptions, anything less than the release of source programs is intolerable for results that depend on computation.

Da allora Nature pone attenzione sulla crisi della riproducibilità scientifica che sta portando sfiducia pubblica nei confronti della scienza.

L’urgente necessità di automazione dei laboratori

Gli strumenti di misura sono sempre più integrati in grandi laboratori, dove molte misure diverse si combinano per fornire strutture di dati complesse, dalle quali gli scienziati devono estrarre intuizioni e conoscenza. La caratterizzazione dei materiali viene da una serie di misure analogiche annotate su carta e da risultati strumentali copiati manualmente e riassunti in fogli di calcolo.

Per digitalizzare questo processo, gli strumenti moderni - ed i loro dati - devono essere programmaticamente accessibili agli sviluppatori di software, per aiutare gli studiosi a creare una struttura digitale che velocizzerebbe drasticamente la caratterizzazione dei materiali.

La nostra filosofia developer-friendly

Questo è il motivo per cui abbiamo adottato una filosofia favorevole agli sviluppatori. Abbiamo posto ai nostri clienti e a noi stessi la seguente domanda: “Quali funzioni del software, come sviluppatori e studiosi, ci piacerebbe avere in uno strumento di misura?” Abbiamo identificato 4 necessità importanti:

  1. Dati grezzi e altamente dettagliati sono conservati utilizzando un formato di dati open-source.
  2. Una API di controllo dello strumento (Application Programming Interface).
  3. Una API di accesso ai dati.
  4. Interfaccia di controllo e software di elaborazione dati open source.

Formato di dati Open Source

Il nostro strumento salva i dati come HDF5 (Hierarchical Data Format, version 5), un formato binario ad alte prestazioni ed autodescrittivo, in grado di organizzare enormi quantità di dati. Era stato originariamente ideato dal U.S. National Center for Supercomputing Application ed ora è open source e gestito dalla società non-profit The HDF Group. Il formato di file HDF5 può essere letto da diversi linguaggi e strumenti, il nostro preferito è Python. I nostri file di output contengono:

  • la configurazione completa dello strumento
  • tutti i messaggi di log prodotti durante la prova
  • dati grezzi non sincroni da tutto l’hardware, a frequenze native
  • i profili ed i raster delle immagini, come configurato
  • una interpolazione sincrona dei dati rilevanti, normalizzata a 1 Hz

API di controllo

Lo strumento espone una API HTTP REST con cui è possibile controllare ogni parametro ed accedere a tutte le funzionalità. L’interfaccia utente utilizza la stessa API per eseguire le misure e scaricare dati, ed è completamente open source.

L’API utilizza il protocollo XML-RPC per inviare comandi e leggere le loro risposte. Si può accedere alla API da Python3 o eseguendo il software del client da terminale con il flag –cmd. Questo rende lo strumento Industry-4.0 ready, che è un pre-requisito necessario in alcuni paesi per ricevere finanziamenti pubblici.

API di accesso ai dati

È fornito anche un pacchetto di Python3 che contiene tutte le indicazioni per accedere ai dati delle analisi ottico-termiche nel modo più significativo per l’utente. Invece di scavare nei dettagli dei file HDF5 e le loro interfacce, e successivamente imparare a codificare le informazioni, noi forniamo accesso diretto e una interfaccia a strati semplice da usare.

La nostra API di dati permette di automatizzare l’accesso a centinaia di file, estrarre una curva ed effettuare calcoli personalizzati o confrontarli. È possibile elaborare un nuovo algoritmo di analisi del profilo, applicarlo ad un test di microscopio ed anche memorizzare i risultati nel test stesso, per un’ulteriore elaborazione con i nostri strumenti grafici.

Il nostro pacchetto Python si integra perfettamente nell’ambiente Jupyter Notebook, un potente strumento per ricercatori che vogliono testare i propri algoritmi sui dati del nostro strumento.

Interfaccia di Controllo ed Elaborazione Open Source

Teniamo per noi solamente lo strumento di controllo degli algoritmi più interni. Quello che utilizzate ogni giorno, e potreste voler modificare o estendere, è open source (sia GPL3 o LGPL).

Si può studiare il codice sorgente di controllo dello strumento per capire come automatizzare i compiti. È possibile leggere come aprire un file, leggere dati e salvare dati. Si può anche modificare il nostro codice e inviare una richiesta di aggiornamento su GitLab.