+ All Categories
Home > Documents > cloud.kyme32.ro · Web viewOrice fel de informatie ti-ai dori sa culegi din mediu, orice fel de...

cloud.kyme32.ro · Web viewOrice fel de informatie ti-ai dori sa culegi din mediu, orice fel de...

Date post: 23-Jun-2021
Category:
Upload: others
View: 0 times
Download: 0 times
Share this document with a friend
21
ARDUINO – INTRO Arduino este o platforma utilizata pentru a programa o serie de procesoare din familia Atmel. Arduino utilizeaza procesoare de tip SoC (System on a Chip). Procesorul utilizat este unul de tip ATmega328P, functioneaza la un voltaj de 5V si are 16Mhz. Arduino se va conecta la porturile USB ale calculatorelor, porturi USB care furnizeaza 5V (500mA). In jurul lui Arduino exista un ecosistem de dispozitive extrem de bine dezvoltat. Orice fel de informatie ti-ai dori sa culegi din mediu, orice fel de conexiuni cu alte sisteme ai avea nevoie, exista o sansa foarte mare sa gasesti un dispozitiv pentru Arduino capabil sa iti ofere ceea ce ai nevoie. Astfel, daca discutam despre preluarea de informatii din mediu, mai jos sunt doar cateva exemple de senzori : senzori ce determina nivelul de alcool in aerul respirat, senzor de incediu, gaz GPL, monoxid de carbon, acceleratii ale dispozitivelor in miscare, curent consumat de diverse dispozitive casnice, forta de apasare, gradul de rotire, cartele RFID, distante, nivel de iluminare, directia nordului, prezenta umana, sunet, temperatura, umiditate, presiune atmosferica sau video. Daca ne referim la posibilitatea de a ne conecta cu alte sisteme, exista placi de retea Ethernet pentru Arduino capabile sa comunice informatii prin Internet, dispozitive capabile sa transmita date prin conexiune radio, placi de retea WIFI, dispozitive GSM pentru Arduino (capabile sa trimita / receptioneze SMS-uri, sa initieze apeluri de voce sau sa trimita date prin
Transcript
Page 1: cloud.kyme32.ro · Web viewOrice fel de informatie ti-ai dori sa culegi din mediu, orice fel de conexiuni cu alte sisteme ai avea nevoie, exista o sansa foarte mare sa gasesti un

ARDUINO – INTRO

Arduino este o platforma utilizata pentru a programa o serie de procesoare din familia Atmel. Arduino utilizeaza procesoare de tip SoC (System on a Chip). Procesorul utilizat este unul de tip ATmega328P, functioneaza la un voltaj de 5V si are 16Mhz. Arduino se va conecta la porturile USB ale calculatorelor, porturi USB care furnizeaza 5V (500mA).

In jurul lui Arduino exista un ecosistem de dispozitive extrem de bine dezvoltat. Orice fel de informatie ti-ai dori sa culegi din mediu, orice fel de conexiuni cu alte sisteme ai avea nevoie, exista o sansa foarte mare sa gasesti un dispozitiv pentru Arduino capabil sa iti ofere ceea ce ai nevoie. Astfel, daca discutam despre preluarea de informatii din mediu, mai jos sunt doar cateva exemple de senzori : senzori ce determina nivelul de alcool in aerul respirat, senzor de incediu, gaz GPL, monoxid de carbon, acceleratii ale dispozitivelor in miscare, curent consumat de diverse dispozitive casnice, forta de apasare, gradul de rotire, cartele RFID, distante, nivel de iluminare, directia nordului, prezenta umana, sunet, temperatura, umiditate, presiune atmosferica sau video. Daca ne referim la posibilitatea de a ne conecta cu alte sisteme, exista placi de retea Ethernet pentru Arduino capabile sa comunice informatii prin Internet, dispozitive capabile sa transmita date prin conexiune radio, placi de retea WIFI, dispozitive GSM pentru Arduino (capabile sa trimita / receptioneze SMS-uri, sa initieze apeluri de voce sau sa trimita date prin reteaua 3G) sau conectori Bluetooth pentru conectarea Arduino cu telefonul mobil sau laptop. In zona mecanica, exista motoare de curent continuu (utilizate pentru robotica), motoare pas cu pas (utilizate de obicei in zona industriala) sau servomotoare, controlate foarte exact. Pentru afisarea informatiilor preluate, exista ecrane LCD pentru Arduino, incepand cu cele mai simple (LCD text cu 16 caractere) pana la ecran LCD grafice.

Page 2: cloud.kyme32.ro · Web viewOrice fel de informatie ti-ai dori sa culegi din mediu, orice fel de conexiuni cu alte sisteme ai avea nevoie, exista o sansa foarte mare sa gasesti un

1. Instalare Drivere Arduino:

Instalare drivere pe PC cu SO Windows.

Driver-ele sunt disponibile la adresa http://arduino.cc/en/Main/Software.

a. Se descarca arhiva .zip, si se dezarhiveaza.b. Se conecteaza placa Arduino la portul USB. PC-ul detectaza un nou

dispozitiv. c. Se selecteaza directorul "drivers" si se continua procesul de instalare. La

final se verifica daca instalarea s-a facut cu succes. “Device Manager – Ports (COM&LPT)” – Arduino se conecteaza la PC printr-un port serial.

d. Arduino IDE: din directorul principal (“arduino-1.8.10”) se lanseaza programul “arduino”.

Page 3: cloud.kyme32.ro · Web viewOrice fel de informatie ti-ai dori sa culegi din mediu, orice fel de conexiuni cu alte sisteme ai avea nevoie, exista o sansa foarte mare sa gasesti un

2. Setari Arduino IDE:

a. Se verifica daca portul asociat din Device Manager se regaseste in Arduino IDE: meniul "Tools -> Serial Port".

b. Se selecteaza tipul de placa cu care se lucreaza: meniul "Tools -> Board".c. Se alege Arduino Uno.

3. Meniu interfata Arduino IDE:

1. Meniul File -> Example: contine exemple / coduri sursa pentru majoritatea echipamentelor existente (senzori, actuatori, shielduri, etc).

2. Meniul File -> Preferences: setati dimensiunea fontului, ce sa se afiseze atunci cand se compileaza programul sau numerotarea liniilor de cod.

3. Meniul Sketch -> Verify/Compile: verifica programul pe care l-ati scris. Este disponibil si din primul buton in forma de cerc aflat imediat sub meniu.

4. Meniul Sketch -> Upload: verifica programul si daca este corect il uploadeaza in memoria Flash a procesorului Atmel dupa care va fi executat.

5. Meniul Sketch -> Include Library: Pentru a vedea care sunt bibliotecile disponibile sau a adauga o noua biblioteca.

6. Meniul Tools -> Auto Format: Pentru a formata codul (indenta corect).7. Meniul Tools -> Serial Monitor: Deschide o fereastra ce permite

transmiterea de date in mod serial catre Arduino sau receptionarea acestora. Poate fi deschis si din butonul din partea dreapta in forma de lupa.

4. Structura unui program Arduino:

Un program Arduino este compus din doua parti.

a. Sectiunea “setup”: ruleaza o singura data, in momentul in care placa este alimentata sau se apasa pe butonul Reset. Aceasta

Page 4: cloud.kyme32.ro · Web viewOrice fel de informatie ti-ai dori sa culegi din mediu, orice fel de conexiuni cu alte sisteme ai avea nevoie, exista o sansa foarte mare sa gasesti un

sectiune este utilizata pentru setari (de ex.: definirea pinilor Input/Output).

b. Sectiunea “loop”: ruleaza in bucla (dupa ultima instructiune este reluata iarasi prima) atat timp cat placa este alimentata.

5. Exemplu program:

a. Blink - Meniul File->Examples->Basics->Blink.

Rolul acestui programel este de a porni si apoi opri ledul aflat pe placa Arduino si care este conectat la pinul 13. De obicei acest program este utilizat pentru a verifica buna comunicare intre un PC si platforma Arduino (puteti verifica faptul ca se uploadeaza un program, si ca acesta ruleaza corect. Valoarea LED_BUILTIN (care este o constanta) poate fi inlocuita cu 13 - pinul digital la care este conectat ledul. Deoarece atunci cand uploadati un program pe platforma Arduino acest lucru se intampla prin intemediul portului serial, puteti observa aprinderea intermitenta a doua leduri TX/RX aflata pe placa Arduino. Daca nu vedeti aceste doua leduri palpaind inseamna ca nu ati selectat corect portul la care este conectat Arduino sau nu ati instalat driverele.

void setup() { pinMode(LED_BUILTIN, OUTPUT);} void loop() { digitalWrite(LED_BUILTIN, HIGH); delay(1000); digitalWrite(LED_BUILTIN, LOW); delay(1000); }

b. Trimiterea de date catre portul serial al calculatorului.Portul serial - prin el se trimit caractere unul dupa altul. Pentru ca doua

dispozitive, conectate printr-o conexiune seriala, sa se sincronizeze, trebuie ca ambele sa stie viteza la care se realizeaza comunicarea. Aceasta viteza pentru portul serial se masoara in baud si indica numarul de coduri ce pot fi transmise intr-o secunda. Cu cat aceasta valoare este mai mare, cu atat comunicarea este mai rapida si instructiunea care trimite codul se va executa mai rapid. Pentru acest

Page 5: cloud.kyme32.ro · Web viewOrice fel de informatie ti-ai dori sa culegi din mediu, orice fel de conexiuni cu alte sisteme ai avea nevoie, exista o sansa foarte mare sa gasesti un

exemplu vom folosi un baud de 9600 (desi Arduino poate atinge 2.000.000 caractere pe secunda).

void setup() { Serial.begin(9600);} void loop() { for (int i=0; i<10; i++) Serial.println(i); delay (5000);}

6. Exercitiu:

Conectati un potentiometru de 10K ca in figura de mai jos si creati un program care sa afiseze pe monitorul serial valoarea setata, convertita de la 0 ÷ 255.

Page 6: cloud.kyme32.ro · Web viewOrice fel de informatie ti-ai dori sa culegi din mediu, orice fel de conexiuni cu alte sisteme ai avea nevoie, exista o sansa foarte mare sa gasesti un

void setup() { // initializare comunicatie seriala la 9600 bps Serial.begin(9600);}

// sectiunea loop ruleaza in buclavoid loop() { // citeste valoaea pe intrarea analoga A0 int sensorValue = analogRead(A0); // afiseaza valoarea citita Serial.println(sensorValue); delay(1); // setare intarziere (1000=1sec)}

Page 7: cloud.kyme32.ro · Web viewOrice fel de informatie ti-ai dori sa culegi din mediu, orice fel de conexiuni cu alte sisteme ai avea nevoie, exista o sansa foarte mare sa gasesti un

PUNTEA H

O punte H (eng.  H  Bridge) este un circuit electronic ce permite aplicarea unei tensiuni pe o sarcină în orice sens. Aceste circuite sunt adesea folosite în robotică şi alte aplicaţii pentru a permite motoarelor de curent continuu să ruleze înainte şi înapoi. Punţile H sunt disponibile ca circuite integrate  sau pot fi construite din componente discrete, tranzistoare bipolare sau MOS.

Puntea H are numele derivat de la modul obişnuit de desenare a circuitului. Aceasta este singura cale de tip solid state de a comanda motorul în ambele direcţii.

Mod de funţionare:

Atunci când întrerupătoarele S1  şi S4 (în conformitate cu figura) sunt închise şi S2 şi S3 sunt deschise o tensiune pozitivă va fi aplicate la nivelul motorului. Prin deschiderea întrerupătoarelor S1 şi S4 şi închiderea întrerupătoarelor S2 şi S3, această tensiune este inversat, astfel să permită funcţionarea inversă a motorului.

Folosind nomenclatura de mai sus, întrerupătoarele S1 şi S2 nu trebuie să fie închise în acelaşi timp, deoarece acest lucru ar provoca un scurt-circuit la sursa de tensiune (Vin). Acelaşi lucru se aplică şi întrerupătoarelor S3 şi S4.

În practică întrerupatoarele S1,S2,S3,S4 sunt tranzistoare bipolare sau MOS-FET.

Page 8: cloud.kyme32.ro · Web viewOrice fel de informatie ti-ai dori sa culegi din mediu, orice fel de conexiuni cu alte sisteme ai avea nevoie, exista o sansa foarte mare sa gasesti un
Page 9: cloud.kyme32.ro · Web viewOrice fel de informatie ti-ai dori sa culegi din mediu, orice fel de conexiuni cu alte sisteme ai avea nevoie, exista o sansa foarte mare sa gasesti un

Punte H realizata cu tranzistoare MOSFET complementare:

Page 10: cloud.kyme32.ro · Web viewOrice fel de informatie ti-ai dori sa culegi din mediu, orice fel de conexiuni cu alte sisteme ai avea nevoie, exista o sansa foarte mare sa gasesti un

Invertorul PWM trifazat

Page 11: cloud.kyme32.ro · Web viewOrice fel de informatie ti-ai dori sa culegi din mediu, orice fel de conexiuni cu alte sisteme ai avea nevoie, exista o sansa foarte mare sa gasesti un

- Pentru a obtine trei sinusoide avem nevoie de un invertor trifazat.- Invertoarele transforma curentul continuu in current alternative.

Tranzistorul MOS

Page 12: cloud.kyme32.ro · Web viewOrice fel de informatie ti-ai dori sa culegi din mediu, orice fel de conexiuni cu alte sisteme ai avea nevoie, exista o sansa foarte mare sa gasesti un

1. Prezentare generala: Tranzistorul MOS (Metal Oxide Semiconductor) este un dispozitiv semiconductor, realizat din siliciu, care are trei terminale, denumite DRENĂ, GRILĂ, respectiv SURSĂ. În funcţie de particularităţile sale constructive, tranzistoarele MOS se împart în două mari categorii:

· tranzistoare MOS cu canal indus: tip E = Enhancement = cu îmbogăţire – este necesar o tensiune Grila – Sursa VGS pentru a comuta in starea “ON” (deschiderea tranzistorul). Modul Enhancement este echivalent cu un switch “Normal Deschis”.

· tranzistoare MOS cu canal initial: tip D = Depletion = cu sărăcire - este necesar o tensiune Grila – Sursa VGS pentru a comuta in starea “OFF” (inchiderea tranzistorul). Modul Enhancement este echivalent cu un switch “Normal Inchis”. – mai putin comun.

Canalele amintite mai sus reprezintă elementul din structura internă a tranzistorului MOS care asigură transferul de sarcină electrică între drenă şi sursă. Prin transferul de sarcină electrică între cele două terminale se asigură apariţia fenomenelor de conducţie electrică în tranzistor şi astfel, apariţia curentului electric prin acesta.

În plus, în funcţie de tipul materialului semiconductor din care este construit canalul, tranzistoarele MOS se împart în 2 tipuri şi anume:

· tranzistoare MOS cu canal de tip N (canalul tranzistorului este realizat dintr-un material semiconductor de tip N) · tranzistoare MOS cu canal de tip P (canalul tranzistorului este realizat dintr-un material semiconductor de tip P) În circuitele electronice, tranzistoarele MOS sunt simbolizate ca în Figura 1.

Page 13: cloud.kyme32.ro · Web viewOrice fel de informatie ti-ai dori sa culegi din mediu, orice fel de conexiuni cu alte sisteme ai avea nevoie, exista o sansa foarte mare sa gasesti un

La nivelul tranzistorului MOS apar 4 mărimi electrice:

· 1 curent electric şi anume curentul care este generat între DRENĂ şi SURSĂ: ID – curentul de drenă · 3 tensiuni electrice şi anume tensiunile între terminalele tranzistoarelor:

VGS – tensiunea grilă-sursă VDS – tensiunea drenă-sursă VGD – tensiunea grilă-drenă

Sensul curentului de drenă depinde de valorile potenţialelor electrice aplicate pe drenă, respectiv sursă şi de tipul canalului din structura tranzistorului. Astfel, pentru tranzistoarele cu canal N, dacă potenţialul electric al drenei este superior potenţialului electric al sursei, atunci sensul curentului electric prin tranzistor este de la drenă spre sursă. În caz contrar, sensul curentului prin tranzistor este de la sursă spre drenă. La tranzistoarele cu canal P sensul curentului se inversează în raport cu cazul tranzistoarelor de tip N.

Referinţele tensiunilor depind de tipul canalului utilizat în structura tranzistorului MOS. În Figura 2 sunt prezentate sensul curentului (pentru cazul în care potenţialul electric al drenei este mai mare decât cel al sursei), respectiv referinţele tensiunilor de terminal. În această figură s-a reprezentat şi curentul din grila tranzistorului notat IG, deşi valoarea acestui curent este întotdeauna nulă, datorită unui strat izolator din structura tranzistorului MOS.

Page 14: cloud.kyme32.ro · Web viewOrice fel de informatie ti-ai dori sa culegi din mediu, orice fel de conexiuni cu alte sisteme ai avea nevoie, exista o sansa foarte mare sa gasesti un

2.

Funcţionarea tranzistorului MOS.

Principiile de funcţionare ale celor două categorii de tranzistoare MOS cu canal indus, respectiv cele cu canal iniţial sunt similare, şi din acest motiv, în continuare, se vor prezenta numai tranzistoarele MOS cu canal indus, fiind scoase în evidenţă numai diferenţele între cele 2 categorii de tranzistoare.

Relaţiile dintre mărimile electrice ale tranzistorului MOS depind de regimul de funcţionare al acestuia. Tranzistorul MOS poate funcţiona în 3 regiuni de funcţionare distincte, determinate de relaţiile care se stabilesc între tensiunile tranzistorului. Astfel, regiunile de funcţionare ale tranzistorului MOS sunt:

I. REGIUNEA DE BLOCARE(“Cut-off Region - fully-OFF”): - condiţia de funcţionare: VGS < VTH (canal N)

unde VTH reprezintă un parametru al tranzistorului MOS, numit tensiune de prag; valoarea tensiunii de prag VTH tensiuni este:

§ pozitivă, pentru tranzistorul MOS cu canal indus de tip N; § negativă pentru tranzistorul MOS cu canal indus de tip P;

§ negativă pentru tranzistorul MOS cu canal iniţial de tip N;

§ pozitivă pentru un tranzistor MOS cu canal iniţial de tip P;

- în această regiune, comportamentul tranzistorului MOS poate fi exploatat pentru prelucrarea sau generarea semnalelor digitale.

II. REGIUNEA LINIARĂ (Ohmic): - condiţia de funcţionare: VGS > VTH şi VDS < VGS - în această regiune, tranzistorul MOS se comportă ca o rezistenţă a cărei valoare poate fi

controlată de tensiunea grilă-sursă.

Page 15: cloud.kyme32.ro · Web viewOrice fel de informatie ti-ai dori sa culegi din mediu, orice fel de conexiuni cu alte sisteme ai avea nevoie, exista o sansa foarte mare sa gasesti un

III. REGIUNEA DE SATURAŢIE (“fully-ON”): - condiţia de funcţionare: VGS > VTH şi VDS > VGS

- în această regiune de funcţionare tranzistorul MOS poate fi utilizat pentru prelucrarea analogică a semnalelor, fiind singura regiune de funcţionare în care tranzistorul MOS poate AMPLIFICA LINIAR semnalele (informaţia);

3. Utilizare MOSFET ca un SWITCH in cadrul proiectului ESC cu ARDUINO:

Page 16: cloud.kyme32.ro · Web viewOrice fel de informatie ti-ai dori sa culegi din mediu, orice fel de conexiuni cu alte sisteme ai avea nevoie, exista o sansa foarte mare sa gasesti un
Page 17: cloud.kyme32.ro · Web viewOrice fel de informatie ti-ai dori sa culegi din mediu, orice fel de conexiuni cu alte sisteme ai avea nevoie, exista o sansa foarte mare sa gasesti un

In cadrul proiectului se vor utiliza MOSFET-urile 4N04H0 (vezi datasheet). Acestea sunt de tip N – Enhancement mode. Foarte important, in alegerea MOSFET-urilor pentru controlul motoarelor este printre alti parametri si parametrul RDS(on). O valoare RDS(on) mică pentru rezistența canalului este un parametru de dorit, deoarece ajută la reducerea tensiunii de

saturație efectivă a canalelor (VDS(sat) = ID * RDS(on)) pe MOSFET și, prin urmare, va funcționa la o temperatură mai mica . MOSFET-urile de putere au, în general, o valoare RDS(on) mai mică de 0.01Ω care le permite să funcționeze in regim termic redus, prelungind durata de viață operațională (eventual montarea aditionala a unui radiator pentru disiparea caldurii).

Page 18: cloud.kyme32.ro · Web viewOrice fel de informatie ti-ai dori sa culegi din mediu, orice fel de conexiuni cu alte sisteme ai avea nevoie, exista o sansa foarte mare sa gasesti un

O alta limitare cand se foloseste un MOSFET ca un switch este curentul maxim de drena pe care poate sa il suporte. In cazul nostru, din datasheet, ID = 180A.

In general, MOSFET-ul are incorporat si o dioda D1 plasata intre Drena si Sursa (dioda parazita sau dioda interna). Utila atunci cand se controleaza sarcini inductive cum ar fi motoare, relee, solenoid, pentru suprimarea supratensiunii in momentele de tranzitii (ON-OFF) oferind extra protectie MOSFET-ului. Rezistorul RGS este utilizat ca un resistor pull-down pentru a ajuta la tragerea tensiunii de iesire TTL pana la 0V atunci cand MOSFET-ul este oprit “OFF”.

4. Verificare MOSFET cu multimetru:

a. Diode Check

Page 19: cloud.kyme32.ro · Web viewOrice fel de informatie ti-ai dori sa culegi din mediu, orice fel de conexiuni cu alte sisteme ai avea nevoie, exista o sansa foarte mare sa gasesti un

b.Resistance/Continuity Check


Recommended