Ciao,
prima di tutto, essendo il tuo primo post, ti chiederei di presentartiQUI (spiegando bene quali conoscenze hai di elettronica e di programmazione) e di leggere con attenzione il REGOLAMENTO ...
... poi, chiaramente devi identificare univocamente il "pupazzetto", quindi, dotandoli di due contatti, potresti identificarli tramite una resistenza univoca di cui leggi il valore (... sotto forma di tensione in un partitore resistivo).
Altro modo, molto più costoso e complesso, se sono distanti almeno una quindicina di cm l'uno dall'altro, potrebbe essere quella di usare dei tag RFID.
La linea guida è semplicemente ... la legge di Ohm
Usi 4 ingressi analogici di Arduino, crei 4 partitori resistivi in cui una resistenza è fissa (... sia come montaggio che come valore) mentre la seconda è diversa per ogni pupazzetto e montata sotto il pupazzetto. Se scegli opportunamente il valore, potrai avere, ai capi del partitore, 4 ben distinti valori di tensione che ti permettono di distinguere con certezza quale pupazzetto è stato poggiato sulla base (... dove debbono essere i contatti)
Decidi quanti pupazzetti vuoi identificare, es. 4 pupazzetti ...
... dovrai calcolarti 4 partitori resistivi in cui una resistenza è fissa, (es. R2, quella che metti sotto al tavolo per ogni postazione di contatto) ed una è variabile (es. R1) :
Fissato Vin come +Vcc (+5V), R1 è calcolata, con la legge di Ohm ... Vout = Vin x ( R2 / (R1 + R2) ) ... in modo che, sempre ad esempio:
primo pupazzetto ti da, come Vout, circa 1V
secondo pupazzetto circa 2V
terzo pupazzetto circa 3V
pupazzetto circa 4V
Se connetti i 4 Vout a 4 ingressi analogici, a seconda di quale pupazzetto poggi sulla basetta a chiudere il partitore, leggerai una tensione diversa (1V, 2V, 3V o 4V) e saprai distinguere il pupazzetto
Guglielmo
P.S. QUI un semplice strumento on-line ... metti Vin, Vout, R2 e ... ti da R1
Senza offesa, ma se ti serve uno sketch di esempio per quanto suggerito da gbp01, forse è meglio che lasci perdere. Si tratta di fare una analogRead() e confrontare quel che restituisce con i valori corrispondenti alle varie resistenze, che puoi determinare sperimentalmente... Tutto estremamente basilare.
Emmm ... in effetti qui siamo proprio alle basi ...
... che ne dici, prima di proseguire, magari di dedicare un po' di tempo per studiarti un po' meglio la programmazione di Arduino? ... perché poi ti riavvicinerai, sicuramente più produttivo, al tuo programma
Magari puoi cominciare con QUESTO e magari cercare in libreria qualche buon testo di programmazione C su Arduino. In inglese, ad esempio, c'è QUESTO , ma ne trovi parecchi anche in Italiano
purtroppo ho la necessità di evitare di bucare il tavolo, quindi opterei per gli RFID.
Premesso che il lavoro con le resistenze l'ho effettuato ed è funzionante, per questo ti ringrazio molto.
Solo una domanda,
ma il modulo RFID oltre al codice del chip, legge anche la sua posizione?
ovvero,
CHIP: 12121212 in alto a destra?
No, il modulo RFID legge solo il codice e, per di più, i lettori devono stare belli distanti tra di loro (15 - 20 cm) o non riuscirai più a capire su quale lo hai poggiato.
Ma scusa eh, senza bucare il tavolo, se fai 4 basi d'appoggio che attacchi con del biadesivo sul tavolo e da ogni basetta parte una coppia di fili che gira e scende sotto il tavolo ? Non buchi ed hai ugualmente risolto in modo sicuro ed economico (con gli RFID ti servono 4 lettori separati) ... :