Ethical DIY

Progetti hardware & software etici


Menu orizzontale con sottomenu CSS






 




Pagina principale per Raspberry



Informazioni di base




La basetta sperimentale (BDS)


Applicazioni



Librerie e programmi














 








 
















Raspberry PI 3/4/5:
la basetta sperimentale (BDS)
Prima versione
istruzioni di uso e funzionamento

bdsImmagine in scala 1:1 della basetta didattica e sperimentale (BDS) per Raspberry PI 2/3/4/5

Questa è una pagina importante e piuttosto lunga, perché ricca di informazioni relative all'uso e alla configurazione di base della BDS, la descrizione  dei vari connettori, dei moduli che possono essere utilizzati su ognuna di essi e  sui possibili conflitti. Si consiglia di leggerla con attenzione, e segnalare eventuali sviste.




Logica di funzionamento della BDS

La logica di funzionamento di questa basetta didattica e sperimentale (BDS) per Raspberry PI è simile a quella pensata per tutte quelle progettate per i microcontroller Arduino Nano (Uno R3/R4), ESP01, ESP8266 ed ESP32, ovvero dare allo sperimentatore o allo studente la possibilità di sperimentare un numero illimitato di progetti e combinazioni di periferiche in modo rapido, semplice, sicuro e senza usare (o con un numero estremamente modesto di) cavi.
La differenza sostanziale con le basette precedenti è che il Raspberry non è posizionato direttamente sulla BDS, ma collegato con un cavo a 40 pin (quelli che si usavano per i vecchi hard disk IDE) ad essa. Questa scelta progettuale è stata naturalmente suggerita dalla disposizione dei pin sul Raspberry PI, su cui quindi non si agisce direttamente, evitando il rischio di pericolosi contatti, e riducendo le dimensioni della BDS, simile a quella per ESP32, ovvero della superficie simili a quelle di un foglio A5 (210 x 140 mm).

laterale

Immagine rimpicciolita della BDS




Le connessioni disponibili
mcp3008
MCP3008

Questo chip fornisce al
Raspberry PI otto porte analogiche.


Sono state predisposte una serie di connettori atti a semplificare il collegamento con le varie periferiche, siano essi sensori, come pulsanti, lettori Rfid, sensori gps, magnetici, di luminosità, ecc, o attuatori, come relè, led, motori e altri. Raspberry PI per una scelta progettuali non fornisce  ingressi analogici, per cui non è possibile connettere nativamente potenziometri e altri sensori analogici. E' stato inserito un chip in grado di gestire otto ingressi analogici.

Pertanto, in sintesi, sulla BDS sono presenti:

Nota 1: alcuni connettori sono stati studiati per inserire delle periferiche particolari, come un sensore Rfid o una scheda GPS, però nulla vieta di usarli per altri apparati. La tua fantasia può trovare delle applicazioni a cui  il progettista di questa scheda non aveva pensato!
Nota 2: l'uso della tensione +5v può danneggiare sia le periferiche che il Raspberry. Utilizzarla sotto la propria personale responsabilità.




I sensori utilizzabili per questa BDS

Se si fa una piccola ricerca in internet, cercando per esempio "sensori per Arduino", oppure "sensori per Raspberry", appaiono centinaia di componenti, siano essi sensori, attuatori o display.
Ne sono stati selezionati alcuni (sono sempre più di 120!), ma naturalmente ognuno di noi può trovarne tanti altri, che possono essere adatti ai propri progetti. Alcuni sensori sono specifici, e quindi richiedono l'uso di librerie dedicate; ma altri, più semplici, possono utilizzare programmi praticamente identici, magari molti moduli possono usare una stessa libreria, o addirittura funzionare semplicemente con quelle nativamente presenti per il linguaggio Python.

Ecco la lista dei sensori che possono essere utilizzati per ogni connettore:

Clicca qui per visualizzare/scaricare le immagini dei sensori parzialmente testati.

Clicca qui visualizzare/scaricare il file contente le informazioni dei moduli relativi ai vari connettori.


018

jy
Joystick

gp7
GPS NEO7M



L'alimentazione della BDS




alim_gen

La BDS può essere alimentata sia direttamente dal Raspberry PI, sia con un alimentatore esterno, che in questo caso fornirà una tensione compresa tra 7,5 e 9 v. E' bene che l'alimentatore eroghi  una corrente di almeno 2A.
Un circuito interno alla BDS provvederà poi a fornire le tensioni +3,3v 3 +5v ai vari utilizzi.
Perchè è prevista un'alimentazione esterna? Il Raspberry PI può fornire una corrente di 8 mA su ogni porta digitale, che può essere insufficiente per alcune periferiche, come per esempio servomotori o relè, che a causa dell'elevato assorbimento potrebbero danneggiare la porta a cui sono connessi.

Sulla parte superiore dell'immagine si vede stilizzato un connettore standard femmina da 6m mm,
a cui si collegherà l'alimentatore esterno.
Appena sotto di esso è presente la sessione di alimentazione a +3,3v, evidenziata da un led verde. Con un ponticello si potrà scegliere se usare un alimentatore esterno (posizione su "EXT"), oppure se usare quella fornita da Raspberry ("INT").

La sezione per la tensione +5v è analoga, solo che sarà indicata da un led rosso.

Dell'ultima sezione, che fornirà al connettore "DATA" e "Analogic Inputs" la tensione di +3,3v oppure +v si è già discusso nella sezione precedente. Naturalmente l'origine della tensione fornita (ovvero dal Raspberry o dall'alimentatore esterno) dipenderà sempre dalle scelte effettuate nelle due sezioni precedenti.

La connessione dati con Raspberry PI
collegamento
 

Questo connettore doppio (20 + 20 pin) è il gemello di quello presente sul Raspberry PI, e permette di mettere direttamente in contatto le due schede.
Si può usare un vecchio connettore a 40 pin per dischi fissi IDE; probabilmente tutti noi ne abbiamo ancora qualcuno in cantina, oppure si possono facilmente tra il materiale di seconda mano.
A volte questi connettori, per evitare di essere collegati al contrario, mancano di un foro. In questo caso è sufficiente forarlo con una punta da 1 mm. Ma in questo caso perderemo un pin!
Invece no! Il pin "chiuso" è il numero dieci di una fila, che faremo corrispondere con uno dei pin di ground, il decimo appunto, quello evidenziato con un quadratino rosso.
Poichè ce ne sono ben otto pin di ground sul Raspberry, e tutti sono connessi anche sulla BDS, non subiremo nessuna perdita di funzionalità.




La connessione "universale" DATA per le porte digitali

Questo connettore è composto da 3 file di pin: in quella più asinistra, sono presenti tutte le porte digitalipresenti sul Raspberry PI, in ordine crescente di GPIO: da 0 a 27.
La fila centrale di pin è collegata tutta a massa (ground, abbrevviato in "GND), mentre quella più interna è connessa all'alimentazione (power, "PWR"). Per l'alimentazione si può scegliere sia +3,3v che +5v.
Attenzione:  l'alimentazione sarà uguale per tutte le periferiche che verranno connesse, quindi è bene non collegare insieme apparati che funzionano sia a
+3,3v che +5v, specialmente se l'alimentazione del connettore sarà settata a +5v!

3_5v

Questa è la sezione che permette di selezionare l'alimentazione a +3,3v oppure a +5v. Al posto del connettore a tre pin (in alto, evidenziato in verde), verrà saldato un led bicolore, che sarà di colore verde quando l'alimentazione risulterà a +3,3v e rosso per la tensione a +5v, per attirare l'attenzione sulla selezione eseguita. Di base lasciare sempre il settaggio su +3,3v.
La posizione dei settaggi influenza anche l'alimentazione delle eventuali periferiche amnalogiche connesse su "Analogic Inputs" (vedi in seguito).

I moduli per il connettore "Data"
cdata
Nota: il connettore "Data" presenta tutte le porte digitali, quindi teoricamente si potrebbero connettere qualsiasi modulo digitale.
 
data



I connettori per le periferiche I2C

i2c
i2cc

bme280
BME280
     







  


bme680
BME680

   ssd1306          
               SSD1306

Su questa scheda sono presenti quattro connettori per le periferiche che utilizzano il protocollo I2C, che ha la particolarità di poter connettere più sensori in parallelo, purché abbiano indirizzi interni differenti.
Sono stati progettati quattro connettori sia per essere adatti a vari tipi di periferica, sia per permettere di collegarne diverse in parallelo, sfruttando la caratteristica del I2C.
Da destra a sinistra si trovano rispettivamente I2C1, I2C2, I2C3, I2C4.
I2C4 è un connettore particolare, adatto ad ospitare una vasta gamma di periferiche. Infatti si può stabilire la sequenza dei pin, alimentare sia a +3,3v che a  5v, e oltre alle porte tradizionali GPIO2 per SDA e GPIO3 per SCL, dà la possibilità di utilizzare anche GPIO16 e GPIO17. Così lo potremmo utilizzare per apparati (anche non necessariamente I2C) che richiedono quattro porte digitali. Naturalmente anche sugli altri connettori potremmo utilizzare periferiche non-I2C, ma in questo caso potremmo connettere un sensore solo su uno dei quattro connettori, pena conflitti di indirizzi.
Come possiamo stabilire l'ordine dei pin su I2C4? come si vede, sono presenti tre serie di connettori. Quello Marcato "H22" è collegato direttamente alle porte del Raspberry e all'alimentazione. Con una serie di corti cavetti maschio-maschio, potremmo collegarli nell'ordine desiderato sul connettore "H20", il quale è connesso direttamente e in modo simmetrico al connettore I2C4. In questo modo potremmo stabilire l'ordine e il tipo delle connessioni.
Nell'immagine in 2D, i collegamenti in rosso mostrano la simmetria di collegamenti tra i due connettori, H20 e I2C4.

i2c4

ic2

I moduli per il connettore "I2C2":
ic2

I moduli per il connettore "I2C3":
ic3

I moduli per il connettore "I2C4":
ic4




La connessione con il multiplexer (CD74HC4067)
multiplexer

multip

La scheda CD74HC4067 è molto interessante, perché a fronte dell'utilizzo di cinque porte digitali, mette a disposizione ben sedici porte digitali!
 Utilizza il protocollo SPI, quindi attualmente non può essere usato contemporaneamente al connettore per ingressi analogici e a Rfid1, pena conflitti e malfunzionamenti.
La scheda (visibile in basso sulla sinistra) andrà inserita nel rettangolo violetto presente sulla BDS.
Il connettore marcato "H16" contiene le 16 porte disponibili, che sono connesse direttamente e in modo simmetrico a quelle del multiplexer (H13), indicate da "15" a "0".
Sono utilizzate le porte GPIO8, 9,10,11 e 18 di Raspberry.

Nell'immagine relativa al multiplexer si vede in alto a sinistra un connettore maschio "PWR Sel." inserito per  selezionare l'alimentazione a +3,3v oppure +5v, usando un ponticello.

alim1

I moduli per il connettore "Multiplexer":
mpl



L'ingresso per un sensore Rfid

Un sensore Rfid, come per esempio un RC522, permette di leggere delle schede RF, utile per controllare accessi, serrature elettroniche, antifurti, ecc. Queste schede sono collegate al Raspberry con il protocollo SPI, quindi al momento incompatibili a funzionare contemporaneamente con gli ingressi analogici e il multiplexer.
In futuro, variando il parametro SS/CS, potrebbe essere possibile farli convivere insieme.

522

Normalmente quando si acquista un sensore RC522 viene fornito con una scheda, per poter iniziare immediatamente le prove. Naturalmente se ne servono altre, possono essere acquistate separatamente.


rfid
I moduli per il connettore "Rfid":
rfd



La gestione di un servomotore

servo

srvm


La differenza principale tra un motore elettrico e un servomotore, e che quest'ultimo non gira ininterrottamente fino a quando riceve tensione, ma si sposta di un angolo che può essere controllato da un programma, per esempio con la rotazione di un potenziometro, e in genere l'angolo consentito è di 180°, più raramente di 90° o 360°. Pertanto è molto utile nei casi in cui è necessario un movimento preciso, come per esempio lo sterzo delle ruote in un robot, ecc.
Il connettore SV1sulla BDS è maschio, a differenza della maggior partedi quelli su cui si collega una periferica che sono femmina, perché quasi sempre dotato di un cavetto a tre poli con terminazione femmina, in cui il codice dei colori è rosso per +5v, marrone per la massa e giallo per il segnale di controllo.
Il pin di controllo del servomotore è collegato a GPIO13.

Nota: sebbene il basso assorbimento di corrente e l'alimentazione a +5v di un servomotore potrebbe anche permettere l'alimentazione diretta con il Raspberry, è sempe meglio usare un alimentatore esterno, per evitare danni alla porta del microcomputer.

I moduli per il connettore "Servomotore":
srv



La connessione con un motore elettrico

conn_mot

mot_el


La connessione di un motore elettrico a Raspberry è decisamente più complessa, almenno da un punto di vista progettuale, rispetto a quella di un servomotore.
Infatti un motore elettrico, anche se alimentato a +5v, assorbe una corrente che un Arduino non può assolutamente fornire.

Come si vede nel riquadro rosso, il motore può essere alimentato a +5v (in questo caso, assicurarsi prima di connetterlo che si sia scelta l'alimentazione esterna, pena il possibile danneggiamento della porta del Raspberry), oppure "PWR IN", che alimenterà il motore direttamente con l'alimentatore esterno (compresa tra 7,5 - 9v, massimo 12v).
Nota: se si sceglie "POWER IN" e l'alimentatore esterno non è collegato, il motore non si avvierà!

Lo schema elettrico della BDS è leggermente più complesso del solito, perchè è necessario alimentare il motore attraverso un transistor Mos-Fet, per disaccoppiarlo dal Raspberry, che invierà semplicemente al transistor il comando di avviamento del motore. E' necessario anche un diodo per evitare pericolose correnti di ritorno e un condensatore elettrolitico per dare "spunto" all'avvio. Ma tutto ciò è trasparente per l'utilizzatore finale.

I moduli per il connettore del "motore elettrico":
mtl



L'uso di due pulsanti "touch"

bt1


bt2

 
Ho inserito sulla BDS anche due pulsanti touch (è sufficiente avvicinare un dito per attivarli), che possono essere utili in tantissimi programmi quando è necessario fare qualche test di acceso/spento; sostituiscono temporaneamente e rapidamente tutta una serie di sensori digitali.
Con alcune righe di programma possono essere trasformati in interruttori, in cui una pressione avvia, e una successiva spegne.
BT1 è connesso a GPIO24; BT2 è connesso a GPIO26.

Nota: poichè i sensori "touch" sono connessi direttamente sulla basetta, non è possibile connettere altri moduli su questo ingresso.



Gli ingressi per moduli GPS

I due ingressi, "GPS1" e "GPS2", sono stati inseriti nella BDS espressamente per NEO6M, NEO7M,NEO8M. GPS1 e GPS2 sono connessi sulle medesime porte del Raspberry, quindi possono essere usati solo in alternativa l'uno con l'altro, pena malfunzionamenti e/o conflitti.
I moduli GPS sono molto interessanti, perché seppure molto economici, permettono di rilevare esattamente la propria posizione, fornendo una notevole serie di informazioni, quale longitudine, latitudine, velocità, altezza, data e ora, satellite su cui si è collegati

Sono stati inseriti due connettori perché i moduli GPS, in base al modello e al fatto che abbiano l'antenna integrata o esterna, usano una diversa disposizione dei pin, oltre ad avere 4 o 5 piedini.
Le porte "TDX" e "RDX" dei moduli GPS sono incrociati rispetto al Rapberry: TDX di uno si connette a RDX dell'altro, e viceversa.
Naturalmente possono essere utilizzati anche per altri moduli digitali che funzionino a +3,3v e utilizzino al massimo due porte digitali.
TDX del GPS si connette alla porta GPIO15 del Raspberry, mentre RDX è collegato a GPIO14.
GPIO15 e GPIO14 sono le porte standard del microcomputer rispettivamente per RX e TX.

Nota: i moduli per agganciarsi al satellite richiedono parecchi secondi, a volte addirittura minuti. E' necessario essere pazienti.  Se si è all'interno di un edificio, è necessario essere vicini a auna finestra o su un balcone, poiché le antenne non sono molto efficienti.



g1
Vista 3D

neo6m


Neo6m, a 4 pin
Connettere a GPS1


g2
Vista 2D
neo7m
Neo 7/8M, a 5 pin
Connettere a GPS2

I moduli per il connettore "GPS1":
gp1

I moduli per il connettore "GPS2":
gp2

Nota:
poichè i due connettori utilizzano le stesse porte del Raspberry, devono essere usati in alternativa.



Connessione con periferiche digitali che utilizzano una singola porta (1)



da2
 

In questa BDS ho inserito ben tre connettori per moduli che utilizzano una singola porta digitale, perché ci sono tantissimi sensori semplici e attuatori digitali (come relè singoli) che utilizzano questa configurazione.

DA2, DA3 e DA4 usano tutte la stessa disposizione di pin.
DA2 si connette alla porta GPIO23 di Raspberry; DA3 a GPIO5 e DA4 a GPIO6.
Per DA3 e DA4 è possibile scegliere (insieme per entrambi) l'alimentazione, se a +3,3v oppure a +5v, mentre per DA2 è disponibile solo l'alimentazione a +3,3v.
Come sempre porre una grande attenzione all'alimentazione scelta, per non rovinare sia il modulo che il Raspberry.   Iniziare sempre provando la tensione di alimentazione più bassa.

Accanto a ogni connettore è presente la predisposizione
per inserire  un led, alimentato attraverso una resistenza per ridurre la corrente fornita. Abbiamo pensato che questo potrebbe essere utile per simulare la presenza di un attuatore, come un relè ma con un assorbimento molto minore, per proteggere le porte del Raspberry. Non va inserito quando si utilizzano dei sensori (quindi porte di Input), perchè potrebbe falsare i dati.
Nota: nel caso si utilizzassero realmente dei relè, o apparati che assorbono molta corrente, usare sempre un alimentatore esterno.


Alcuni sensori digitali:

ky004
KY-004
dht11DHT11
ky-006
KY-006
I moduli per il connettore "singola porta digitale - 1":
da2



Connessione con periferiche digitali che utilizzano una singola porta (2)
da4
visione 2D
da4
visione 3D

pir
laser
touch
Alcuni sensori adatti a questi connettori:
Pir sensor; laser detect; touch button.





Anche questi due connettori sono stati pensati per semplici periferiche digitali che utilizzano una sola porta digitale; la differenza tra queste ultime (DA1 e DA5) con quelle presentate nel paragrafo precedente (DA2, DA3 e DA4) consiste solo nella posizione dei pin, adatti per diversi altri moduli.
DA5 accetta periferiche alimentate esclusivamente a +3,3v; DA1 permette un'alimentazione sia a +3,3v che a +5v. Utilizzare le stesse cautele nell'usare +5v, che rischia di danneggiare alcuni moduli e lo stesso Raspberry.
Nel dubbio, come prima scelta usare sempre i +3,3v.
DA4 utilizza la porta GPIO12 del microcomputer; DA5 usa la porta GPIO19

Accanto a ogni connettore è presente la predisposizione per inserire  un led, alimentato attraverso una resistenza per ridurre la corrente fornita. Abbiamo pensato che questo potrebbe essere utile per simulare la presenza di un attuatore, come un relè ma con un assorbimento molto minore, per proteggere le porte del Raspberry. Non va inserito quando si utilizzano dei sensori (quindi porte di Input), perchè potrebbe falsare i dati.


I moduli per il connettore "singola porta digitale - 2":
da1
Nota:
DA2, DA3, DA4 da una parte e DA1 e DA5 dall'altra, usano tutte una singola porta digitale, ma hanno una diversa disposizione dei pin, per poter soddisfare una ampia gamma di semplici periferiche. Poiché usano porte diverse,  non vanno in conflitto.




Un connettore con più porte digitali e analogiche
Questo connettore è piuttosto versatile, in quanto ampiamente programmabile: permette un'alimentazione a +3,3 come a +5v; e usare :
  • tre porte digitali;
  • due porte digitali e una analogica;
  • una porta digitale e due analogiche.

E' stato pensato per poter connettere sia un joystick (una porta digitale e due analogiche) che un encoder (due porte digitali e una analogica), più naturalmente una vasta gamma di altre periferiche, magari da collegare con alcuni brevi connettori, nel caso non utilizzino lo stesso ordine dei pin.

Ponticellando i connettori maschi J6 e J7 si possono selezionare le porte analogiche o digitali; J5 la tensione di alimentazione, per cui è necessario usare sempre le solite cautele.

Le porte disponibili:
GPIO20 (digitale, fisso)
GPIO27 (digitale); in alternativa: A3 (analogica)
GPIO22 (digitale); in alternativa: A4 (analogica).



ad1

ad1

joy
enc
   Joystick              Encoder
I moduli per il connettore "AD1":
aad1



Due connettori (in alternativa) con una porta digitale e una analogica

Questi due connettori possono essere utilizzati in alternativa, in quanto utilizzano le stesse porte, e quindi andrebbero in conflitto, provocando sicuramente malfunzionamente. Ne sono stati inseriti due perché hanno una diversa disposizione di pin, adatte ad accogliere diverse categorie di periferiche.

Ci sono una serie di piccole schede con sensori che forniscono informazioni sia seriali che analogiche, come un sensore di temperatura, uno switch optoelettrico, due sensori microfonici, che utilizzeranno lo zoccolo AD1A.
Mentre una vasta gamma di sensori specializzati nella rilevazione di vari tipi di gas (come per esempio MQ135) richiedono il sensore AD1B. Attenzione: questi rilevatori di gas richiedono di riscaldare la propria cellula sensibile, e pertanto hanno un assorbimento elevato. Usarli sempre attivando l'alimentatore esterno! Il datasheet relativo a questi sensori di gas richiedono l'alimentazione a +5v, ma funzionano egregiamente anche a +3,3v, per cui preferire, come sempre, l'alimentazione più bassa, per non danneggiare il Raspberry!

Le porte utilizzate sono le seguenti:
digitale: GPIO4
analogica: A5



ad1a

ad1a

hw496
HW-496
mq135
MQ135

I moduli per il connettore "AD1A":
add1a

I moduli per il connettore "AD1B":
add1b
add1bb



Gli ingressi analogici "Analogic Inputs"

analogic

anin
 
Come indicato nell'apertura di questo capitolo, Raspberri PI non possiede ingressi analogici. Però è possibile, utilizzando un circuito integrato MCP3008, dotarlo di ben otto ingressi analogici.
Nel connettore "Analogic IN", sono presenti quelli da 0 a 5. Però sono solo sei! Le porte 6 e 7 sono utilizzate per controllare due potenziometri da 10 KOhm, che verranno trattai in seguito. Penso che sei porte analogiche disponibili siano più che sufficienti per la maggior parte delle applicazioni.
Il chip MPC3008 si collega al Raspberry con il protocollo SPI, di cui utilizza quattro porte, da GPIO8 a GPIO11. Per evitare eventuali conflitti con altri connettori che usano lo stesso protocollo (come per esempio Rfid1), si è pensato di inserire quattro ponticelli, evidenziati in diversi colori. Quando sono chiusi, le porte analogiche sono attive; altrimenti sono scollegate. In futuro si vedrà se variando lo schema elettrico della scheda sarà possibile ovviare al problema, in quanto teoricamente è possibile connettere più periferiche SPI contemporaneamente, variando un pin di controllo.

Come visto nella sezione relativa all'alimentazione, è possibile scegliere se alimentare i moduli collegati a +3,3v oppure a +5v. La solita raccomandazione,porre molta cautela ad alimentare le periferiche a +5v, rischiano di danneggiarle e sopratutto di danneggiare il Raspberry.

                               Alcuni sensori analogici:
ky018
ky039
sen18

I moduli per il connettore "Analogic Inputs":
ain



Due potenziometri (porte analogiche)
Poiché durante la progettazione di questa BDS si è deciso di inserire un chip per gestire le porte analogiche, si è pensato di inserire nativamente due potenziometri sulla basetta, che possono essere molto utili per variare la velocità di rotazione di un motore, l'angolo di rotazione di un servomotore, la luminosità di un led, la frequenza di un suono...
Quindi i potenziometri possono essere utilissimi e pertanto trovano posto a tutto diritto sulla nostra BDS.

Naturalmente, affinchè i due potenziometri possano svolgere la loro funzione, è necessario che siano posti i ponticelli nella sezione "Analogic Inputs".
Come si vede, in prossimità dei due potenziometri sono stati inseriti dei condensatori elettrolitici da 100 uF, utili nel caso sia necessità di dare spunto all'avvio di attuatori che assorbono molta energia, come per esempio dei motori elettrici

Il potenziometro "Trim1" è connesso alla porta "A7";
mentre quello denominato "Trim2" è connesso alla porta "A6".
Queste due porte non sono presenti sul connettore di Analogic Inputs", perché se venisse collegate ad esse in parallelo un altro sensore, i dati forniti potrebbero essere falsati.

potenz un potenziometro da basetta              

Nota: poichè i potenziometri sono connessi direttamente sulla basetta, non è possibile connettere altri moduli su questo ingresso.
  

2pt

2pot



Tabella dei conflitti tra porte

I Raspberry PI fortunatamente hanno 25 porte digitali disponibili, però in fase di progettazione non se ne hanno mai abbastanza... ecco quindi la necessità di creare una tabella per i possibili conflitti tra porte.
Come si potrà vedere, attualmente la maggior parte dei conflitti si manifestano per i  tre connettori che utilizzano il protocollo SPI, ovvero "Analogic Inputs", "Rfid1" e "Multiplexer". Peroò variando la porta di controllo, quella che si chiama "SDA", questo conflitto dovrebbe scomparire. Attualmente tutti questi connettori utilizzano GPIO8, ma probabilmente con un piccolo intervento sulle piste della basetta sarebbe possibile ovviare a questo principale inconveniente, permettendo di utilizzarli contemporaneamente.
A breve vedremo come intervenire.
Ecco intanto l'immagine delle varie porte utilizzate.

conflitti
Come si può vedere dalla legenda, ci sono alcune porte il cui utilizzo è sconsigliato, ovvero GPIO0 e GPIO1, perchè utilizzate dal sistema.
Le porte colorate in grigio, vanno in conflitto tra loro, se usate contemporaneamente su due connettori diversi. I moduli I2C non provocano conflitti, sempre che abbiano indirizzi interni differenti. Esiste anche un modulo (TCA9548) che permette di connettere insieme ben otto periferiche I2C con lo stesso indirizzo, come per esempio otto display SSD1306, ma richiedono una programmazione particolare.
I moduli in verde scuro non producono conflitti.
Quelli in verde chiaro sono relativi a due moduli "gemelli", come per esempio GPS1 e GPS2, oppure AD1A e AD1B, che come si vede nella descrizione particolareggiata, utilizzano le stesse porte e sono stati progettati per essere usati uno solo alla volta.
Il colore azzurro indica i moduli alimentatti a +3,3v, e quelli in arancio i moduli alimentati a +5v. Come sempre, vale la cautela dell'uso dei +5v, in quanto il Raspberry sebbene fornisca anche questa tensione, lavora nativamente a +3,3v.

Clicca qui per scaricare la tabella in formato PDF
Clicca qui per scaricare la tabella in formato ODS



Tabella dei sensori disponibili per ogni connettore della BDS

Da questo paragrafo è possibile scaricare il file nei due formati ods e pdf contenente tutte le informazioni relative alle varie periferiche per ogni connettore.

Clicca qui visualizzare/scaricare il file in formato PDF contente le informazioni dei moduli relativi ai vari connettori.
Clicca
qui visualizzare/scaricare il file in formato  ODS contente le informazioni dei moduli relativi ai vari connettori.



Immagine dei moduli per Arduino/Raspberry

Clicca qui per visualizzare/scaricare le immagini dei sensori parzialmente testati.

Nota: è scritto parzialmente testati, perché quelli che si vedono descritti sono stati sperimentati principalmente con i vari Arduino e ESP32, ESP8266.
 
ssd1306



Per contatti: etdiy@centroanahata.it