Progetto Arduino

Salve a tutti,
ho da poco terminato la scuola e ho iniziato ad approfondire Arduino,
le mie conoscenze sono basilari e legate a quello che ho studiato in due anni.
Avendo studiato telecomunicazioni i miei problemi non si concentrano sulla parte hardware ma nella realizzazione dei codici.
Il mio problema e' il seguente: ho da una parte 5 cavi di colore diversi e da un'altra parte altri 5 cavi con i colori dell'altro lato.Quindi in totale 10 cavi. Questi vanno collegati a due a due a delle viti colorate. Se i 2 cavi dello stesso colore sono collegati alla vite di quel colore, allora suona un buzzer.
Avevo pensato di porre una resistenza fissa e altre reistenze diverse per ogni colore, in modo da calcolare col partitore la caduta di tensione su ogni resistenza.
Pero' non ho idea di come possa rilevare il valore di una resistenza. Qualcuno puo' darmi qualche spunto?

Buongiorno,
essendo il tuo primo post, nel rispetto del regolamento della sezione Italiana del forum (… punto 13, primo capoverso), ti chiedo cortesemente di presentarti IN QUESTO THREAD (spiegando bene quali conoscenze hai di elettronica e di programmazione ... possibilmente evitando di scrivere solo una riga di saluto) e di leggere con MOLTA attenzione il su citato REGOLAMENTO ... Grazie. :slight_smile:

Guglielmo

VittoM:
Pero' non ho idea di come possa rilevare il valore di una resistenza. Qualcuno puo' darmi qualche spunto?

NON ho capito il problema, ma rispondo alla tua domanda ... con la legge di Ohm ... una resistenza di valore noto in serie a quella di valore sconosciuto, una tensione di valore noto e, con arduino, misuri la tensione tra le due resistenze.

In pratica crei un partitore di tensione, vedi la tensione nel mezzo e calcoli il vaore della resistenza sconosciuta :wink:

Guglielmo

Hm facci capire meglio, hai 5 cavi di colori diversi da un lato ed altri 5 degli stessi colori dall'altro, esatto? In mezzo hai una qualche board con delle viti colorate, e vuoi che quando si collega ad esempio un filo blu di un lato e il filo blu dell'altro lato, ad una vite di colore blu, suoni un buzzer?

Magari fai anche un disegnino di come pensi debba essere questo gioco (dal punto di vista "fisico").

(PS Praticamente stai facendo un Sapientino? :slight_smile: )

Quando due fili di uno stesso colore toccano la vite di quel colore allora suona un buzzer.
Ad esempio quando D e H toccano la vite gialla o B e F la verde

Schermata del 2018-11-12 15-33-43.png

Ok quindi confermi quello che ho scritto.
Quando due fili toccano la stessa vite ovviamente sono in contatto tra loro, e con la vite, per cui il tutto si riduce a come identificare quando un filo tocca una delle viti (e quale) e se il filo è dello stesso colore far suonare il buzzer.

Ci possono quindi essere vari metodi per implementare questa cosa, il problema è che con un partitore resistivo (o sulle 5 viti, o su 5 fili, il problema non cambia) ti servirebbero comunque 10 ingressi analogici, e Arduino UNO ne ha solo 6 (a proposito, non ci hai detto quale board Arduino hai o intendi usare), per questa implementazione dovresti quindi usare una Mega. Se va bene, allora io farei un partitore resistivo sulle 5 viti (4 resistenze diciamo da 1K ed una da 4K7, vedi QUI un esempio), quindi ogni filo è collegato ad un ingresso analogico, diciamo i primi 5 da A0 ad A4, gli altri da A5 ad A9, ed ognuno anche ad una resistenza di pull-down da 4K7. Quando due fili dello stesso colore (es. A1 ed A6) toccano la stessa vite, avranno la stessa lettura quindi farai suonare il buzzer.

Quindi se hai o prendi un Mega, inizia a sperimentare, scrivi il tuo codice, e poi postalo qui se hai problemi e ti aiuteremo.

La vedo semplice senza usare partitori, tutto in digitale su una UNO
Serve per forza usare partitori?
Anche così si può fare su una UNO, con una certa semplicità
Se invece si dovesse fare con Un solo ingresso analogico, servirebbero resistenze calibrate, ma anche così dovremmo farcela con una UNO

Beati voi che avete capito cosa l'OP vuole ... ::slight_smile:

... sto benedetto buzzer ce l'ha già o no? Dal suo discorso iniziale non si capisce ... Tira poi in ballo delle resistenze ... per fare cosa? Non si capisce ...

Se deve SOLO controllare che un certo filo X è collegato con un altro certo filo Y ... direi che è banale e basta una manciata di porte digitali, se deve fare altro ... che ce lo spieghi!

Guglielmo

A me pare di aver capito che vuole irconoscere solo se determinati fili sono collegati insieme

per fare questo basta fare un collegamento del genere e controllare se su un ingresso analogico c'e' esattamente la meta' della tensione

>brunello22 ... ma perché non aspettate mai che sia l'OP a rispondere ed a chiarire COSA vuole realmente fare ? ? ? :o

Guglielmo

gpb01:
>brunello22 ... ma perché non aspettate mai che sia l'OP a rispondere ed a chiarire COSA vuole realmente fare ? ? ?

Vero...
Potrebbe pure decidere di non volerci mettere delle resistenze

sapientino_A.jpg
Si complica un pò il programma, ma mica più di tanto

Non vedo particolari complicazioni
ce la possiamo cavare in poche righe di programma
vediamo di fare una stima
No, non la esplicito perchè sarebbe una indebita indicazione di come scrivere il programma
com'era quel gioco televisivo, che bisognava indovinare una canzone a partire da poche note?
beh, io la indovino in 17 righe
Adesso è tutta questione se 17 righe sono un programma complesso oppure no
Certo, se fossero 17 digitalread sarebbe un programma banale
ma anche se fossero 17 for, non sarebbe un programma complesso, magari incasinato, ma a livello di complessità non so se 17 righe di for sarebbero complesse da capire

ve ne siete persi un pezzo :slight_smile:

Se i 2 cavi dello stesso colore sono collegati alla vite di quel colore, allora suona un buzzer

Patrick_M:
ve ne siete persi un pezzo :slight_smile:

io no
Editato
La notte porta consiglio, sono sicuro di starci in una UNO anche nella versione tutta analogica, ma confermo: usando resistenza calibrate

brunello22:
per fare questo basta fare un collegamento del genere e controllare se su un ingresso analogico c'e' esattamente la meta' della tensione

Geniale, migliore della mia soluzione!

brunello22:
per fare questo basta fare un collegamento del genere e controllare se su un ingresso analogico c'e' esattamente la meta' della tensione

e se, per esempio, i due fili rossi fossero collegati ad A1 invece che ad A0?
Oppure se si collegasse il verde, il blu, il giallo e il viola di destra col rosso di sinistra? Magari sul piedino del viola....
Tenuto conto delle tolleranze ci si potrebbe ancora stare...

Standardoil:
e se, per esempio, i due fili rossi fossero collegati ad A1 invece che ad A0?
Oppure se si collegasse il verde, il blu, il giallo e il viola di destra col rosso di sinistra? Magari sul piedino del viola....

Hm, hai ragione, mi ero entusiasmato alla soluzione di brunello e non ho notato che qualquadra non cosa... :slight_smile: Tra l'altro aggiungo anche che se gli input analogici sono lasciati float avremo letture sballate semi random, fino a che non si collega almeno un puntale.
Mi sa che alla fine la soluzione più realizzabile è la mia, col Mega :wink: ma mi intriga il problema, vediamo se si trovano altre soluzioni.

Non serve un mega, basta una UNO, con 17 righe di codice si fa, lo ho già detto, in digitale
Anche volendo fare un coso analogico, basta una UNO
Il difficile è farlo, volendo, con un solo partitore, e un solo ingresso analogico
Ecco, questa è la vera sfida

Standardoil:
Non serve un mega, basta una UNO, con 17 righe di codice si fa, lo ho già detto, in digitale
Anche volendo fare un coso analogico, basta una UNO

No, non l'hai detto, lo hai solo accennato senza descrivere COME.
Quale sarebbe la tua soluzione (anche senza postare codice)?
Guarda che nessuno ti pagherà, quindi puoi anche dirla... :wink:

Ma io la direi volentieri, se lo OP portasse il suo codice
NON e ripeto: non posterò codice in violazione al regolamento
Oltretutto io non scrivo e non leggo messaggi privati, sono un uomo trasparente e cristallino