INICIO

sábado, 13 de junio de 2015

2.04 Potenciómetro y LDR



2.04.1 Potenciometro
Los potenciómetros son resistencias como las vistas en el punto 2.2 pero su valor no es fijo, se puede modificar mediante un mando rotatorio o deslizante. Estas resistencias variables se definen por su rango de actuación, por ejemplo de 0 a 10K Ohms.
Al trabajar con Arduino son muy útiles porque pueden simular la señal de un sensor o directamente podemos leer en ellos una señal analógica para controlar un actuador, como por ejemplo la velocidad de rotación de un motor o el brillo de un led.
Un potenciómetro tiene 3 patillas para su conexión, los situados a los extremos se conectan a masa y a la alimentación de 5 v indistintamente, la patilla central se conecta a una de las entradas analógicas de Arduino.
2.04.2. LDR
Una ldr (del inglés light-dependent resistor) es una resistencia variable cuyo valor es inversamente proporcional a la luz que recibe, por lo que su valor es muy bajo cuando una luz brillante incide sobre ella y se comporta como una resistencia de muy alto valor en la oscuridad.
Las ldr son perfectas como sensor de luz ya que con un sencillo calibrado podemos distinguir entre un ambiente oscuro y otro bien iluminado. También mediante unos cálculos podemos determinar los luxes que recibe.
Su “campo de visión” es muy grande y son sensibles a las luces reflejadas lo que es útil para la medición de iluminación en ambiente, para usos más específicos pueden ser introducidas en un encapsulado opaco con una abertura y restringir su campo de visión y detectar solo la luz reflejada por un determinado material o superficie, lo que puede ser útil por ejemplo en detección de objetos o en seguidores de líneas.
La conexión de una ldr a Arduino sigue el mismo esquema que una resistencia normal, hay conectarla a masa con una resistencia de alto valor para filtrar la señal y poder leerla libre de ruido.

2.03 Botón o pulsador



Un botón es un dispositivo de entrada de los más básicos que podemos encontrar, es además uno de los más útiles. Básicamente se trata de un contacto abierto que se cierra al ser accionado con el dedo.
Por su construcción se pueden encontrar de múltiples formas, colores y materiales y todos ellos son susceptibles de ser utilizados en un montaje con Arduino, pero para nuestros propósitos al iniciarnos en esta plataforma utilizaremos sobre todo los de 6 o 12 mm para montaje en pcb porque estos se instalan de forma sencilla en una placa de prototipado.
Con Arduino la utilización de un botón es la misma que en cualquier otro aparato, lo usamos para decirle a Arduino que realiza alguna acción o para que dispare algún procedimiento complejo.
Como los botones son dispositivos que entregan una señal todo/nada los conectaremos a cualquiera de los pines digitales que queramos habiéndolo configurado antes como entrada.
Debido a las características de las entradas digitales de Arduino no podemos conectar un botón directamente a una entrada, pues captaría ruido y su comportamiento sería errático. Las patilla que se conecta al pin de entrada de Arduino debe ser también conectada a masa por medio de una resistencia de 10K Ohms para filtrar la señal, la otra patilla del botón debe ir conectada a la alimentación de 5 v.

2.02 Resistencias



Una resistencia es, simplificando mucho, un componente electrónico cuya función es restringir el paso de corriente eléctrica. Todos los materiales permiten más o menos el paso de corriente eléctrica, esta capacidad se mide con un coeficiente de resistividad que es único para cada material y es directamente proporcional a la capacidad del material para permitir el paso de corriente.
Responde a una ley física, la Ley de Ohm, que se formula de la siguiente forma:
R = V / I
Donde R es la resistencia (medida en Ohmios), V el voltaje (medido en voltios) e I la intensidad (medida en Amperios).
Las resistencias se encuentran en una gama amplísima de valores por que es habitual trabajar con valores de entre 1 y varios millones de Ohms, también se encuentran en una gran variedad de tamaños en función de la intensidad que deba atravesarlas. Además pueden encontrase en diversos tipos de encapsulado como smd y cerámica.
Para nuestro trabajo con Arduino, debido a que utilizaremos unas intensidades muy bajas, trabajaremos siempre con resistencias de ¼ de watt. En cuanto a sus valores podemos trabajar con un amplio rango, pero en la mayoría de situaciones trabajaremos con resistencias de entre 220 Ohms y 10000 Ohms.
Habiendo un rango tan amplio de valores y dado que su encapsulado no permite escribir en él para identificarlas las resistencias se marcan con un código de bandas de colores que son indicadoras de su valor.

2.01 LEDs



La palabra LED son las abreviaturas en inglés de Light Emitting Diode, lo que se traduce como diodo emisor de luz. En 2014 la Real Academia de la Lengua incluyó en su diccionario la palabra “led” como palabra española con el curioso plural “ledes”.
Los ledes se encuentran disponibles en gran cantidad de colores y tamaños pero los que más utilizaremos con Arduino son los de 5mm en colores como rojo, amarillo o verde por ser los más comunes y económicos. También pueden emitir luz fuera del espectro visible como en la banda infrarroja o en la ultravioleta.
Desde nuestro punto de vista al utilizarlos los ledes son dispositivos de salida que podemos encender o apagar desde los pines digitales y con los pines PWM podemos controlar la intensidad de su brillo.
Pueden parecer pequeñas bombillas pero a diferencia de estas no poseen un filamento incandescente, consumen muy poca energía, no se calientan y poseen polaridad. Que posean polaridad es un punto a tener en cuenta a la hora de conectarlos ya que si no lo hacemos de la forma correcta el led no se encenderá.
La patilla más larga es el, ánodo o polo positivo, que se debe conectar a la alimentación positiva o a la señal de un pin digital. El polo negativo o cátodo es la patilla más corta, además para ayudarnos a diferenciarlos en el contorno del encapsulado hay una parte plana que se corresponde con el cátodo.
Otro aspecto a tener en cuenta de los ledes es que tienen un voltaje de funcionamiento y un consumo determinado. Su consumo es, salvo en los casos de alta potencia, de 10 mA por lo que podemos conectar hasta 4 en una misma salida. Su voltaje de trabajo varía según su color pero suele estar en torno a los 3 v, por lo que necesitamos una resistencia de 220 Ohms para adaptar los 5 v de salida de los pines digitales de Arduino al voltaje de trabajo de los ledes.

1.11 Puerto serie básico.



1.11.1. ¿Qué es el puerto serie?
El puerto serie es un puerto de comunicación estándar en muchos sistemas digitales. Establece la comunicación entre dos puntos a una velocidad determinada en bits por segundo (bps o baudios).
El puerto serie puede servir tanto para hacer que Arduino Uno comunique con un ordenador, como para hacer que dos Arduinos “hablen” entre sí. El puerto USB, con el que Arduino conecta a tu PC, tiene un modo de comunicación que simula un puerto serie.
Muchos de los dispositivos que existen, usan el puerto serie como sistema de comunicación básico. Si bien puede que no te ofrezcan una conexión física donde hacerlo, tu ordenador, tu teléfono, tu lavadora o el ascensor de tu casa, tienen un puerto serie de comunicación que se puede utilizar para reparar el sistema a bajo nivel.
En Arduino Uno, el puerto serie está en los pines 0 y 1, por lo que se recomienda dejar esos pines libres a la hora de hacer proyectos si es que quieres usar el puerto de algún modo como para mandar datos a un ordenador o leer un sensor complejo como un GPS.
1.11.2. Envía desde Arduino
Para probar a enviar datos desde Arduino, sólo tienes que cargar el programa “Archivo Ejemplos Analog AnalogInOutSerial. Este ejemplo, lee el valor de un potenciómetro conectado a Arduino y lo envía de vuelta al ordenador.
Para poder ver los datos en la pantalla, la barra de tareas del IDE de Arduino tiene la opción “Puerto Serie”; se trata de un icono con forma de lupa. Al hacer click sobre él, se abre una venta de diálogo que permite tanto enviar como recibir datos de Arduino.
Si ejecutas el mencionado ejemplo, verás una secuencia de datos que llegar a tu ventana.
Por otra parte, puedes probar a hacer un ejemplo sencillo de comunicación para ver cuales son los comandos básicos para establecer la comunicación. El programa más sencillo sería así:
void setup() {
Serial.begin(9600);
}
void loop() {
Serial.println(“Hola Caracola”);
delay(100);
}
Si ejecutas este programa y abres el monitor serie, verás como se escribe el mensaje “Hola Caracola” sobre el monitor a una velocidad de 10 veces por segundo.
Verás que hemos puesto un retardo (delay) dentro del loop. Esto es recomendable puesto que tu Arduino Uno es capaz de enviar datos más rápido de lo que tu PC es capaz de leer. Si no lo hicieras así, seguramente saturarías el puerto de comunicación de tu ordenador.
1.11.3. Nuevos comandos
Serial.begin(velocidad) establece como se ha de configurar el puerto para enviar datos entre Arduino y el ordenador. Es importante notar que Serial.begin(9600) -tal y como lo vimos en el ejemplo anterior- usa la velocidad de envío de datos de 9600 baudios por el puerto. Esto quiere decir que, cada segundo, se envían 9600 bits, o 9600 1's y 0's por el puerto. Esta velocidad es la que se usa por defecto. Prácticamente todos los dispositivos que pueden comunicar por puerto serie, pueden hacerlo a esa velocidad.
Serial.println(texto) envía una cadena de texto hacia el ordenador incluyendo un final de línea/retorno de carro al final.
1.11.4. Recibe en Arduino
El ejemplo más sencillo para probar la comunicación desde el PC hacia Arduino Uno se encuentra en “Archivo Ejemplos Comunication Physical Pixel. La idea detrás de este ejemplo es transformar tu placa en un pixel que puedas controlar remotamente desde el PC. Como Arduino Uno tiene un led en el pin 13 que puedes controlar por software, es como si fuera un pixel físico.
Carga el programa en tu placa y abre el monitor serie. El campo de texto de arriba en la ventana de diálogo te permite escribir datos através del puerto. En este caso la hache mayúscula o “H” encenderá el led, mientras que la ele mayúscula o “L” lo apagará. El dato no se envía automáticamente, tienes que bien hacer click en el botón “send” o presionar “enter” en tu teclado para que se envíe el dato.
1.11.5. Nuevos comandos (2)
Dentro del ejemplo “Physical Pixel” verás estos comandos nuevos:
·         Serial.available() sirve para ver si han llegado datos por el puerto serie. Al invocarlo, nos responde con el número de datos que han llegado por el puerto y que se han almacenado en la memoria de Arduino.
·         Serial.read() nos devuelve el primer dato que llegó por el puerto de comunicación. Además borra ese valor de la memoria, de modo que Serial.available() decrementará en una unidad la próxima vez que lo llames.
1.11.6. Aplicaciones educativas
La comunicación serie es la forma más básica de comunicación por protocolo entre sistemas digitales. Su comprensión es fundamental para entender otros sistemas de comunicación como redes de ordenadores y similares.