Taula de continguts:

Control de motors de corrent continu amb el L298N mitjançant microcontrolador CloudX: 3 passos
Control de motors de corrent continu amb el L298N mitjançant microcontrolador CloudX: 3 passos

Vídeo: Control de motors de corrent continu amb el L298N mitjançant microcontrolador CloudX: 3 passos

Vídeo: Control de motors de corrent continu amb el L298N mitjançant microcontrolador CloudX: 3 passos
Vídeo: NoMADA + Driver Alta Potencia Control Motores (L298N) 2024, Juliol
Anonim
Control de motors CC amb el L298N mitjançant microcontrolador CloudX
Control de motors CC amb el L298N mitjançant microcontrolador CloudX
Control de motors CC amb el L298N mitjançant microcontrolador CloudX
Control de motors CC amb el L298N mitjançant microcontrolador CloudX

En aquest projecte explicarem com utilitzar el nostre pont H L298N per augmentar i disminuir la velocitat del motor de corrent continu. El mòdul de pont H L298N es pot utilitzar amb motors que tinguin una tensió d'entre 5 i 35V CC.

També hi ha un regulador de 5V incorporat, de manera que si el vostre voltatge d’alimentació és de fins a 12V, també podeu obtenir 5V de la placa.

Pas 1: components

Components
Components
Components
Components
Components
Components
  • Microcontrolador CloudX
  • CloudX Softcard
  • Cable USB V3
  • L298N pont H
  • Taula de pa
  • Filferros de pont
  • Motor de corrent continu
  • 10k resistència
  • 4 * polsador

podeu connectar-vos aquí

Pas 2: diagrama del circuit

Esquema de connexions
Esquema de connexions

seguiu el circuit cap amunt

Pas 3: Codi

copieu aquest codi al vostre IDX de CloudX

#include #include

signat char i, j;

bandera de bits;

setup () {

// configuració aquí per a (i = 1; i <5; i ++) {pinMode (i, INPUT); } PWM1_Init (5000); PWM2_Init (5000); PWM1_Start (); PWM2_Start (); PWM1_Duty (0); PWM2_Duty (0); i = j = 0; loop () {// Programa aquí si (! readPin (1)) {delayMs (200); if (flag == 0) {PWM1_Duty (i); PWM2_Duty (0); } if (flag == 1) {PWM2_Duty (j); PWM1_Duty (0); } flag = ~ flag; } if (! readPin (2)) {delayMs (200); if (flag == 1) {// i - = 10; i--; si (i <= 0) i = 0; PWM1_Duty (i); PWM2_Duty (0); } if (flag == 0) {// j - = 10; j--; si (j <= 0) j = 0; PWM2_Duty (j); PWM1_Duty (0); }} if (! readPin (3)) {delayMs (200); if (flag == 1) {// i + = 10; i ++; si (i> = 100) i = 100; PWM1_Duty (i); PWM2_Duty (0); } if (flag == 0) {// j + = 10; j ++; si (j> = 100) j = 100; PWM2_Duty (j); PWM1_Duty (0); }}

if (! readPin (4)) {

delayMs (200); PWM1_Duty (0); PWM2_Duty (0); i = 0; j = 0; }

}

}

Recomanat: