este es el controlador de motor l298 [ena, in1, in2- motor A], [enb, in3, in4- motor B], ena &enb son para el control de velocidad del motor A y el motor B.
He proporcionado una explicación detallada del código, sigo el código y hago el circuito. Antes de encender la fuente de alimentación, asegúrese de haber conectado a tierra todos los componentes correctamente.
Código
hidráulico.ino Arduino
// 1er y 2do controlador de motor es para el control ARM // 3er controlador de motor es para la parte LOCOMOTORA // 1er controlador de motor [BASE (2,3) Y HOMBRO (4,7)] int m1IN1 =2; // in1int m1IN2 =3; // in2int m1IN3 =4; // in3int m1IN4 =5; // in4int m1ENA =6; // para el control de velocidad, el control de velocidad no se usa aquí, así que manténgalo ALTO cuando esté en movimiento y hágalo BAJO para detener el motorint m1ENB =7; // para el control de velocidad, el control de velocidad no se usa aquí, así que manténgalo ALTO cuando esté en movimiento y hágalo BAJO para detener el motor // Controlador del 2do motor [CODO (8,9) Y PINZA (12,13)] int m2IN1 =8; // in1int m2IN2 =9; // in2int m2IN3 =10; // in3int m2IN4 =11; // in4int m2ENA =12; // para el control de velocidad, el control de velocidad no se usa aquí, así que manténgalo ALTO cuando esté en movimiento y hágalo BAJO para detener el motorint m2ENB =13; // para el control de velocidad, el control de velocidad no se usa aquí, así que manténgalo ALTO cuando esté en movimiento y hágalo BAJO para detener el motor // Controlador del tercer motor [CAR (INI, IN2) =RIGHT (IN3, IN4) =LEFT] int m3IN1 =14; // in1 14- Pin A0 en arduinoint m3IN2 =15; // in2 15-A1int m3IN3 =16; // in3 16-A2int m3IN4 =17; // in4 17-A3int m3ENA =18; // ena 18-A4, aquí puedes usar el control de velocidad para controlar la velocidad de la parte de la locomotora, para eso tienes que usar analogWrite () en lugar de digitalWrite () int m3ENB =19; // esb 19-A5, aquí puedes usar el control de velocidad para controlar la velocidad de la parte de la locomotora, para eso tienes que usar analogWrite () en lugar de digitalWrite () void setup () {pinMode (m1IN1, OUTPUT); pinMode (m1IN2, SALIDA); pinMode (m1IN3, SALIDA); pinMode (m1IN4, SALIDA); pinMode (m2IN1, SALIDA); pinMode (m2IN2, SALIDA); pinMode (m2IN3, SALIDA); pinMode (m2IN4, SALIDA); pinMode (m1ENA, SALIDA); pinMode (m1ENB, SALIDA); pinMode (m2ENA, SALIDA); pinMode (m2ENB, SALIDA); pinMode (m3IN1, SALIDA); pinMode (m3IN2, SALIDA); pinMode (m3IN3, SALIDA); pinMode (m3IN4, SALIDA); pinMode (m3ENA, SALIDA); pinMode (m3ENB, SALIDA); Serial.begin (9600);} bucle vacío () {char ip ='0'; while (Serial.available ()> 0) // comprobar si el puerto serie está recibiendo algún valor del hc05 o no {ip =Serial.read (); // lee los datos del puerto serie delay (10); } switch (ip) {case '6':// HOMBRO ARRIBA digitalWrite (m1IN3, HIGH); digitalWrite (m1IN4, BAJO); escritura digital (m1ENA, ALTA); escritura digital (m1ENB, ALTA); descanso; case '5':// HOMBRO ABAJO digitalWrite (m1IN3, LOW); escritura digital (m1IN4, ALTA); escritura digital (m1ENA, ALTA); escritura digital (m1ENB, ALTA); descanso; case '1':// CODOS ARRIBA digitalWrite (m2IN3, HIGH); escritura digital (m2IN4, BAJA); escritura digital (m2ENA, ALTA); escritura digital (m2ENB, ALTA); descanso; case '2':// CODO ABAJO digitalWrite (m2IN3, LOW); escritura digital (m2IN4, ALTA); escritura digital (m2ENA, ALTA); escritura digital (m2ENB, ALTA); descanso; case '8':// CONTRATO GRIP digitalWrite (m2IN1, HIGH); escritura digital (m2IN2, BAJA); escritura digital (m2ENA, ALTA); escritura digital (m2ENB, ALTA); descanso; case '7':// GRIP EXPAND digitalWrite (m2IN1, LOW); escritura digital (m2IN2, ALTA); escritura digital (m2ENA, ALTA); escritura digital (m2ENB, ALTA); descanso; case '3':// RELOJ BASE digitalWrite (m1IN1, HIGH); digitalWrite (m1IN2, BAJO); escritura digital (m1ENA, ALTA); escritura digital (m1ENB, ALTA); descanso; case '4':// BASE ANTICLOCK digitalWrite (m1IN1, LOW); escritura digital (m1IN2, ALTA); escritura digital (m1ENA, ALTA); escritura digital (m1ENB, ALTA); descanso; caso '9':// APAGADO digitalWrite (m1IN1, LOW); digitalWrite (m1IN2, BAJO); digitalWrite (m1IN3, BAJO); digitalWrite (m1IN4, BAJO); escritura digital (m1ENA, BAJA); escritura digital (m1ENB, BAJA); escritura digital (m2IN1, BAJA); escritura digital (m2IN2, BAJA); escritura digital (m2IN3, BAJA); escritura digital (m2IN4, BAJA); escritura digital (m2ENA, BAJA); escritura digital (m2ENB, BAJA); digitalWrite (m3IN1, BAJO); escritura digital (m3IN2, BAJA); escritura digital (m3IN3, BAJA); escritura digital (m3IN4, BAJA); escritura digital (m3ENA, BAJA); escritura digital (m3ENB, BAJA); descanso; case 'A':// FORWARD digitalWrite (m3IN1, HIGH); escritura digital (m3IN2, BAJA); escritura digital (m3IN3, ALTA); escritura digital (m3IN4, BAJA); escritura digital (m3ENA, ALTA); escritura digital (m3ENB, ALTA); descanso; caso 'D':// BACKWARD digitalWrite (m3IN1, LOW); escritura digital (m3IN2, ALTA); escritura digital (m3IN3, BAJA); escritura digital (m3IN4, ALTA); escritura digital (m3ENA, ALTA); escritura digital (m3ENB, ALTA); descanso; caso 'B':// DERECHA digitalWrite (m3IN1, LOW); escritura digital (m3IN2, ALTA); escritura digital (m3IN3, ALTA); escritura digital (m3IN4, BAJA); escritura digital (m3ENA, ALTA); escritura digital (m3ENB, ALTA); descanso; case 'C':// IZQUIERDA digitalWrite (m3IN1, HIGH); escritura digital (m3IN2, BAJA); escritura digital (m3IN3, BAJA); escritura digital (m3IN4, ALTA); escritura digital (m3ENA, ALTA); escritura digital (m3ENB, ALTA); descanso; }}
Piezas y carcasas personalizadas
hydraulico_crane_J6NH7RouoB.apkuse m-seal para ajustar las tuercas con el motor. fije la tuerca en el pistón de la jeringa con m-seal. fije la jeringa y el motor de esta manera cuando el motor gira en sentido horario empuja el pistón y cuando gira en sentido antihorario tira del pistón https://www.youtube.com/watch?v=lhOF6cViZ4Q