Robot seguidor de linea paso a paso

Sdílet
Vložit
  • čas přidán 12. 07. 2024
  • Tutorial completo :
    www.taloselectronics.com/kit-...
    Codigo:
    github.com/TalosElectronics1/...
    www.taloselectronics.com
    / taloselectronics
  • Věda a technologie

Komentáře • 75

  • @oskrbustamante7718
    @oskrbustamante7718 Před 4 lety

    Lo felicito muy bueno, muy bueno. Oscar Bustamante lo saluda. Cantón Pasaje Prov. El Oro. Ecuador.

  • @genaroyepez4019
    @genaroyepez4019 Před rokem +1

    funciona muy bien, al principio no seguia en ningun momento la linea, pero solo modifique lo que fue esta parte del codigo,
    estaba asi: en el archivo Robot_Seguidor.ino
    #include "Robot_Seguidor.h"
    Robot_Seguidor Robot(13,12,11,10,8,9,2,3,4,5,6);
    inverti solamente los sensores:
    quedo asi:
    #include "Robot_Seguidor.h"
    Robot_Seguidor Robot(13,12,11,10,8,9,6,5,4,3,2);
    espero les ayude!

  • @ELECTRONICAPROGRAMACIONYROBOTS

    Buen video. 🚗. 👍

  • @anjhyflores6937
    @anjhyflores6937 Před 4 lety

    Hola disculpe no es necesario modificar algo en el codigo ademas del PID?
    Y como puedo cambiar la velocidad de los motores?

  • @antoniodiazruiz4152
    @antoniodiazruiz4152 Před 6 lety

    por cierto cuales soin lo materiales principales ,,, esta interesantre

  • @matiasibarra115
    @matiasibarra115 Před 6 lety +1

    Hola conecte los 5 sensores TCRT5000 y me sale con una luz verde de ambos lados, en vez de verde y rojo , es normal?

  • @mariodanielhuayhuallacho6857

    hola al momento de compilar el programa en arduino solo se sube el que es de .ino ?

  • @ZenonAppletree
    @ZenonAppletree Před 4 lety

    Para cambiar los valores de las constantes en que clase se declaran?

  • @MarioBau10
    @MarioBau10 Před 5 lety

    Buenas noches, quisiera saber cómo darle más velocidad si fueran tan amables de los agradecería

  • @jonnyposthue1385
    @jonnyposthue1385 Před 6 lety

    hola disculpa la molestia pero al momento de calibrar los sensores para que se apague el led verde en la linea blanca como le hago hice lo mismo que el video y nada sigue igual no se apaga en la linea siempre esta prendido ayuda porfavor...
    espero respuestas saludos...

  • @makalijustiniano536
    @makalijustiniano536 Před 6 lety

    solo m funciona un lado de la rueda tu que crees q pudo pasar?? ayuda porfa

  • @irvingleonardomartinezorne9270

    Amigo, estoy haciendo este proyecto pero con 2 sensores CNY70 y la entrada siempre me marca un 1 no importa en qué superficie tenga el sensor. ¿Qué puedo hacer?

  • @victorcamarillo7460
    @victorcamarillo7460 Před 6 lety

    que tipo de sensor utiliza

  • @alejandrohernandezhernande4163

    que le cambiaria al codigo para solo usar dos sensores

  • @carlossalazar4510
    @carlossalazar4510 Před 6 lety

    se pude con 3 sensores??

  • @oscarmorales6201
    @oscarmorales6201 Před 6 lety +1

    La conexión del puente H no me funciona , puedes ayudarme?

  • @antoniovarelas4491
    @antoniovarelas4491 Před rokem

    Hola, buenos días. Cómo sería el código para seguir la línea blanca en vez de la línea negra?

  • @abrahamrodriguez2526
    @abrahamrodriguez2526 Před 6 lety

    por que los motoreductores hacen un ruido y no giran, los tengo que girar manualmente para que respondan, pero cuando hace una vuelta y los dos motores deben girar ambos se traban?

  • @dezaelhdzm4498
    @dezaelhdzm4498 Před 3 měsíci

    Hay forma de hacerlo con 4 sensores y como cambiaría el código?

  • @frailevillon1806
    @frailevillon1806 Před 6 lety

    Una pregunta...tu crees que a Este proyecto se le podria colocar una mini bateria de 30 a 35 voltios para ya no colocarle baterias y darle mas potencia...seria esto posible...?

  • @DavidHernandez-cz9vf
    @DavidHernandez-cz9vf Před 5 lety

    ¿Si me podría mandar el código completo?

  • @CRCuama
    @CRCuama Před 6 lety +2

    Hola buenas,disculpa la molestia, como inviertes los colores,me refiero a que siga la linea blanca y el resto de la pista sea negra.Gracias por su respuesta.

  • @carlosmendozaarevalo5152

    Saludos, muy bueno el proyecto. Al descargar el codigo, quisiera saber si le doy en "subir" a las 9 codificaciones o solo a la primera. Muchas gracias

  • @leonardoosorio7055
    @leonardoosorio7055 Před 6 lety

    Hola tengo un problemita con mi carro lo que pasa es que ya lo.arme al pie de.la.letra pero cuando lo controlo cuando le.doy ala flecha para que avance adelante se mueve hacia la izquierda está como invertido como puedo solucionarlo?

  • @MarioBau10
    @MarioBau10 Před 5 lety

    Tengo una duda ya arme todo y los sensores están calibrados el detalles que el sensor izquierdo no apaga el motor derecho que podría ser

  • @TutocarloCV
    @TutocarloCV Před 6 lety

    nice

  • @noxux_gg
    @noxux_gg Před 6 lety

    Hola una pregunta en arduino me dice error de compilacion .
    Descargue todos los archivos sin omitir ninguno y aun asi me lanza errores

    • @Dany-ye6ps
      @Dany-ye6ps Před 3 lety

      El problema es que no tienes descargada la clase

  • @urielmorales4116
    @urielmorales4116 Před 6 lety

    No me detecta los sensores que hago?

  • @gkchon
    @gkchon Před 6 lety +1

    Lo conecte a un L298N y el Test del motor funciona correctamente, descargue todas las carpetas del programa seguidor de linea y al compilar el programa no marca ningun error pero el carrito solo anda para adelante no hace ningun cambio tendra algun problema que lo hice con el l298? Saludos y gracias

    • @gkchon
      @gkchon Před 6 lety

      Talos Electronics gracias ya encontré el error Arduino Uno que me dieron tenía malos unos pines le puse un mega que tenía y funcionó correctamente Gracias

    • @davidrodriguezgallardo8387
      @davidrodriguezgallardo8387 Před 5 lety

      @@gkchon Cómo se haría con un l298n?

  • @dianamarianelaponce9995

    Hola te consulto como sería la programación con 4 sensores y para que línea sobre línea blanca y toda la pista negra? Gracias

  • @jeffersongalvis013
    @jeffersongalvis013 Před 4 lety

    Una pregunta, como le hago para descargar el código??

  • @tmpopular-yt5616
    @tmpopular-yt5616 Před 6 lety

    Olle si me puedes pasar el código ya que el que esta en la descripción esta mal.

  • @luisrodrigogomezperez8692

    Gracias, podrian ayudar con el codigo por fa.

  • @alisonvanesa7755
    @alisonvanesa7755 Před 4 lety +1

    COMO HAGO PARA SUBIR TODO EL CODIGO AL ARDUINO

  • @carloscastro118
    @carloscastro118 Před 5 lety

    Suficiente con 2 módulos TCRT500...

  • @alanisyasirendayrojasjaime9885

    Buenas, ya tengo todo armado y los sensores bien calibrados, pero al momento de probarlo, no sigue la linea como tal, ¿alguien podría ayudarme?

  • @duvanmartinez9085
    @duvanmartinez9085 Před 10 měsíci

    Tiene la imagen del esquema de montaje por favor????

  • @carlospalacios243
    @carlospalacios243 Před 6 lety

    Buen trabajo, pero cuando corro el programa solo funciona una llanta y la otra no, podrías ayudarme?

  • @estayguillermo3526
    @estayguillermo3526 Před 5 lety

    hola buenas el codigo no funciona sale error , podrias pasarme el codigo ?

  • @MrDimmuborgi
    @MrDimmuborgi Před 5 lety

    Compre el kit, pero el cable USB venía despegado y veo que va conectado 2 cables a tierra y 1 a corriente? Nesesito ayuda x.x no lo hago funcionar.

    • @MrDimmuborgi
      @MrDimmuborgi Před 5 lety

      @@taloselectronics3553 muy bien me pongo en contacto :)

  • @osvaldonoriegamartin8821

    ya arme el carro y todo bien solo que no gira hacia la derecha que podria ser?

  • @sandrajaramillo3822
    @sandrajaramillo3822 Před 6 lety

    que sensore son

    • @luisrodrigogomezperez8692
      @luisrodrigogomezperez8692 Před 6 lety

      me parece es es: (Módulo Sensor óptico reflexivo TCRT5000), pero mas economico e igual sirve el sensor CNY70.. es un cubito de 4 patitas.

  • @simonvalencia5745
    @simonvalencia5745 Před 4 lety

    Donde consigo el material?

  • @carlosrodriguez8306
    @carlosrodriguez8306 Před 6 lety +1

    me puedes pasar el diagrama de como conectar los sensores porfavor o como conectarlos nomas al arduino sin protobot

  • @Dany-ye6ps
    @Dany-ye6ps Před 3 lety

    Como descargamos la clase "Base_Robot.h" ?

    • @taloselectronics3553
      @taloselectronics3553  Před 3 lety +1

      Hola Dany te comparto el link de nuestra pagina ahi podras encontrar toda la informacion, www.taloselectronics.com/blogs/tutoriales/faq-kit-seguidor-de-linea

  • @eduurodriix6145
    @eduurodriix6145 Před 6 lety

    olle bro por que cuando el codigo del programa lo verifico me dice error compilando para la tarjeta arduino

    • @eduurodriix6145
      @eduurodriix6145 Před 6 lety +1

      #include //Permite utilizar los comandos de Arduino
      #include "Base_Robot.h"
      void Base_Robot::Inicializar_Robot()
      {
      Motor_1.Inicializar_Motor();
      Motor_2.Inicializar_Motor();
      }
      void Base_Robot::Atras(int Velocidad_1, int Velocidad_2)
      {
      Motor_1.Atras(Velocidad_1);
      Motor_2.Atras(Velocidad_2);
      }
      void Base_Robot::Adelante(int Velocidad_1, int Velocidad_2)
      {
      Motor_1.Adelante(Velocidad_1);
      Motor_2.Adelante(Velocidad_2);
      }
      void Base_Robot::Stop()
      {
      Motor_1.Stop();
      Motor_2.Stop();
      }
      #include "Motor_DC.h"
      class Base_Robot
      {
      private:
      public:
      Motor_DC Motor_1;
      Motor_DC Motor_2;
      Base_Robot(int Pin_Motor_1A, int Pin_Motor_1B, int PWM_1, int Pin_Motor_1C, int Pin_Motor_1D, int PWM_2): Motor_1(Pin_Motor_1A, Pin_Motor_1B, PWM_1), Motor_2(Pin_Motor_1C, Pin_Motor_1D, PWM_2) {}
      void Inicializar_Robot();
      void Adelante(int Velocidad_1, int Velocidad_2);
      void Atras(int Velocidad_1, int Velocidad_2);
      void Stop();
      };
      #include //Permite utilizar los comandos de Arduino
      #include "Motor_DC.h"
      void Motor_DC::Inicializar_Motor()
      {
      pinMode(A, OUTPUT);
      pinMode(B, OUTPUT);
      pinMode(Pwm, OUTPUT);
      }
      void Motor_DC::Atras(int Velocidad)
      {
      analogWrite(Pwm, Velocidad );
      digitalWrite(A, HIGH);
      digitalWrite(B, LOW);
      }
      void Motor_DC::Adelante(int Velocidad)
      {
      analogWrite(Pwm, Velocidad );
      digitalWrite(A, LOW);
      digitalWrite(B, HIGH);
      }
      void Motor_DC::Stop()
      {
      analogWrite(0, Pwm);
      digitalWrite(A, LOW);
      digitalWrite(B, LOW);
      }
      class Motor_DC
      {
      private:
      int A;
      int B;
      int Pwm;
      public:
      Motor_DC(int a, int b, int pwm): A(a), B(b), Pwm(pwm) {} //Constructor
      void Inicializar_Motor();
      void Adelante(int Velocidad);
      void Atras(int Velocidad);
      void Stop();
      };
      #include "Robot_Seguidor.h"
      #include //Permite utilizar los comandos de Arduino
      void Robot_Seguidor::Inicializar()
      {
      Robot.Inicializar_Robot();
      Sensor_1.Inicializar();
      Sensor_2.Inicializar();
      Sensor_3.Inicializar();
      Sensor_4.Inicializar();
      Sensor_5.Inicializar();
      }
      void Robot_Seguidor::Modo_Seguidor(int Kp, int Ki, int Kd, int Velocidad)
      {
      Lectura_de_sensores();
      P = Error;
      I = I + Anteriror_I;
      D = Error - Error_Anterior;
      PID = (Kp * P) + (Ki * I) + (Kd * D);
      Anteriror_I = I;
      Error_Anterior = Error;
      int Velocidad_motor_izquierdo = Velocidad - PID;
      int Velocidad_motor_derecho = Velocidad + PID;
      constrain(Velocidad_motor_izquierdo, 0, 255);
      constrain(Velocidad_motor_derecho, 0, 255);
      Robot.Adelante(Velocidad_motor_izquierdo, Velocidad_motor_derecho);
      }
      void Robot_Seguidor::Lectura_de_sensores()
      {
      sensor[0] = Sensor_1.Leer_sensor();
      sensor[1] = Sensor_2.Leer_sensor();
      sensor[2] = Sensor_3.Leer_sensor();
      sensor[3] = Sensor_4.Leer_sensor();
      sensor[4] = Sensor_5.Leer_sensor();
      //Detectar la desviacion ("Error") del seguidor de linea
      if ((sensor[0] == 0) && (sensor[1] == 0) && (sensor[2] == 0) && (sensor[3] == 0) && (sensor[4] == 0))
      {
      Error = Error;
      }
      else if ((sensor[0] == 0) && (sensor[1] == 0) && (sensor[2] == 0) && (sensor[3] == 0) && (sensor[4] == 1))
      Error = 4;
      else if ((sensor[0] == 0) && (sensor[1] == 0) && (sensor[2] == 0) && (sensor[3] == 1) && (sensor[4] == 1))
      Error = 3;
      else if ((sensor[0] == 0) && (sensor[1] == 0) && (sensor[2] == 0) && (sensor[3] == 1) && (sensor[4] == 0))
      Error = 2;
      else if ((sensor[0] == 0) && (sensor[1] == 0) && (sensor[2] == 1) && (sensor[3] == 1) && (sensor[4] == 0))
      Error = 1;
      else if ((sensor[0] == 0) && (sensor[1] == 0) && (sensor[2] == 1) && (sensor[3] == 0) && (sensor[4] == 0))
      Error = 0;
      else if ((sensor[0] == 0) && (sensor[1] == 1) && (sensor[2] == 1) && (sensor[3] == 0) && (sensor[4] == 0))
      Error = -1;
      else if ((sensor[0] == 0) && (sensor[1] == 1) && (sensor[2] == 0) && (sensor[3] == 0) && (sensor[4] == 0))
      Error = -2;
      else if ((sensor[0] == 1) && (sensor[1] == 1) && (sensor[2] == 0) && (sensor[3] == 0) && (sensor[4] == 0))
      Error = -3;
      else if ((sensor[0] == 1) && (sensor[1] == 0) && (sensor[2] == 0) && (sensor[3] == 0) && (sensor[4] == 0))
      Error = -4;
      }
      #include "Base_Robot.h"
      #include "Sensor_TCRT5000.h"
      class Robot_Seguidor
      {
      private:
      Base_Robot Robot;
      Sensor Sensor_1;
      Sensor Sensor_2;
      Sensor Sensor_3;
      Sensor Sensor_4;
      Sensor Sensor_5;
      int sensor[5];
      float Error = 0, P = 0, I = 0, D = 0, PID = 0;
      float Error_Anterior = 0, Anteriror_I = 0;
      public:
      Robot_Seguidor(int Pin_Motor_1A,
      int Pin_Motor_1B,
      int PWM_1,
      int Pin_Motor_1C,
      int Pin_Motor_1D,
      int PWM_2,
      int PinS1,
      int PinS2,
      int PinS3,
      int PinS4,
      int PinS5)
      : Robot(Pin_Motor_1A, Pin_Motor_1B, PWM_1, Pin_Motor_1C, Pin_Motor_1D, PWM_2), Sensor_1(PinS1), Sensor_2(PinS2), Sensor_3(PinS3), Sensor_4(PinS4), Sensor_5(PinS5) {}
      void Inicializar();
      void Lectura_de_sensores();
      void Modo_Seguidor(int kP, int KI, int KD, int Velocidad);
      };
      /*
      Talos Electronics
      Tgo. Rafael Lozano Rolon
      Modificado por ultima vez 15 Diciembre 2016
      Para inicializar el Robot se necesita definir los pines de la siguiente manera
      Robot_Seguidor Nombre_Robot(In1,In2,Vss1-2,IN3,IN4,Vss3-4,S1,S2,S3,S4,S5,S6)
      /////////////////Parametros///////////////
      / Puente H /
      / Parametro -> Numero de pin /
      / IN1 -> 2 /
      / In2 -> 7 /
      / Vss1-2 -> 1 /
      / In3 -> 10 /
      / In4 -> 15 /
      / Vss3-4 -> 9 /
      / ----------------------------------------/
      / Modulo seguidor de linea /
      / Parametro -> Numero de pin /
      / S1 -> Salida 1 del modulo /
      / seguidor de linea /
      / S2 -> Salida 2 .. /
      / S3 -> Salida 3 ... /
      / S4 -> Salida 4 .... /
      / S5 -> Salida 5 ..... /
      / S6 -> Salida 6 ...... /
      //////////////////////////////////////////
      */
      #include "Robot_Seguidor.h"
      Robot_Seguidor Robot(13, 12, 11, 10, 9, 8, 2, 3, 4, 5, 6);
      void setup()
      {
      Robot.Inicializar();
      }
      void loop()
      {
      Robot.Modo_Seguidor(12, 0.25, 10, 170); //(int kP,int KI,int KD,int Velocidad)
      }
      #include //Permite utilizar los comandos de Arduino
      #include "Sensor_TCRT5000.h"
      void Sensor::Inicializar()
      {
      pinMode(Pin_sensor, INPUT);
      }
      int Sensor::Leer_sensor()
      {
      return digitalRead(Pin_sensor);
      }
      class Sensor
      {
      private:
      int Pin_sensor;
      public:
      Sensor(int pin): Pin_sensor(pin) {} //Constructor
      void Inicializar();
      int Leer_sensor();
      };

    • @eduurodriix6145
      @eduurodriix6145 Před 6 lety

      se supone que ese es el codigo pero me marca muchos errores me puedes pasar el bueno porfavor

    • @eduurodriix6145
      @eduurodriix6145 Před 6 lety

      ya te envie el mensaje bro por que aun tengo muchos PRoblemas

  • @carlospalacios243
    @carlospalacios243 Před 6 lety

    El código no me compila, podrías pasarme el código completo en un bloc de notas?

    • @carlospalacios243
      @carlospalacios243 Před 6 lety

      muchas gracias :3

    • @carlospalacios243
      @carlospalacios243 Před 6 lety

      Hice todas las conecciones tal y como esta en el diagrama y solo se mueve una llanta, podrías ayudarme?

  • @jhonnyalexanderriveracano4520

    Hola, me podrían hacer el favor de pasarme el diagrama, para poder ver claramente en que sitios de la protoboard conectar los puntos, es que en el vídeo no se ve muy claro, muchas gracias.

    • @alexalberto79
      @alexalberto79 Před 6 lety

      por que no haces el tuto para el kit 3n1 :,(

    • @jhonnyalexanderriveracano4520
      @jhonnyalexanderriveracano4520 Před 6 lety

      • 1 Kit chasis de carro con tres ruedas (Sin porta batería)
      • 1 Cable con switch
      • 1 Arduino UNO Compatible
      • 1 Cable USB para Arduino UNO
      • 1 Cable micro USB
      • 2 Baterías de respaldo Power Bank 5V 2600mAh
      • 1 Puente H L293D
      • 2 Protoboard 170 Puntos
      • 4 Separadores Nylon H-H M3x8 mm
      • 17 Tornillos M3x6 mm
      • 4 Separadores Latón H-H M3x8 mm
      • 3 Tornillos M3x10 mm
      • 3 Tuercas M3
      • 1 Sensor ultrasónico HC-SR04
      • 2 Módulos sensor óptico reflectivo TCRT5000
      • 1 Modulo Bluetooth HC-05
      • 12 Cables Dupont Macho A Macho De 10 cm
      • 9 Cables Dupont Macho A Macho de 20 cm
      • 7 Cables Dupont Macho Hembra de 20 cm
      • 2 Sujetadores de acrílico transparente de 3 mm
      Me podrian decir si esta es la lista de materiales, para hacer este seguidor??

    • @jhonnyalexanderriveracano4520
      @jhonnyalexanderriveracano4520 Před 6 lety

      www.taloselectronics.com/producto/kit-para-armar-robot-3-en-1-para-arduino-tutorial-codigo-app/
      Este link es el que necesito para el 3en1

  • @noraarlette565
    @noraarlette565 Před 5 lety

    El diagrama no es el mismo que tienen en el video al de la página y su programa no agarra bien

    • @jesusjairsilvalopez3692
      @jesusjairsilvalopez3692 Před 5 lety

      @@taloselectronics3553 una forma de como contactarte por facebook o por cualquier otra red social