Robot seguidor de luz PDF

Title Robot seguidor de luz
Author Daniel Andres Gonzalez Vargas
Course Introduccion A La Ingenieria Electronica
Institution Universidad del Norte Colombia
Pages 4
File Size 242.6 KB
File Type PDF
Total Downloads 44
Total Views 138

Summary

Informe sobre robot seguidor de luz con arduino...


Description

1

Informe del Robot No.2 Seguidor de luz Universidad del Norte Departamento de Ingeniería Eléctrica y Electrónica Adrián Valdelamar, 200125648, Univerisdad del Norte, Daniel González, 200119614, Universidad del Norte, Jorge Castilla, 200125511, Universidad del Norte, and Camilo Jaramillo, 200122814, Universidad del Norte

Abstract—In this inform is found the description of the development of the project No. 2, which is an autonomy light-follower robot, with all the information related to obtaining the tools, materials and electronic components to create it and make it work. Also, it is shown the exact Arduino code that control the movements of the robot itself. It is explained the step-by-step followed and the different problems that were seen during the experience. Index Terms—Arduino, PWM signal, Servo Motor, Photoresistance.

I. I NTRODUCCIÓN N este informe se presenta el desarrollo en la elaboración de un robot seguidor de luz, el cual es controlado con un microcontrolador Arduino uno. Se mencionan los elementos físicos utilizados para el montaje del robot, las medidas y pasos seguidos para la ejecución del propio montaje, las versiones de código que se usan a medida que se va perfeccionando el robot, y todo lo referente a las correcciones tanto de hardware, como de software que se implementan en la consecución del mejor funcionamiento posible.

E

IV. I MPLEMENTOS 1) Un chasis. Este puede tener cualquier forma geométrica, siempre que sea acorde a los objetivos planteados. 2) Un Arduino uno. 3) Una Protoboard Breadboard 400 puntos. 4) 2 ruedas motorizadas, en adición de una rueda libre la cual permitirá girar al robot. 5) 2 servomotores de rotación continua. 6) 3 Fotorresistencias. 7) 1 powerbank de 1000 mah 8) Jumpers.

V. E NSAMBLE DEL ROBOT Y PROGRAMACIÓN DEL A RDUINO

II. O BJETIVO G ENERAL Diseñar, construir y probar un robot seguidor de luz mediante el uso de un microcontrolador Arduino uno.

III. O BJETIVOS E SPECÍFICOS 1) Construir un robot el cual se dirija hacia el punto de mayor intensidad de luz a su alrededor, siempre y cuando ese punto supere un umbral de intesidad de luz predeterminado. Si el umbral no es superado el robot deberá permanecer inmóvil. 2) El robot debe ser autónomo en la realización de las tareas requeridas, es decir, no se acepta ningún tipo de intervención humana diferente al control de la fuente de luz para guiar al robot. 3) El robot debe ser lo suficientemente capaz de reaccionar a estimulos de forma eficiente, de manera que pueda completar un recorrido cuya configuración es aleatoria. 4) Usar una cantidad de fotoresistencias que no supere en número a las entradas análogicas del Arduino UNO.

Fig. 1: Ensamble

A. Desarrollo del montaje Para comenzar a armar el robot, tuvimos que adquirir una plataforma con las dimensiones especificadas por la guía que nos envió el profesor, esta plataforma la obtuvimos del primer robot que construimos, en la cual encontramos una que encajaba a la perfección con las medidas que nos propusieron, además de diferentes materiales que se usaron en el robot anterior (seguidor de linea negra) como el arduino, jumpers, etc.

2

concluir que no era necesario porque el robot andaba bien con las que ya tenia. A pesar de eso, necesitamos de muchas pruebas y ligeras modificaciones del código para encontrar la posición más adecuada de los sensores y hacer que el robot hiciera movimientos bruscos como por ejemplo un giro de 90 grados cuando la luz estuviera con cierta intensidad.

Fig. 2: Placa inicial de montaje Al tener los materiales comenzamos con el montaje de forma casi inmediata. La plataforma es una placa plástica rectangular con algunas modificaciones de tipo estético, le agregamos 2 ruedas en la parte posterior con 2 servomotores de rotación continua, presentamos dificultad para conectar los servos a las ruedas, por ende tuvimos que pegarlas con silicona, también le colocamos Fig. 4: Conexiones en la parte central delantera una rueda loca metálica, esta le permitiría al robot realizar los movimientos de forma más fluida y sin dificultades en los giros bruscos. Luego, le colocamos una protoboard y una tarjeta de Arduino en la parte superior de la plataforma, y una powerbank de 1000 mah para alimentar todo Para que no se nos presentara de nuevo el problema de la primera entrega del robot, concretamos que debiamos adquirir el sistema. una powerbank y reemplazarla por nuestra bateria de 9V y las pilas AA usadas anteriormente para así obtener mas corriente y a su vez mas potencia para el movimiento del robot y que no presentara inconvenientes con el nuevo funcionamiento del robot. Quedamos con las ganas de probar nuestro proyecto en la pista de obstaculos, ya que consideramos funcionaba de manera perfecta. Sin embargo, las medidas tomadas al respecto fueron las adecuadas.

Fig. 3: Estructura estética En la siguiente clase ya teníamos nuestra plataforma montada a espera de las directrices del profesor acerca de la programación y montaje los elementos para convertir nuestra plataforma en un robot autónomo seguidor de luz, para esto utilizamos 3 fotorresistencias y jumpers, los colocamos en la protoboard y arduino que tenemos sobre la placa con el fin de realizar un circuito con sus respectivas conexiones junto con otras resistencias de forma que se generará un divisor de tensión variable segun la luz que afecta a la fotorresistencia. Además, hicimos las conexiones a tarjeta Arduino, con las respectivas conexiones a los servomotores y estas como dicho anteriormente conectadas a las ruedas para así cuando las fotorresistencias detectaran lo que nosotros programamos (la luz), mandar la orden a las ruedas y hacerlas acelerar o frenar. Con estas 3 fotorresistencias andaba muy bien en línea recta y tambien cuando le tocaba girar, pensamos en adquirir 2 fotorresistencias mas para colocarlas a nuestro robot pero luego de hacer unas cuantas pruebas y mejorar el codigo, pudimos

B. Versión final del código

El programa del robot no tuvo mucha dificultad para ser elaborado, puesto que desde un principio usamos 3 fotorresistencias, lo cual facilitó las cosas. El programa se basa en que las fotorresistencias cumplan su función de acuerdo a la intensidad de luz que se le aplique a cada una, ya que las 3 están aisladas entre sí, lo que permite fácilmente girar a la izquierda, derecha e ir hacia el frente. Estás fotorresistencias estarían entonces conectadas a entradas analógicas del Arduino las cuales permitirían que el programa detectara mejor la variación de intensidad luminosa para que la reacción al activar los motores sea la adecuada. Si una fotorresistencia detecta una intensidad de luz que haga que esta ejerza su función de resistir desde cierto umbral estipulado de 0 a 1024, 150 en nuestro caso, entonces se ejecutara el condicional que activa el funcionamiento del motor. A continuación, se muestra las conexiones existentes en el Arduino en sus respectivos pines y el código final explicado en ciertas secciones claves.

3

centralSensorValue = analogRead(centralSensorPin); delay(10); Serial.print("Left Sensor Value: "); Serial.print(leftSensorValue); Serial.print(" - Right Sensor Value: "); Serial.print(rightSensorValue); Serial.print(" - central Sensor Value: "); Fig. 5: Conexiones al Arduino

Serial.print(centralSensorValue); Serial.println(" - Angle: ");

//ROBOT Seguidor de luz

if (rightSensorValue > 150){ se mueve el servo izquierdo

//si el sensor derecho detecta luz

# include //se asignan los pines a los sensores

myServoI.write(0);

int const leftSensorPin = A2;

myServoD.write(90);

//servo izquiero se mueve //servo derecho no se mueve

int const rightSensorPin = A1; delay(15);

int const centralSensorPin = A0; //se declaran los servos Servo myServoD; Servo myServoI;

Serial.println("right"); //para saber en que condicional estaba entrando } if (leftSensorValue > 150){ luz se mueve el servo derecho

//si el sensor izquierdo detecta

int leftSensorValue = 0; int rightSensorValue = 0;

myServoI.write(90);

int centralSensorValue = 0;

myServoD.write(180);

void setup(){ //se le asignan los pines a los servos myServoD.attach(11); myServoI.attach(10); Serial.begin(9600);

//servo izquierdo no se mueve //servo derecho se mueve

delay(15); Serial.println("left"); //para saber en que condicional estaba entrando } if (centralSensorValue > 150){ //cuando el sensor del medio dectecta luz

} myServoI.write(0); //servo izquiero se mueve

void loop(){

myServoD.write(180); //servo derecho se mueve //se leen los valores de los sensores para calibrar nuestro umbral leftSensorValue = analogRead(leftSensorPin); delay(10); rightSensorValue = analogRead(rightSensorPin); delay(10);

delay(15); Serial.println("central"); //para saber en que condicional estaba entrando }

4

if ((centralSensorValue < 150) & & (leftSensorValue < 150) & & (rightSensorValue < 150)){ //cuando no se decteta luz en ningun sensor no se mueve ningun servo

myServoI.write(90); //servo izquiero no se mueve myServoD.write(90); //servo derecho no se mueve Serial.println("no se mueve"); //para saber en que condicional estaba entrando delay(15); } }

VI. C ONCLUSIONES FINALES , LIMITACIONES Y RECOMENDACIONES

En resumen, podemos notar que el robot claramente cumplió su función de seguir la luz, completando un recorrido propuesto cualquiera pero que demuestra su buen funcionamiento en todas las direcciones cumpliendo el objetivo general y los específicos propuestos a la perfección. Las limitaciones existentes fueron muy pocas, por no decir nulas, en algún momento existieron fallos en el funcionamiento del motor, pero no tardamos en reconocerlos puesto que eran simplemente malas conexiones, sin tener esto en cuenta, todo salió de acuerdo con lo esperado. Dentro de las recomendaciones para futuras prácticas de este tipo de robot, puede ser que este se realice como primer proyecto de la asignatura, para que el estudiante entre en confianza y quiera aprender más. Cabe resaltar que la colaboración de los docentes al momento de desarrollar el proyecto fue muy provechosa para nosotros al igual que la misma experiencia. VII. A NEXOS A continuación se encuentra un link a un video para verificar el funcionamiento de nuestro robot: https://youtu.be/kB_Q5lIiKR8...


Similar Free PDFs