Medir el periodo de un péndulo con S4A y
Arduino.
Hoy vamos a hacer un
circuito en nuestro Arduino para medir el periodo de
oscilación con un receptor y un emisor IR, el programa en S4A será
el encargado de calcular el periodo del péndulo, como podemos ver en el
siguiente vídeo.
Para medir el periodo colocaremos el péndulo de forma que la lenteja pase
entre el emisor y el receptor IR en el punto más bajo del recorrido, y
calculando los tiempos en los que la lenteja del péndulo corta la comunicación
entre emisor y receptor sabremos el tiempo que le ha costado un ciclo completo.
En el circuito
incluimos un led que estará encendido mientras contamos el tiempo del ciclo.
Componentes:
§ Placa Arduino
§ Placa prototipos
§ Emisor IR
§ Receptor IR
§ Led
§ Resistencias de 10KΩ y
270Ω
En nuestro caso, el emisor y el receptor
infrarrojo son muy parecidos a los leds, el de color obscuro es el emisor y el
transparente es el receptor.
Conexión de los componentes IR.
La polaridad del emisor es similar a la
de los led, se conecta con una
resistencia pequeña (270Ω) con la pata más larga conectada a los 5V y la más
corta hacia tierra.
En el receptor la polaridad es la contraria, con la pata más larga hacia tierra y
la más corta hacia los 5V.
En el circuito, el receptor se
comportará como un interruptor, por lo tanto colocaremos una resistencia grande
(10kΩ) entre la pata larga y tierra a modo de Pull
down.
El punto de conexión a la placa arduino será
la unión entre el receptor IR y la resistencia de 10kΩ que ira conectado a la
entrada Analog 6.
Funcionamiento del montaje
Desplazamos la lenteja
del péndulo hacia uno de los lados y la soltamos, al pasar la lenteja entre el
emisor y receptor producirá el primer corte de señal (en este momento encenderá
el led), en ese momento usaremos la sentencia reiniciar cronómetro para
que Scratch empiece a contar el tiempo.
El péndulo llegará al
otro extremo y volverá hacia el punto más bajo y cuando llegue volverá a cortar
la señal (en este momento ha pasado medio periodo) continuará hacia el
desplazamiento inicial y volverá hacia el punto central.
Cuando llegue al punto
central cortará la señal por tercera vez (en este punto ha realizado un ciclo
completo), en este momento se apagará el led y se asignará el tiempo que marque
el cronómetro de scratch a la variable tiempo. Esta es la variable que se
muestra en pantalla.
Código S4A
El programa empieza
apagando el led y espera hasta que el sensor (puerto Analog6) indique que recibe
señal del emisor IR.
Esto ocurre al
desplazar la lenteja del péndulo desde la posición de reposo.
A continuación, cuando
el péndulo se suelta pasará por la posición más baja cortando la señal, el
programa espera este momento (el valor del sensor < 600) como el inicio del
periodo así que reincida el cronómetro y enciende el led.
Ahora vienen la serie
de esperas (instrucción esperar hasta que):
§ La primera es hasta
que la señal vuelve a recibirse (el péndulo sale del sensor)
§ La segunda cuando el
péndulo vuelve a cortar la señal, esta vez pasa por el mismo sitio pero en
sentido contrario.
§ La tercera cuando el
sensor vuelve a recibir señal, el péndulo sale del sensor.
§ La cuarta cuando se
vuelve a cortar la señal, el péndulo está en la misma posición que al empezar a
contar el tiempo y va en el mismo sentido, ha pasado un periodo.
En este corte de señal se apaga el led y se asigna el valor del cronómetro
a la variable tiempo que es la que se muestra en la
pantalla!
No hay comentarios.:
Publicar un comentario