# Informatica 5 Liceo Scientifico Scienze Applicate/Esempi applicativi μP-μC

Informatica 5 Liceo Scientifico Scienze Applicate
Copertina Tutti i moduli · Sviluppo
    CopertinaInformatica 5 Liceo Scientifico Scienze Applicate/Copertina
* OctaveInformatica 5 Liceo Scientifico Scienze Applicate/Octave
* MatriciInformatica 5 Liceo Scientifico Scienze Applicate/Matrici
* Sistema di equazioni lineariInformatica 5 Liceo Scientifico Scienze Applicate/Sistema di equazioni lineari
* LatexInformatica 5 Liceo Scientifico Scienze Applicate/Latex
* Istruzioni Programmazione OctaveInformatica 5 Liceo Scientifico Scienze Applicate/Istruzioni Programmazione Octave
** EserciziInformatica 5 Liceo Scientifico Scienze Applicate/Istruzioni Programmazione Octave/Esercizi
* Gauss Risoluzione Sistemi LineariInformatica 5 Liceo Scientifico Scienze Applicate/Gauss Risoluzione Sistemi Lineari
* Jacobi Risoluzione Sistemi LineariInformatica 5 Liceo Scientifico Scienze Applicate/Jacobi Risoluzione Sistemi Lineari
* Calcolare Numericamente un IntegraleInformatica 5 Liceo Scientifico Scienze Applicate/Calcolare Numericamente un Integrale
** AreaInformatica 5 Liceo Scientifico Scienze Applicate/Area
* Risolvere Numericamente una equazione differenzialeInformatica 5 Liceo Scientifico Scienze Applicate/Risolvere Numericamente una equazione differenziale
** Decadimento RadioattivoInformatica 5 Liceo Scientifico Scienze Applicate/Decadimento Radioattivo
* Grafici in OctaveInformatica 5 Liceo Scientifico Scienze Applicate/Grafici in Octave
* Metodo di BisezioneInformatica 5 Liceo Scientifico Scienze Applicate/Metodo di Bisezione
* FrattaliInformatica 5 Liceo Scientifico Scienze Applicate/Frattali
* Problemi legati al Calcolo NumericoInformatica 5 Liceo Scientifico Scienze Applicate/Problemi legati al Calcolo Numerico
* Tecnica di MontecarloInformatica 5 Liceo Scientifico Scienze Applicate/Tecnica di Montecarlo
* AlgoritmiInformatica 5 Liceo Scientifico Scienze Applicate/Algoritmi
* Algoritmi Complessità computazionaleInformatica 5 Liceo Scientifico Scienze Applicate/Algoritmi Complessità computazionale
* Modelli e SimulazioneInformatica 5 Liceo Scientifico Scienze Applicate/Modelli e Simulazione
** Modelli e SistemiInformatica 5 Liceo Scientifico Scienze Applicate/Modelli e Sistemi
** Tipi di Modello
** Diagrammi a blocchiInformatica 5 Liceo Scientifico Scienze Applicate/Diagrammi a blocchi
** Sistemi a microprocessoreInformatica 5 Liceo Scientifico Scienze Applicate/Sistemi a microprocessore
** Blocchi di condizionamento e Teorema di ShannonInformatica 5 Liceo Scientifico Scienze Applicate/Blocchi di condizionamento e Teorema di Shannon
** Un po' di elettronicaInformatica 5 Liceo Scientifico Scienze Applicate/Un po' di elettronica
** Esempi applicativi μP-μCInformatica 5 Liceo Scientifico Scienze Applicate/Esempi applicativi μP-μC
** AutomiInformatica 5 Liceo Scientifico Scienze Applicate/Automi
** Distributore BibiteInformatica 5 Liceo Scientifico Scienze Applicate/Distributore Bibite
** Sistemi Lineari e RetroazionatiInformatica 5 Liceo Scientifico Scienze Applicate/Sistemi Lineari e Retroazionati
** Simulazione Sistema Retroazionato
** Esempio Lancio del PesoInformatica 5 Liceo Scientifico Scienze Applicate/Esempio Lancio del Peso
Modifica il sommario

# Introduzione

Dopo aver approfondito in maniera esaustiva le componenti di un sistema a microprocessore, i componenti elettronici e tutto ciò che riguarda l'acquisizione dati, è utile creare degli esempi pratici nei quali un microcontrollore può essere utilizzato, per gestire autonomamente e automaticamente un ambiente o una situazione senza la presenza umana (certo, l'uomo interviene con la programmazione del microcontrollore).
Vedremo perciò due esempi pratici: la gestione di una serra e l'alimentazione di un motore passo passo, dato che ne abbiamo parlato abbondantemente in Informatica 5 Liceo Scientifico Scienze Applicate/Un po' di elettronica.

## Gestione serra

Una serra è un ambiente chiuso costruito appositamente per coltivare piante e fiori ricreando in loro habitat naturale in un ambiente nel quale altrimenti morirebbero.
Supponiamo perciò di voler coltivare pomodori in Siberia, un ambiente freddo e ostile, con temperature che possono scendere sotto i -50 °C. I pomodori sono piante annuali coltivate regolarmente in aree con clima temperato. Non sopravvivono a temperature inferiori a 12 °C e devono essere periodicamente irrigati. Come fare? Innanzitutto la costruzione di una serra è cosa opportuna, ma la serra a se stante non riesce a fornire il calore necessario ai pomodori per sopravvivere, considerando che gli inverni Siberiani sono molto rigidi e il sole non è perpendicolare al terreno. Si può quindi progettare una serra gestita completamente da un microcontrollore che sappia misurare la temperatura, l'umidità del terreno e la luce dell'ambiente circostante tramite dei sensori. I dati verranno poi elaborati dalla CPU ed essa attiverà:
* Il riscaldamento, se la temperatura scende sotto ad una certa soglia, ad esempio 15 °C;
* Il sistema di irrigazione, se l'umidità del terreno rimane inferiore ad un certo valore per un intervallo di tempo prestabilito (si eviterà perciò di sprecare troppa acqua e di far morire i pomodori per eccessiva irrigazione);
* Luci ultraviolette, se la luce ambientale giornaliera non è sufficiente per un corretto sviluppo e maturazione dei pomodori (in questo modo si eviterà di sprecare energia se le giornate sono più lunghe, attivando le lampade solo quando le giornate sono più corte e meno illuminate);
Inoltre, se la temperatura interna è troppo elevata, cosa che capita molto di rado, sarebbe opportuno attivare il sistema di ventilazione per raffreddare l'ambiente.
* Non meno importante è una ventilazione giornaliera per permettere alle piante di fotosintetizzare le sostanze nutritive partendo dall'anidride carbonica e dall'acqua.
Per risparmiare il riscaldamento si potrebbe inserire un codice che ogni giorno registra i valori della temperatura esterna e il giorno seguente, attiva il sistema di ventilazione in quel preciso momento della giornata.
Servirà una centrale nucleare per alimentare la serra, ma almeno i pomodori prodotti saranno di ottima qualità.

## Motore passo passo

Dopo aver descritto il funzionamento del motore passo passo, è giunta l'ora di farne funzionare uno! Per farlo girare basterà semplicemente disporre di un motore passo passo e di un microcontroller, oltre ad alcuni transistor, per amplificare il segnale di uscita del microcontroller. Come controllore ho utilizzato un Arduino UNO con l'Atmega328 come μC, ma se ne possono utilizzare benissimo altri, come ad esempio i PIC. Ora, bisogna individuare nel motore passo passo i giusti piedini di alimentazione e collegarli alle uscite digitali del microcontrollore, attraverso dei transistor. I transistor sono necessari per due motivi:
* Per evitare di sovraccaricare le uscite del μC, e di bruciarlo;
* Siccome, nel nostro caso, il μC emette segnali digitali dove 1 corrisponde a 5 volt e 0 a 0 volt, ma il motore passo passo deve essere alimentato a 12 volt, i transistor servono per amplificare il segnale da 5 volt a 12 volt.
L'ultima cosa, ma non la meno importante, è il codice da caricare nella Flash del μC. Arduino è molto più semplice da utilizzare rispetto agli altri microcontrollori, dato che dispone già di librerie atte allo scopo. Ora basterà compilare il programma, caricarlo ed il gioco è fatto.