Differences

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

Link to this comparison view

pm:prj2021:alazar:smartlightcontrol [2021/05/30 13:35]
alexandra.balan0907 [Hardware Design]
pm:prj2021:alazar:smartlightcontrol [2021/05/31 13:27] (current)
alexandra.balan0907 [Download]
Line 1: Line 1:
 [[https://​ocw.cs.pub.ro/​courses/​pm/​prj2021/​alazar/​SmartLightControl]] [[https://​ocw.cs.pub.ro/​courses/​pm/​prj2021/​alazar/​SmartLightControl]]
 ====== Smart Light Control ====== ====== Smart Light Control ======
-=== Autor : Balan Alexandra-Andreea ​=== +**Autor:** Balan Alexandra-Andreea 
-=== Grupa : 331CB ===+ 
 +**Grupa:** 331CB
 ===== Introducere ===== ===== Introducere =====
 Smart Light Control este un proiect care constă în aprinderea sau stingerea unor LED-uri de diferite culori prin comandă vocală. Smart Light Control este un proiect care constă în aprinderea sau stingerea unor LED-uri de diferite culori prin comandă vocală.
Line 29: Line 30:
      * 1 x LED albastru      * 1 x LED albastru
      * 1 x LED alb      * 1 x LED alb
 +
 +**Schemă**
 +
 +{{:​pm:​prj2021:​alazar:​schema_smart_light_control_balan.png?​300|}}
 ===== Software Design ===== ===== Software Design =====
-TODO+**Etapele implementării** 
 +  - Pentru a afișarea mesajelor pe ecranul LCD și selectarea liniei de scriere pe acesta am inclus biblioteca LiquidCrystal.h 
 +  - Am selectat pinii necesari pentru conectarea ecranului:​ 
 +      * GND: VSS, V0, RW, K 
 +      * 5V: VDD 
 +      * 12: RS 
 +      * 11: E 
 +      * 5: D4 
 +      * 4: D5 
 +      * 3: D6 
 +      * 2: D7 
 +      * 3.3V: A 
 +  - Am selectat pinii pentru conectarea LED-urilor:​ 
 +      * RED: 13 
 +      * GREEN: 10 
 +      * YELLOW: 9 
 +      * BLUE: 8 
 +      * WHITE: 7 
 +  - Am definit string-ul voice în care voi pune comanda vocală primită 
 +  - Funcții: 
 +      * //​RedOn()//,​ //​GreenOn()//,​ //​YellowOn()//,​ //​BlueOn()//,​ //​WhiteOn()//​ = funcții care aprind LED-ul specificat 
 +      * //​RedOff()//,​ //​GreenOff()//,​ //​YellowOff()//,​ //​BlueOff()//,​ //​WhiteOff()//​ = funcții care sting LED-ul specificat 
 +      * //​allon()//,​ //​alloff()//​ = funcții care aprind/​sting toate LED-urile 
 +  - în funcția **setup()** se vor seta următoarele:​ 
 +      * pinii specifici culorilor (RED, GREEN, YELLOW, BLUE, WHITE) vor fi setați ca OUTPUT 
 +      * ecranul LCD va afișa mesajul //Buna! Ce LED sa aprind/​sting?//​ 
 +  - **loop()** 
 +      * se va citi comanda vocală trimisă de la aplicația Android la plăcuța Arduino in string-ul //voice// 
 +      * dacă comanda trimisă este validă (lungimea acesteia este mai mare decât 0) atunci se va verifica comanda: 
 +          * dacă se primește comanda //aprinde tot// sau //toate// atunci se vor aprinde toate LED-urile. De asemenea, pe ecranul LCD se va afișa mesajul //Am aprins toate LED-urile//​. 
 +          * dacă se primește comanda //​închide//​ sau //închide tot// atunci se vor stinge toate LED-urile. De asemenea, pe ecranul LCD se va afișa mesajul //Am stins toate LED-urile//​. 
 +          * dacă se primește comanda //roșu// sau //aprinde roșu// atunci se va aprinde LED-ul roșu. De asemenea, pe ecranul LCD se va afișa mesajul //LED roșu aprins//. 
 +          * dacă se primește comanda //închide roșu// atunci se va stinge LED-ul roșu. De asemenea, pe ecranul LCD se va afișa mesajul //LED roșu stins//. 
 +          * dacă se primește comanda //verde// sau //aprinde verde// atunci se va aprinde LED-ul verde. De asemenea, pe ecranul LCD se va afișa mesajul //LED verde aprins//. 
 +          * dacă se primește comanda //închide verde// atunci se va stinge LED-ul verde. De asemenea, pe ecranul LCD se va afișa mesajul //LED verde stins//. 
 +          * dacă se primește comanda //galben// sau //aprinde galben// atunci se va aprinde LED-ul galben. De asemenea, pe ecranul LCD se va afișa mesajul //LED galben aprins//. 
 +          * dacă se primește comanda //închide galben// atunci se va stinge LED-ul galben. De asemenea, pe ecranul LCD se va afișa mesajul //LED galben stins//. 
 +          * dacă se primește comanda //​albastru//​ sau //aprinde albastru// atunci se va aprinde LED-ul albastru. De asemenea, pe ecranul LCD se va afișa mesajul //LED albastru aprins//. 
 +          * dacă se primește comanda //închide albastru// atunci se va stinge LED-ul albastru. De asemenea, pe ecranul LCD se va afișa mesajul //LED albastru stins//. 
 +          * dacă se primește comanda //alb// sau //aprinde alb// atunci se va aprinde LED-ul alb. De asemenea, pe ecranul LCD se va afișa mesajul //LED alb aprins//. 
 +          * dacă se primește comanda //închide alb// atunci se va stinge LED-ul alb. De asemenea, pe ecranul LCD se va afișa mesajul //LED alb stins//. 
 +  * După ce s-a efectuat funcția corespunzătoare comenzii string-ul //voice// se va goli pentru a fi pregătit pentru următoarele comenzi.
 ===== Rezultate Obţinute ===== ===== Rezultate Obţinute =====
-TODO+Starea inițială 
 + 
 +{{:​pm:​prj2021:​alazar:​smart_light_control.jpg?​300|}} 
 + 
 +{{:​pm:​prj2021:​alazar:​prezentare_generala2.jpg?​300|}} 
 + 
 +Comanda //aprinde roșu// 
 + 
 +{{:​pm:​prj2021:​alazar:​led_rosu_aprins.jpg?​300|}} 
 + 
 +Comanda //aprinde galben// 
 + 
 +{{:​pm:​prj2021:​alazar:​led_galben_aprins.jpg?​300|}} 
 + 
 +Comanda //aprinde alb// 
 + 
 +{{:​pm:​prj2021:​alazar:​led_alb_aprins.jpg?​300|}} 
 + 
 +Comanda //închide galben// 
 + 
 +{{:​pm:​prj2021:​alazar:​led_galben_stins.jpg?​300|}} 
 + 
 +Comanda //aprinde tot// 
 + 
 +{{:​pm:​prj2021:​alazar:​toate_ledurile_aprins_1.jpg?​300|}} 
 + 
 +{{:​pm:​prj2021:​alazar:​toate_ledurile_aprinse_2.jpg?​300|}} 
 + 
 +Comanda //închide tot// 
 + 
 +{{:​pm:​prj2021:​alazar:​toate_ledurile_stinse.jpg?​300|}}
 ===== Concluzii ===== ===== Concluzii =====
-TODO+Proiectul a fost foarte interesant de făcut. Cel mai mult mi-a plăcut că am reușit să conectez plăcuța Arduino la telefon, primind astfel comenzi din afara sferei codului.
 ===== Download ===== ===== Download =====
-TODO+Video demonstrativ:​ [[https://​photos.app.goo.gl/​JSDZgeokhP5GciBq8]] 
 + 
 +Cod sursă: {{:​pm:​prj2021:​alazar:​smart_light_control.zip|}}
 ===== Jurnal ===== ===== Jurnal =====
-TODO+//​25.04.2021//​ Alegerea proiectului 
 + 
 +//​24.05.2021//​ Achiziționarea tuturor pieselor necesare implementării proiectului 
 + 
 +//​26.05.2021//​ Conectarea modulului Bluetooth la aplicația Android 
 + 
 +//​27.05.2021//​ Afișarea primul mesaj pe ecranul LCD 
 + 
 +//​29.05.2021//​ Finalizarea proiectului 
 ===== Bibliografie/​Resurse ===== ===== Bibliografie/​Resurse =====
-<​html><​a class="​myPDF"​ href="?​do=export_pdf">​Balan_Alexandra_PDF</​a></​html>​+  * Itembiblioteca LiquidCrystal.h [[https://​www.arduino.cc/​en/​Reference/​LiquidCrystal]] 
 + 
 +  * <​html><​a class="​myPDF"​ href="?​do=export_pdf">​Balan_Alexandra_PDF</​a></​html>​
  
pm/prj2021/alazar/smartlightcontrol.1622370940.txt.gz · Last modified: 2021/05/30 13:35 by alexandra.balan0907
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