Documentos de Académico
Documentos de Profesional
Documentos de Cultura
José Pujol
@jo_pujol
SUMARIO
• INTRODUCCIÓN A ARDUINO
• CONCEPTOS BÁSICOS
• PRACTICANDO
• PRÁCTICAS
– P1: SALIDAS DIGITALES
– P2: ENTRADAS DIGITALES
– P3: ENTRADAS ANALÓGICAS
– P4: SALIDAS ANALÓGICAS
INTRODUCCIÓN A ARDUINO
• ¿ QUÉ ES?
• LA PLATAFORMA ARDUINO
¿QUE ES?
"
Es una plataforma de hardware libre para la
creación de prototipos basados en software y
hardware flexibles y fáciles de usar
OPEN SOURCE HARDWARE
"
OPEN SOURCE HARDWARE
"
OPEN SOURCE HARDWARE
Consecuencias:
• Multitud de escudos y versiones de placas
• Comunidad de usuarios à información
• Posibilidad de desarrollar nuestros propios
prototipos
• Precios
"
QUÉ PODEMOS HACER
"
LA PLATAFORMA ARDUINO
• Software
• Soporte en red
"
CONCEPTOS BÁSICOS
• HARDWARE
• SOFTWARE
HARDWARE
• Qué es un microcontrolador
• Entradas y Salidas
• Digital y Analógico
Qué es un microcontrolador
Entradas y Salidas
Entradas: proporcionan información al sistema
• Pulsadores
• Motores
• Sensores
• LEDs
• Zumbador
Digital y Analógico
"
Arduino Uno
"
Arduino Uno
"
IDE: ENTORNO DE PROGRAMACIÓN
"
SOFTWARE
"
SOPORTE EN RED
"
PRACTICANDO
• PROTOBOARD
• CABLES
• RESISTENCIAS
• POLÍMETRO
PROTOBOARD
CABLES
Rojo=5v
Colores pines
Negro=0v
RESISTENCIAS
Son elementos que limitan el paso de la corriente
Código de
colores
RESISTENCIAS
Resistencias típicas
220 Ω
1 KΩ
10
KΩ
POLÍMETRO
Medir tensión:
POLÍMETRO
Medir continuidad:
POLÍMETRO
Medir intensidad:
PRACTICAS
• FINALIDAD
• HARDWARE
• PROGRAMACIÓN
FINALIDAD
A
K
HARDWARE: HOLA MUNDO
K
A
HARDWARE: LED
HARDWARE: CÁLCULO RESISTENCIA
Cálculo de la resistencia de protección del LED
Datos:
R
• V=5v
• Imax=20mA
• VLED=2v
V
SOFTWARE: HOLA MUNDO
SOFTWARE: SALIDAS DIGITALES/ TIEMPO
- pinMode(pin, INPUT/OUTPUT);
Configura el pin como entrada o salida digital
pin: el pin digital que queremos configurar
OUTPUT: establece el pin digital de salida
- digitalWrite(pin, ESTADO);
Escribe 5 o 0v en la salida
pin: pin digital de salida
ESTADO: HIGH=5v o LOW=0v
- delay(ms);
Tiempo de espera en ms
P2: ENTRADAS DIGITALES
• FINALIDAD
• HARDWARE
• PROGRAMACIÓN
FINALIDAD
• FINALIDAD
• HARDWARE
• PROGRAMACIÓN
FINALIDAD
RNOCHE=
1
MΩ
RDIA=
100
Ω
HARDWARE: LDR
HARDWARE: DIVISOR DE TENSIÓN
VOUT=5*R/(LDR+R)
Día
à
RLDR=100Ω
à
VOUT≈5v
Nocheà
RLDR=1MΩ
à
VOUT≈0v
SOFTWARE: ENTRADA ANALÓGICA
- analogRead(pin);
pin: pines Analógicos entrada A0-A6
valor: entre 0-1023 (0-5v)
SOFTWARE: COMUNICACIÓN SERIE
• FINALIDAD
• HARDWARE
• PROGRAMACIÓN
FINALIDAD
- Controlar el encendido de un LED con un bucle for:
usar Ejà Analogà Fading
- Controlar el encendido de un LED con un
potenciómetro, usar la función map
+ Añadir otro potenciómetro para controlar 2 colores
de un LED RGB
+ Usar un potenciómetro con dos funciones map, una
de ellas invertida para controlar los 3 colores LED RGB
HARDWARE: LED RGB
Son tres Diodos LEDs en un encapsulado
En este caso con cátodo común
HARDWARE: LED RGB
HARDWARE: potenciómetro
Es una resistencia variable
• Resistencia variable 0-10 kΩ
• Divisor de tensión 0-5v
5v
VANALOG
0v
HARDWARE: POTENCIÓMETRO
SOFTWARE: SALIDA ANALÓGICA pwm
PWM: Modulación por Anchura de Pulso
- analogWrite(pin, valorPWM);
pin: pines digitales con PWM:
D3, D5, D6, D9, D10, D11
valor: entre 0-255 (0-5v)
VS=5*PWM/255
SOFTWARE: BUCLE FOR
Se usa para repetir las ordenes entre corchetes
- for(inicio; paro; incremento){
// Ordenes a repetir
}
for(i=0; i<10; i++){
// Ordenes a repetir
}
SOFTWARE: CONTROL SALIDA ANALÓGICA
SOFTWARE: MAP
Escala un valor de un rango a otro
- map(value;fromLow;fromHigh;toLow;toHigh);
value: valor a escalar