Sunteți pe pagina 1din 40

Curs Arduino

ALEXANDRU-IOAN POP
SEPTEMBRIE 2017
COLEGIUL NAȚIONAL “MIHAI EMINESCU” SATU MARE
Despre mine
Anul 4 – Computer Science and Electronics

Bristol
Informații suplimentare
alexandruioan.me/curs.php
Arduino Nano
Arduino Nano
Ce e un microcontroller?

Atmega 386P Intel i5-6500

RAM 2KB (max) 64GB (max)

Frecventa 16MHz 3.2-3.6GHz

Putere consumată 0.36mW 30W

Preț $2 $200

Dimensiune 49 mm^2 1300 mm^2


Numar instrucțiuni 131 ~2000
Instalare
Configurare
Structura unui program Arduino
Exemplu 1: Blink
Breadboard
- +
Exemplu 2: Buton
Fritzing
• Scheme, diagrame pentru circuite

http://fritzing.org/download/?donation=0

• Fișierele, pe site
Exemplu 2: Buton
Exemplu 2: Buton
Comunicarea cu calculator: portul serial

• Transmisiune serială, asincronă (fără semnal de ceas)


• Cele mai comune setări, 9600 8N1
• 9600 bps
• 8 biți de date
• Fără bit de paritate
• 1 bit de oprire
Comunicarea cu calculator: portul serial

• UART = universal asynchronous receiver-transmitter


• Implementează protocoale de transmisiune serială

• RS-232 (protocol vechi, standard, între dispozitive)


Comunicarea cu calculator: portul serial

Convertor serial-USB
Comunicarea cu calculator: portul serial
Lumea înconjurătoare e analogică
• Conversie prin ADC/DAC

DAC ADC
Exemplu 3: citirea setării unui potențiometru (reostat)
analogRead()
• 10 biti = 1024 nivele; 0 – 5V cu precizie de 4.9 mV
Divizorul de tensiune

R1 R2 Vout
0 R2 Vin
R1 0 0
R R Vin/2
analogWrite()
• Arduino nu are DAC încorporat

• Aproximație - PWM
PWM – Pulse Width Modulation
• Proprietatea codificată = lățimea pulsului

• factor de umplere (duty cycle)

• Controlează:
• Intensitatea unui LED
• Viteza unui motor

• Pini PWM pe Arduino Nano: 3, 5, 6, 9, 10, și 11


Exemplu 4: LED reglabil
Exemplu 4: LED reglabil
Servomotoare
• Unghi configurabil: 0° – 180°
Cum se controlează un servomotor
Exemplu 5: Servo
Exemplu 5: Servo
Exemplu 6: servo + potențiometru
Exemplu 6: servo + potențiometru
LED WS2812B
• LED programabil, adresabil (într-un șir, poate fi
controlat fiecare, individual)
• Red, Green, Blue (RGB)
• 3 x 8 biți / LED
• Protocol de comunicație simplu
Instalarea bibliotecii
Exemplu 7: demo NeoPixel