Sah

Autor

Iordache Bogdan

Grupa: 331CC

Introducere

O tabla de sah augmentata cu led-uri, diode si comutatoare astfel incat, la fiecare mutare, jucatorului sa i se indice , prin iluminare de leduri, fiecare posibila mutare pe care o poate face cu o anumita piesa.

  Functionalitatile proiectului:
   - identificarea pieselor pe tabla. Fiecare casuta in care se afla o piesa va fi iluminata de catre ledul corespunzator.
   - in momentul unei mutari, cand se ridica piesa de pe tabla, se vor ilumina toate casutele pe care jucatorul poate muta piesa respectiva
   - implementarea unui modul "single-player", in care jucatorul poate juca impotriva calculatorului, care isi va indica mutarile prin iluminari de leduri.

Descriere generala

Pe fiecare patrat din tabla de sah vor fi instalati un led, o dioda si un comutator reed.

Fiecare piesa de sah va avea fundul magnetic, astfel incat , in momentul in care se apropie de un comutator reed, acesta se va inchide.

Led-urile vor fi asezate dupa metoda charlieplex astfel incat sa putem controla un singur led din setarea pinilor aferenti HIGH sau LOW, in functie de caz.

Hardware design

Piese necesare:

  1. 64 leduri
  2. 64 contacte reed
  3. 64 diode
  4. 8 rezistente
  5. 8 tranzistoare nMOS
  6. un demultiplexor 3 la 8
  7. tabla de sah si piese de sah cu fund magnetic

Pe schema se pot observa perechi de diode cu comutatoare reed ce sunt conectate cate 8 la microcontroller.

Schema electrica

Schema de mai sus nu a supravietuit, iar din motive tehnice (lipsa de suficiente piese), tabal de sah a fost redusa de la 8×8 la 6×6 si urmatoarea schema electrica a fost implementata:

Descrierea circuitului

Circuitul poate fi impartit in 2 parti:

  1. schema LED-urilor
  2. schema senzorilor

Initial, planuiam sa folosesc un DEMUX 3 la 8 pentru a multiplexa intregul circuit de LED-uri, insa am preferat sa folosesc o schema de tip charlieplex, pentru a folosi in procent cat mai mare toate piesele pe care le aveam. LED-urile respecta urmatorul principiu: sunt conectate 2 cate 2 intre 2 pini, astfel incat unul din led-uri este cu catodul acolo unde este anodul celuilalt.

In poza din stanga, daca dorim primul LED sa fie aprins, vom seta pinul de sus la HIGH si celalalt la LOW.

Pentru senzori, fiecare contact reed este conectat la un capat la ground, iar celalalt capat primeste curent de la 2 pini de la microcontroller,un pin care controleaza o linie, altul care controleaza o coloana. Cand reed-ul este activat magnetic, ambii pini vor detecta acest lucru.

Implementare Software

 Pentru a detecta o piesa, fiecare contact reed a fost legat la un capat la ground, iar la celalalt capat primeste curent de la un pin-coloana (PD) si un pin-linie (PB). In momentul in care ambii pini sunt setati pe 1, inseamna ca este un magnet pe contactul reed respectiv. 
 In cadrul programului a fost declarata o matrice in care se tine minte fiecare pin care este setat pe HIGH. In cazul in care un contact reed este activat, atat pinul coloana cat si pinul linie sunt HIGH, ceea ce inseamna valoarea 2 in matrice. 
 Programul va verifica constant care pozitie a tablei are valoarea 2 in matrice, iar pentru cele care au, va aprinde ledul aferent. Pentru multiplexarea led-urilor s-a implementat metoda charlie-plex, in care led-urile sunt legate 2 cate 2 in sens opus fata de celalalt, dupa modelul urmator:
 

Concluzii & Rezultate

Bibliografie/Resurse

pm/prj2019/adragan/sah-cu-leduri.txt · Last modified: 2021/04/14 17:07 (external edit)
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0