Sviluppo di un’interfaccia touchscreen per il controllo del processo di asciugatura di materiale plastico

Sviluppo di un’interfaccia touchscreen per il controllo del processo di asciugatura di materiale plastico

Matdry: un software embedded sviluppato con librerie QT per un controllore custom

CLIENTE:

Project Engineering

L’esigenza

Project Engineering srl è un’azienda manifatturiera leader che da oltre 25 anni progetta e realizza dispositivi elettronici nell’ambito dei Controllori Custom e Sistemi di test e Apparecchi medicali. Per conto di una multinazionale loro cliente , ha realizzato un controllore custom per la gestione del processo di asciugatura del materiale plastico all’interno del ciclo produttivo di semilavorati ottenuti per pressofusione.
L’azienda, specializzata nello sviluppo di soluzioni Linux embedded con Qt/QML, ha richiesto il nostro contributo per sviluppare il software embedded in collaborazione con il proprio team di sviluppo. A noi è stato affidato la parte dell’interfaccia uomo macchina (HMI – HUMAN-MACHINE INTERFACE) e la parte di interazione con il controllore dell’impianto, sviluppato da Project Engineering.

 

La soluzione

La specifica fornita dal cliente era composta dal set di mockups realizzati con il tool Figma. Il nostro compito è stato quello di realizzare il software GUI in modo tale da avere un look&feel più vicino possibile a quello dei mockups. Le schermate che abbiamo realizzato sono state circa 70. All’interno di ciascuna di esse erano presenti diversi widget (buttons, dropdown list, tabelle, finestre di allarme, ecc.) e, molto spesso, gli stessi widget sono stati utilizzati in più punti del software con delle piccole differenze tra una schermata e l’altra. Le sfide che abbiamo affrontato in questo progetto sono state:

  1. Generalizzare al massimo il codice di ciascun widget in modo tale da poter riutilizzare lo stesso componente in tutte le schermate in cui era presente. Questo approccio ci ha permesso di realizzare un codice estremamente ottimizzato e facilmente manutenibile, a favore del rispetto dei tempi di consegna e della qualità del prodotto realizzato.
  2. Restare fedeli ai mockups dovendo però adattare il funzionamento degli widget alle logiche previste dal software di controllo che, molto spesso, non risultavano essere allineate.

Abbiamo organizzato il processo di sviluppo secondo la metodologia Agile (Scrum): il lavoro è stato suddiviso in sprint bisettimanali al termine dei quali abbiamo inviato il report sulle attività svolte ed una versione incrementale e testabile del software, in modo da consentire a Project Engineering di valutare lo stato di avanzamento del progetto. Il codice sorgente è stato mantenuto su un repository Git condiviso.

 

I vantaggi

I vantaggi raggiunti al nostro contributo sono stati:

  • Look&feel del software fedele ai mockups di design: in questo modo il prodotto realizzato ha avuto un’ottima usabilità
  • Consegna del software nei tempi prestabiliti: l’approccio Agile Scrum è stato fondamentale per raggiungere questo obiettivo
  • Efficienza ed ottimizzazione del codice sviluppato: la generalizzazione del codice dei singoli widget ci ha permesso di evitare duplicazioni deleterie per la manutenibilità dello stesso.

Vuoi sviluppare un nuovo software su misura o un software embedded?

Operiamo a Pistoia, Firenze, Prato, Pisa, Livorno, Bologna, Piacenza, Milano e in tutta Italia

La testimonianza

Il progetto relativo all’essiccatore per granulati plastici è stato il nostro secondo progetto sviluppato con Kiwibit, in linguaggio C++ in ambiente Linux su hardware ARM. Anche in questo progetto abbiamo raggiunto gli obbiettivi prefissati sia in termini tecnici che temporali, nonostante che durante lo sviluppo siano emerse significative modifiche ai requisiti che ci hanno costretto a riformulare la pianificazione del lavoro. L’utilizzo di metodologia Agile ha sicuramente contribuito a gestire la situazione, ma sono le persone che fanno la differenza ed in questo Kiwibit si è confermato un ottimo partner.

Ing. Marco Del Nero

R&D Controllers Manager, Project Engineer

La richiesta

  • Sviluppo di un software embedded HMI per il controllo del processo di asciugatura del materiale plastico per stampi in pressofusione in collaborazione con il team di sviluppo del cliente

Il nostro contributo

  • Sviluppo del software GUI secondo il look&feel dei mockups realizzati dal team di design e della parte di interfaccia verso il modulo di controllo realizzato da Project Engineering
  • Gestione del processo in modalità Agile Scrum con sprint bisettimanali

Tecnologie usate

  • ARM based HMI con micro i.MX6ULL
  • SO Linux Embedded
  • librerie QT5
  • linguaggio di programmazione C++, QML, Javascript

Risultati raggiunti

  • Look&feel del software fedele ai mockups di design
  • Consegna del software nei tempi prestabiliti
  • Efficienza ed ottimizzazione del codice sviluppato

POTREBBERO INTERESSARTI ANCHE

Analisi delle soluzioni di identificazione automatica per tracking di persone ed oggetti (sviluppo software per il settore medico sanitario)

Analisi delle soluzioni di identificazione automatica per tracking di persone ed oggetti (sviluppo software per il settore medico sanitario)

Interfaccia per l’automazione della calibrazione di una saldatrice laser utilizzata nella produzione di pacemaker

Interfaccia per l’automazione della calibrazione di una saldatrice laser utilizzata nella produzione di pacemaker

Tool per progettazione ed analisi strutturale di basamenti metallici

Tool per progettazione ed analisi strutturale di basamenti metallici

Sviluppo di un’interfaccia touchscreen per il controllo del processo di asciugatura di materiale plastico

Sviluppo di un’interfaccia touchscreen per il controllo del processo di asciugatura di materiale plastico

Postazione integrata per la gestione e tracciabilità di schede elettroniche durante il processo di riparazione

Postazione integrata per la gestione e tracciabilità di schede elettroniche durante il processo di riparazione

Software di collaudo della HMI di controllo per abbattitori termici

Software di collaudo della HMI di controllo per abbattitori termici

Piattaforma web per la gestione preventivi e ordini

Piattaforma web per la gestione preventivi e ordini

Generazione automatica di documenti

Generazione automatica di documenti

Automatizzazione dei rilasci software negli ambienti di Test, Quality Assurance e Production

Automatizzazione dei rilasci software negli ambienti di Test, Quality Assurance e Production

Sviluppo di un nuovo dispositivo in ambito automotive per il monitoraggio del pitch&roll basto su sensori MEMS

Sviluppo di un nuovo dispositivo in ambito automotive per il monitoraggio del pitch&roll basto su sensori MEMS

Riprogettazione della scheda elettronica di controllo di un trapano per implantologia dentale

Riprogettazione della scheda elettronica di controllo di un trapano per implantologia dentale

Progettazione e realizzazione interfaccia uomo-macchina digitale su macchinario industriale

Progettazione e realizzazione interfaccia uomo-macchina digitale su macchinario industriale

Un software in cloud per l’organizzazione delle visite a Casa Sicura

Un software in cloud per l’organizzazione delle visite a Casa Sicura