Archivi tag: zero

Installare Arduino su Raspberry Pi Zero

PiZero-Arduino01
Installare Arduino su Rasperry Pi Zero è estremamente semplice e tutto il processo si riduce a pochissimi comandi da eseguire al terminale, quindi come sempre un breve post come nota per impostare articoli e corsi futuri in modo che lo studente possa realizzare una piattaforma portatile ed estremamente economica per programmare microcontrollori.
Ricordo che sto utilizzando un computer da 5$ (escluso mouse, tastiera e cavetteria varia e monitor) ed una scheda Arduino, quindi con meno di 50€ si può avere una piattaforma completa per studiare (tutte le materie) e programmare… Un bel regalino che lo studente Maker potrebbe farsi regalare per la promozione 🙂

La versione dell’IDE Arduino ehe potrete installare dal repository Raspbian è la 1.0.5 che non è l’ultima disponibile ma perfettamente funzionate per il nostro computer tascabile.

Il processo di installazione può essere eseguito nel medesimo modo anche per le altre schede RaspberryPi.

Prima di procedere con l’installazione di qualsiasi pacchetto dal repository Raspbian è sempre consigliabile eseguire un aggiornamento di sistema con i due comandi:

sudo apt-get update
sudo apt-get upgrade

PiZero-Arduino02

PiZero-Arduino02b

PiZero-Arduino03

PiZero-Arduino03b

Per l’installazione digitare da terminale il comando:

sudo apt-get install arduino

PiZero-Arduino04

PiZero-Arduino04b

PiZero-Arduino04c

Al termine dell’installazione, prima di eseguire l’IDE Arduino, dal terminale eseguire i comandi:

sudo usermod -a -G tty pi
sudo usermod -a -G dialout pi

PiZero-Arduino05

PiZero-Arduino06

questi due comandi vi permetteranno di aggiungere l’utente pi (utente di default) ai gruppi tty e dialout.

Al termine dell’installazione troverete la voce Arduino nei menu Elettronica e Programmazione.

PiZero-Arduino07

PiZero-Arduino08

A questo punto potrete eseguire l’IDE Arduino.

Dal menù Strumenti -> Tipo di Arduino assicuratevi che sia selezionata la scheda Arduino Uno:

PiZero-Arduino09

Selezionate la porta seriale (ttyACM0):

PiZero-Arduino10

Come test eseguite il solito blink:

PiZero-Arduino11

PiZero-Arduino12

Come vedete nell’immagine che segue ho collegato Arduino all’hub USB, ne caso ad esso abbiate collegato ad es. degli HD esterni è molto probabile che vi necessiterà un hub USB alimentato.

PiZero-Arduino13

Buona sperimentazione a tutti.

RaspberryPi Zero nelle mie mani

PiZero01

Il Raspberry Pi Zero è il più piccolo ed economico tra le versione prodotte e certamente molti si chiederanno quali potrebbero essere i campi di impiego di un simile “nano PC”, certamente il mio interesse è di tipo didattico, penso solo all’allievo che non giunge a scuola con una chiavetta USB ma con un PC che letteralmente può stare in un portafoglio. Ma immaginate a qualsiasi sistema di automazione che richiede un’interfaccia web o ad una interfaccia realizzata ad esempio con Processing…
o ad esempio…
nò! lo racconterò tra qualche settimana 🙂 sorprese e idee didattiche in costruzione.

Fare una recensire di questo PC lillipuziano non richiede grande sforzo perché in realtà non bisogna configurare nulla. I tempi di installazione del sistema operativo sono rapidissimi, circa 15 minuti, (le prove sono state fatte con NOOBS che al suo interno contiene Raspbian), non ci sono altre configurazioni da effettuare se non selezionare la lingua e il tipo di tastiera.

Vediamo cosa c’è di nuovo.

Piccolo e sottile, dimensioni da carta di credito: 65mm x 30mm x 5mm
31 mm se consideriamo i connettori delle prese USB, veramente piccolo!

PiZero06

PiZero07

PiZero08

Nella fotografia che segue il paragone tra un RaspereyPi 3 (prossimamente la recensione) e il PiZero.

PiZero19

Per abbattere i costi di produzione processore e memoria non hanno performance elevate, “con 5$ non si possono fare i miracoli”, 512 MB di RAM con un processore ARM a singolo core da 1GHz (stesso processore del B+ a A+). La memoria è collocata al di sopra del processore.

PiZero15

Le caratteristi dell’alloggiamento della MicroSD è il medesimo di quello utilizzato per i modelli B+ e ePi2 collocato però nella parte superiore (lato componenti) e questa volta è di tipo push-pull e non push-push modalità che preferisco perché evita estrazioni accidentali della scheda SD.

PiZero16

Per quanto riguarda il video siamo in presenza di una mini HDMI standard che permette con un adattatore, acquistabile a parte, di connetterlo a qualsiasi televisore. In questo modello non è presente l’uscita jack da 3.5mm del composito, tuttavia potete prelevare il segnale PAL o NTSC tramite due piazzole disposte nella posizione indicata nell’immagine che segue. Per chi invece desiderasse collegarlo ad un monitor VGA esistono degli adattatori mini HDMI – VGA.

PiZero17

Così come nell’ A+ anche il PiZero non dispone di un hub USB integrato questo vuol dire che potete utilizzare una sola porta USB, inoltre non è di tipo standard si tratta di una ‘USB On-The-Go’. Per collegare un dispositivo USB avrete necessità di un adattatore da micro USB tipo B a USB tipo A.
Se dovrete connettere più dispositivi USB dovrete utilizzare un hub USB esterno, anche non alimentato, ma ovviamente per connettere HD esterni dovrete munirvi di un hub USB alimentato.
Se serve potrete alimentare il PiZero anche attraverso l’hub connettendo il cavo di alimentazione, costituito da un connettore di tipo USB micro ad una delle porte dell’hub (ovviamente attraverso il cavo di alimentazione non passa nessun dato).

PiZero18

Per mantenere il PiZero il più semplice possibile non troverete saldato il connettore maschio GPIO, ma se lo desiderate potrete acquistarlo e saldarlo.

La procedura per installare installare il sistema operativo è estremamente semplice:

  • Pagina download RaspberryPi
  • Scaricate l’ultima versione di NOOBS
  • Preparate una SD formattata in FAT32
  • Copiate sulla scheda SD

A questo punto la domanda che già mi è stata posta via Facebook potrebbe essere: “ma dove hai acquistato il prodotto?”

Come sicuramente già saprete appena il PiZero venne presentato lo scorso novembre, nel giro di un paio di giorni andò in out of stock, stessa cosa è accaduto circa 10 giorni fa però questa volta ho avuto la prontezza di effettuare l’acquisto su Pimoroni, dove ho dovuto acquistare, perché unica disponibile, il kit Explorer pHAT Elettronica Kit:

PiZero02

PiZero03

PiZero05

PiZero04

All’interno del kit trovate qualche componente elettronico per fare semplici esperimenti di elettronica, tra tutti utilissimo l’explorer pHAT che aggiunge funzionalità utili, come ad esempio l’interfacciamente con schede a 5V (come molte schede Arduino), ponti H per pilotare motorini elettrici, sensori analogici.

Funzionalità del pHAT:

  • API Python
  • Quattro ingressi analogici Four analog inputs
  • Due ponti H
  • 4 input a 5 volt Four buffered 5V tolerant inputs
  • 4 output a 5V

pHAT che trovate nel kit sopra segnalato è compatibile anche con tutte le varianti a 40 pin della GPIO (Raspberry Pi 2 / B + / A + / zero).

Indispensabili inoltre gli adattatori USB B ad USB micro e l’adattatore mini HDMI ad HDMI

PiZero09

PiZero10

Dai primi test posso dirvi che sono pienamente soddisfatto, sia per quanto riguarda la navigazione che l’utilizzo dei programmi precaricati: da LibreOffice all’utilizzo di Python e Scratch.

La mia curiosità ovviamente è quella di programmare Arduino, proverò nelle prossime ore e costruire un sistema integrato, piccolo ed economico costituito dal PiZero + Arduino da portare sempre con me 🙂

PiZero11

PiZero12

E per connettersi ad internet, una piccola chiavetta WiFi connessa all’hub USB, che non ha richiesto nessun tipo di configurazione se non ovviamente l’inserimento della password della mia rete WiFi.

PiZero13

PiZero14

Nei prossimi post cercherò di mostravi come aggiungere l’audio su PiZero e come utilizzare la GPIO.

Corso di elettrotecnica ed elettronica: richiami di Matematica – divisioni – Lezione 3

banner-corso-elettrotecnica-elettronica-03

Prendiamo in considerazione un caso particolare di divisione, quello tra un numero qualsiasi e lo 0, ad esempio: 7:0

Precisazione. In matematica la divisione per 0 non esiste, per in questa breve richiamo di matematica si vuole mostrare empiricamente cosa accade quando facciamo tendere ad un numero molto piccolo il divisore, cio il rapporto aumenta sempre pi. lo scopo quindi non far comprendere il concetto di limite matematico a +infinito o a -infinito, ma pi banalmente che dividere successivamente per un numero sempre pi piccolo si ha un numero sempre pi grande 🙂
Lo scopo quello di poter fare calcoli mentali e stime su grandezze, capacit che molto spesso manca negli studenti del biennio.

Fatta la precisazione… 🙂

Analizziamo prima la divisione:

7 : 1 = 7

utilizziamo la rappresentazione geometrica per rendere pi chiaro il concetto di divisione.

Il primo numero viene chiamato “dividendo”, il secondo numero “divisore”.

Rappresentaimo il dividendo e il divisore con due segmenti aventi lunghezza proporzionale ed osserviamo quante volte il “divisore” contenuto nel segmento “dividendo”.

Nel caso di 7 : 1 abbiamo qunto rappresentato in figura, dove possiamo vedere che il segmento [pmath size=12]overline{CD}[/pmath] contenuto 7 volte nel segmento [pmath size=12]overline{AB}[/pmath].

divisione01

[pmath size=12]overline{AB}=7[/pmath]
[pmath size=12]overline{CD}=1[/pmath]

Nel caso in cui il dividendo fosse molto piccolo, prossimo a 0, la divisione sarebbe: 7 : 0 (concedetemelo matematici)

divisione02

[pmath size=12]overline{AB}=7[/pmath]
[pmath size=12]overline{CD}=0[/pmath]

Quando diciamo che il segmento[pmath size=12]overline{CD}[/pmath] nullo, matematicamente si intende un numero infinitamente piccolo con i due stremi C e D coincidenti, quindi possiamo dire che questo “piccolissimo” segmento contenuto un numero infinito di volte all’interno del segmento[pmath size=12]overline{AB}[/pmath].

Possiamo allora scrivere:

[pmath size=12]7/(numero piccolissimo) = numero grandissimo[/pmath]

ed in generale possiamo dire che:

[pmath size=12]n/(numero piccolissimo) = numero grandissimo[/pmath]

Per rendere pi evidente il concetto di divisione per numero piccolissimo si provi ad esempio a fissare il “dividendo” ed effettuare divisioni successive con il “divisore” che ad ogni passo si riduce di una determinata quantit. Riprendiamo l’esempio dei segmenti fatto all’inizio e riduciamo ad ogni passo la lunghezza del segmento[pmath size=12]overline{CD}[/pmath] di un’ordine di grandezza, ponendo il segmento[pmath size=12]overline{AB}=1[/pmath]

[pmath size=12]1 : 0.1 = 1/0.1 = 10[/pmath]

[pmath size=12]1 : 0.01 = 1/0.01 = 100[/pmath]

[pmath size=12]1 : 0.001 = 1/0.001 = 1000[/pmath]

[pmath size=12]1 : 0.0001 = 1/0.0001 = 10000[/pmath]

[pmath size=12]1 : 0.00001 = 1/0.00001 = 100000[/pmath]

[pmath size=12]1 : 0.000001 = 1/0.000001 = 1000000[/pmath]

[pmath size=12]1 : 0.0000001 = 1/0.0000001 = 10000000[/pmath]

[pmath size=12]1 : 0.00000001 = 1/0.00000001 = 100000000[/pmath]

[pmath size=12]1 : 0.000000001 = 1/0.000000001 = 1000000000[/pmath]

procedendo in questo modo, riducendo sempre di pi il divisore, il risultato della divisione aumenta sempre pi.


Note e ringraziamenti.

  • Sax per la richiesta di precisazione sulla divisione per zero.
  • Gianni per le correzioni sulle divisioni successive, segmento AB non 7 ma 1.