Điều khiển tốc độ motor dc bằng arduino

      550

Bài viết hôm nay xin giới thiệu đến các bạn phương pháp điều khiển tốc độ motor DC bằng Arduino. Tìm hiểu về nguyên Đọc thêm


Bài viết hôm nay xin giới thiệu đến các bạn phương pháp điều khiển tốc độ motor DC bằng Arduino. Tìm hiểu về nguyên lý sơ đồ mạch điện và lập trình điều khiển Arduino.

Bạn đang xem: Điều khiển tốc độ motor dc bằng arduino


1. Nguyên lý điều khiển tốc độ motor DC bằng Arduino

Để thay đổi tốc độ động cơ một chiều người ta có thể mắc điện trở điều chỉnh vào phần ứng, thay đổi điện áp đặt vào động cơ, thay đổi từ thông.

Động cơ 1 chiều là gì Mạch cầu H sử dụng mosfet Điều khiển tốc độ động cơ dc bằng mạch cầu H L298 Điều khiển tốc độ động cơ bằng pwm

Phương pháp thay đổi điện áp được sử dụng rộng rãi. Do khoảng điều chỉnh tốc độ rộng và giá thành rẻ. Điển hình là phương pháp thay đổi điện áp bằng cách điều chế độ rộng xung PWM. Người ta dùng mạch điện tử để thay đổi điện áp ngỏ ra dưới dạng xung điện có tần số không đổi, việc thay đổi độ rộng xung sẽ thay đổi điện áp và dòng điện trung bình ngỏ ra.

*

Phương pháp điều chế độ rộng xung PWM

2. Lập trình Arduino điều khiển tốc độ

Ở board Arduino UNO có thể xuất xung PWM có tần số không đổi 490Hz ở các chân 3,8,9,11 và tần số 980Hz ở chân 5,6.

Ví dụ dưới dây dùng Arduino đọc giá trị biến trở ở chân A0 và xuất PWM ở chân 9.

Xem thêm: Xịt Giày Nano Chống Thấm Nước Cho Giày Được Ưa Chuộng, Bình Xịt Phủ Nano Chống Thấm Chọn Giày 400Ml

*

Mô phỏng xuất xung PWM bằng Arduino

Chương trình Arduino trên phần mềm IDE được viết như sau:


int bientro=0;

void setup() {

}

void loop() {

bientro=analogRead(0);

analogWrite(9,bientro/4);

}


Hàm analogRead đọc giá trị biến trở ở chân Analog 0, giá trị này từ 0 – 1023 tương ứng với điện áp đọc được từ 0 – 5V.

Hàm analogWrite xuất xung PWM ở chân 9, có độ rộng xung từ 0 – 100% tương ứng với giá trị đầu vào từ 0 – 255.

Video mô phỏng Arduino xuất xung PWM trên phần mềm proteus:

3. Sơ đồ mạch điều khiển tốc độ motor DC bằng Arduino

Sơ đồ mạch được vẽ như hình bên dưới:

*

Sơ đồ mạch điều khiển tốc độ motor DC bằng arduino

Nguyên lý hoạt động: Arduino sẽ xuất xung PWM tùy thuộc vào giá trị biến trở RV1 đọc được. Xung PWM sẽ điều khiển đóng mở Mosfet Q3. Arduino được cách ly với phần công suất bởi opto PC817.

+ Khi xung PWM ở mức cao: LED của opto PC817 không sáng, dẫn đến cực CE hở. Khi đó điện trở R2 sẽ kéo điện áp cực B của hai transitor Q1, Q2 lên 12V. Lúc này transitor Q1 được phân cực sẽ dẫn điện; dòng điện chạy qua Q1, R3 kích mở mosfet Q3. Do Q3 dẫn điện nên điện áp đo được hai đầu động cơ là 12V.

Do bên trong mosfet có điện dung ký sinh, để giảm dòng điện nạp cho tụ điện này ta mắc thêm điện trở R3 ở cực G của mosfet.

*

Điện áp xung PWM ở mức cao

+ Khi xung PWM ở mức thấp: LED của opto PC817 sáng nên transitor bên trong opto được kích dẫn, hai chân CE lúc này như công tắc đóng. Khi đó điện áp cực B của hai transitor Q1 và Q2 kéo về 0V. Lúc này Q2 dẫn điện, do điện dung ký sinh Mosfet Q3 xả điện qua điện trở R3 và Q2. Do cực G Mosfet Q3 về mức thấp nên Q3 không dẫn. Nên điện áp hai đầu động cơ đo được là 0V.

*

Điện áp xung PWM ở mức thấp

Video mô phỏng mạch điều khiển tốc độ motor DC bằng Arduino:

Nhận xét: Xung PWM của Arduino và xung ngỏ ra động cơ ngược pha nhau. Nhưng do điện áp xung ngõ ra được đo ở phía dưới động cơ nên khi giá trị độ rộng xung 100% thì động cơ sẽ ngừng quay. Do đó khi giá trị biến trở lớn nhất thì tốc độ động cơ lớn nhất.

Nơi mua Arduino giá rẻ mà chất lượng?

Với giá bán cạnh tranh trên các sàn thương mại điện tử được nhiều người sử dụng đánh giá cao. Giao hàng tận nơi, với chính sách hoàn trả tiền nếu sản phẩm bị lỗi nên khách hàng có thể yên tâm đặt sử dụng các sản phẩm của Shop.

*