Ir al contenido principal

Entradas

Mostrando entradas de septiembre, 2023

L298N y TCRT5000

  Conexión y programa de dos motores controlados con un puente H L298N y con dos sensores infrarrojos TCRT5000 Código //DECLARACION MOTOR A CON L298N const int ENA=9; const int IN1=8; const int IN2=7; //MOTOR B const int ENB=3; const int IN3=4; const int IN4=5; //PUEDES MANIPULAR VELOCIDAD ENTRE 0-255 int vel=200; //Sensores infrarrojos TCRT5000 const int senDer=10; const int senIzq=13; void setup() {   pinMode(ENA,OUTPUT);   pinMode(IN1,OUTPUT);   pinMode(IN2,OUTPUT);   pinMode(ENB,OUTPUT);   pinMode(IN3,OUTPUT);   pinMode(IN4,OUTPUT);   pinMode(senDer,INPUT);   pinMode(senIzq,INPUT); } void loop() {   if(digitalRead(senIzq)==1 && digitalRead(senDer)==1){     avanzar();   }   if(digitalRead(senIzq)==0){     detenerse();     reversa();     delay(2000);     giroDer();     delay(2000);   }    } void avanzar(){   analogWrite(ENA,vel);   di...

TCRT5000 y L293D

Conexión y programa de dos motores controlados con un puente H L293D y con dos sensores infrarrojos TCRT5000 Código de programación: //DECLARAMOS LOS PINES DEL MOTOR A const int IN1 = 3; const int IN2 = 5; //DECLARAMOS PINES DEL MOTOR B const int IN3 = 6; const int IN4 = 9; //AJUSTE DE VELOCIDAD int vel = 150; //DECLARAMOS SENSORES INFRARROJOS const int senDer = 10; const int senIzq = 13; void setup() {   pinMode(IN1, OUTPUT);   pinMode(IN2, OUTPUT);   pinMode(IN3, OUTPUT);   pinMode(IN4, OUTPUT);   pinMode(senDer, INPUT);   pinMode(senIzq, INPUT); } void loop() {   if (digitalRead(senDer) == HIGH && digitalRead(senIzq) == HIGH) {     avanzar();   }   if (digitalRead(senIzq) == LOW) {     frenar();     reversa();     delay(2000);     giroDer();     delay(2000);   } } void avanzar() {   analogWrite(IN1, LOW);   analogWrite(IN2, vel);   analogWrite(IN3,...

Operadores

  En Arduino, al igual que en otros lenguajes de programación, puedes utilizar una variedad de operadores para realizar diversas operaciones matemáticas, lógicas y de comparación. Aquí tienes una lista de algunos de los operadores más comunes en Arduino: Operadores Aritméticos : + (Suma) - (Resta) * (Multiplicación) / (División) % (Módulo, devuelve el residuo de una división) Operadores de Comparación : == (Igual a) != (Diferente de) < (Menor que) > (Mayor que) <= (Menor o igual que) >= (Mayor o igual que) Operadores Lógicos : && (AND lógico, se utiliza para combinar condiciones y ambas deben ser verdaderas) || (OR lógico, se utiliza para combinar condiciones y al menos una debe ser verdadera) ! (NOT lógico, invierte el valor de una condición) Operadores de Incremento y Decremento : ++ (Incremento, aumenta el valor de una variable en 1) -- (Decremento, disminuye el valor de una variable en 1) Operadores de Asignación : = (Asignación, asigna un v...

Programación de Puente H L298N

 Revisa el siguiente programa de 2 motores manipulados por el puente H L298N, siguiendo la conexión del diagrama anterior. Termina las funciones restantes como reversa, giro a la izquierda, derecha y cualquier función que te sea útil para tu estrategia.

Sistema de puntación

 S istema de puntuación en un combate de Mini Sumo: Victoria por K.O. (Knockout) : Si un robot logra empujar al oponente fuera del área de combate o hace que cualquier parte del cuerpo del oponente toque el suelo, se considera una victoria instantánea y se otorgan dos puntos al robot ganador. Esto a menudo se llama "K.O." y suele ser la forma más rápida de ganar un combate. Victoria por Decisión de los Jueces : Si el tiempo límite del combate se agota y ninguno de los robots ha sido eliminado por K.O., los jueces pueden tomar una decisión basada en diversos criterios, como la agresividad, la estrategia y el control del ring. El robot que los jueces consideren que tuvo un mejor rendimiento gana el combate y un punto, mientras que el perdedor recibe 0 puntos. Empate : En algunos casos, si los jueces no pueden determinar un ganador debido a un rendimiento similar de ambos robots, el combate puede declararse como un empate y se otorgan 1 punto a cada robot.