====== Control del robot con un encoder (codificador rotatorio) ====== ===== ¿Qué es un encoder? ===== En pocas palabras, un encoder es un dispositivo de detección que proporciona una respuesta. Los encoders convierten el movimiento en una señal eléctrica que puede ser leída por algún tipo de dispositivo de control en un sistema de control de movimiento, como por ejemplo nuestro robot. Nos permitirá saber cuándo avanza y retroce nuestro robot. \\ \\ Hemos visto en el montaje del robot que en la rueda izquierda hay un sensor óptico con el fin de actuar como un encoder. La función del encoder es convertir en señales eléctricas el giro de la rueda, para así saber cuánto ha girado en cada momento. \\ \\ Como se aprecia en la siguiente figura, el sensor óptico se activa cuando detecta un radio de nuestra rueda delante de él y se desactiva cuando no hay nada (espacio entre radios). \\ {{:es:manuals:acts:3dbot:3dbot_80.png?nolink|}} \\ Teniendo en cuenta que la rueda tiene 12 radios, cuando hayamos contado 12 pulsos querrá decir que la rueda ha dado una vuelta completa. \\ \\ Podemos utilizar esta funcionalidad para controlar distancias y {{ :es:manuals:acts:3dbot:3dbot_81.png?nolink|}}giros en el 3dBot. Lo hacemos con el bloque “Esperar_Pasos” que se encuentra en el apartado 3dBot. A cada pulso recibido se le llama “paso”. Siguiendo el ejemplo de antes, una vuelta de rueda completa serán 12 “pasos”. \\ \\ Se puede comprobar experimentalmente que, aproximadamente, para realizar un giro de 90 grados hacia la derecha, la rueda izquierda tiene que mover 4 pasos (pasan 4 radios de la rueda por delante del sensor óptico). De esta forma lo podemos decir a nuestro robot que gire 90 grados, 180 grados, etc. \\ \\ Recorrido programado contando “pasos”. \\ \\ El programa funciona de forma similar a los juegos con led usando la función “Esperar”. Aquí, el robot mantendrá la última dirección programada, hasta que se dé el número de pasos descrito tras esta. \\ {{ :es:manuals:acts:3dbot:arduinoblocks_1648635865754.png?nolink&400 |}} \\ \\