Differences

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

Link to this comparison view

pm:prj2022:avaduva:matei.barbu1905 [2022/04/29 00:23]
matei.barbu1905
pm:prj2022:avaduva:matei.barbu1905 [2022/06/02 15:26] (current)
matei.barbu1905
Line 1: Line 1:
-  +====== ​MotorHelper ​====== 
-====== ​MusicClock ​======+
 ===== Introducere ===== ===== Introducere =====
  
-<note tip> +Proiectul constă în implementarea ​unui sistem ​de reglaj ​turației unui motor în funcție ​de temperatura ambientală.
-Prezentarea pe scurt a proiectului vostru: +
-  * O cutie open-source care după selecția ​unui mod poate prinde post de radio, cânta o melodie de pe un card SD sau afișdate despre zi/oră. În plus poate fi configurat ca un ceas deșteptător. +
-  * Scopul acestui proiect a fost să învăț să lucrez cu transferuri DMA, un afișator grafic, și să  +
-  * Am pornit ​de la acest [[https://​www.aksevenfour.com/​picoaudio.html|proiect]],​ dar l-am proiectat pentru a folosi un microprocesor adecvat. +
-  * Este util să vezi cât de departe poate merge open source în zona de hardware. +
-</​note>​+
  
 ===== Descriere generală ===== ===== Descriere generală =====
  
-<note tip>+=== Funcționalitate ===
  
-Interfață:+Motorul DC este conectat la pini expuși de un Arduino Nano. Acesta folosește Pulse-Width-Modulation pentru a schimba turația motorului, prin intermediul unei punți H (L293D).
  
-  * Două butoane rotative +În aceiași încăpere cu motorul se află un senzor de temperatură (DHT11), iar în funcție de valoarea citită de la senzor se vor executa una din următoarele acțiuni: 
-    - SELECT +  * va aprinde un LED verde 
-    - VOLUME +  va aprinde un LED galben și va comanda un buzzer să atenționeze de trei 
-  * Un push-button pentru MODE +  va aprinde un LED roșu și va declanșa buzzerul să atenționeze încontinuu
-    Radio +
-    SD Card music player +
-    * Alarm Clock configuration+
  
-Dispozitivul pornește în modul CEAS. Avem pe ecran afișate informații despre zi și oră. Rotația butonului SELECT configurează luminozitatea. Apăsarea pe acest buton, ne duce în modul de configurație a timpului/​datei afișate.+===== Hardware design =====
  
-Apăsând pe butonul MODE putem selecta unul dintre cele 3 meniuri anterior menționate.+Am utilizat următoarele componente:​ 
 +  * [[http://​ww1.microchip.com/​downloads/​en/​DeviceDoc/​ATmega48A-PA-88A-PA-168A-PA-328-P-DS-DS40002061A.pdf|Arduino Nano]] 
 +  * [[https://​www.alldatasheet.com/​datasheet-pdf/​pdf/​17881/​PHILIPS/​LM293D.html|L293D]] 
 +  * Motor DC 
 +  * [[https://​components101.com/​asset/​sites/​default/​files/​component_datasheet/​2N2222%20NPN-transistor%20datasheet.PDF|2N2222]] 
 +  * Buzzer 
 +  * [[https://​media.digikey.com/​pdf/​Data%20Sheets/​Adafruit%20PDFs/​DHT11_Humidity_TempSensor.pdf|DHT11]] 
 +  * [[https://​adafru.it/​4440|Ecran]] 
 +  * [[https://​adafru.it/​3295|Real-Time-Clock]] 
 +  * Rezistențe 
 +  * Cabluri 
 +  * LED-uri 
 +  * Breadboard-uri
  
-În modul Radio butonul select schimbă frecvența prin rotațieiar apăsarea lui caută automat următorul post de radioÎn modul Alarm Clock Configuration apăsarea butonul select ne duce pe poziția orei pe care o putem schimba prin rotație.Încă o apăsare ne duce pe poziția minutuluiÎncă o apăsare ne duce pe poziția minutului. Încă o apăsare ne duce în meniul de configurare a sursei melodiei pentru alarmă (SD sau Radio).+Toate componentele sunt alimentate la 5Vdirect din pinul de power al microcontrolleruluiCu toate acestea comanda și citirea se face prin intermediul piniilor GPIO, care lucrează la 3.3V.
  
-</​note>​ +Schemă: 
- +{{ :​pm:​prj2022:​avaduva:​schematic_matei_barbu.png?600 |}}
-===== Hardware Design ===== +
- +
-<note tip> +
-O schemă 90% gata+
-{{ :​pm:​prj2022:​avaduva:​sketch_matei_barbu.png?600 |}}+
  
 Piese: Piese:
  
   * Microprocessor (RP2040)   * Microprocessor (RP2040)
-  * Amplificator Audio [[https://​ro.mouser.com/​ProductDetail/​485-1712|TPA2016]] +  * [[https://​ro.mouser.com/​ProductDetail/​485-3678|I2S DAC]] 
-  * [[https://​ro.mouser.com/​ProductDetail/​485-377|Shaft Encoder]]+  * [[https://​ro.mouser.com/​ProductDetail/​485-1712|Amplificator Audio TPA2016]] 
 +  * [[https://​ro.mouser.com/​ProductDetail/​485-377|Shaft Encoder]] ​x2
   * [[https://​ro.mouser.com/​ProductDetail/​485-4440|Ecran]] + pin headers   * [[https://​ro.mouser.com/​ProductDetail/​485-4440|Ecran]] + pin headers
-  * [[https://​ro.mouser.com/​ProductDetail/​485-3678|I2S DAC]] 
-  * [[https://​ro.mouser.com/​ProductDetail/​485-2165|LDO]] 
   * [[https://​ro.mouser.com/​ProductDetail/​485-4682|SDIO Card Breakout Board]]   * [[https://​ro.mouser.com/​ProductDetail/​485-4682|SDIO Card Breakout Board]]
-  ​* Real-Time-Clock +  * [[https://​ro.mouser.com/​ProductDetail/​485-3295|Real-Time-Clock]] 
-    * intern +  * [[https://​ro.mouser.com/​ProductDetail/​700-MAX4762EUB|Multiplexer]]
-    ​* [[https://​ro.mouser.com/​ProductDetail/​485-3295|extern]] +
-  * [[https://​ro.mouser.com/​ProductDetail/​485-1609|Cablaj de test]] +
-  * [[https://​ro.mouser.com/​ProductDetail/​485-2046|Knob]] +
-  * [[https://​ro.mouser.com/​ProductDetail/​595-SN74LV4053AN|Multiplexer]]+
   * [[https://​ro.mouser.com/​ProductDetail/​474-BOB-11083|Radio Receiver]]   * [[https://​ro.mouser.com/​ProductDetail/​474-BOB-11083|Radio Receiver]]
   * [[https://​ro.mouser.com/​ProductDetail/​474-BOB-11570|TRRS 3.55mm Jack Breakout]]   * [[https://​ro.mouser.com/​ProductDetail/​474-BOB-11570|TRRS 3.55mm Jack Breakout]]
 +  * [[https://​ro.mouser.com/​ProductDetail/​485-2165|LDO]]
   * jummper cables   * jummper cables
   * jack cable   * jack cable
   * pin headers   * pin headers
 +  * qwiic cable
 +  * Cablaj de test
  
-</​note>​ 
  
 ===== Software Design ===== ===== Software Design =====
  
 +Vezi {{ :​pm:​prj2022:​avaduva:​proiect_barbu_matei.zip }}
  
-<note tip> +Am folosit doar bibliotecile Adafruit din Arduino IDE.
-Descrierea codului aplicaţiei (firmware):​ +
-  * Pico C/C++ SDK +
-</​note>​+
  
 ===== Rezultate Obţinute ===== ===== Rezultate Obţinute =====
  
-<note tip> +{{ :​pm:​prj2022:​avaduva:​poza_barbu_matei.jpg?600 |}}
-Care au fost rezultatele obţinute în urma realizării proiectului vostru. +
-</​note>​+
  
 ===== Concluzii ===== ===== Concluzii =====
  
-===== Download ===== +În concluzie, consumă mult mai puțin curent decât [[https://github.com/mateibarbu19/data-acquisition|fostul experiment]] ce folosea un Rasbery Pi 4B.
- +
-<note warning>​ +
-O arhivă (sau mai multe dacă este cazul) cu fişierele obţinute în urma realizării proiectuluisurse, 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 =====+
  
-<​note>​ 
-Listă cu documente, datasheet-uri,​ resurse Internet folosite, eventual grupate pe **Resurse Software** şi **Resurse Hardware**. 
-</​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/avaduva/matei.barbu1905.1651181030.txt.gz · Last modified: 2022/04/29 00:23 by matei.barbu1905
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