Băm xung - Điều khiển tốc độ động cơ bằng L298 với cách tiếp cận khác - Sử dụng 2 chân ENA và ENB

I. Giới thiệu

Hôm nay, mình sẽ hướng dẫn các bạn băm xung để điều khiển tốc độ động cơ thông qua module L298...Mình thấy trên cộng đồng có 1 bạn viết về module L298 nhưng chưa nói rõ về cách điều khiển tốc độ động cơ với ENA và ENB. Cách này sẽ ổn định hơn và dùng module L298 với hiệu suất cao hơn.

II. Chuẩn bị

III. Kết nối 

Trước tiên các bạn gỡ 2 jump ở hai chân ENA, ENB của module L298 ra nhé!!! 2 chân này được thiết kế để điều khiển tốc độ động cơ đó. Sau đó các bạn mắc như sau:

III. Lập trình

Để điều khiển tốc độ động cơ....bạn cần băm xung PWM vào chân EN của module. Sau đây là code mẫu :

//Khai báo chân tín hiệu motor A
int enA = 8;
int in1 = 7;
int in2 = 6; 

//Khai báo chân tín hiệu cho motor B
int in3 = 5; 
int in4 = 4; 
int enB = 3;  

int i;

void setup()
{
    pinMode(enA, OUTPUT);
    pinMode(in1, OUTPUT);
    pinMode(in2, OUTPUT); 
    pinMode(enB,OUTPUT);
    pinMode(in3, OUTPUT);
    pinMode(in4, OUTPUT);
}

void chaymotor()
{
    for(i=0;i<=255;i++){
    
        digitalWrite(in3, HIGH);
        digitalWrite(in1, HIGH);
        digitalWrite(in4, LOW);
        digitalWrite(in2, LOW);
        analogWrite(enB, i); 
        analogWrite(enA, i); 
        delay(100);
    
    }// Tăng tốc động cơ từ Min >> Max
    for(i=255;i>=0;i--){
        digitalWrite(in3, HIGH);
        digitalWrite(in1, HIGH);
        digitalWrite(in4, LOW);
        digitalWrite(in2, LOW);
        analogWrite(enB, i); 
        analogWrite(enA, i); 
        delay(100);
    
    }// Giảm tốc từ Max >> Min

} 

void loop() 
{
    chaymotor();
    delay(1000);
}

IV. Lời kết

Vậy là các bạn đã có thể điều khiển tốc độ động cơ rất đơn giản rồi đó!!! Chúc các bạn thành công!!!

lên
29 thành viên đã đánh giá bài viết này hữu ích.
Các dự án được truyền cảm hứng

ST7565 và ESP8266 - Màn hình LCD bự chà bá chưa đến 100k cho thế giới IoT

Mình rất thích LCD ST7565 này, và đã đặt liền 4 con mà mỗi con quá rẻ có 20k. Nhưng khổ một điều, điện áp hoạt động và IO của LCD ST7565 có 3.3V. Bản thân mình lại không thích việc chơi điện trở để chơi LCD này với Arduino. Lý do đơn giản là phải hàn quá nhiều, mình lại lười crying. Hổm nay, mình đang làm loạt bài về ESP8266 và cũng phải gặp vấn đề điện trở để làm cầu phân áp khi giao tiếp giữa ESP8266 và Arduino.

lên
17 thành viên đã đánh giá bài viết này hữu ích.

Thư viện ST7565 trên Arduino Create - Thử nghiệm đầu tiên: Hoàn hảo!

Mình rất tự hào và hãnh diện, khi thư viện made in Việt Nam đầu tiên của Thái Sơn (Nick Chung) được mình tải lên tại Arduino Create với mục đích thử nghiệm việc biên dịch code online trên Arduino Create đã hoàn thành công việc của nó ngay trong lần thử đầu tiên. Qua bài viết này, mình xin hướng dẫn các bạn lập trình Arduino với Arduino Create thông qua việc làm một ví dụ mẫu về việc cài thư viện và sử dụng nó trên Arduino Create.

lên
7 thành viên đã đánh giá bài viết này hữu ích.
Các bài viết cùng tác giả

Làm máy đo điện trở đơn giản

Bài viết này, mình sẽ hướng dẫn các bạn làm một máy đo điện trở đơn giản với khả năng kỳ diệu mà không ngờ tới của CH Play. (Phát hiện kỳ diệu trên intructable) Hi, mặc dù bài viết không có liên quan gì đến Arduino, nhưng nó có thể là công cụ hỗ trợ cho các bạn khi làm các dự án với Arduino

lên
33 thành viên đã đánh giá bài viết này hữu ích.

Ghi dữ liệu vô File bằng Visual C# - Ứng dụng trong dự án lưu log bằng máy tính

Làm thế nào để ghi dữ liệu đã nhận từ Arduino vào file Text bằng C#??? Để lý giải câu hỏi này, hôm nay mình sẽ hướng dẫn các bạn ghi dữ liệu vào .txt thông qua Visual C#. Và đặc biệt, trong bài viết này, mình sẽ làm việc với chương trình Console.

lên
26 thành viên đã đánh giá bài viết này hữu ích.