Differences

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

Link to this comparison view

pm:prj2023:apredescu:automatic_cat_toy [2023/05/30 00:01]
ioana.popescu1905 [Hardware Design]
pm:prj2023:apredescu:automatic_cat_toy [2023/05/30 00:42] (current)
ioana.popescu1905 [Bibliografie/Resurse]
Line 165: Line 165:
   sei(); ​                                          // Enable interrupts   sei(); ​                                          // Enable interrupts
   ​   ​
 +  ​
 +__Calcule internal counter frequency__
 +
 + f_int = 16,000,000 / (1024 * (255 + 1))
 + = 16,000,000 / 262144
 + = 61.0352 Hz
 +
 Rutina de întrerupere,​ modul 2 de funcționare. În funcție de valoarea counter-ului Timer, calculez o nouă poziție de deplasare și un nou unghi pentru mișcarea servomotorului. Rutina de întrerupere,​ modul 2 de funcționare. În funcție de valoarea counter-ului Timer, calculez o nouă poziție de deplasare și un nou unghi pentru mișcarea servomotorului.
  
Line 223: Line 230:
  
 ===== Concluzii ===== ===== Concluzii =====
 +A fost un proiect foarte interesant, primul de până acum care implică componente fizice și lucru manual pentru design. Am lucrat cu mare drag la el, mai ales având în vedere scopul său și m-am bucurat foarte tare să îmi văd ideea pusă în practică după atâtea săptămâni. 
 +Bineînțeles,​ au existat și o serie de situații și evenimente neprevăzute,​ din care am putut trage o serie de concluzii:​ 
 +  * La un astfel de proiect, trebuie să ai foarte clar în minte ce vrei să faci și mai ales **de ce ai nevoie** exact. S-a întâmplat să am nevoie ulterior primei comenzi de rezistențe,​ alt tip de buton, condensator,​ etc. 
 +  * Există posibilitatea să nu primești componentele pe care le-ai comandat, evident o mare problemă dacă ai nevoie de ceva specific. 
 +  * **Lucrul cu întreruperi și AVR** este dificil, îți consumă timp, dar te face să înțelegi și să descoperi ce se află în spatele funcțiilor Arduino și poți pune în aplicare ce vezi în DataSheet. 
 +  * Să implementezi un proiect cu componente fizice este mult mai interesant ca pe TinkerCad. 
 +  * Multe biblioteci și funcții folosesc deja în spate Timer 1, deci trebuie atenție mare. 
 +  * Biblioteca LiquidCrystal nu este chiar atât de ușor de manipulat și poate cauza probleme în combinație cu rutina de întreruperi. 
 +  * **Servomotorul consumă foarte mult** curent/​resurse și generează **electrical noise** care poate interfera cu modulul I2C de pe LED. 
 +  * Ar fi fost de preferat, în cazul proiectului meu, **să alimentez LCD-ul la altă sursă**, sau tot circuitul la o sursă peste 5V. 
 +  * **Potențiometrul** are fluctuații foarte mari și este foarte delicat, ajută să pui în paralel cu pinii săi un **condensator**.
 ===== Download ===== ===== Download =====
  
-<​note ​warning>+<​note ​important>
 Arhiva cu codul sursă și README cu detalii despre implementare:​ Arhiva cu codul sursă și README cu detalii despre implementare:​
  
Line 235: Line 252:
  
 <note tip> <note tip>
-To Be Continued ​+  * **20 Aprilie** - Alegere temă proiect 
 +  * **26 Aprilie** - Confirmare temă, discuție la laborator 
 +  * **5 Mai** - Documentație Inițială 
 +  * **6 Mai** - Comandă piese 
 +  * **9-13 Mai** - Livrări 
 +  * **14 Mai** - Magazin fizic - ServoMotor, Led-uri, Rezistențe 
 +  * **21 Mai** - Hardware și funcționalități de bază 
 +  * **22 Mai** - Implementare logică și AVR 
 +  * **24 Mai** - Implementare buton întrerupere Pin Change 
 +  * **26 Mai** - Întrerupere PWM, schimbări sumare hardware 
 +  * **27-28 Mai** - Design și Finalizare cod 
 +  * **29 Mai** - Finalizare Design, Introducere condensator,​ testare 
 + 
 </​note>​ </​note>​
  
Line 241: Line 270:
  
 <​note>​ <​note>​
-To Be Continued ​ 
  
 [1]: https://​www.youtube.com/​watch?​v=GjWr48w6o2Q [1]: https://​www.youtube.com/​watch?​v=GjWr48w6o2Q
  
 [2]: https://​www.youtube.com/​watch?​v=vf2lW4LkmMQ [2]: https://​www.youtube.com/​watch?​v=vf2lW4LkmMQ
 +
 +[3]: https://​ocw.cs.pub.ro/​courses/​_media/​pm/​atmel-7810-automotive-microcontrollers-atmega328p_datasheet.pdf
 +
 +[4]: https://​www.hackster.io/​jacoslabbert99/​arduino-lcd-icons-custom-characters-548f38
 +
 +[5]: https://​www.youtube.com/​watch?​v=aQy3DGSIGm4
 +
 +[6]:  https://​www.youtube.com/​watch?​v=Uv9UeYUsA8A&​t=192s
 +
 +[7]: https://​lastminuteengineers.com/​i2c-lcd-arduino-tutorial/​
 +
 +[8]: https://​forum.arduino.cc/​t/​rotary-encoder-interrupt-routine-interfering-with-servo-h/​377538/​5
 +
 +[9]: https://​forum.arduino.cc/​t/​lcd-over-i2c-not-working-with-timer2/​523211/​5
 +
 +[10]: https://​thewanderingengineer.com/​2014/​08/​11/​arduino-pin-change-interrupts/​
 +
 +[11]: https://​chat.openai.com/​
 +
 +[12]: https://​youtube.com/​shorts/​_sKWP6fl-NU?​feature=share
 +
 </​note>​ </​note>​
  
pm/prj2023/apredescu/automatic_cat_toy.1685394115.txt.gz · Last modified: 2023/05/30 00:01 by ioana.popescu1905
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