PRÁCTICAS DE PROGRAMACIÓN CON ARDUINO
P5: CONTROL LUMINOSIDAD LED RGB
José	
  Pujol	
  Pérez	
  
IES	
  Vicente	
  Aleixandre	
  
OBJETIVOS
•  Controlar salidas analógicas
•  Conectar entradas y salidas analógicas
•  Mapear valores
•  Uso joystick
	
  
Ideas Previas:
•  ¿Puede un microcontrolador digital dar una salida
analógica? ¿Cómo?
•  Si codificamos cada color con 1 byte, ¿cuántos
colores diferentes podemos obtener con un LED
RGB?
	
  
INTRODUCCIÓN
Controlar la intensidad luminosa y colores de
un LED RGB mediante sensores
1º- Probar y modificar programa fading cambiando
tiempos, añadiendo otro color al LED RGB...
2º- Elegir sensor (joystick), e imprimir sus valores para
ver comportamiento
3º Relacionar x,y joystick y salidas analógicas LED RG
Opcional:
4º Añadir acelerómetro para controlar el LED B
PROPUESTA DE TRABAJO
•  SALIDAS ANALÓGICAS
•  PROGRAMA FADING
•  FUNCIÓN MAP
•  ENTRADA-SALIDA ANALÓGICA
•  JOYSTICK
INFORMACIÓN
 
SALIDAS ANALÓGICAS
analogWrite (pin, valor);
Pin salidas PWM: D3, D5, D6, D9, D10, D11
Valor entre 0-255 (0-5v)
 
PROGRAMA FADING
 
MAP
Escala un valor de un rango a otro	
	
- map(value;fromLow;fromHigh;toLow;toHigh);	
value: valor a escalar
El caso más típico es de una entrada analógica 0-1023 a
una salida analógica 0-255	
	
sensorMapvalue=map(sensorValue;0;1023;0;255);
 
ENTRADA-SALIDA ANALÓGICA
 
JoYSTICK
Está constituido por dos potenciómetros (x, y) y un
pulsador z
 
JoYSTICK
Son dos potenciómetros para los ejes x, y
En reposo da valor aproximado de x=512 y=512
	
	
	
A4=xjoy	
A5=yjoy
 
ESQUEMA ARDUINO POTENCIÓMETRO
 
ESQUEMA ARDUINO JOYSTICK
 
ACELERÓMETROS
Realizan una medida de la acelereración o vibración
Son sistemas micro electro-mecánicos (MEMS)
Funcionan por capacitancia
Características:
•  Miden 3 ejes x, y z
•  Miden la gravedad 	
	
A2=xAcel	
A3=yAcel
 
ESQUEMA ARDUINO ACELERÓMETRO
•  ¿Qué hemos conseguido hacer?
	
  
reflexionamos
 
	
  
	
  
Este	
  guía	
  se	
  distribuye	
  bajo	
  licencia	
  Reconocimiento-­‐	
  ComparBrIgual	
  CreaBve	
  
commons	
  4.0	
  	
  
	
  
	
  
(cc)	
  2014	
  José	
  Pujol	
  Pérez	
  Some	
  rights	
  reserved.	
  This	
  work	
  licensed	
  under	
  CreaBve	
  
Commons	
  AOribuBon-­‐ShareAlike	
  License.	
  To	
  view	
  a	
  copy	
  of	
  full	
  license,	
  see	
  	
  	
  	
  	
  	
  	
  	
  	
  
hOp://creaBvecommons.org/licenses/by-­‐sa/3.0/	
  or	
  write	
  to	
  CreaBve	
  Commons,	
  559	
  
Nathan	
  AbboO	
  Way,	
  Stanford,	
  California	
  94305,	
  USA.	
  	
  
Some	
  of	
  the	
  figures	
  have	
  been	
  taken	
  from	
  the	
  Internet	
  Source,	
  and	
  author	
  and	
  licence	
  
if	
  known,	
  is	
  specified.	
  	
  
For	
  those	
  images,	
  fair	
  use	
  applies.	
  	
  
licencia

P5: Kiwibot Basic Shield: Control luminosidad LED RGB

  • 1.
    PRÁCTICAS DE PROGRAMACIÓNCON ARDUINO P5: CONTROL LUMINOSIDAD LED RGB José  Pujol  Pérez   IES  Vicente  Aleixandre  
  • 2.
    OBJETIVOS •  Controlar salidasanalógicas •  Conectar entradas y salidas analógicas •  Mapear valores •  Uso joystick  
  • 3.
    Ideas Previas: •  ¿Puedeun microcontrolador digital dar una salida analógica? ¿Cómo? •  Si codificamos cada color con 1 byte, ¿cuántos colores diferentes podemos obtener con un LED RGB?   INTRODUCCIÓN
  • 4.
    Controlar la intensidadluminosa y colores de un LED RGB mediante sensores 1º- Probar y modificar programa fading cambiando tiempos, añadiendo otro color al LED RGB... 2º- Elegir sensor (joystick), e imprimir sus valores para ver comportamiento 3º Relacionar x,y joystick y salidas analógicas LED RG Opcional: 4º Añadir acelerómetro para controlar el LED B PROPUESTA DE TRABAJO
  • 5.
    •  SALIDAS ANALÓGICAS • PROGRAMA FADING •  FUNCIÓN MAP •  ENTRADA-SALIDA ANALÓGICA •  JOYSTICK INFORMACIÓN
  • 6.
      SALIDAS ANALÓGICAS analogWrite (pin,valor); Pin salidas PWM: D3, D5, D6, D9, D10, D11 Valor entre 0-255 (0-5v)
  • 7.
  • 8.
      MAP Escala un valorde un rango a otro - map(value;fromLow;fromHigh;toLow;toHigh); value: valor a escalar El caso más típico es de una entrada analógica 0-1023 a una salida analógica 0-255 sensorMapvalue=map(sensorValue;0;1023;0;255);
  • 9.
  • 10.
      JoYSTICK Está constituido pordos potenciómetros (x, y) y un pulsador z
  • 11.
      JoYSTICK Son dos potenciómetrospara los ejes x, y En reposo da valor aproximado de x=512 y=512 A4=xjoy A5=yjoy
  • 12.
  • 13.
  • 14.
      ACELERÓMETROS Realizan una medidade la acelereración o vibración Son sistemas micro electro-mecánicos (MEMS) Funcionan por capacitancia Características: •  Miden 3 ejes x, y z •  Miden la gravedad A2=xAcel A3=yAcel
  • 15.
  • 16.
    •  ¿Qué hemosconseguido hacer?   reflexionamos
  • 17.
          Este  guía  se  distribuye  bajo  licencia  Reconocimiento-­‐  ComparBrIgual  CreaBve   commons  4.0         (cc)  2014  José  Pujol  Pérez  Some  rights  reserved.  This  work  licensed  under  CreaBve   Commons  AOribuBon-­‐ShareAlike  License.  To  view  a  copy  of  full  license,  see                   hOp://creaBvecommons.org/licenses/by-­‐sa/3.0/  or  write  to  CreaBve  Commons,  559   Nathan  AbboO  Way,  Stanford,  California  94305,  USA.     Some  of  the  figures  have  been  taken  from  the  Internet  Source,  and  author  and  licence   if  known,  is  specified.     For  those  images,  fair  use  applies.     licencia