- Tạo giao diện người dùng đồ họa MATLAB để điều khiển động cơ DC
- Mã MATLAB để điều khiển Động cơ DC với Arduino
- Vật liệu cần thiết
- Sơ đồ mạch
- Điều khiển động cơ DC với MATLAB
Trong hướng dẫn này, chúng tôi sẽ chỉ cho bạn cách điều khiển động cơ DC bằng MATLB và Arduino. Nếu bạn chưa quen với MATLAB thì bạn nên bắt đầu với chương trình nhấp nháy đèn LED đơn giản với MATLAB.
Tạo giao diện người dùng đồ họa MATLAB để điều khiển động cơ DC
Sau khi hoàn tất thiết lập với Arduino cho MATLAB, chúng ta phải xây dựng GUI (Giao diện người dùng đồ họa) để điều khiển động cơ DC. Để khởi chạy GUI, hãy nhập lệnh dưới đây vào cửa sổ lệnh
hướng dẫn
Một cửa sổ bật lên sẽ mở ra, sau đó chọn GUI trống mới như được hiển thị trong hình ảnh bên dưới,
Bây giờ chọn ba nút bấm cho Xoay theo chiều kim đồng hồ, Xoay ngược chiều kim đồng hồ và DỪNG, như được hiển thị bên dưới,
Để thay đổi kích thước hoặc thay đổi hình dạng của nút, chỉ cần nhấp vào nó và bạn sẽ có thể kéo các góc của nút. Bằng cách nhấp đúp vào nút bấm, bạn có thể thay đổi màu sắc, chuỗi và thẻ của nút cụ thể đó. Chúng tôi đã tùy chỉnh ba nút như thể hiện trong hình dưới đây.
Bạn có thể tùy chỉnh các nút theo sự lựa chọn của mình. Bây giờ khi bạn lưu nó, một mã sẽ được tạo trong cửa sổ Editor của MATLAB. Để viết mã Arduino để thực hiện bất kỳ tác vụ nào liên quan đến dự án của bạn, bạn luôn phải chỉnh sửa mã được tạo này. Vì vậy, dưới đây chúng tôi đã chỉnh sửa mã MATLAB.
Mã MATLAB để điều khiển Động cơ DC với Arduino
Mã MATLAB hoàn chỉnh, sau khi chỉnh sửa để điều khiển động cơ DC, được đưa ra ở phần cuối của dự án này. Hơn nữa, chúng tôi bao gồm tệp GUI (.fig) và tệp mã (.m) tại đây để tải xuống, sử dụng tệp này bạn có thể tùy chỉnh các nút theo yêu cầu của mình. Dưới đây là một số điều chỉnh mà chúng tôi đã thực hiện để xoay Động cơ DC theo chiều kim đồng hồ, ngược chiều kim đồng hồ và dừng sử dụng ba nút nhấn.
Sao chép và dán đoạn mã dưới đây vào dòng số. 74 để đảm bảo rằng Arduino đang nói chuyện với MATLAB mỗi khi bạn chạy m-file.
Làm sạch tất cả; toàn cầu a; a = arduino ();
Khi cuộn xuống, bạn sẽ thấy rằng có ba chức năng cho mỗi Nút trong GUI. Bây giờ hãy viết mã trong mọi chức năng theo tác vụ bạn muốn thực hiện khi nhấp chuột.
Trong chức năng của nút Clockwise , sao chép và dán đoạn mã dưới đây ngay trước dấu ngoặc nhọn kết thúc của chức năng để xoay động cơ theo chiều kim đồng hồ. Ở đây chúng tôi đưa ra CAO ở chân 6 và THẤP ở chân 5 để quay động cơ theo chiều kim đồng hồ.
toàn cầu a; writeDigitalPin (a, 'D5', 0); writeDigitalPin (a, 'D6', 1); tạm dừng (0,5);
Bây giờ trong chức năng của nút Ngược chiều kim đồng hồ , hãy dán đoạn mã dưới đây vào cuối chức năng để quay động cơ theo hướng ngược chiều kim đồng hồ. Ở đây chúng tôi đưa ra CAO ở chân 5 và THẤP ở chân 6 để quay động cơ theo hướng Ngược chiều kim đồng hồ.
toàn cầu a; writeDigitalPin (a, 'D5', 1); writeDigitalPin (a, 'D6', 0); tạm dừng (0,5);
Cuối cùng trong chức năng của nút STOP , dán đoạn mã dưới đây vào cuối để dừng chuyển động quay của động cơ. Ở đây chúng tôi đưa ra LOW ở cả chân 5 và 6 để dừng động cơ.
toàn cầu a; writeDigitalPin (a, 'D5', 0); writeDigitalPin (a, 'D6', 0); tạm dừng (0,5);
Vật liệu cần thiết
- Máy tính xách tay đã cài đặt MATLAB (Tùy chọn: phiên bản R2016a trở lên)
- Arduino UNO
- Động cơ DC
- L293D- trình điều khiển động cơ
Sơ đồ mạch
Điều khiển động cơ DC với MATLAB
Sau khi thiết lập phần cứng theo sơ đồ mạch, chỉ cần nhấp vào nút chạy để chạy mã đã chỉnh sửa trong tệp.m
MATLAB có thể mất vài giây để phản hồi, không nhấp vào bất kỳ nút GUI nào cho đến khi MATLAB hiển thị chỉ báo BẬN, bạn có thể thấy ở góc dưới bên trái của màn hình như hình dưới đây,
Khi mọi thứ đã sẵn sàng, hãy nhấp vào nút theo chiều kim đồng hồ hoặc ngược chiều kim đồng hồ để xoay động cơ. Khi bạn nhấn nút theo chiều kim đồng hồ, dòng điện chạy qua Chân 6 đến Chân 5 và động cơ sẽ quay theo chiều kim đồng hồ trong khi ngược chiều kim đồng hồ dòng điện chạy qua Chân 5 đến Chân 6 và động cơ sẽ quay theo chiều kim đồng hồ sẽ quay theo chiều kim đồng hồ. Để dừng quay động cơ DC, nhấn nút STOP. Có thể sử dụng phương pháp tương tự để điều khiển Động cơ servo bằng MATLAB, chúng ta chỉ cần chỉnh sửa mã cho phù hợp. Bạn có thể xem video dưới đây để hiểu toàn bộ quy trình điều khiển động cơ DC MATLAB bằng Arduino.