Microbot irrigatore sketch

Microbot irrigatore sketchMicrobot irrigatore sketch porta a conclusione del progetto iniziato un paio di articoli fa per la realizzazione di un robot didattico semplice da programmare.

Il codice è composto da due parti:

  1. una per il robot
  2. una per il controller o gamepad

in questo articolo leggerai come sono costruite entrambi gli sketch usando l’IDE online della MicroBit.

Microbot irrigatore sketch – gamepad

Lo sketch del gamepad, o controller, del microbot irrigatore sketch è semplice:

Microbot irrigatore sketch gamepad controller full

alla pressione di ogni pulsante del controller deve inviare un numero sul canale definito per la comunicazione.

Andiamo con ordine, il codice è diviso in tre parti, facilmente riconducibili a due:

  • on start;
  • on button X is pressed;
  • on button X is released;

Gli ultimi due possono essere assimilati sia per funzionalità dia per tipo di componenti che userai nell’IDE:

Microbot irrigatore sketch gamepad controller

L’unica differenza tra “on button X is pressed” e on “button X is released” è che i primi invieranno un numero alla pressione del pulsante corrispondente ed i secondi invieranno per il medesimo puldante il valore 0.

Analizzandoli in ordine:

on start

In fase di start il microbit imposterà il gruppo di comunicazione per la trasmissione dei comandi a “8”;

Microbot irrigatore sketch on boot gamepad

poi visualizzerà uno “smile” realizzato con i Led per indicare che la routine di start è stata avviata;

on button X is pressed

per ciascun bottone del gamepad che l’utente potrebbe premere, ad es.: “D-PAD up” 

Microbot irrigatore sketch button press gamepadinvia il numero “1” al ricevitore;

on button X is released

allo stesso modo della funzione precedente il rilascio ( released ) del medesimo bottone invia il valore “0”;

Sono certo che tutto sarà più chiaro quando leggerai il codice del robot.

Microbot irrigatore sketch – robot

La programmazione della parte robot del  microbot irrigatore è visibile nell’IDE online come mostrato di seguito:

Microbot irrigatore-sketch robot fullIn pratica è composto da tre parti:

  • on start;
  • on radio received;
  • on Button X pressed;

Analizziamo le singolarità del codice e a cosa serve:

On start

è la parte del codice che si attiva all’accensione della base robot:

Microbot irrigatore sketch on boot robot

Quando alimenti il circuito del robot, o base, del progetto ciò che è scritto nel blocco “on start” viene eseguito: 

  1. visualizza un cuore con i led della MicroBit;
  2. imposta la ricezione radio sul canale 8;
  3. imposta il valore della variabile “timewait” a 20;

Ti invito a soffermarti sul punto 2 e confrontarlo con il valore impostato sul gamepad.

I due valori devono coincidere perché le due microbit si parlino.

 

On radio received

E’ la parte più corposa del progetto e gestisce la ricezione dei valori dalla trasmittente e li trasforma in azioni sul robot.

Leggendolo ti sarai accorto che la programmazione è molto semplice, una serie di “if, else if e else” definiscono le azioni da intraprendere.

Per rifarci all’esempio visto per il gamepad: la pressione del “D-PAD up” invia il valore “1” al robot che lo interpreta;

Il valore 1, ricevuto, invia a tutti i motori il valore 255 ( ossia il massimo della velocità ) per il tempo definito dalla variabile timewait in millisecondi.

Allo stesso modo ciascun valore ricevuto attua una azione sui motori o sulla pompa.

Nota che in questo sketch non è presente alcun comando di attivazione della pompa che ti lascio compilare come esercizio.

Per aiutarti ti invito a leggere il paragrafo successivo.

On Button X pressed

Nel microbot irrigatore sketch questa parte di sketch è relativa al test e controllo della pompa di irrigazione.

Il verso di rotazione della pompa dipende da come sono connessi i terminali del driver drv8833 e i terminali della pompa al driver.

Usando il codice riportato di seguito alla pressione del pulsante “B” presente sul MicroBit del robot attivi il pin P1 e poni a 0 il pin P2: 

Microbot irrigatore sketch robot pumpviceversa alla pressione del pulsante “A” presente sul MicroBit del robot attivi il pin P2 e poni a 0 il pin P1.

In questo modo potrai testare quale sia il corretto funzionamento della pompa prima di inserire il blocco corrispondente nella posizione desiderata della sezione “On radio received”.

Puoi aiutarti con lo schema dei collegamenti presente nell’articolo e che ti riporto:

MicroRobot irrigatore 3D pump connected detail

Infine ti riporto la lista dei componenti utili alla realizzazione del progetto ed il link all’articolo in cui troverai i file STL per la parte da stampare in 3D.

Microbot irrigatore sketch – materiale

Ti riporto la lista del materiale necessario alla realizzazione del progetto:

  • Questo sito ed i suoi contenuti è fornito "così com'è" e Mauro Alfieri non rilascia alcuna dichiarazione o garanzia di alcun tipo, esplicita o implicita, riguardo alla completezza, accuratezza, affidabilità, idoneità o disponibilità del sito o delle informazioni, prodotti, servizi o grafiche correlate contenute sul sito per qualsiasi scopo.
  • Ti chiedo di leggere e rispettare il regolamento del sito prima di utilizzarlo
  • Ti chiedo di leggere i Termini e Condizioni d'uso del sito prima di utilizzarlo
  • In qualità di Affiliato Amazon io ricevo un guadagno dagli acquisti idonei qualora siano presenti link al suddetto sito.

Permalink link a questo articolo: https://www.mauroalfieri.it/informatica/microbot-irrigatore-sketch.html

Lascia un commento

Il tuo indirizzo email non sarà pubblicato.

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.