Differences

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

Link to this comparison view

info2:laboratoare:03-old [2021/03/16 00:28]
alexandru.vochescu [Senzori]
info2:laboratoare:03-old [2021/03/16 16:03] (current)
alexandru.vochescu [Exerciții]
Line 13: Line 13:
  
 Un buton este conceptual vorbind ca un întrerupător care permite sau nu trecerea curentului printr-o anumită secțiune dintr-un circuit. Astfel pentru a vedea dacă un buton (sau un întrerupător) este apăsat sau nu, verificăm valoarea tensiunii pe acea secțiune de circuit. Dacă valoarea logică este 0, atunci butonul nu este apăsat (practic, circuitul este întrerupt),​ iar dacă valoarea logică este 1, atunci butonul este apăsat. Valoarea efectivă a tensiunii poate fi 5V sau 3.3V în funcție de placa de dezvoltare folosită și de tipul de pin folosit pentru conectarea acelui buton. Un buton este conceptual vorbind ca un întrerupător care permite sau nu trecerea curentului printr-o anumită secțiune dintr-un circuit. Astfel pentru a vedea dacă un buton (sau un întrerupător) este apăsat sau nu, verificăm valoarea tensiunii pe acea secțiune de circuit. Dacă valoarea logică este 0, atunci butonul nu este apăsat (practic, circuitul este întrerupt),​ iar dacă valoarea logică este 1, atunci butonul este apăsat. Valoarea efectivă a tensiunii poate fi 5V sau 3.3V în funcție de placa de dezvoltare folosită și de tipul de pin folosit pentru conectarea acelui buton.
- 
-Pentru conectarea efectivă a unui buton extern la o placă de dezvoltare schema arată în felul următor: 
- 
-{{:​info2:​laboratoare:​arduino_button.png?​600|}} 
- 
-Schema de mai sus este pentru conectarea unui buton la o placă de dezvoltare Arduino. Pe scurt, avem 3 pini folosiți: 
-  * unul pentru sursa de alimentare (firul roșu) 
-  * unul pentru ground (firul negru) 
-  * un pin a citi valoarea tensiunii la baza butonului (firul galben) ​ 
- 
-Este extrem de importantă prezența rezistenței pentru a evita scurt-circuitul care ar apărea între alimentare și ground la apăsarea butonului. ​ 
  
 Pentru placa Microbit și în cadrul simulatorului nu va fi nevoie să conectăm vreun buton extern deoarece sunt disponibile două butoane interne numite "​A"​ și "​B":​ Pentru placa Microbit și în cadrul simulatorului nu va fi nevoie să conectăm vreun buton extern deoarece sunt disponibile două butoane interne numite "​A"​ și "​B":​
Line 54: Line 43:
  
 Diferența principală față de buton este că avem nevoie de un pin analogic. Spre deosebire de pinii digitali care pot fi folosiți doar pentru valori 0V sau 5V, pinii analogici pot fi folosiți pentru a citi sau scrie o serie mai mare de valori și sunt utili pentru finețea măsurătorii. Valorile de scriere pot fi între 0-255 și sunt mapate pentru 0 - 5V sau 0 - 3.3 V în funcție de placa de dezvoltare și de pin. Diferența principală față de buton este că avem nevoie de un pin analogic. Spre deosebire de pinii digitali care pot fi folosiți doar pentru valori 0V sau 5V, pinii analogici pot fi folosiți pentru a citi sau scrie o serie mai mare de valori și sunt utili pentru finețea măsurătorii. Valorile de scriere pot fi între 0-255 și sunt mapate pentru 0 - 5V sau 0 - 3.3 V în funcție de placa de dezvoltare și de pin.
- 
-Un exemplu de conectare al unui senzor de lumină este în imaginea următoare: 
- 
-{{:​info2:​laboratoare:​photoresistor_arduino.png?​500|}} 
- 
-În mod similar unui buton, avem nevoie trei pini:  
-  * unul pentru alimentare (firul roșu) 
-  * unul pentru ground (firul negru) 
-  * unul pe care să putem citi valoarea analogică - adică valoarea de tensiune (firul verde) 
  
 Pe placa Microbit și în simulatorul disponibil online, avem la dispoziție mai mulți senzori precum: lumină, temperatură,​ giroscop, busolă sau zgomot. Pe placa Microbit și în simulatorul disponibil online, avem la dispoziție mai mulți senzori precum: lumină, temperatură,​ giroscop, busolă sau zgomot.
Line 149: Line 129:
         * 42 - 50 de grade celsius - se va afișa un craniu și se va reda melodia built-in "​Funeral"​.         * 42 - 50 de grade celsius - se va afișa un craniu și se va reda melodia built-in "​Funeral"​.
         * Opțional, se poate înlocui melodia "​Funeral"​ cu generarea din note a melodiei "​Astronomia"​.         * Opțional, se poate înlocui melodia "​Funeral"​ cu generarea din note a melodiei "​Astronomia"​.
-  -  +  - Implementați un contor care să afișeze pe ecran de câte ori a fost apăsat logo-ul. 
 +  - Busolă sonoră: într-un while True, în funcție de cele 4 puncte cardinale și de orientarea plăcii, redați câte o melodie diferită și afișați punctul cardinal pe ecran. 
 +  - Contor bătăi din palme: Numărați de câte ori se generează un zgomot puternic și afișați contorul pe ecran. Contorul se va reseta când ajunge la valoarea 10. 
 +  - Exercițiu avansat: Animal de companie 
 +      - Animalul este reprezentat printr-o față zâmnbitoare sau supărată afișată pe ecran. 
 +      - Pentru a "​mângâia animalul"​ se apasă logo-ul. Se va reda un sunet corespunzător atunci când este apăsat logo-ul.  
 +      - Se va da drumul la un timer imediat ce programul pornește, iar dacă se trece de 10 secunde de când nu a mai fost mângâiat, "​animalul"​ va scoate un sunet corespunzător. Dacă se trece de 20 de secunde de când nu a mai fost mângâiat, "​animalul moare" și se afișează un "​X"​ pe ecran sau o altă imagine reprezentativă (fiți creativi). 
 +      - Timer-ul este resetat de fiecare dată când se apasă logo-ul.
info2/laboratoare/03-old.1615847338.txt.gz · Last modified: 2021/03/16 00:28 by alexandru.vochescu
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