This shows you the differences between two versions of the page.
pm:prj2021:cghenea:dice-sim [2021/06/01 19:34] florin.lipianu [Jurnal] |
pm:prj2021:cghenea:dice-sim [2021/06/01 20:41] (current) florin.lipianu |
||
---|---|---|---|
Line 12: | Line 12: | ||
<note>Jucatorul va controla zarul prin interactiunea cu telecomanda pentru alegerea tipului de zar: D4/D6/D8/D12/D20. Apoi zarul va genera un alt numar random atunci cand accelerometrul este miscat. Numarul va fi afisat prin display.</note> | <note>Jucatorul va controla zarul prin interactiunea cu telecomanda pentru alegerea tipului de zar: D4/D6/D8/D12/D20. Apoi zarul va genera un alt numar random atunci cand accelerometrul este miscat. Numarul va fi afisat prin display.</note> | ||
===== Hardware Design ===== | ===== Hardware Design ===== | ||
- | Lista componentelor: | + | === Lista componentelor: === |
* Placuta Arduino UNO | * Placuta Arduino UNO | ||
* 4 x Display cu 7 Segmente cu Catod Comun | * 4 x Display cu 7 Segmente cu Catod Comun | ||
* Breadboard | * Breadboard | ||
- | * Accelerometru / Giroscop | + | * Modul Accelerometru / Giroscop |
- | * Butoane | + | |
* Modul Mini Receptor Infraroșu | * Modul Mini Receptor Infraroșu | ||
* Mini Telecomandă Infraroșu (cu baterie) | * Mini Telecomandă Infraroșu (cu baterie) | ||
+ | * Fire | ||
+ | === Schema electrica: === | ||
+ | {{:pm:prj2021:cghenea:schemaelectrica_ovidiulipianu.png?550|}} | ||
===== Software Design ===== | ===== Software Design ===== | ||
Proiectul are 3 componente, atat software cat si hardware: un display led cu 4 cifre pe 7 segmente, un modul accelerometru / giroscop si un senzor infrarosu. | Proiectul are 3 componente, atat software cat si hardware: un display led cu 4 cifre pe 7 segmente, un modul accelerometru / giroscop si un senzor infrarosu. | ||
Astfel, in loop() se apeleaza translateIR care atunci cand primeste un semnal infrarosu, seteaza flag-ul pentru zar. Dupa aceea se citesc datele pentru modulul de accelerometru / giroscop. Daca se detecteaza miscarea, se genereaza un alt numar random. Apoi, numarul acesta random este afisat pe display cu ajutorul functiei setDigit care face conversia din numar in formatul necesar pe segmente pentru display. | Astfel, in loop() se apeleaza translateIR care atunci cand primeste un semnal infrarosu, seteaza flag-ul pentru zar. Dupa aceea se citesc datele pentru modulul de accelerometru / giroscop. Daca se detecteaza miscarea, se genereaza un alt numar random. Apoi, numarul acesta random este afisat pe display cu ajutorul functiei setDigit care face conversia din numar in formatul necesar pe segmente pentru display. | ||
+ | |||
**Biblioteci folosite: ** IRremote.h , Wire.h | **Biblioteci folosite: ** IRremote.h , Wire.h | ||
- | ===== Schema electrica ===== | + | |
- | {{:pm:prj2021:cghenea:schemaelectrica_ovidiulipianu.png?550|}} | + | |
===== Rezultate Obţinute ===== | ===== Rezultate Obţinute ===== | ||
Se poate observa in [[https://www.youtube.com/watch?v=r5svqxSowWQ|demo]] ca se genereaza numere random in momentul miscarii giroscopului si ca tipul de zar se poate seta din telecomanda 1=D4/2=D6/3=D8/4=D12/5=D20. | Se poate observa in [[https://www.youtube.com/watch?v=r5svqxSowWQ|demo]] ca se genereaza numere random in momentul miscarii giroscopului si ca tipul de zar se poate seta din telecomanda 1=D4/2=D6/3=D8/4=D12/5=D20. | ||
Line 39: | Line 41: | ||
===== Bibliografie/Resurse===== | ===== Bibliografie/Resurse===== | ||
https://www.arduino.cc/reference/en/language/functions/random-numbers/random/ | 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/electropeak/use-an-ir-remote-transmitter-and-receiver-with-arduino-1e6bc8 | ||
+ | |||
https://create.arduino.cc/projecthub/SAnwandter1/programming-4-digit-7-segment-led-display-2d33f8 | https://create.arduino.cc/projecthub/SAnwandter1/programming-4-digit-7-segment-led-display-2d33f8 | ||
+ | |||
https://mschoeffler.com/2017/10/05/tutorial-how-to-use-the-gy-521-module-mpu-6050-breakout-board-with-the-arduino-uno/ | https://mschoeffler.com/2017/10/05/tutorial-how-to-use-the-gy-521-module-mpu-6050-breakout-board-with-the-arduino-uno/ | ||
+ | |||
+ | https://kits.plusivo.com | ||
+ | |||
+ | https://www.youtube.com/watch?v=r5svqxSowWQ | ||
+ | |||
+ | {{:pm:prj2021:cghenea:dice_simulator_cs_open_courseware_.pdf|}} | ||
+ | <html><a class="media mediafile mf_pdf" href="https://ocw.cs.pub.ro/courses/pm/prj2021/cghenea/dice-sim?do=export_pdf">Export to PDF</a></html> | ||