Paso 8: Proyecto 2: control motor preciso
Ahora queremos que los botones de mover cam solamente una sola leva paso hacia adelante o hacia atrás de Furby.
Luego, también querremos un indicador cuando la leva pasa a su posición "inicial".
Para ello necesitaremos el codificador de LED. Si usted harken hacia el pinout de PCB, te acordarás
- Una rotación que detecta las perforaciones en cam de Furby que se mueve
- EQUIPO LED que se enciende el LED brilla a través de la cam
- CASA de CAM que se activa cuando la cámara está en la posición "Inicio"
Lo que voy hacer es el LED de iluminación y ver el sensor de rotación.
En Resumen:
- Primero definimos estos pins nuevos y establecer en startup()
- Decimos startup() ver:
- los pernos de los botones (ir hacia adelante e ir atrás)
- y el pin del sensor (rotación)
- .. .y ejecutar "encoder" cuando cualquiera cambia
- A continuación tenemos que escribir encoder() que se llama read_button y read_sensor
- Read_button - la interrupción fue de uno de los botones
- conjunto MOTOR adelante o reversa MOTOR
- salida encoder()
- read_cam_sensor - fue la interrupción de la leva de movimiento
- ¿Lee casa de CAM - son "casa"? Si somos, restablecer nuestra posición conocida. Si no, seguir contando desde la última posición conocida.
- ¿Si es así, que la dirección nos vamos? (MOTOR adelante o reversa MOTOR)
- de esto calcular la nueva posición
- parar el motor! Establezca MOTOR hacia adelante y reversa MOTOR en off.