Differences

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

Link to this comparison view

pm:prj2024:azamfir:george.angheloiu [2024/05/26 02:43]
george.angheloiu [Rezultate Obţinute]
pm:prj2024:azamfir:george.angheloiu [2024/05/27 16:34] (current)
george.angheloiu [Download]
Line 1: Line 1:
 ====== Cannon ====== ​ ====== Cannon ====== ​
 ===== Introducere ===== ===== Introducere =====
 +
 +<​note>​
 +Autor: George-Bogdan Angheloiu
 +
 +Grupa: 334CB
 +</​note>​
  
 Proiectul constă într-un tun rotit de două servomotoare,​ care folosește video preluat de la o cameră pentru a ținti. Acest video este trimis către un display montat. Lansarea proiectilului este realizată tot cu ajutorul unui servomotor. Proiectul constă într-un tun rotit de două servomotoare,​ care folosește video preluat de la o cameră pentru a ținti. Acest video este trimis către un display montat. Lansarea proiectilului este realizată tot cu ajutorul unui servomotor.
Line 30: Line 36:
   * rezultatele simulării   * rezultatele simulării
 </​note>​ </​note>​
-Listă componente:+Listă componente ​pentru proiectul original:
  
   * 1x Arduino UNO R3   * 1x Arduino UNO R3
   * 3x Servomotor SG90   * 3x Servomotor SG90
   * 3x push buttons   * 3x push buttons
 +  * 1x level shifter
   * 1x Modul Camera OV7670   * 1x Modul Camera OV7670
   * 1x Modul LCD de 2.8" cu SPI și Controller ILI9341   * 1x Modul LCD de 2.8" cu SPI și Controller ILI9341
Line 41: Line 48:
   * 1x rezistență 3KΩ   * 1x rezistență 3KΩ
   * 2x rezistențe 10KΩ   * 2x rezistențe 10KΩ
 +  * fire tată-tată și mamă-mamă
 +
 +Listă componente suplimentare:​
 +  * 6x rezistență 1KΩ
 +  * 6x rezistență 2KΩ
  
 Schema electrică: Schema electrică:
 +
 {{:​pm:​prj2024:​azamfir:​image_2024-05-17_192930603.png?​700|}} {{:​pm:​prj2024:​azamfir:​image_2024-05-17_192930603.png?​700|}}
 +
 +Modificări aduse la schema electrică:
 +  * Am folosit rezistențe suplimentare în locul level shifter-ului care nu mai mergea cum trebuia
 +  * Anumiți pini au fost schimbați și anumite legături adăugate din cauza problemelor cu display-ul și camera
 +
 +{{:​pm:​prj2024:​azamfir:​whatsapp_image_2024-05-27_at_03.40.57.jpeg?​600|}}
 ===== Software Design ===== ===== Software Design =====
 +Mediu de dezvoltare: Visual Studio Code + PlatformIO
  
 +Librării folosite:
 +  * Arduino
 +  * Adafruit ILI9341
 +  * [[https://​circuitdigest.com/​microcontroller-projects/​how-to-use-ov7670-camera-module-with-arduino|Modul cameră OV7670 cu Arduino]]
  
-<note tip> +Ideal, aș fi folosit proiectul LiveOV7670 la care aș fi adus modificări pentru a acționa servomotoareleDin păcateacest proiect nici măcar nu a compilat, asemenea majorității ​librăriilor ​pe care am încercat ​să le folosesc.
-Descrierea codului aplicaţiei (firmware):​ +
-  * mediu de dezvoltare (if any) (e.gAVR 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>​+
  
-Mediu de dezvoltareVisual Studio Code + PlatformIO+Adafruit ILI9341 a fost folosit pentru interacțiunea cu display-ul. Am folosit librăria Arduino pentru funcționalitățile plăcuței folosite (Arduino Uno). 
 + 
 +Pentru inițializarea camerei, am folosit următoarele comenzi: 
 +<code cpp> 
 +​arduinoUnoInut();​ 
 +camInit();​ 
 +setResolution();​ 
 +setColor();​ 
 +writeReg(0x11,​ 13); 
 +</​code>​
  
-Librării folosite:+Pentru a captura imagini și a le trimite către display am apelat în loop: 
 +<code cpp> 
 +captureImgTft(tft,​ 320, 240); 
 +</​code>​
 ===== Rezultate Obţinute ===== ===== Rezultate Obţinute =====
  
 +Am obținut un dispozitiv care realizează conexiunea dintre cameră și display, după multe teste și schimbări pe care le-am realizat. După trei schimbări de display, ultimul dintre ele a funcționat în aproximativ 50% din încercări. Camera a suferit aceleași schimbări aleatoare: funcționa la început, iar apoi selectiv: se trimiteau pixeli, însă foarte încet și valorile erau eronate de multe ori.
  
 +Până la urmă, am reușit să leg display-ul de cameră pentru câteva teste. Acum, această conexiune nu mai functionează dintr-un motiv necunoscut: nu am modificat nimic, nici pe hardware, nici pe software timp de mai puțin de 24 de ore, iar circuitul care funcționa parțial înainte nu mai merge acum.
 ===== Concluzii ===== ===== Concluzii =====
  
Line 141: Line 172:
 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*. 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>​ </​note>​
 +{{:​pm:​prj2024:​azamfir:​cannon.zip|}}
 +
  
 ===== Jurnal ===== ===== Jurnal =====
Line 153: Line 186:
  
 **21-25 mai:** am întâmpinat probleme cu componentele,​ pe care am încercat să le rezolv din hardware și software **21-25 mai:** am întâmpinat probleme cu componentele,​ pe care am încercat să le rezolv din hardware și software
 +
 +**26-27 mai:** testare + update proiect actual
  
 **Probleme întâmpinate:​** **Probleme întâmpinate:​**
 +  * o parte din firele din pachetul nou-nouț s-au stricat
 +  * am avut 3 display-uri diferite pe care le-am încercat pe rând, fiindcă niciunul dintre ele nu funcționa în mod constant (uneori da, uneori nu); doar le conectam la alimentare și nu se aprindeau întotdeauna
 +  * nu am găsit suficiente resurse pentru a conecta camera de monitor; am avut o singură referință pe care am urmat-o și care nu a funcționat
 +  * probleme de upload a codului pe plăcuța Arduino Uno atunci când sunt conectate componente; pentru testare deconectam 3v3 sau 5v de la Arduino Uno
  
 </​note>​ </​note>​
Line 160: Line 199:
 ===== Bibliografie/​Resurse ===== ===== Bibliografie/​Resurse =====
  
-<​note>​ 
-Listă cu documente, datasheet-uri,​ resurse Internet folosite, eventual grupate pe *Resurse Software* şi *Resurse Hardware*. 
-</​note>​ 
 Resurse Software: Resurse Software:
 +  * https://​circuitdigest.com/​microcontroller-projects/​how-to-use-ov7670-camera-module-with-arduino
 +  * https://​registry.platformio.org/​libraries/​adafruit/​Adafruit%20OV7670
 +  * https://​registry.platformio.org/​libraries/​arduino-libraries/​Arduino_OV767X
 +  * https://​registry.platformio.org/​libraries/​arducam/​arducam_dvp
 +  * https://​www.hackster.io/​techmirtz/​visual-capturing-with-ov7670-on-arduino-069ebb
 +  * https://​www.youtube.com/​watch?​v=R94WZH8XAvM&​t=4s
  
 Resurse Hardware: Resurse Hardware:
   * Tutoriale de soldare și legare a componentelor hardware   * Tutoriale de soldare și legare a componentelor hardware
   * Datasheets ale componentelor hardware   * Datasheets ale componentelor hardware
 +  * https://​www.youtube.com/​watch?​v=R94WZH8XAvM&​t=4s
  
 <​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/prj2024/azamfir/george.angheloiu.1716680625.txt.gz · Last modified: 2024/05/26 02:43 by george.angheloiu
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