VISUALINO
(Apuntes y Proyectos. Parte II)
Aurelio Gallardo Rodríguez
¿Qué es un potenciómetro? Conexión a arduino
Un potenciómetro es una resistencia variable. Si por ejemplo, su valor es de 100KΩ, quiere decir que mediante un elemento móvil (como un deslizador o vástago rotatorio), puedo poner entre uno de sus extremos y el pin central un valor menor que 100KΩ. Por ejemplo, supongamos que entre las patas A y B tengo 10KΩ. Entre las patas B y C tendré 90KΩ.
A B C
Con los potenciómetros se diseñan fácilmente divisores de tensiones. No entraremos en analizarlos con profundidad. Simplemente decir que si conecto en A la tensión del ARDUINO (5V) y en C el pin de tierra (GND) en la pata B central obtendré valores de tensión entre 0 y 5 Volt. simplemente accionando el elemento móvil.
5V
¿Cómo lee ARDUINO las entradas variables?
Cuando por ejemplo diseñamos los botones, el pin que recibía la señal de ARDUINO podía estar en ALTO o BAJO, es decir activado (1) o desactivado (0). El botón definía uno de los pines de ARDUINO como entrada digital. Los leds también se encendían en ALTO (1) o se apagaban en BAJO (0); eran salidas digitales.
Aurelio Gallardo Rodríguez
¿Cómo lee ARDUINO las entradas variables?
Aurelio Gallardo Rodríguez
Varios leds que encienden correlativamente
Necesario para definir los pines como de salida
Varios leds que encienden correlativamente
1. ¿Qué modificación hay que hacer para que los LEDs
avancen correlativamente PERO no se vayan
apagando?
2. Tal como está hecho el programa, siempre se queda
uno encendido. ¿Qué tengo que hacer para que
empiecen desde “todos apagados”?
3. Propuesta: utilizando el bloque “zumbador avanzado”
(zum bloqs) intenta que suene un tono diferente
musical en función del led que se esté iluminando.
4. Ampliación: intenta hacer las luces del coche
fantástico.
Sensores de luz
Resistencias fotodependientes
Las LDR son dispositivos que cambian su valor de resistencia cuando inciden en ellas más
o menos luz. Para poder usarlas haz lo siguiente:
1. Con un ohmímetro, mide el valor de la resistencia a oscuras, metidas en un cajón o
tapándolas completamente con algo. Anota el valor Raoscuras (si no puedes medirla
porque es demasiado alta coge el valor 1000KΩ o 1MΩ)
2. Anota el valor cuando incide unas condiciones buenas de luz (iluminándolas con una
linterna o similar). Ese es el valor Riluminada.
3. Escoge un valor intermedio. Busca una resistencia de ese valor y ponla en serie con
ella para fabricar un divisor de tensiones.
Aurelio Gallardo Rodríguez
Alarma de cajón
Imagina que en un cajón (o en una caja fuerte) tienes algo muy valioso escondido. Estás
preocupado/a de que nadie te robe lo que tienes. Intenta hacer una alarma con un
zumbador que suene cuando alguien abra el cajón.
Fundamento: Al iluminar la LDR cambia el valor que detecta ARDUINO. Detecta ese cambio
para activar el zumbador.
Aurelio Gallardo Rodríguez
Alarma de cajón
Para la otra alarma (la de farola) hay dos posibilidades:
Ideas con LDRs
1. Describe cómo podrías hacer un interruptor
con un LDR.
Sensores de
Temperatura
Resistencias termodependientes
Las NTC-PTC son resistencias cuyos valores dependen de la temperatura. Las NTC
descienden su resistencia al aumentar la temperatura y las PTC al contrario, aumentan
su resistencia cuando aumenta la temperatura.
Aurelio Gallardo Rodríguez
Aurelio Gallardo Rodríguez
Sensor de ultrasonidos
El sensor de ultrasonidos tiene cuatro
conexiones. Tensión de alimentación o
Vcc que hay que conectar a 5V, tierra o
GND, ECHO y TRIGGER. La combinación de
los dos últimos nos da una distancia a un
obstáculo que se encuentre enfrente de
nosotros.
Sensor de ultrasonidos
Activa el sensor de distancias
Reconoce la distancia de corte
Toca un tono y enciende el LED
Aurelio Gallardo Rodríguez
Péndulo con ARDUINO
El estudio del péndulo, en Físicas, ha tenido siempre mucha trascendencia. A Galileo se le
atribuye originariamente las primeras fórmulas del mismo.
Cuando hacemos oscilar un péndulo levemente, podemos observar que el tiempo que
tarda en oscilar no depende de la masa del péndulo, sino de su longitud y del valor de la
gravedad. Se demuestra que para oscilaciones pequeñas, se cumple:
Siendo
l
la longitud de la cuerda (en metros),
g
=9.8 m/s2 y
π
=3.1416
El problema del sensor SR04
El sensor de ultrasonidos SR04 tiene un problema (que al parecer no tiene su hermano el SR05) y es que cuando mide una “distancia infinita” (fuera
de
rango) se queda “colgado”. El dispositivo, una vez disparado (TRIGGER), espera un pulso por el pin ECHO. Si no tiene o no funciona un timeout que lo saque de la espera, se quedará bloqueado al no recibir el eco.En foros de internet se encuentran dos soluciones (por ahora). La primera es asequible con VISUALINO; la segunda sólo con el IDE de ARDUINO.
● Apagar/encender el sensor. Vamos, reinicializarlo (no el programa, el sensor). Se puede conseguir alimentando el sensor (Vcc) a través de un transistor que se active por otro pin de ARDUINO que cuando detecte un bloqueo lo apague momentáneamente.
Aurelio Gallardo Rodríguez
Problema ejemplo con SR04
Activa el 4: Encender SR04 // Apaga LED 13
Almacena distancia detectada por el sensor
Si es “infinita”, mayor de 990, pin 4 bajo (apagar sensor). Enciende LED y espera un poco (50ms)
Problema ejemplo con SR04
Aurelio Gallardo Rodríguez
Y así se hace el péndulo
● Montar un péndulo. Simplemente algo que pese colgado de una
cuerda. Cuanto más largo podamos montarlo, mejor deben salir los resultados.
● Dirigir el sensor hacia una superficie de manera que siempre
mantenga una lectura constante de distancia. El péndulo debe estar montado de forma que su oscilación corte el haz del sensor.
● El programa debe registrar datos en serie. Esos datos,
recogidos en el monitor, deben pasarse a una hoja de cálculo, en una columna. En la hoja de cálculo, añadir una columna temporal que empiece en 0 y de paso sea el tiempo (delay) espera que pusimos en el programa (en mi caso 20ms). Representar gráficamente los resultados. Deducir el período en función de los valles o picos de la gráfica y compararlos con los de la fórmula.
● CONSEJOS: péndulos largos, oscilaciones pequeñas. Intentar