Differences

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

Link to this comparison view

pm:prj2022:agmocanu:bidirectional_morse_translator [2022/05/08 22:27]
catalin.stoian1603 Descriere generala
pm:prj2022:agmocanu:bidirectional_morse_translator [2022/05/25 22:59] (current)
catalin.stoian1603 [Bibliografie/Resurse]
Line 1: Line 1:
 ====== Bidirectional Morse Translator ====== ====== Bidirectional Morse Translator ======
 +
 +Stoian Cătălin, 331CB
 +
 ===== Introducere ===== ===== Introducere =====
  
Line 8: Line 11:
 ===== Descriere generală ===== ===== Descriere generală =====
  
-{{:​pm:​prj2022:​agmocanu:​stoian_catalin_331cb_diagramapm.png?​300|}}+{{ :​pm:​prj2022:​agmocanu:​stoian_catalin_331cb_diagramapm.png?​450|Diagrama Bidirectional Morse Translator}}
  
 Modul in care interactioneaza modulele este unul destul de simplu: butoanele de input (precum si cel de panica) actioneaza doar ca input, trimitand semnale catre placa Arduino. LED-ul, LCD-ul si buzzer-ul sunt toate output-uri - LED-ul si buzzer-ul redau output-ul traducerii, iar LCD-ul indica starea curenta a sistemului. Comunicarea cu PC-ul este speciala, deoarece este bidirectionala - PC-ul trimite mesaje care urmeaza sa fie traduse, dar si primeste traducerile mesajelor primite la restul input-urilor. Modul in care interactioneaza modulele este unul destul de simplu: butoanele de input (precum si cel de panica) actioneaza doar ca input, trimitand semnale catre placa Arduino. LED-ul, LCD-ul si buzzer-ul sunt toate output-uri - LED-ul si buzzer-ul redau output-ul traducerii, iar LCD-ul indica starea curenta a sistemului. Comunicarea cu PC-ul este speciala, deoarece este bidirectionala - PC-ul trimite mesaje care urmeaza sa fie traduse, dar si primeste traducerile mesajelor primite la restul input-urilor.
  
 ===== Hardware Design ===== ===== Hardware Design =====
 +{{ :​pm:​prj2022:​agmocanu:​stoiancatalin_331cb_tinkercad.png?​350|Tinkercad Diagram}}
 Lista de piese: Lista de piese:
   * Arduino UNO R3   * Arduino UNO R3
Line 19: Line 23:
   * LED   * LED
   * buzzer   * buzzer
-  * 4 butoane+  * 4 butoane ​+ capace colorate 
 +  * potentiometru
   * LCD   * LCD
-  * diverse rezistente+  * rezistenta de 220Ω
   * fire de legatura   * fire de legatura
  
-<note tip> 
-Aici puneţi tot ce ţine de hardware design: 
-  * listă de piese 
-  * scheme electrice (se pot lua şi de pe Internet şi din datasheet-uri,​ e.g. http://​www.captain.at/​electronic-atmega16-mmc-schematic.png) 
-  * diagrame de semnal ​ 
-  * rezultatele simulării 
-</​note>​ 
  
 ===== Software Design ===== ===== Software Design =====
  
 +Mediu de dezvoltare: Arduino IDE
 +Functii implementate:​
 +  * translate_c2m:​ traduce o litera in cod morse
 +  * translate_m2c:​ traduce un cod morse intr-o litera
 +  * sentence2morse:​ se foloseste de translate_c2m sa traduca un mesaj intreg in morse
 +  * morse2sentence:​ se foloseste de translate_m2c sa traduca un mesaj intreg din morse
 +
 +Functia loop() contine majoritatea functionalitatilor (descrise in comentariile din cod):
 +  * debounce pentru toate butoanele
 +  * inceperea traducerii din alfabetul latin in cel morse si invers
 +  * citirea valorii de pe potentiometrul din circuit
 +  * transmisia morse non-blocanta
 +  * scrolling-ul ecranului (cand mesajul de tradus nu incape pe un rand)
 +
 +Codul este inclus la sectiunea Download.
  
-<note tip> 
-Descrierea codului aplicaţiei (firmware): 
-  * mediu de dezvoltare (if any) (e.g. AVR Studio, CodeVisionAVR) 
-  * 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>​ 
  
 ===== Rezultate Obţinute ===== ===== Rezultate Obţinute =====
  
-<note tip> +Rezultatele obtinute, sunt, dupa cum se observa din pozele urmatoare, foarte bune. Proiectul merge perfect, ba chiar are anumite functionalitati (de exemplu, display scrolling) la care nici nu m-am gandit intr-o prima faza. 
-Care au fost rezultatele obţinute în urma realizării proiectului vostru+ 
-</note>+{{ :​pm:​prj2022:​agmocanu:​stoiancatalin_poza1.jpg?300 |Poza ansamblu complet}} 
 + 
 +{{ :​pm:​prj2022:​agmocanu:​stoiancatalin_poza2.jpg?​300 |Poza breadboard}} 
 + 
 +{{ :​pm:​prj2022:​agmocanu:​stoiancatalin_poza3.jpg?​300 |Poza Arduino + LCD}} 
 + 
 +[[https://​drive.google.com/​file/​d/​1JOlMe9MKE9ic_kNRrDLJgakRmNJz96Cs/​view?​usp=sharing|Demo video]].
  
 ===== Concluzii ===== ===== Concluzii =====
 +
 +O prima concluzie este ca acesta a fost un proiect distractiv, care mi-a placut destul de mult. As prefera ca mai multe discipline sa aiba un proiect de acest tip, practic.
 +O a doua concluzie este ca ar trebui sa imi organizez mai bine codul/​proiectul,​ deoarece la inceput am avut problema "de unde incep?"​. O planificare mai buna din partea mea a proiectului (de exemplu sa ma gandesc ordinea pasilor care trebuie facuti) m-ar fi ajutat enorm.
  
 ===== Download ===== ===== Download =====
  
-<note warning>​ +[[https://github.com/​catalinstoian16/​Biderectional-Morse-Translator|Link Github]].
-O arhivă (sau mai multe dacă este cazul) cu fişierele obţinute în urma realizării proiectuluisurse, scheme, etcUn 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 ===== ===== Jurnal =====
  
-30.04.2022 - Crearea paginii, scrierea introducerii si a listei de piese +**30.04.2022** - Crearea paginii, scrierea introducerii si a listei de piese 
-08.05.2022 - Introducerea diagramei proiectului+ 
 +**08.05.2022** - Introducerea diagramei proiectului 
 + 
 +**16.05.2022** - Testarea individuala a tuturor componentelor 
 + 
 +**20.05.2022** - Combinarea componentelor 
 + 
 +**21.05.2022** - Scrierea codului in Arduino IDE 
 + 
 +**23.05.2022** - Rafinarea codului 
 + 
 +**25.05.2022** - Finalizarea documentatiei
  
 ===== Bibliografie/​Resurse ===== ===== Bibliografie/​Resurse =====
  
-<​note>​ +Sursele ​folosite
-Listă cu documente, datasheet-uri,​ resurse Internet ​folosite, eventual grupate pe **Resurse Software** şi **Resurse Hardware**. +  ​[[https://​ocw.cs.pub.ro/​courses/​pm/​prj2021|Laboratoarele de PM]] 
-</note>+  * [[https://​www.arduino.cc/​reference/​en/|Documentatia limbajului Arduino]]
  
 <​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/agmocanu/bidirectional_morse_translator.1652038074.txt.gz · Last modified: 2022/05/08 22:27 by catalin.stoian1603
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