Realizza un sistema di allarme etilometrico con l’aiuto dell’IA

I semplici sensori analogici come quelli mostrati nel precedente tutorial non hanno una precisione e una stabilità sufficiente per essere impiegati nella realizzazione di strumenti di misura.

Il loro impiego è solitamente riservato alla realizzazione di sistemi di allarme. Il sensore viene tarato e viene sperimentalmente individuata una soglia che caratterizza il superamento del livello da parte del parametro che intendiamo monitorare.

L’esempio che stiamo per fornire riguarda il rilevamento di alcool etilico nell’aria circostante all’area in cui è collocato il nostro sensore, ma puoi facilmente replicare l’esperimento con qualunque altro tipo di sensore.

In questo tutorial scoprirai come realizzare un rilevatore di soglia e, con l’occasione, imparerai ad utilizzare l’Intelligenza Artificiale Generativa per scrivere uno sketch Arduino che supera le tue attuali abilità.



Come hai visto, uno strumento di IA come ChatGPT è in grado di generare automaticamente un programma per risolvere un problema assegnato.

Tieni presente che non è garantito che il software generato funzioni effettivamente, tuttavia costituisce un buon punto di partenza per impostare lo sketch e soprattutto per imparare cose nuove.

Rimandiamo l’analisi del codice al prossimo tutorial, e concentriamo l’attenzione sullo strumento IA.

Gli attuali Large Language Model come GPT-4 di OpenAI, Gemini di Google, Claude 3 di Anthropic, LLAMA di Meta e Mistral AI, sono sistemi di Intelligenza Artificiale, basati su una tecnologia chiamata Reti Neurali, che sono stati “addestrati” e ottimizzati per calcolare velocemente le correlazioni tra sequenze di caratteri e prevedere nuove sequenze di caratteri correlate a quelle fornite in base a criteri matematici e statistici automaticamente individuati durante la fase di di addestramento.

Questi sistemi, come probabilmente già saprai, non sono realmente intelligenti, nel senso di realmente consapevoli e autocoscienti in relazione al proprio funzionamento, ma hanno acquisito la capacità di generare frasi in perfetto linguaggio naturale e fortemente correlate al contesto semantico che viene fornito.

Poiché il software ha costituito una parte dell’addestramento, questi sistemi sono in grado di generare frammenti di codice semanticamente ben correlati ad un testo fornita come specifica.

Si tratta di sistemi molto sofisticati che sono in grado di generare brevi programmi che forniscono una possibile soluzione ad un problema fornito come “prompt“.

Poiché un prototipo realizzato con Arduino è solitamente implementato attraverso uno sketch di dimensioni abbastanza contenute, è possibile utilizzarli per generare da zero nuovi programmi quando non si conosce esattamente il modo corretto di procedere.

Saper impostare il “prompt” è fondamentale per ottenere risultati validi. Le tecniche di “prompt engineering” sono diventate una vera e propria disciplina.

In questo corso analizzeremo diversi casi d’uso e imparerai a sfruttare questo tipo di strumenti per la soluzione di diversi problemi.

Il mondo Arduino è fortemente basato sull’open source e sulla condivisione delle esperienze e dei progetti. Si tratta della situazione ideale in cui i LLM addestrati su basi dati di pubblico dominio forniscono risultati brillanti.