Índice:

Controlando motores CC com o L298N usando o microcontrolador CloudX: 3 etapas
Controlando motores CC com o L298N usando o microcontrolador CloudX: 3 etapas

Vídeo: Controlando motores CC com o L298N usando o microcontrolador CloudX: 3 etapas

Vídeo: Controlando motores CC com o L298N usando o microcontrolador CloudX: 3 etapas
Vídeo: Aprenda a controlar motores com o Arduino! (usamos o módulo L298N) 2024, Novembro
Anonim
Controle de motores DC com o L298N usando o microcontrolador CloudX
Controle de motores DC com o L298N usando o microcontrolador CloudX
Controle de motores DC com o L298N usando o microcontrolador CloudX
Controle de motores DC com o L298N usando o microcontrolador CloudX

Neste projeto, explicaremos como usar nossa ponte H L298N para aumentar e diminuir a velocidade do motor CC. O módulo ponte H L298N pode ser usado com motores que têm uma tensão entre 5 e 35 Vcc.

Há também um regulador de 5 V integrado, portanto, se a tensão de alimentação for de até 12 V, você também pode fornecer 5 V da placa. Esses módulos controladores de motor duplo L298 H-bridge são baratos e estão disponíveis AQUI

Etapa 1: Componentes

Componentes
Componentes
Componentes
Componentes
Componentes
Componentes
  • Microcontrolador CloudX
  • CloudX Softcard
  • Cabo USB V3
  • Ponte H L298N
  • Tábua de pão
  • Fios de ligação
  • motor DC
  • Resistor de 10k
  • 4 * botão de pressão

você pode online aqui

Etapa 2: Diagrama de Circuito

Diagrama de circuito
Diagrama de circuito

siga o circuito

Etapa 3: Código

copie este código para o seu IDE CloudX

#include #include

assinado char i, j;

bit flag;

configurar(){

// configurar aqui para (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 () {// Programe aqui if (! readPin (1)) {delayMs (200); if (sinalizador == 0) {PWM1_Duty (i); PWM2_Duty (0); } if (sinalizador == 1) {PWM2_Duty (j); PWM1_Duty (0); } flag = ~ flag; } if (! readPin (2)) {delayMs (200); if (sinalizador == 1) {// i - = 10; eu--; if (i <= 0) i = 0; PWM1_Duty (i); PWM2_Duty (0); } if (sinalizador == 0) {// j - = 10; j--; se (j <= 0) j = 0; PWM2_Duty (j); PWM1_Duty (0); }} if (! readPin (3)) {delayMs (200); if (sinalizador == 1) {// i + = 10; i ++; se (i> = 100) i = 100; PWM1_Duty (i); PWM2_Duty (0); } if (sinalizador == 0) {// j + = 10; j ++; se (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; }

}

}

Recomendado: