Differences

This shows you the differences between two versions of the page.

Link to this comparison view

pm:prj2022:robert:dice-simulator [2022/05/13 15:43]
david.diculescu minor changes
pm:prj2022:robert:dice-simulator [2022/05/28 01:58] (current)
david.diculescu
Line 10: Line 10:
 <note tip> <note tip>
 Jucatorii vor actiona telecomanda pentru selectarea tipului de zar (cu 2, 4, 6 sau 8 fete), apoi se va genera un numar random atunci cand accelerometrul este miscat. La a doua aruncare de zar (miscare a accelerometrului) se va considera ca fiind aruncarea celui de al doilea jucator. Cel cu zarul mai bun va fi castigatorul (dubla de 1-1 fiind cel mai bun zar posibil). Jucatorii vor actiona telecomanda pentru selectarea tipului de zar (cu 2, 4, 6 sau 8 fete), apoi se va genera un numar random atunci cand accelerometrul este miscat. La a doua aruncare de zar (miscare a accelerometrului) se va considera ca fiind aruncarea celui de al doilea jucator. Cel cu zarul mai bun va fi castigatorul (dubla de 1-1 fiind cel mai bun zar posibil).
 +Pentru functia de random voi folosi un seed obtinut prin senzorul de temperatura integrat al placutei Arduino.
 </​note>​ </​note>​
  
Line 15: Line 16:
 === Lista componentelor === === Lista componentelor ===
   * Placuta Arduino UNO   * Placuta Arduino UNO
-  * x Display cu 7 segmente+  * x Display cu 7 segmente
   * Accelerometru / Giroscop   * Accelerometru / Giroscop
   * Receptor infrarosu   * Receptor infrarosu
   * Telecomanda infrarosu   * Telecomanda infrarosu
-  * fire+  * Fire
  
 ===Schema electrica=== ===Schema electrica===
  
 +{{:​pm:​prj2022:​robert:​arrduinodiagram.jpg?​600|}}
 ===== Software Design ===== ===== Software Design =====
  
 +Proiectul contine 3 elemente software si tot atetea elemente hardware. In primul rand un senzor de receptie IR, 4 display-uri 7-segmente si un accelerometru/​gyroscop. In loop se peleaza functia transalteIR() care tansforma semnalele infra-rosu primite prin telecomanda si seteaza un flag cu valoarea primita (flag-ul reprezinta numarul de fete al zarului cu care se va arunca). In continuare se citesc datele primite de accelerometru/​gyroscop,​ cat si temperatura inregistrata de acesta (la nivelul circuitului si nu al mediului!). In momentul in care este detectata miscarea, se vor genera numere random cuprinse inre 1 si vaoarea flag-ului. Aceste numere vor fi afisate in pereche ( doua zaruri ), pe 2 dintre ecranele 7-segmente, iar pe alt ecran se va afisa mereu numarul de fete al zarulurilor folosite.
  
-<note tip> +**Biblioteci folosite:** IRemote.hWire.h
-Descrierea codului aplicaţiei (firmware): +
-  ​mediu de dezvoltare (if any) (e.g. AVR StudioCodeVisionAVR) +
-  * librării şi surse 3rd-party (e.g. Procyon AVRlib) +
-  * algoritmi şi structuri pe care plănuiţi să le implementaţi +
-  * (etapa 3) surse şi funcţii implementate +
-</​note>​+
  
 ===== Rezultate Obţinute ===== ===== Rezultate Obţinute =====
  
-<note tip> +Am obtinut ceea ce mi-am propus sa fac. Im momenul miscarii breadboard-ului cu gyroscopul, numerele care reprezinta zarurile de pe display se schimba continuu, pana in momentul in care placuta este lasata nemiscata. Selectarea fetelor merge, de asemenea, putand fi olosit orice zar cu fete cuprinse intre 2-9. Pentru seed-ul de random am folosit pin-ul A1, care este nefolosit. De mentionat ca am incercat si folosit temperatura inoarsa de accelerometru,​ insa rezultatele nu au fost la fel de multumitoare.
-Care au fost rezultatele obţinute în urma realizării proiectului vostru. +
-</​note>​+
  
 +{{:​pm:​prj2022:​robert:​img_0.jpg?​350|}}
 +{{:​pm:​prj2022:​robert:​img1.jpg?​350|}}
 +{{:​pm:​prj2022:​robert:​img_2.jpg?​350|}}
 ===== Concluzii ===== ===== Concluzii =====
 +
 +Am reusit sa fac in mare ce mi-am propus. Pentru a se imbunatati se pot implementa noi functionalitati,​ precum: afisarea unui mesaj la "​aruncarea:​ unei duble sau un sumnal sonor produs de un buzzer etc.
 +Sunt multumit de ceea ce am realizat si a fost o experienta placuta sa imbin hardware-ul cu partea software.
  
 ===== Download ===== ===== Download =====
  
-<note warning>​ +{{:pm:prj2022:robert:pm_dice-simulator2022.zip|}}
-O arhivă (sau mai multe dacă este cazul) cu fişierele obţinute în urma realizării proiectului:​ surse, scheme, etc. Un fişier README, un ChangeLog, un script de compilare şi copiere automată pe uC crează întotdeauna o impresie bună ;-). +
- +
-Fişierele se încarcă pe wiki folosind facilitatea **Add Images or other files**. Namespace-ul în care se încarcă fişierele este de tipul **:pm:prj20??:c?** sau **:pm:​prj20??:​c?:​nume_student** (dacă este cazul). **Exemplu:​** Dumitru Alin, 331CC -> **:​pm:​prj2009:​cc:​dumitru_alin**. +
-</​note>​ +
- +
-===== Jurnal ===== +
- +
-<note tip> +
-Puteți avea și o secțiune de jurnal în care să poată urmări asistentul de proiect progresul proiectului. +
-</​note>​+
  
 ===== Bibliografie/​Resurse ===== ===== Bibliografie/​Resurse =====
  
 <​note>​ <​note>​
-Listă cu documente, datasheet-uri, resurse Internet folosite, eventual grupate pe **Resurse Software** şi **Resurse Hardware**.+https://​www.arduino.cc/​reference/​en/​language/​functions/​random-numbers/​random/​ 
 +https://​create.arduino.cc/​projecthub/​electropeak/​use-an-ir-remote-transmitter-and-receiver-with-arduino-1e6bc8 
 +https://​create.arduino.cc/​projecthub/​aboda243/​get-started-with-seven-segment-c73200 
 +https://​create.arduino.cc/​projecthub/​Nicholas_N/​how-to-use-the-accelerometer-gyroscope-gy-521-6dfc19 
 +https://​www.tinkercad.com/
 </​note>​ </​note>​
  
 <​html><​a class="​media mediafile mf_pdf"​ href="?​do=export_pdf">​Export to PDF</​a></​html>​ <​html><​a class="​media mediafile mf_pdf"​ href="?​do=export_pdf">​Export to PDF</​a></​html>​
  
pm/prj2022/robert/dice-simulator.1652445821.txt.gz · Last modified: 2022/05/13 15:43 by david.diculescu
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