Para ello se ha empleado un sensor de infrarrojos, el CNY70 al que para que sea efectivo se le ha soldado resistencias tanto en el fotodiodo como en el fototransistor.
Concretamente se ha empleado, después de varias pruebas:
- Resistencia R1=180 Ohm
- Resistencia R2=15KOhm
Con una placa perforada de estaño, hemos fabricado nuestro sensor. En este caso está formado por 2 CNY70 por si fueran necesarios para otra aplicación que los requiere (por ejemplo un robot seguidor de líneas).
Detalle de las conexiones |
Así podemos conectar directamente, con estas clemas de conexión a las entradas correspondientes de la placa Picaxe.
Recuerdo que sólo se necesita para cualquier CNY70:
- Positivo.
- Negativo.
- Entrada analógica (C.0, C.1 o C.2)
De este modo, mediante este sensor, podemos contar el número de veces que gira la rueda, simplemente poniendo un pequeño papel pegado a dicha rueda de color opuesto al de ella, es decir, ante una rueda con cubiertas negras, pegamos un trozo de papel de color blanco.
Así el sensor puede contar porque el voltaje se va a 0 o 5v dependiendo del color recibido y esto se traduce en un pulso.
Este sensor detectará las veces que cambia de color devolviéndonos un valor diferente asociada a una variable.
Funcionamiento del proyecto.
El programa básicamente lo que va a hacer es contar el número de vueltas en 6 segundos y extrapolarlo a 60 segundos (1 minuto).
Para ello hemos pintado una franja blanca en la rueda de color negro. Así cada vez que detecta este color, nos cuenta una revolución.
Para ello hemos pintado una franja blanca en la rueda de color negro. Así cada vez que detecta este color, nos cuenta una revolución.
Posteriormente lo mostrará en una pantalla LCD.
Tras esto vuelve a seguir contando por si ha variado dicha velocidad.
VÍDEO DE LA PRÁCTICA
Esquema de conexiones en la placa picaxe.
Conexiones a la placa Pîcaxe |
La programación se ha realizado con Programming Editor de Picaxe y el código empleado ha sido el siguiente:
Código del programa en Basic |
Código del programa con Blockly:
Programación con Blockly |
' CUENTARREVOLUCIONES CON CNY70
inicio:
count C.0,6000,w0 'Contamos durante 6s las veces que cambia de color
debug w0 'Mostramos en pantalla la variable w0
w1=w0*10 'Multiplicamos por 10 para saber las vueltas en 1 minuto
count C.0,6000,w0 'Contamos durante 6s las veces que cambia de color
debug w0 'Mostramos en pantalla la variable w0
w1=w0*10 'Multiplicamos por 10 para saber las vueltas en 1 minuto
'$$$$$Pantalla LCD$$$$$
serout B.4,n2400,(254,128) 'Situamos en primera línea
serout B.4,n2400,(254,1) 'Limpiamos pantalla
pause 30
serout B.4,n2400,("Velocidad",#w1,"r.p.m") 'Mostramos "Velocidad (variable#w1)-- r.p.m"
goto inicio 'Volvemos a contar por si ha variado la velocidad
serout B.4,n2400,(254,1) 'Limpiamos pantalla
pause 30
serout B.4,n2400,("Velocidad",#w1,"r.p.m") 'Mostramos "Velocidad (variable#w1)-- r.p.m"
goto inicio 'Volvemos a contar por si ha variado la velocidad