Prove Arduino: prima bozza di Tris

Questo articolo descrive il secondo passo compiuto per la realizzazione “casalinga” di una scacchiera elettronica basata sul riconoscimento della posizione e del movimento dei pezzi tramite sensori a effetto di Hall posti sulla scacchiera e magneti posti all’interno dei pezzi.

Questo secondo passo è consistito nella realizzazione di una scacchiera 3×3. Facile da realizzare, questa mini scacchiera permetterà comunque di verificare la possibilità di discriminare le pedine presenti sulle case e di valutare eventuali condizioni di interferenza.

L’idea è di utilizzare la scacchiera  per giocare il Tris realizzando in Arduino, oltre che il software per riconoscere la posizione delle pedine, anche l’algoritmo per giocare, vista la semplicità dell’algoritmo stesso.

Per realizzare la scacchiera mi sono avvalso del fondamentale aiuto di un amico, grande tecnico elettronico nonché bravo artigiano del legno. Per questo passo a lui si deve la realizzazione della scacchiera e dello shield Arduino. Io mi sono limitato a mettere alcune delle idee e lo sviluppo del software.

Per oggi mi limito a presentare lo schema e alcune foto della realizzazione pratica.

Schema della scacchiera Tris con sensori ad effetto di Hall
Schema della scacchiera Tris con sensori ad effetto di Hall

I sensori ad effetto di Hall utilizzati sono gli A1120EUA già visti in un precedente articolo.

Invece di collegare i nove sensori a nove differenti IO digitali di Arduino si è preferito realizzare uno schema a tre righe e tre colonne in modo da ridurre il numero di IO necessari a 6. Questo sistema, se per il momento porta un vantaggio irrilevante, nella realizzazione finale della scacchiera 8×8 porterà vantaggi notevoli permettendo di ridurre il numero di linee di IO necessarie da 64 a soli 16.

Per leggere lo stato di tutti i sensori la soluzione software sarà quella di mandare in stato alto una sola linea tra quelle che alimentano le righe (D3, D4 e D5) e leggere le tre colonne (D0, D1 e D2). Iterando sulle tre righe si potrà leggere lo stato di tutti i sensori.

Poiché un output digitale di Arduino non è in grado di alimentare insieme tre sensori, su ogni riga si è utilizzato uno stadio driver con un transistor 2N3904.

A seguire potete vedere le foto del prodotto finito, scacchiera e shield. Per oggi basta, nella prossima puntata vedremo il software.

La scacchiera per il Tris, con Arduino Uno e relativo shield connesso
La scacchiera per il Tris, con Arduino Uno e relativo shield connesso

 

Lo shield utilizzato per l'acquisizione dello stato della scacchiera
Lo shield utilizzato per l’acquisizione dello stato della scacchiera

 

Posizionamento e collegamento dei sensori ad effetto di Hall sotto la scacchiera
Posizionamento e collegamento dei sensori ad effetto di Hall sotto la scacchiera