## page was renamed from hlpd/curso_arduino/estructura/uni00104 ## page was renamed from hlpd/curso_arduino/estructura/uni001 ||[[http://hl.cenditel.gob.ve/wiki/|wiki comunidad]] ||<#ffff33 style="vertical-align:top;text-align:center; ">[[hlpd|Proyecto Hardware Libre Cenditel]] ||<#ffff66 style="text-align:center; ">[[http://www.cenditel.gob.ve/|Página Cenditel]] ||<#ffff99 style="vertical-align:top;text-align:center; ">[[http://wiki.cenditel.gob.ve/wiki|wiki Cenditel]] ||<#ffffcc style="text-align:center; ">[[http://fsl.cenditel.gob.ve/|Plataforma de Desarrollo Colaborativo]] || = Curso Sensibilización Hardware Libre (Unidad 002) = {{attachment:logohl.png||height="220",width="300"}} {{attachment:logohl.png||height="220",width="300"}} {{attachment:logohl.png||height="220",width="300"}} <> == 002/02 Actividad 002 == Las señales en general se encuentran en modo analógico, por ejemplo nivel de presión, cantidad de luminosidad, etc. Para ser trabajadas dentro de los microcontroladores o computadores es necesario transformarlas a digital, esto se realiza por medio de convertidores digital analógico. En esta actividad se observa el procedimiento para esa transformación, en este caso se utilizará el convertidor interno del microcontrolador, además de las funciones del arduino que permiten manipularlas. === Entradas Analógicas === La tarjeta Arduino (Duemilanove, Uno) cuenta con seis entradas analógicas, que contienen cada una un convertidor A/D de 10 bits, con lo que se transforma de 0-5v a un valor entre 0-(2^(10)-1), es decir entre 0-1023. Dentro de la programación de la plataforma arduino estas entradas se manejan con el comando analogRead(potPin), donde potPin corresponde al numero de la entrada entre 0-5, este comando devuelve un valor digital entre 0-1023 correspondiente a la entrada digital. {{attachment:analog01.jpg||height="253px",width="370px"}} ''figura 1: Diagrama interno del potenciómetro''<
> Para esta actividad del manejo de entradas analógicas, se va a utilizar un potenciómetro para el programa 01 y un sensor de luminosidad (temt6000), con respecto al potenciómetro se debe entender como una resistencia variable, cuyo diagrama interno se muestra en la figura 1 y su identificación de terminales en la figura 2. De esta manera, indirectamente, se puede controlar la diferencia de potencial, los potenciómetros son utilizados en circuitos con poca corriente. {{attachment:analog03.jpg||height="275px",width="402px"}} <
> ''figura 2: Identificación de los terminales del potenciómetro''<
> En la figura 3, se puede observar la conexión del potenciómetro directamente a la entrada analógica de la tarjeta arduino, que con el giro de la perilla a medida que se gira al lado derecho aumenta su resistencia y si se gira al lado izquierdo se disminuye, produciendo así una entrada analógica, que es procesada por el arduino. {{attachment:analog02.jpg||height="259px",width="343px"}} <
>''figura 3: Fotografía de la conexión del potenciómetro al arduino'' <
> <
> <
> <
> === Programa 01: Manejo de Entrada Analógica === Para el manejo de la señal proveniente del potenciómetro como una diferencia de potencial entre cero y cinco voltios (0-5 V), se utiliza el comando analogRead(val), donde leemos el valor analógico y se guarda en la variable val, y en correspondencia a este valor se modifica el temporizado o la duración del intervalo en el "parpadeo" de los led, en el caso especifico del led interno (led 13) y el externo colocado en el pin 12. ==== Codificación ==== * [[hlpd/curso_arduino/fuentes/caf0020201|enlace al prog01.pde]] * [[http://wiki.cenditel.gob.ve/wiki/hlpd/curso_arduino/fuentes?action=AttachFile&do=get&target=241_ianaloga.sch|manejo_ianalog.sch]] ==== Materiales ==== * Tarjeta Arduino con cable conexión USB * Potenciómetro 10k * Resistencia 220 * Led ==== Diagrama de conexión ==== {{attachment:i_analogica.jpg}} <
> ''figura 4.Conexión programa manejo de entrada analógica''<
> <
><
><
> <
> <
> <
> === Programa 02: Manejo de sensor de luminosidad === Con este programa se trabaja con una señal analógica proveniente de un sensor de luminosidad (temt6000), que proporciona un valor analógico en correspondencia al nivel de luminosidad del ambiente, para este programa se realiza una comparación con un valor umbral para apagar o encender el led, es decir cuando haya ausencia de luz, los led se encienden. ==== Codificación ==== * [[hlpd/curso_arduino/fuentes/caf0020202|enlace al prog02.pde]] * [[http://wiki.cenditel.gob.ve/wiki/hlpd/curso_arduino/fuentes?action=AttachFile&do=get&target=242_sensorluz.sch|manejo_luz.sch]] ==== Materiales ==== * Tarjeta Arduino con cable conexión USB * Sensor de luminosidad temt 6000 * Resistencia 220 * Led ==== Diagrama de conexión ==== {{attachment:luz.jpg}} <
> ''figura 5. Conexión del circuito del sensor de luminosidad'' <
><
><
> <
> <
> <
> === Un poco más allá === Con las actividades 001 y 002, se ha mostrado el manejo de entradas y salidas digitales, que permite el planteamiento de cualquier sistema de control de entradas y salidas, con la posibilidad de plantear combinaciones de los programas presentados. Mas adelante en este curso, se mostrará los valores digitales de la conversión de estas entradas analógicas manejadas en esta actividad, por medio del puerto serie.<
> <
> <
> === Referencias utilizadas en esta actividad === * [[http://arduino.cc/es/Secundaria/AnalogRead|PinMode]] * [[http://arduino.cc/es/Tutorial/AnalogInputPins|Referencias de Entradas Analógicas]]