BIENVENIDO A ROBOTICA STAYNET "EL FUTURO ES HOY "

19/12/24

Mantis bot presentacion


  














LA MANTIS BOT  PARA SER CONTROLADO VIA BLUETOOTH 
PARTE 1(mantis en modo bluetooth)
En este tutorial, aprenderemos a hacer que la mantis bot  con control Bluetooth con  Arduino. Este se controla mediante un móvil Android que sera programado por ustedes tambien . La conexión se realizara por  Bluetooth  y manejara 4 motores  

1-Descripción general
2-Componentes necesarios
3-Ensamblaje del kit de chasis Smart Car de 4 ruedas
4-Diagrama de circuito
5-Conexión de los motores de cuatro engranajes al controlador de motor l298N.
6-Conexión de las cuatro entradas del controlador de motor L298N a la placa Arduino UNO.
7-Conexión del módulo Bluetooth (HC-05 o HC-06) a la placa Arduino
8-Conecte la conexión de alimentación de la batería
9-Subir el Sketch de Arduino
10-Cómo descargar o crear la aplicación Bluetooth mantis por app inventor  y su función
11-Conclusión

1-Descripción general

En esta descripción general del proyecto, presentamos a la Mantis bot 3 en 1 en este caso con  Bluetooth, la mantis se transforma en un vehículo robótico ademas en otros tutoriales mostraremos como un robot autonomo para esquivar obstaculas hasta otro para seguidor de linaas , La mantis es muy completa al tener las tres funciones mas importantes en robotica educativa . Lo mas lindo que todo sera creado desde  La aplicación de Android con app inventor que  sirve como interfaz principal para controlar la mantis  a través de la comunicación Bluetooth.hasta el ensamblado con sus componentes electronicos  . El control inalámbrico se extiende hasta un alcance máximo de 15 m a 30 m, lo que brinda flexibilidad y comodidad para maniobrar a la mantis 

2-Componentes necesarios

Antes de comenzar, asegúrate de haber reunido todos los componentes necesarios.Todos seran dados por Staynet

  1. Arduino Uno o placa compatible
  2. Kit de chasis impreso por staynet con  4 ruedas con motores DC
  3. Módulo controlador de motor L298N
  4. Módulo Bluetooth HC-05 o HC-06
  5. Cables puente
  6. Dos baterías recargables 18650 de 3,7 V
  7. Soporte de batería de iones de litio 18650 de 2 vías
  8. Interruptor de palanca
  9. Cable USB para programar el Arduino
  10. Destornillador y tornillos variados
  11. 4 precintos para agarre del motor 


 

3-Ensamblaje del kit de chasis Smart Car de 4 ruedas

En el artículo que presenté anteriormente se explica cómo montar el kit de chasis de coche inteligente de 4 ruedas. Se puede montar muy fácilmente. El enlace de ese artículo se menciona a continuación.el ensamblado video a continuacion . todas las piezas estan incluidas en la compra de la mantis , abajo pizas y video de ensamblado 

aca iria video ensamble 

4-Diagrama de circuito

El diagrama del circuito de la mantis bot  Bluetooth de Arduino no es complicado. Primero, descarga el diagrama del circuito. .. Use dos o tres baterías de iones de litio 18659 de 3,7 V para proporcionar energía. No puede usar una batería de 9 V( no sirve para alimentar 4 motores dc).  Si  use aparte  un portapila de 4 para la logica del arduino por separado , 

ABAJO DETALLO CONEXIONADO 













Conexión de los motores de cuatro engranajes al controlador de motor l298N.

De esta manera, conecte los cables de los motorreductores a los conectores de alimentación del motor del controlador de motor l298N.

  • Conecte los dos cables amatillos  de los  motores derecho a los terminales “OUT4” del controlador del motor L298N.
  • Conecte los dos cables verdes de los motores  derecho a los terminales “OUT3” del controlador del motor.
  • Conecte los dos cables amarillos de los motores  izquierdo a los terminales “OUT2” del controlador del motor.
  • Conecte los dos cables verde de los  motores izquierdo a los terminales “OUT1” del controlador del motor

siempre fijarse antes cada motor el sentido  de giro , esto sera explicado en un video adjunto 

 

Conexión de las cuatro entradas del controlador de motor L298N a la placa Arduino UNO.

De esta manera, conecta los pines digitales de la placa Arduino y las entradas del driver del motor L298N mediante cables puente.

  • Conecte el pin IN1 del controlador del motor al pin digital D6 en el Arduino.
  • Conecte el pin IN2 del controlador del motor al pin digital D7 del Arduino.
  • Conecte el pin IN3 del controlador del motor al pin digital D8 del Arduino.
  • Conecte el pin IN4 del controlador del motor al pin digital D9 del Arduino.

La placa Arduino está alimentada por el portapila de 4 pilas , pero podria conectase al  controlador de motor L298N de la parte de 5v 

  • Conecte el conector de salida de 5 V del controlador del motor al pin VIN del Arduino.
  • Conecte el conector GND del controlador del motor al pin GND del Arduino no olvidarse de compartir tierra .























Conexión del módulo Bluetooth (HC-05 o HC-06) a la placa Arduino

Los módulos Bluetooth Hc-05 y HC-06 se pueden aplicar al coche RC Arduino Bluetooth.






























codigo del arduino 
#include <SoftwareSerial.h>

SoftwareSerial mySerial(10, 11); // RX, TX
int motor4 = 6;
int motor5 = 7;
int motor2 = 8;
int motor3 = 9;

int estado = 0;
void setup() {
  // Open serial communications and wait for port to open:
  Serial.begin(9600);
   pinMode(motor2, OUTPUT);
   pinMode(motor3, OUTPUT);
   
   pinMode(motor4, OUTPUT);
   pinMode(motor5, OUTPUT);
  while (!Serial) {
    ; // wait for serial port to connect. Needed for native USB port only
  }


  Serial.println("Goodnight moon!");

  // set the data rate for the SoftwareSerial port
  mySerial.begin(9600);
  mySerial.println("Hello, world?");
}

void loop() { // run over and over
  if (mySerial.available()) {
    
    estado = mySerial.read();
        switch(estado)
  {
     case 'a': //atras
    digitalWrite(motor2, LOW);
    digitalWrite(motor3, HIGH);
    digitalWrite(motor4,HIGH);
    digitalWrite(motor5,LOW);
    
    break;
    case 'b':  //adelante
    digitalWrite(motor2, HIGH);
    digitalWrite(motor3, LOW);
    digitalWrite(motor4, LOW);
    digitalWrite(motor5, HIGH);
    
    break;
     case 'c'://derecha 
    digitalWrite(motor2, HIGH);
    digitalWrite(motor3, LOW);
    digitalWrite(motor4, HIGH);
    digitalWrite(motor5, LOW);
    
    break;
    case 'd'://izquierda 
    digitalWrite(motor2, LOW);
    digitalWrite(motor3, HIGH);
    digitalWrite(motor4, LOW);
    digitalWrite(motor5,HIGH);
    
    break;   
    case 'e': //parar 
    digitalWrite(motor2, LOW);
    digitalWrite(motor3, LOW);
    digitalWrite(motor4, LOW);
    digitalWrite(motor5,LOW);
    
    break;   
  }    
  
 
  }
  if (Serial.available()) {
  
     estado = mySerial.read();
        switch(estado)
  {
     case 'a':
    digitalWrite(motor2, LOW);
    digitalWrite(motor3, HIGH);
    digitalWrite(motor4,HIGH);
    digitalWrite(motor5,LOW);
    
    break;
    case 'b':
    digitalWrite(motor2, HIGH);
    digitalWrite(motor3, LOW);
    digitalWrite(motor4, LOW);
    digitalWrite(motor5, HIGH);
    
    break;
     case 'c':
    digitalWrite(motor2, HIGH);
    digitalWrite(motor3, LOW);
    digitalWrite(motor4, HIGH);
    digitalWrite(motor5, LOW);
    
    break;
    case 'd':
    digitalWrite(motor2, LOW);
    digitalWrite(motor3, HIGH);
    digitalWrite(motor4, LOW);
    digitalWrite(motor5,HIGH);
    
    break;   
    case 'e':
    digitalWrite(motor2, LOW);
    digitalWrite(motor3, LOW);
    digitalWrite(motor4, LOW);
    digitalWrite(motor5,LOW);
    
    break;   
    
  }
  }
}
aca abajo les presento como programe la app para la mantis bot en app inventor 


























































Conclusión

Este proyecto demuestra con éxito la implementación de un automóvil controlado por Bluetooth utilizando Arduino y una aplicación móvil. La integración de componentes de hardware y desarrollo de software muestra una aplicación práctica de la comunicación inalámbrica para fines de control remoto.ideal para colegios o todo aquel que quiera incursionar en el mundo de la robotica  El proyecto sirve como base para una mayor exploración en robótica, IoT y desarrollo de aplicaciones móviles.


2/12/24

Control de un servomotor con Arduino

      ARDUINO


Control de un servomotor con Arduino

esquema de conexión en arduino de un servo controlado por un potenciométro

Funcionamiento de un servomotor

Los servomotores son actuadores de pequeño tamaño que se utilizan para controlar los juguetes RC de coches, barcos, aviones, etc. También son utilizados por los estudiantes de ingeniería para la creación de prototipos en robótica, creando brazos robóticos, robots de inspiración biológica, robots humanoides, etc.

Dentro de uno de estos pequeños servos de aficionados hay cuatro componentes principales, un motor DC, una caja de engranajes, un potenciómetro y un circuito de control. El motor DC es de alta velocidad y bajo par, pero la caja de engranajes reduce la velocidad a unas 60 RPM y al mismo tiempo aumenta el par.

Control de un servomotor con Arduino- Arduino

Un servomotor se controla enviando una serie de pulsos a través de la línea de señal. La frecuencia de la señal de control debe ser de 50Hz o un pulso debe ocurrir cada 20ms. El ancho del pulso determina la posición angular del servo y este tipo de servos pueden normalmente rotar 180 grados (tienen un límite físico de recorrido).

Control de un servomotor con Arduino- Arduino

Control de un servomotor con Arduino- ArduinoEstos servos tienen tres cables, dos de ellos son la alimentación de corriente (Marrón o negro se conecta tierra y el rojo a V+) y el otro que generalmente es de color naranja o blanca, aunque puede variar según modelo o marca, es el cable de control que conectaremos a la placa de Arduino. Si los servos son grandes o vamos a usara varios se deben conectar a una fuente externa de alimentación.

El esquema de conexión sería el que muestra la figura:

Esquema conexión básico

Control de un servomotor con Arduino- Arduino

Para hacerlos funcionar lo más fácil es usar la librería Servo.h que incorpora Arduino. Solo tendremos que definir el objeto servo, y usando la función attach() definir el pin al que el servo está conectado. Luego, usando la función write() simplemente establecemos la posición del servo de 0 a 180 grados. Con esta librería podemos manejar hasta 12 servos al mismo tiempo o 48 servos usando la placa Arduino Mega.

Veamos un par de sketches muy sencillos, usando ambos el esquema de conexión de arriba.

Sketches básicos servomotor

#include <Servo.h>
Servo mi_servo;  // crea el objeto servo en mi caso lo llamo mi_servo
int servoPin=9; //Pin de conexión del servo

void setup() {
  mi_servo.attach(servoPin);  // conectar el servo al número de pin usado
}
void loop() {
  mi_servo.write(0);  // movemos el servo 0º
  delay(1000);
  
  mi_servo.write(90);  // movemos el servo 90º            
  delay(500); 
  
  mi_servo.write(135); // movemos el servo 135º             
  delay(500);
  
  mi_servo.write(180);         // movemos el servo 180º     
  delay(1500);                     

-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
#include <Servo.h>
int servoPin = 9;
Servo miservo;
int angle = 0;  // posición del servo en grados
void setup() {
    miservo.attach(servoPin);
}

void loop() {

    // escanear de 0 a 180 grados
    for(angle = 0; angle < 180; angle++) {
        miservo.write(angle);
        delay(15);
    }
    
    // ahora escanea de 180 a 0 grados
    for(angle = 180; angle > 0; angle--) {
        miservo.write(angle);
        delay(15);
    }
}

Servomotor controlado por un potenciómetro

Ahora vamos a realizar otro ejemplo, moveremos el servo moviendo un potenciómetro de 10k. el potenciómetro lo conectaremos así: los pines laterales uno a GND y el otro a 5V y el pin central a un pin analógico. Veamos el esquema de conexión y el sketch:

Control de un servomotor con Arduino- Arduino
#include <Servo.h>

int potPin = 0;
int servoPin = 9;
Servo servo;

void setup() {
    servo.attach(servoPin);
}

void loop() {
    int lectura = analogRead(potPin);
    int angulo = map(lectura, 0, 1023, 0, 180);
    servo.write(angulo);
}

En la función de loop(), empezamos leyendo el valor del pin analógico A0, que es donde hemos conectado el potenciómetro.

Esto nos da un valor de entre 0 y 1023. Pero necesitamos reducirlo, ya que el servo sólo puede girar 180 grados. Una forma de hacerlo es usar la función map() de Arduino que re-mapea un número de un rango a otro. Así que, debajo de la línea cambia la lectura para representar el ángulo entre 0 y 180 grados.

Finalmente, usamos el comando write() que le dice al servo que actualice su posición al ángulo seleccionado por el potenciómetro

INSTALACION DEL ENTORNO DE TRABAJO ARDUINO

                         STAYNET  YERBA BUENA                                 Comprar Kit de inicio para arduino  Kit Arduino Para poder seg...