Case history

App Desktop Win/Mac per configurazione sistemi di sicurezza industriale basati su tecnologia radar

Per startup innovativa operante nel settore della sicurezza, personale e industriale, basata su tecnologia radar, abbiamo sviluppato un'applicazione desktop per sistemi operativi Windows e macOs per permettere all'installatore di configurare un set di sensori posti a guardia di un macchinario industriale.


Questi sensori rilevando entro certe distanze la presenza di persone e possono decidere, in base ai parametri di configurazione impostati, di interrompere l'attività delle macchine per salvaguardare l'incolumità dei lavoratori.

Immagini#

Funzionalità sviluppate#

Il software che abbiamo sviluppato su progetto grafico fornito dal committente, permette di dimensionare questi sistemi di protezione sulla base di parametri come l'area da proteggere, la lunghezza della distanza di allarme, la lunghezza della distanza di preallarme.

Il software permette di ottenere una configurazione lineare dei sensori oppure di disporli liberamente per riuscire a coprire delle aree di qualsiasi forma.

Si tratta di fatto di un piccolo CAD verticale (specifico per questa attività) in grado, da un lato, di fornire all'installatore un feedback visivo e dall'altro di interfacciarsi con l'hardware dei sensori per impostare i parametri di configurazione selezionati.

L'applicazione sviluppata è stata inoltre confezionata con il relativo installer per Windows e macOS.

Tecnologie#

Da un punto di vista tecnico, dovendo essere multipiattaforma, abbiamo deciso di realizzare questa applicazione con Electron . In questo modo abbiamo scritto il codice dell'applicazione una sola volta con conseguente risparmio di tempo e denaro.

Per quanto riguarda invece la parte di comunicazione con l'hardware ci siamo appoggiati ad una CLI (command line interface) sviluppata internamente dal committente, la quale si fa carico di tradurre i comandi provenienti dalla GUI nei protocolli di comunicazione con l'hardware.

Approccio vincente#

Questo approccio di lavoro si è dimostrato molto efficiente per i seguenti motivi:

  1. Tutto il know-how innovativo del cliente è rimasto protetto: noi di fatto abbiamo sviluppato un'interfaccia che invia dei JSON a una CLI , ma non sappiamo nulla circa l'hardware e le tecnologie impiegate per realizzare il prodotto del cliente. Di conseguenza non c'è stato bisogno di firmare NDA o accordi vincolanti.
  2. Abbiamo potuto sviluppare la nostra parte in parallelo a quella sviluppata internamente al committente senza dover essere fisicamente presenti presso il committente e senza dover testare quanto sviluppato sull'hardware reale: una volta definito il protocollo di comunicazione tra la GUI e la CLI ci siamo creati una versione stub della CLI per simulare la comunicazione con la GUI . I test effettivi li ha fatti il committente sull'hardware sostituendo al nostro stub la CLI reale. Di fatto l'hardware non l'abbiamo nemmeno visto.
  3. Il committente, oltre a fornirci le specifiche, ci ha fornito anche i mockup (prototipi) dell'interfaccia utente realizzati con Adobe XD e in questo modo ha ottenuto esattamente l'aspetto estetico desiderato. Questo è molto importante poiché di fatto anche l'interfaccia grafica del software di configurazione del sistema è un elemento di marketing. Se è moderna e accattivante contribuisce al successo commerciale del prodotto.

In definitiva, il tipo di approccio scelto e gli strumenti utilizzati, hanno reso lo sviluppo di questo progetto un processo liscio e senza intoppi: abbiamo raggiunto la deadline concordata senza correre e con un prodotto rifinito e di sicuro impatto.

L'esperienza è stata talmente positiva che abbiamo deciso, per i progetti di questo tipo (sviluppo di una interfaccia untente multipiattaforma che si deve interfacciare con dell'hardware proprietario) di utilizzare unicamente questo approccio che è basato sulla definizione preventiva dell'interfaccia utente attraverso mockup e della definizione preventiva del protocollo di comunicazione tra GUI e la CLI responsabile di interfacciarsi con l'hardware e sviluppata internamente dal committente.

Quanto costa?#

Per farti un'idea rapida di tempi e costi per realizzare una soluzione simile puoi utilizzare il nostro Calcolatore Online.

Autore: Lorenzo Chiodi
Senior software developer con più di 16 anni di esperienza nello sviluppo di soluzioni web based, enterprise, su misura. Dal 2011 socio fondatore di Garda Informatica Snc condivide questa avventura col fratello Giovanni.

Che soluzione cerchi?#

Read more!

Newsletter

Ti è piaciuto questo articolo? Iscriviti alla newsletter

Di tanto in tanto pubblichiamo nuovi articoli come questo. Se vuoi essere avvisato lascia il tuo indirizzo e-mail di seguito.

Non invieremo mai SPAM e non condivideremo la tua e-mail con altri. Per maggiori informazioni consulta la privacy policy.

Attendere prego...

closeIcona closesearchIcona searchmore vertIcona more vertmenuIcona menushareIcona sharelinkIcona linkarrow upwardIcona arrow upward