Documente Academic
Documente Profesional
Documente Cultură
En Mecatrónica
Juan Carlos Corte García
PWM
HARDWARE SOFTWARE
ESTRUCTURA BÁSICA DE UN PROGRAMA
ESTRUCTURA
Programa VALORES
“SETUP” Y (variables o
“LOOP” o “sketch” constantes)
FUNCIONES
Finaliza con “ ; ”.
Comentario “ // ” o “/*… */”.
Inicio y fin de una función “{”
y “}”
Variable int
Operadores aritméticos
=,+,-,/,*
Operadores de comparación
==,!,<,>,<=,>=
Constantes: High, low,true
false,input,output.
Funciones: pinMode(),
digitalRead(pin),
digitalWrite(pin, value) ,
AnalogRead(pin),
AnalogWrite(),delay().
COMENCEMOS CON
LA PROGRAMACIÓN
¿DUDAS?
PROBAR LA
PLACA
ARDUINO UNO
R3
PRACTICA 1: SALIDAS DIGITALES
Objetivo: Configurar pines de Arduino UNO
como salidas digitales.
Material: 3 Diodos emisores de luz y 3
resistencias de 220 ohm
LUCES EN INTERRUPCIÓN
Activa la salida 8.
Delay(500)
Delay 500ms
Desactiva la
salida 8.
AREF
13
D3
D2
D1
PB5/SCK
12
PB4/MISO
RESET 11
~PB3/MOSI/OC2A
10
~ PB2/SS/OC1B
LED-YELLOW
LED-YELLOW
LED-YELLOW
9
~ PB1/OC1A
8
PB0/ICP1/CLKO
1121 7
220
220
220
PD7/AIN1
R3
R1
R2
6
A0 ~ PD6/AIN0
PC0/ADC0 5
A1 ~ PD5/T1
ATMEGA328P-PU
PC1/ADC1 4
A2 PD4/T0/XCK
PC2/ADC2 3
A3 ~ PD3/INT1
ANALOG IN
PC3/ADC3 2
A4 PD2/INT0
PC4/ADC4/SDA 1
DIGITAL (~PWM)
A5 TX PD1/TXD
PC5/ADC5/SCL 0
RX PD0/RXD
ARD2
DIAGRAMA DE CONEXIÓN
ARDUINO UNO R3
PRACTICA 1.2: ENTRADA DIGITALES
¿? Si Activa la salida 7.
(botón ==1)
Delay 500ms
Desactiva la
salida 7.
Delay 500ms
Activa la salida 8.
Delay 500ms
Desactiva la
salida 8.
AREF
13
D3
D2
D1
PB5/SCK
12
PB4/MISO
RESET 11
~PB3/MOSI/OC2A
10
~ PB2/SS/OC1B
LED-YELLOW
LED-YELLOW
LED-YELLOW
9
~ PB1/OC1A
8
1121
PB0/ICP1/CLKO
7
220
220
220
PD7/AIN1
R3
R1
R2
6
A0 ~ PD6/AIN0
PC0/ADC0 5
A1 ~ PD5/T1
ATMEGA328P-PU
PC1/ADC1 4
A2 PD4/T0/XCK
PC2/ADC2 3
A3 ANALOG IN ~ PD3/INT1
PC3/ADC3 2
A4 PD2/INT0
PC4/ADC4/SDA 1
DIGITAL (~PWM)
A5 TX PD1/TXD
PC5/ADC5/SCL 0
RX PD0/RXD
ARD2
ARDUINO UNO R3
entradas analógicas.
AREF
13
PB5/SCK
12
PB4/MISO
RESET 11
~PB3/MOSI/OC2A
10
~ PB2/SS/OC1B
9
~ PB1/OC1A
8
PB0/ICP1/CLKO
1121
1k
7
PD7/AIN1
6
POT
A0 ~ PD6/AIN0
PC0/ADC0 5
A1 ~ PD5/T1
ATMEGA328P-PU
PC1/ADC1 4
A2 PD4/T0/XCK
PC2/ADC2 3
Objetivo: Configurar pinesDIGITALde
A3 ~ PD3/INT1
ANALOG IN
PC3/ADC3 2
A4 PD2/INT0
PC4/ADC4/SDA 1
Material: Potenciómetro 50k o 10 K
(~PWM)
A5 TX PD1/TXD
PC5/ADC5/SCL 0
RX PD0/RXD
ARD2
PRACTICA 2: ENTRADA ANALÓGICA
ARDUINO UNO R3
13
12
10
11
9
8
7
6
5
4
3
2
1
0
Objetivo: Configurar pines ARD2
PB4/MISO
PB0/ICP1/CLKO
AREF
TX PD1/TXD
RX PD0/RXD
PD7/AIN1
~ PD6/AIN0
PD5/T1
~ PD3/INT1
PD2/INT0
PB5/SCK
~PB3/MOSI/OC2A
~ PB2/SS/OC1B
~ PB1/OC1A
PD4/T0/XCK
de Arduino UNO como
ARDUINO UNO R3
~
DIGITAL (~PWM)
Material: Potenciómetro,
diodo emisor de luz ATMEGA328P-PU
1121
PC4/ADC4/SDA
PC5/ADC5/SCL
ANALOG IN
PC0/ADC0
PC1/ADC1
PC2/ADC2
PC3/ADC3
RESET
A0
A1
A2
A3
A4
A5
POT
1k
PRACTICA 3: ESTRUCTURA “FOR”
Objetivo: Utilizar la sentencia “for” para definir
salidas, así como activar salidas secuencialmente.
Material: 6 led’s (cualquier color) 6 resistencias de
220 Ω
AREF
13
PB5/SCK
12
PB4/MISO
RESET 11
~PB3/MOSI/OC2A
10
~ PB2/SS/OC1B
9
~ PB1/OC1A
8
PB0/ICP1/CLKO
ATMEGA328P-PU
1121
DIGITAL (~PWM)
7
ANALOG IN
PD7/AIN1
6
A0 ~ PD6/AIN0
PC0/ADC0 5
A1 ~ PD5/T1
PC1/ADC1 4
A2 PD4/T0/XCK
PC2/ADC2 3
A3 ~ PD3/INT1
PC3/ADC3 2
A4 PD2/INT0
PC4/ADC4/SDA 1
A5 TX PD1/TXD
PC5/ADC5/SCL 0
RX PD0/RXD
A
A
PRACTICA 3,1: ESTRUCTURA “CASE”
13
12
10
11
9
8
7
6
5
4
3
2
1
0
ARD1
PB4/MISO
PB0/ICP1/CLKO
AREF
TX PD1/TXD
RX PD0/RXD
PD7/AIN1
~ PD6/AIN0
PD5/T1
~ PD3/INT1
PD2/INT0
PB5/SCK
~PB3/MOSI/OC2A
~ PB2/SS/OC1B
~ PB1/OC1A
PD4/T0/XCK
ARDUINO UNO R3
~
DIGITAL (~PWM)
ATMEGA328P-PU
1121
PC4/ADC4/SDA
PC5/ADC5/SCL
ANALOG IN
PC0/ADC0
PC1/ADC1
PC2/ADC2
PC3/ADC3
RESET
A0
A1
A2
A3
A4
A5
lcd.
50k
POT
1
LCD
VSS
LM016L
2
AREF VDD
3
VEE
13
PB5/SCK
12 4
PB4/MISO RS
RESET 11 5
~PB3/MOSI/OC2A RW
10 6
~ PB2/SS/OC1B E
9
~ PB1/OC1A
8 7
PB0/ICP1/CLKO D0
8
D1
1121
7 9
PD7/AIN1 D2
6 10
A0 ~ PD6/AIN0 D3
PC0/ADC0 5 11
A1 ~ PD5/T1 D4
ATMEGA328P-PU
PC1/ADC1 4 12
A2 PD4/T0/XCK D5
PC2/ADC2 3 13
A3 ~ PD3/INT1 D6
ANALOG IN
PC3/ADC3 2 14
A4 PD2/INT0 D7
PC4/ADC4/SDA 1
DIGITAL (~PWM)
A5 TX PD1/TXD
PC5/ADC5/SCL 0
RX PD0/RXD
ARD1
ARDUINO UNO R3
Material: LCD, Potenciometro 10k.
PRACTICA 5: UTILIZACIÓN DE LCD.
Objetivo: Imprimir “hola mundo” en una pantalla
PRACTICA 6: MEDICIÓN DE
TEMPERATURA
2
LCD1
AREF VDD
3
VEE
13
PB5/SCK
12 4
PB4/MISO RS
RESET 11 5
~PB3/MOSI/OC2A RW
10 6
~ PB2/SS/OC1B E
9
~ PB1/OC1A
8 7
PB0/ICP1/CLKO D0
8
D1
1121
7 9
PD7/AIN1 D2
6 10
A0 ~ PD6/AIN0 D3
PC0/ADC0 5 11
A1 ~ PD5/T1 D4
ATMEGA328P-PU
PC1/ADC1 4 12
A2 PD4/T0/XCK D5
PC2/ADC2 3 13
A3 ~ PD3/INT1 D6
ANALOG IN
PC3/ADC3 2 14
A4 PD2/INT0 D7
PC4/ADC4/SDA 1
DIGITAL (~PWM)
A5 TX PD1/TXD
PC5/ADC5/SCL 0
RX PD0/RXD
ARD1
ARDUINO UNO R3
3
1k
U1
LM35
2
RV1
VOUT
34.0
1
PRACTICA 7: LECTURA DE SENSORES
INFRARROJOS Y USOS
- Altura (heigth)
-Anchura (width)
- Periodo (period)
PRACTICA 9: CONTROL DE UN MOTOR DC
(L293D).
Objetivo: Realizar variación de velocidad mediante un
L293D.
Material: motor DC, L293D.
L293D DRIVER PARA MOTORES DC
PRACTICA 9: CONTROL DE UN MOTOR DC
(L293D).
SENTIDO DE GIRO MEDIANTE PUERTO
SERIAL (L293D).
PRACTICA 10: CONTROL DE UN
SERVOMOTOR