Bài giảng thuộc môn học Vi điều khiển, sinh viên học xong có thể hiểu được nguyên lý hoạt động, có thể tự ráp mạch, lập trình, điều khiển động cơ bước quay thuận nghịch theo ý muốn.mạch dùng vi điều khiển PIC18F4550, ngôn ngữ lập trình MPLAB C18
Trang 1TÊN BÀI GIẢNG:
ĐIỀU KHIỂN ĐỘNG CƠ BƯỚC QUAY THUẬN NGHỊCH
Trang 2VỊ TRÍ BÀI GIẢNG
Module: VI ĐIỀU KHIỂN
Bài 1: Khảo sát Kít thực hành PIC18F4550
Bài 2: Giao tiếp điều khiển led đơn
Bài 3: Giao tiếp điều khiển led 7 đoạn
Bài 4: Giao tiếp nút nhấn đơn
Bài 5: Giao tiếp điều khiển động cơ bước
5.1 Cấu tạo và nguyên lý hoạt động
5.2: Điều khiển động cơ bước quay thuận nghịch
Trang 3NỘI DUNG BÀI GIẢNG
Trang 4ĐẶT VẤN ĐỀ
Trang 6ĐIỀU KHIỂN ĐỘNG CƠ BƯỚC QUAY THUẬN NGHỊCHBài giảng:
Trang 8Kết nối phần cứng
Ký hiệu
Kết nối phần cứng
Mô tả
STOP RD0 Nút nhấn STOP
QT RD1 Nút nhấn quay thuận
QN RD2 Nút nhấn quay nghịch
Trang 9Yêu cầu điều khiển:
- Điều khiển động cơ bước theo phương pháp điều khiển nửa bước
- Nhấn nút QT: động cơ quay thuận
- Nhấn nút QN: động cơ quay nghịch
- Nhấn nút STOP: động cơ dừng
Trang 10MỤC TIÊU BÀI GIẢNG:
- Trình bày được phương pháp điều khiển động cơ bước.
Kiến thức:
Trang 11MỤC TIÊU BÀI GIẢNG:
- Viết được chương trình điều khiển động
cơ bước
- Sửa được các lỗi trong lập trình
Kỹ năng:
Trang 12MỤC TIÊU BÀI GIẢNG:
- Cẩn thận, chính xác
- Xây dựng thói quen tư duy trong công việc.
- Rèn luyện tác phong công nghiệp.
Thái độ:
Trang 13GIẢI QUYẾT VẤN ĐỀ:
1 Phương pháp điều khiển động cơ bước
2 Lưu đồ điều khiển.
3 Chương trình điều khiển
4 Viết chương trình điều khiển.
5 Vận hành.
Trang 141.Phương pháp điều khiển động cơ bước:
- Điều khiển nguyên bước
- Điều khiển nửa bước
Trang 15Điều khiển nguyên bước:
Trang 16Điều khiển nửa bước:
A
B
CD
Trang 172.Lưu đồ điều khiển:
Trang 193.Chương trình điều khiển:
Mảng chứa mã nửa bước
Trang 20Thảo luận nhóm
Viết một mảng có tên là manuabuoc gồm 8 phần tử trong đó mỗi phần tử là một mã
dùng để xuất ra port điều khiển động cơ
bước quay thuận theo phương pháp nửa
bước đúng với kết nối phần cứng của kít thí nghiệm?
Trang 2201:30 01:11
00:10
Trang 25manuabuoc [8] ={0x40,0x60,0x20,0x30,0x10,0x18,0x08,0x48};
Trang 26Khởi tạo Port:
TRISB= 0x00;
TRISD= 0x0F;
ADCON1=0xFF;
Trang 27Chương trình con đọc phím:
void docphim(){
if (STOP == 0) phim=0;
if (QT == 0) phim=1;
if (QN == 0) phim=2;
}
Trang 28Chương trình con quay thuận:
void quaythuan(){
for(i=0;i<8;i++){
PORTB = manuabuoc[i];
Delay100TCYx(125);
}}
Trang 29for(i=0;i<8;i++){
Trang 30Chương trình con quay nghịch:
void quaynghich(){
for(i=7;i>=0;i ){
PORTB = manuabuoc[i];
Delay100TCYx(125);
}}
Trang 31Chương trình chính:
Trang 32}
Trang 334.Viết chương trình:
Chuẩn bị:
- Kiểm tra máy tính.
- Kiểm tra phần mềm lập trình.
Trang 344.Viết chương trình:
- Khai báo ban đầu:
+ Khai báo cấu hình + Khai báo kí hiệu chân vi điều khiển + Khai báo mảng nửa bước
+ Khai báo biến + Khai báo chương trình con
Trang 354.Viết chương trình:
- Viết chương trình đọc phím:
void docphim(){
if (STOP == 0) phim=0;
if (QT == 0) phim=1;
if (QN == 0) phim=2;
}
Trang 364.Viết chương trình:
- Viết chương trình quay thuận:
void quaythuan(){
for(i=0;i<8;i++){
PORTB = manuabuoc[i];Delay100TCYx(125);
}}
Trang 374.Viết chương trình:
- Viết chương trình quay nghịch:
void quaynghich(){
for(i=7;i>=0;i ){
PORTB = manuabuoc[i];Delay100TCYx(125);
}}
Trang 384.Viết chương trình:
- Viết chương trình chính:
Trang 39}
Trang 404.Viết chương trình:
- Biên dịch, nạp chương trình
Trang 415.Vận hành
- Vận hành theo yêu cầu điều khiển.
Trang 42KẾT THÚC VẤN ĐỀ
Trang 43XIN CHÂN THÀNH CẢM ƠN BAN GIÁM KHẢO,QUÝ THẦY CÔ
CHÚC CÁC THẦY CÔ NHIỀU SỨC KHỎE
Trang 44Hướng dẫn tự học
Thực hiện bài tập về động cơ bước trên phần mềm proteus
Trang 45XIN CHÂN THÀNH CẢM ƠN BAN GIÁM KHẢO,QUÝ THẦY CÔ
CHÚC CÁC THẦY CÔ NHIỀU SỨC KHỎE
Trang 47XIN CHÂN THÀNH CẢM ƠN BAN GIÁM KHẢO,QUÝ THẦY CÔ
CHÚC CÁC THẦY CÔ NHIỀU SỨC KHỎE