Differences

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

Link to this comparison view

pm:prj2022:imacovei:theodor.cristea [2022/04/21 23:38]
theodor.cristea created
pm:prj2022:imacovei:theodor.cristea [2022/05/27 22:24] (current)
theodor.cristea
Line 23: Line 23:
   * Senzor vibratii   * Senzor vibratii
   * Servomotor   * Servomotor
-  * 7 segment display+  * 4 digit 7 segment display
   * Butoane   * Butoane
   * Fire   * Fire
 +
 +Schema electrica:
 +
 +{{:​pm:​prj2022:​imacovei:​schematic_theo_cristea.png?​300|}}
  
 ===== Software Design ===== ===== Software Design =====
 +
 +Mediu de dezvoltare: Arduino IDE
 +Librarii: Servo.h
 +Descriere functii:
 +  * setup: setez pinii de input si de output, activez intreruperile PCINT8 si PCINT9, pornesc fast-PWM cu top-ul pe ICR1 cu prescaler de 64
 +  * loop: actualizez seed-ul pentru random folosind datele citite de senzori, iar daca servo-ul este pornit, actualizez OCR1A-ul; la final apelez displayNumber
 +  * displayNumber:​ afisez numarul pe display; din cauza ca display-ul nu este capabil sa afiseze mai mult de o cifra la un moment dat, ciclez prin afisarea cifrelor cu un delay de 5 milisecunde
 +  * ISR(PCINT1_vect):​ verific apasarea butoanelor si ma folosesc de functia millis() pentru a ma asigura ca exista un delay de minim 0.5 secunde intre apasari (sa nu se apese butonul de mai multe ori)
 +  * pickDigit: alege care din cele 4 cifre de pe display este afisata
 +  * displayDigit:​ alege ce cifra se afiseaza
 +  * random: aplica un hash asupra seed-ului si numarului generat precedent pentru a obtine un nou numar random
 +  * turnOff: se seteaza toate segmentele de pe display pe off
 +
 ===== Rezultate Obţinute ===== ===== Rezultate Obţinute =====
 +https://​youtube.com/​shorts/​TWNSeBUvwRE?​feature=share \\
 +Puteti observa ca din filmare nu se intelege foarte bine ce se afiseaza pe display. In realitate se vede bine. Cifrele sunt afisate alternativ, cu un delay de 5 ms intre ele, deoarece display-ul este incapabil sa afiseze mai mult de o cifra la un moment dat. Astfel, se simuleaza afisarea continua a tuturor celor 4 cifre. Ochiul uman nu observa nicio anomalie, in schimb camera observa.
 ===== Concluzii ===== ===== Concluzii =====
 +Mi-a placut super mult sa lucrez pe acest proiect. Mi s-a parut super interesant sa caut in datasheet diverse informatii despre intreruperi,​ pwm si am invatat multe despre lucrul cu arduino si despre conectarea hardware-ului folosind breadboard-ul.
 ===== Download ===== ===== Download =====
 +{{:​pm:​prj2022:​imacovei:​true_random_number_generator.zip|}}
 ===== Jurnal ===== ===== Jurnal =====
 +20.04 - Alegere tema proiect \\
 +21.04 - Comandare componente \\
 +30.04-10.04 - Implementarea pe Tinkercad a proiectului in masura disponibilitatii componentelor \\
 +21.05-23.05 - Implementarea fizic a proiectului (cu tot cu scrierea de cod pentru componentele ce nu exista pe tinkercad) \\
 +===== Legenda pentru Bibliografie/​Resurse =====
 +[1] - lava lamps din introducere \\
 +[2] - pini si intreruperile specifice pinilor \\
 +[3] - pwm si intreruperi \\
 +[4] - pwm si intreruperi \\
 +[5] - conectare display \\
 +[6] - utilizarea display-ului \\
 +[7] - frecventa pwm si conectarea servomotorului \\
 +[8] - conectarea servomorotului \\
 +
 ===== Bibliografie/​Resurse ===== ===== Bibliografie/​Resurse =====
-<​sup>​[1]</​sup>​https://​www.cloudflare.com/​learning/​ssl/​lava-lamp-encryption/​+<​sup>​[1]</​sup>​https://​www.cloudflare.com/​learning/​ssl/​lava-lamp-encryption/ ​\\ 
 +<​sup>​[2]</​sup>​https://​ocw.cs.pub.ro/​courses/​_detail/​pm/​lab/​uno.jpg?​id=pm%3Alab%3Alab2-2022 \\ 
 +<​sup>​[3]</​sup>​https://​ocw.cs.pub.ro/​courses/​_media/​pm/​atmel-7810-automotive-microcontrollers-atmega328p_datasheet.pdf \\ 
 +<​sup>​[4]</​sup>​https://​ocw.cs.pub.ro/​courses/​pm/​lab/​lab3-2022 \\ 
 +<​sup>​[5]</​sup>​https://​www.optimusdigital.ro/​ro/​optoelectronice-afisaje-led/​646-afisaj-cu-led-rosu-de-4-cifre-cu-catod-comun-de-036-3641as.html \\ 
 +<​sup>​[6]</​sup>​https://​create.arduino.cc/​projecthub/​SAnwandter1/​programming-4-digit-7-segment-led-display-2d33f8 \\ 
 +<​sup>​[7]</​sup>​https://​www.optimusdigital.ro/​ro/​motoare-servomotoare/​26-micro-servomotor-sg90.html \\ 
 +<​sup>​[8]</​sup>​https://​components101.com/​motors/​servo-motor-basics-pinout-datasheet \\ 
  
 <​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/imacovei/theodor.cristea.1650573510.txt.gz · Last modified: 2022/04/21 23:38 by theodor.cristea
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