Limite di moduli collegabili ad arduino

Buongiorno a tutti e grazie a chiunque voglia aiutarmi!

Premetto di essere un principiante assoluto sia di elettronica che di programmazione per cui perdonatemi svarioni e/o buchi di conoscenze!

Sto sviluppando un sistema in grado di leggere e immagazzinare codici a barre, scrivere il suddetto codice seguito dall'orario di lettura su un file, e inviare periodicamente (ogni 3 minuti) il file in questione ad una pagina ftp, possibilmente nominando il file con data/ora di invio.

Possiedo già un arduino UNO con modulo GSM-GPRS acquistato su elecfreaks. Da quello che ho capito mi serviranno anche un modulo sdcard ed un module realtime clock, senza contare che dovrò connettere anche il barcode reader PS2..... (vorrei anche connettere lo schermo LCD nokia5110)

La mia domanda è questa: a livello hardware, è possibile realizzare questa torre di babele di moduli e periferiche?

Grazie infinite

La mia domanda è questa: a livello hardware, è possibile realizzare questa torre di babele di moduli e periferiche?

Dipende dalle schede e da che pin usano. Se 2 shield usano lo stesso pin non é possibile.
Come Collegamenti un Arduino UNO dovrebbe avere abbastanza pin per poter pilotare tutto ma temo che gli collegamenti devi farli Tu stesso e non usare dei Shield giá predisposti da impilare sul Arduino.

Ciao Uwe

giuro:
Buongiorno a tutti e grazie a chiunque voglia aiutarmi!

Ti invitiamo a presentarti (dicci quali conoscenze hai di elettronica e di programmazione) qui: Presentazioni
e a leggere il regolamento: Regolamento

uwefed:
Dipende dalle schede e da che pin usano. Se 2 shield usano lo stesso pin non é possibile.
Come Collegamenti un Arduino UNO dovrebbe avere abbastanza pin per poter pilotare tutto ma temo che gli collegamenti devi farli Tu stesso e non usare dei Shield giá predisposti da impilare sul Arduino.

Ciao Uwe

Grazie uwe, penso che il problema non sarà fare i collegamenti, ma già sapere che sarà possibile collegare tutte queste periferiche alla scheda mi è di aiuto!
Grazie

Giuro

giuro:
Buongiorno a tutti e grazie a chiunque voglia aiutarmi!

Possiedo già un arduino UNO con modulo GSM-GPRS acquistato su elecfreaks. Da quello che ho capito mi serviranno anche un modulo sdcard ed un module realtime clock, senza contare che dovrò connettere anche il barcode reader PS2..... (vorrei anche connettere lo schermo LCD nokia5110)

La mia domanda è questa: a livello hardware, è possibile realizzare questa torre di babele di moduli e periferiche?

Grazie infinite

secondo me non è possibile.
il mio attuale progetto ha un display oled e un modulo GSM, 4 relè, 2 sensori corrente, 2 trimmer e 1 switch, e ho praticamente saturato tutti gli ingressi e sto in overflow di memoria dinamica.
pin per la card sd me li scordo, posso recuperare un paio di pin con un OLED I2C, al posto dell'attuale SPI.
Anche il real time me lo scordo....

magari mi sbaglio ma il numero di pin è quello, per mettere tutta quella roba la vedo molto dure...

ciao

Oppure converti ad I2C quanti più dispositivi riesci (tipo display, eventuali uscite di comando, ecc...), così da sfruttare il bus e liberare dei pin...
Il limite più grosso è tuttavia la memoria disponibile, secondo me solo con la mega riesci a fare qualcosa (basta caricare nello sketch qualche libreria un pò tosta e ti giochi molto spazio, senza parlare del monitor seriale... una fogna per le risorse...)

cmq puoi provare a mettere su carta tutti i tuoi moduli e i loro pin relativi, fai la somma e vedi quanti sono.

secondo step è verificare se siano compatibili dal punto di vista delle comunicazioni software (seriale ecc.)

per esempio

-modulo GSM-GPRS - 2 pin (rx/tx)
-un modulo sdcard: 4 pin
-un module realtime clock: 2 pin (credo)
-il barcode reader PS2: serve interfaccia USB o basta ingresso arduino? (da verificare) 2 pin (minimo)
-lo schermo LCD nokia5110: 4-5 pin (ti consiglio di sostituirlo con un OLED a 2 pin, I2C)

totale 2+4+2+2+4 =14 pin

e stai già fuori... posto sempre che poi non sopraggiungano problemi di comunicazione...

dr_vagus:
cmq puoi provare a mettere su carta tutti i tuoi moduli e i loro pin relativi, fai la somma e vedi quanti sono.

secondo step è verificare se siano compatibili dal punto di vista delle comunicazioni software (seriale ecc.)

per esempio

modulo GSM-GPRS - 2 pin (rx/tx)

un modulo sdcard: 4 pin

un module realtime clock: 2 pin (credo)

il barcode reader PS2: serve interfaccia USB o si puo' utilizzare ingresso arduino? (da verificare) 2 pin (minimo)

lo schermo LCD nokia5110: 4-5 pin (ti consiglio di sostituirlo con un OLED a 2 pin, I2C)

totale 2+4+2+2+4 =14 pin

e stai già fuori... posto sempre che poi non sopraggiungano problemi di comunicazione...

Il modulo RTC (real time) è I2C, quindi stessi pin del display (se usi un OLED) e puoi vedere se esistono moduli SD o GSM che siano anche loro I2C e siano gestibili da librerie, così liberi altri pin e vai sul bus I2C assieme a OLED ed RTC...

@gualand, per favore non quotare il post subito precedente, si capisce subito che rispondi a quello. Altrimenti le discussioni diventano lunghissime da leggere. Thanks. :wink:

dr_vagus:
-modulo GSM-GPRS - 2 pin (rx/tx)
-un modulo sdcard: 4 pin
-un module realtime clock: 2 pin (credo)
-il barcode reader PS2: serve interfaccia USB o basta ingresso arduino? (da verificare) 2 pin (minimo)
-lo schermo LCD nokia5110: 4-5 pin (ti consiglio di sostituirlo con un OLED a 2 pin, I2C)

totale 2+4+2+2+4 =14 pin

e stai già fuori... posto sempre che poi non sopraggiungano problemi di comunicazione...

PS2 non é un interfaccia USB ma una seriale sincroma percui 2 pin (segnale e clock).
Non so come contate voi ma con i miei conti un Arduino UNO ha 20 pin; 18 se togliamo 0 e 1 per poter essere collegati via USB a un PC.

Ciao Uwe

uwefed "Non so come contate voi ma con i miei conti un Arduino UNO ha 20 pin"

Beh, in effetti io tenevo conto solo dei pin digitali, mentre se vi aggiungi gli analogici arrivi a 20.
solo che con gli analogici fai solo inputs. Quindi cmq hanno limitazioni.

secondo me non cambia molto, e una volta che hai installato le librerie per tutti questi moduli penso che la memoria te la sei giocata tutta.

non so.. ovviamente è la mia prima impressione, poi magari si riesce a farci stare tutto...

dr_vagus:
Beh, in effetti io tenevo conto solo dei pin digitali, mentre se vi aggiungi gli analogici arrivi a 20.
solo che con gli analogici fai solo inputs. Quindi cmq hanno limitazioni.

No i pin analogici sono dei pin digitali normali come gli altri 14 digitali, solo che hanno come doppia funzione la funzione di entrata analogica, come altri hanno la doppia funzione di uscita PWM, TX-RX, I2C, SPI, ICSP ecc.

I pin analogici sono pin digitali entrata/usita con i numeri da 14 a 19.

Ciao Uwe

bene, ho imparato un'altra cosa, mi era sfuggita questa cosa, ero convinto si usassero solo per input.

beh in tal caso il problema dei pin potrebbe essere risolto. Quello che è da verificare a questo punto, è se l'inclusione di tutte le librerie necessarie per i vari moduli , non consumi tutti i 2k di memoria.

sbaglio?

ciao

Ciao ragazzi!
Ho letto ora tutta la discussione dato che ho avuto alcuni problemi e ho dovuto accantonare la questione Arduino. Per cui scusatemi se sembrava avessi tirato il sasso e nascosto la mano!
Vorrei per favore fare un breve riassunto della questione (torno a ricordare la mia assoluta inesperienza):
-a livello hardware arduino ha 20 pin (14 digitali + 6 analogici) tutti utilizzabili
-il modulo sd card è connesso con le porte SPI (pin 11,12,13)
-i moduli che si connettono "montandoli" sopra Arduino possono anche essere collegabili con dei cavi, ai pin che desidero utilizzare (devo fare modifiche alle librerie se modifico i pin predefiniti?)

DOMANDE:
-è necessario collegare a tutte le periferiche i resistori di pull-up?
-i pin di clock possono essere comuni per le varie periferiche (RTC SCANNER SDCARD)?

se arriviamo corti di memoria saremo costretti a prendere una scheda più potente (suppongo un MEGA) e risolveremmo qualsiasi problema di PIN... È comunque auspicabile per le nostre finanze riuscire a sviluppare il progetto con quello che già abbiamo!!!

detto ciò, i PIN sarebbero:
0,1 -> connessione al PC
2,3 -> rx e tx del GSM shield
4 -> barcode scanner DATA
7 -> barcode scanner CLOCK
8 -> RTC DATA
9 -> RTC CLOCK
10 -> SDCARD Slave Select
11,12 -> SDCARD Input e Output
13 -> SDCARD CLOCK

Ho sbagliato qualcosa?
non smetterò mai di ringraziarvi!

Giulio

Qualche consiglio?