VXL Điều khiển tốc độ động cơ DC dùng 8051_PWM

22 528 2
VXL Điều khiển tốc độ động cơ DC dùng 8051_PWM

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Đây là BTL môn VXL cô Thuỳ ĐHBKHN, Để lấy code cũng như mạch mô phỏng, liên hệ mình qua FB: https:www.facebook.comHieu2705 Ngoài ra mình còn có đề tài về Đèn GT cũng như nhận làm các đề tài khác theo yêu cầu.

TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI VIỆN ĐIỆN BÀI TẬP LỚN VI XỬ LÝ Đề tài: ĐOĐIỀU KHIỂN TỐC ĐỘ ĐỘNG DC BẰNG PHƯƠNG PHÁP PWM SỬ DỤNG VĐK 8051 Giảng viên hướng dẫn: Mã lớp học: Họ tên sinh viên: MSSV: Lớp: TS Trần Thị Anh Xuân 102462 Đỗ Công Hiếu 20151307 Tự động hoá 3- K60 Hà Nội, 05-2018 MỤC LỤC MỤC LỤC DANH MỤC HÌNH ẢNH CHƯƠNG LƯU ĐỒ THUẬT TOÁN CHƯƠNG MẠCH MÔ PHỎNG 2.1 Các khối linh kiện 2.2 Sơ đồ mạch mô 2.3 Kết luận CHƯƠNG CHƯƠNG TRÌNH CHO VĐK 3.1 Khối khởi tạo 3.2 Khối đo tốc độ 11 3.3 Khối điều khiển 12 3.4 Khối hiển thị tốc độ 14 3.5 Chương trình tạo trễ 15 3.6 Chương trình 16 3.7 Kết luận 16 CHƯƠNG CHẠY MÔ PHỎNG 17 4.1 Kiểm tra động mức STOP 17 4.2 Kiểm tra hoạt động mức 10% đến 90% 17 4.3 Kiểm tra hoạt động mức MAX 21 4.4 Kết luận 21 DANH MỤC HÌNH ẢNH Hình 2.1 VĐK 89C51 Proteus Hình 2.2 Khối động Hình 2.3 LED7-3 số Hình 2.4 Bảng điều khiển Hình 2.5 Mạch mã hoá 74LS147 Hình 2.6 Ngắt điều khiển Hình 2.7 Sơ đồ mạch nguyên lý phần mềm mô Proteus Hình 4.1 Mô với mức điều khiển STOP 17 Hình 4.2 Mô với mức điều khiển 10% 18 Hình 4.3 Thông số xung PWM mức điều khiển 10% 18 Hình 4.4 Mô với mức điều khiển 50% 19 Hình 4.5 Thông số xung PWM mức điều khiển 50% 19 Hình 4.6 Mô với mức điều khiển 80% 20 Hình 4.7 Thông số xung PWM mức điều khiển 80% 20 Hình 4.8 Mô với mức điều khiển MAX 21 CHƯƠNG LƯU ĐỒ THUẬT TOÁN Trong chương này, em trình bày lưu đồ thuật tốn “Đo điều khiển tốc độ động DC phương pháp điều chế độ rộng xung sử dụng Vi Điều Khiển 8051” STAR T Khởi tạo: - Khởi tạo ngắt - Khởi tạo giá trị ngắt Ngắt INT0? Y - Nhận giá trị điều khiển Xử lý, lưu giá trị điều khiển Hiển thị giá trị điều khiển N Ngắt Timer0 50ms? Y - Đếm số lần ngắt - Tại lần ngắt thứ 20 (1 giây): +Trả số xung tính toán tốc độ + Reset biến đếm xung N Ngắt INT1? Y N Ngắt Timer1 1ms? N - Tăng biến đếm xung -Đếm số lần ngắt, 10 ngắt tạo thành Y chu kỳ PWM (10ms) - So sánh biến đếm với giá trị điều khiển, biến đếm giá trị điều khiển tắt Xung PWM, đợi chu kỳ PWM mới, chưa bật PWM -Reset biến đếm lần ngắt thứ 10 Hiển thị tốc độ Đợi ngắt Theo lưu đồ thuật toán trên, em sử dụng ngắt: ngắt INT0 để nhận điều khiển, ngắt Timer kết hợp ngắt INT1 để đo tốc độ, ngắt Timer dùng để để tạo xung PWM Trong bước em triển khai thiết kế mạch cách dùng phần mềm mô Proteus CHƯƠNG MẠCH MÔ PHỎNG Từ ý tưởng thể lưu đồ thuật toán, chương này, em trình bày sơ lược linh kiện sử dụng, cách ghép nối phân tích chức chúng Sử dụng phần mềm mô phỏng: Proteus 8.5 SP0 build 22067 2.1 Các khối linh kiện 2.1.1 Vi điều khiển 8051- 89C51 Hin ̀ h 2.1 VĐK 89C51 Proteus Hình 1.1 hình ảnh VĐK 89C51 phần mềm mô Proteus VĐK 89C51 cung cấp nguồn dao động thạch anh tần số 12MHz 2.1.2 Động DC- Encoder Hình 1.2 Mô tả cách ghép nối linh kiện khối động Hin ̀ h 2.2 Khối động Động sử dụng mạch với thông số sau: - Điện áp định mức: Uđm= 5V - Tốc độ định mức: Nđm= 20 vòng/ giây Motor DC cảm biến tốc độ với ba đầu ra, hai đầu độ phân giải: 12 xung/ vòng đầu độ phân giải xung/ vòng Vì dòng từ VĐK nhỏ, tầm 15mA-20mA nên em sử dụng Transistor để chịu dòng tải động Transistor loại NPN, hoạt động trạng thái bão hoà, động hoạt động chân PWM VĐK mức logic Điện trở diode chức tiêu tán dòng từ động Transitor chuyển thạng thái từ dẫn sang không dẫn 2.1.3 Khối hiển thị Khối hiển thị chức tốc độ động cơ, đơn vị: Vòng/giây LED dùng loại led thanh- số chung cực Dương (LED chỉnh sửa thủ công từ LED 7- số) LED hình dạng phân bố chân hình 1.3 Hin ̀ h 2.3 LED7-3 số Như hình 1.3, liệu đưa vào LED cổng P1 Ngồi sử dụng chân P3.5 P3.6 P3.7 để chọn LED sáng (sử dụng phương pháp quét LED- Tần số quét led 666Hz) 2.1.4 Khối điều khiển Khối điều khển chức điều khiển tốc độ động Với bước nhảy cấp 10% (từ trạng thái đứng yên đến tốc độ định mức) 2.1.4.1 Bảng điều khiển Hin ̀ h 2.4 Bảng điều khiển Hình 1.4 bảng điều khiển gồm 11 nút nhấn tướng ứng với 11 cấp tốc độ động Bên cạnh nút điều khiển LED & tác dụng hiển thị mức điều khiển 2.1.4.2 Mạch mã hoá Mạch mã hoá sử dụng mạch giãi mã 9/4 (74LS147) giúp đơn giản việc xử lý liệu nhận từ Bảng điều khiển Tương ứng với mức đầu vào đầu giải mã cho liệu giá trị thập phân tương ứng từ 14 đến (do đẩu Bộ giải mã tích cực mức thấp) Hin ̀ h 2.5 Mạch mã hoá 74LS147 Như mơ tả hình 1.5, mạch giải mã chân đầu vào nên tín hiệu STOP MAX (tốc độ định mức) đưa trực tiếp vào chân P2.4 P2.5 Ngồi hai khối trên, để VĐK nhận biết thời điểm thay đổi tốc độ, khối em sử dụng thêm mạch AND với đầu vào đầu Trong đó, đầu vào phần tử AND nối với đầu Mạch giải mã tín hiệu STOP MAX Đầu mạch AND nối vào ngõ vào ngắt INT0 Hin ̀ h 2.6 Ngắt điều khiển Hình 1.6 mơ tả cách ghép nối phần tử AND 2.2 Sơ đồ mạch mơ Hình 2.7 sơ đồ mạch nguyên lý phần mềm mô Proteus Hin ̀ h 2.7 Sơ đồ mạch nguyên lý phần mềm mô Proteus 2.3 Kết luận Từ sơ đồ nguyên lý vẽ, em tiến hành viết chương trình cho VĐK 89C51 CHƯƠNG CHƯƠNG TRÌNH CHO VĐK Trong chương này, em trình bày chương trình giải thích hoạt động chương trình Chương trình viết dịch Keil C C51 version 9.01 Chương trình đo tốc độ tối đa: 20 vòng/giây 3.1 Khối khởi tạo 3.1.1 Bắt đầu chương trình 3.1.1.1 Đặt tên gọi Để thuận tiện lập trình, em đặt tên số Byte Bit sử dụng sau: ; Tên bit, byte liên quan đến điều khiển level DATA P0; Đặt tên cổng P0 level, cổng báo mức điều khiển bdieukhien bit P3.2; Đặt tên bit P3.2 bdieukhien, bit báo điều khiển input DATA P2; Đặt tên cổng P2 inout, cổng vào điều khiển khiển bstop bit P2.4; Đặt tên bit P2.4 bstop, bit điều khiển STOP bmax bit P2.5; Đặt tên bit P2.5 bmax, bit điều khiển MAX bpwm bit P3.0; Đặt tên bit P3.0 bpwm, bit PWM ;Tên bit vào ngắt INT1 (đo tốc độ) btocdo bit P3.3; Đặt tên bit P3.3 btocdo, bit xung động ;Tên bit, byte liên quan đến hiển thị tốc độ led DATA P1; Đặt tên cổng P1 led, cổng hiển thị LED dot bit P1.7; Đặt tên bit P1.7 dot, bit hiển thị dấu chấm seled1 bit P3.5; Đặt tên bit P3.5 seled1, bit chọn LED hàng chục seled2 bit P3.6; Đặt tên bit P3.6 seled2, bit chọn LED đơn vị seled3 bit P3.7; Đặt tên bit P3.7 seled3, bit chọn LED hàng thập phân ;Tên biến dùng để lưu giá trị t DATA 00H; Đặt tên Byte địa 00H (R0) t, Byte đếm ngắt Timer n DATA 01H; Đặt tên Byte địa 01H (R1) n, Byte lưu kết xung count DATA 02H; Đặt tên Byte địa 02H (R2) count, Byte đếm ngắt INT1 KQ_Nguyen DATA 03H;Đặt tên Byte địa 03H (R3) KQ_Nguyen, Byte lưu kết phần thập ngun (Vòng/Giây) KQ_ThPhan DATA 04H; Đặt tên Byte địa 04H (R4) KQ_ThPhan, Byte lưu kết phần thập phân (Vòng/Giây) Tx DATA 05H; Đặt tên Byte địa 05H (R5) Tx, Byte đếm thời gian xung đầu PWM REF DATA 06H; Đặt tên Byte địa 06H (R6) REF, Byte lưu giá trị liệu điều khiển 3.1.1.2 Bắt đầu chương trình Bắt đầu chương trình: ORG 000H; Điểm nhập hệ thống LJMP MAIN; Nhảy đến nhãn MAIN ORG 0003H; Vector ngắt INT0 (Ngắt điều khiển) LJMP DIEUKHIEN; Nhảy đến chương trình ngắt INT0 (DIEU KHIEN) ORG 000BH; Vector ngắt TIMER0 (Ngắt tạo thời gian thực giây) SJMP SECOND; Nhảy đến chương trình ngắt TIMER0 (SECOND) ORG 0013H; Vector Ngắtt INT1 (Ngắt xung tốc độ động cơ) SJMP DEMXUNG; Nhảy đến chương trình ngắt INT1 (DEMXUNG) ORG 001BH; Vector ngắt TIMER0 (Ngắt tạo xung PWM) LJMP PWM; Nhảy đến chương trình ngắt TIMER (PWM) ORG 30H; Điểm nhập chương trình 3.1.2 Khởi tạo giá trị Trong chương trình này, em sử dụng ngắt bao gồm: Ngắt INT0; Ngắt Timer 0; Ngắt INT1 ngắt Timer với thứ tự ưu tiên mặc định: KHOITAO: ;Khởi tạo ngắt SETB EA; Cho phép ngắt toàn cục ; Khởii tạo Ngắt Timer0/1 MOV TMOD,#11H; Timer chế độ Timer chế độ SETB ET0; Cho phép ngắt Timer MOV TH0, #3CH MOV TL0, #0B0H; Đếm 50.000 xung (50ms) SETB ET1; Cho phép ngắt Timer MOV TH1,#0FCH MOV TL1, #18H; Đếm 1.000 xung (1ms) SETB TR0; Khởi động định thời Timer SETB TR1; Khởi động định thời Timer ;Khởi tạo ngắt INT0/INT1 SETB bdieukhien; Khai báo bdieukhien ngõ vào SETB EX0; Cho phép ngắt INT SETB IT0; INT0 ngắt theo chế độ sườn xuống SETB btocdo;Khai báo btocdo ngõ vào SETB EX1; Cho phép ngắt INT SETB IT1; INT1 ngắt theo chế độ sườn xuống ;Cài đặt ngõ, cổng chế độ vào MOV input, #0FFH; Khai báo input cổng vào SETB bstop; Khai báo bstop ngõ vào SETB bmax; Khai báo bmax ngõ vào ;Khởi tạo giá trị cần thiết MOV DPTR, #ALED; Nạp giá trị Bảng mã ALED cho ghi DPTR; MOV level, #0C0H; Khởi tạo #0C0H cho level (Đèn báo điều khiển hiển thị số 0) RET; Kết thúc chương trình (KHOITAO) 10 3.2 Khối đo tốc độ Khối kết hợp ngắt Timer ngắt INT1 để đo tốc độ động nguyên lý đếm tần số giây 3.2.1 Khối đếm xung Motor sử dụng cảm biến đầu dạng xung, xung đưa vào ngõ ngắt INT1, chế độ ngắt theo sườn xuống: DEMXUNG: INC count; Đếm xung tốc độ RETI ; Kết thúc chương trình ngắt (DEMXUNG) 3.2.2 Khối tạo thời gian thực Khối sử dụng ngắt Timer để tạo thời gian thực 1s SECOND: PUSH ACC; Sao lưu ghi A vào ngăn xếp PUSH B; Sao lưu ghi B vào ngăn xếp MOV TH0, #3CH MOV TL0, #0B0H; Đếm 50.000 xung (50ms) SETB TR0; Khởi động định thời Timer INC t; Tăng biến t đếm số lần ngắt Timer MOV A, t; Chuyển liệu t vào A để chuẩn bị so sánh CJNE A, #20, CONTINUE; Kiểm tra xem đủ 20 lần ngắt (1s) hay chưa ;Nếu chưa nhảy đến nhãn CONTINUE để kết thúc ngắt Timer ;Nếu t=20 trả kết quả, khởi tạo lại biến đếm, tính toán kết thoát MOV n, count; Trả kết đếm xung MOV count,#0H; Khởi tạo lại biến đếm xung MOV t, #0H; Khởi tạo lại biến đếm số lần ngắt Timer ACALL KETQUA; Gọi chương trình tính kết CONTINUE: POP B; Khơi phục lại ghi B từ ngăn xếp POP ACC; Khôi phục lại ghi A từ ngăn xếp RETI ; Thoát khỏi chương trình ngắt Timer 11 3.3 Khối điều khiển Khối điều khiển nhiệm vụ nhận tín hiệu vào đưa tín hiệu điều khiển tương ứng Trong khối em dùng ngắt INT0 để nhận biết tín hiệu điều khiển gọi hàm tính toán giá trị điều khiển Ngắt Timer1 dùng để phát xung sở tín hiệu điều khiển nhận 3.3.1 Khối nhận giá trị điều khiển Khối nhận tín hiệu điều khiển sử dụng cổng vào P2 tín hiệu báo điều khiển ngắt INT0 theo sườn xuống, khối chương trình ngắt INT0 DIEUKHIEN: PUSH ACC; Sao lưu ghi A vào ngăn xếp MOV A, P2; Nhận giá trị điều khiển từ P2, đưa vào A JNB bstop, STOP; Kiểm tra xem phải tín hiệu STOP JNB bmax, MAX; Kiểm tra xem phải tín hiệu MAX SJMP ADJ; Nhảy đến nhãn ADJ STOP MAX STOP: ; Nếu tín hiệu STOP MOV REF, #0; Gán giá trị đặt REF MOV A, REF;Chuyển giá trị điều khiển REF cho A MOVC A,@A+DPTR; Lấy số thứ thự A Bảng ALED (DPTR chứa địa bảng ALED khai báo chương trình khởi tạo) lưu vào A MOV level, A; Xuất giá trị A (mức điều khiển) led báo mức điều khiển POP ACC; Khôi phục lại ghi A từ ngăn xếp RETI; Kết thúc chương trình ngắt INT0 (DIEUKHIEN) MAX: MOV REF, #10; Gán giá trị đặt REF 10 MOV A, REF;Chuyển giá trị điều khiển REF cho A MOVC A,@A+DPTR; Lấy số thứ thự A Bảng ALED MOV level, A; Xuất giá trị A (mức điều khiển) led báo mức điều khiển POP ACC; Khôi phục lại ghi A từ ngăn xếp RETI; Kết thúc chương trình ngắt INT0 (DIEUKHIEN) 12 ADJ: Nếu khơng phải tín hiệu STOP START CPL A; Hiệu kết tín hiệu điều khiển tích cực mức thấp MOV REF, A; Chuyển giá trị điều khiển hiệu chỉnh vào REF MOVC A,@A+DPTR; Lấy số thứ thự A Bảng ALED MOV level, A; Xuất giá trị A (mức điều khiển) led báo mức điều khiển POP ACC; Khôi phục lại ghi A từ ngăn xếp RETI; Kết thúc chương trình ngắt INT0 (DIEUKHIEN) 3.3.2 Khối tạo xung PWM Khối tạo xung chức dựa vào liệu REF để đưa tín hiệu PWM tương ứng Khối sử dụng ngắt Timer 0, tần số PWM 100Hz (cứ 10 ngắt Timer lại tạo xung) Vì chia xung PWM với 10 độ rộng khác PWM: PUSH ACC; Sao lưu ghi A vào ngăn xếp MOV TH1,#0FCH MOV TL1,#18H; Đếm 1.000 xung (1ms) SETB TR1; Khởi động lại Timer1 LOOP: MOV A, Tx; Chuyển liệu từ Tx vào A INC Tx; Tăng biến đếm thời gian PWM lên CHECK1: ; CJNE A, #9, CHECK2; Nếu Tx khác (chưa 9) nhảy đển CHECK2 MOV Tx, #0 ; Nếu Tx (lần ngắt thứ 10) khởi tạo lại biến đếm Tx CHECK2: CJNE A, REF, CHECK3; Kiểm tra xung PWM đạt độ rộng điều khiển chưa CLR bpwm; Xung PWM mức thấp POP ACC; Khôi phục lại ghi A từ ngăn xếp RETI; Kết thúc chương trình ngắt Timer CHECK3: JNZ EXIT; Kiểm tra xem phải chu kỳ PWM mới, (Tx=0)( A Tx) SETB bpwm; Xung PWM mức cao EXIT: ;Nếu chưa bắt đầu chu kỳ (Tx khác 0) POP ACC; Khôi phục lại ghi A từ ngăn xếp RETI; Kết thúc chương trình ngắt Timer 13 3.4 Khối hiển thị tốc độ Khối nhiệm vụ hiển thị tốc độ LED (Đơn vị: Vòng/Giây) 3.4.1 Khối xử lý tốc độ Vì tín hiệu đo số xung/giây (lưu n), khối nhiệm vụ quy đổi tốc độ từ đơn vị xung/giây sang đơn vị vòng/giây KETQUA: ;Tính phần nguyên MOV A,n; Nạp giá trị xung đo n vào ghi A MOV B, #12; Nạp giá trị 12 cho B Động 12 xung/vòng DIV AB; Quy đổi đơn vị xung/giây vòng/giây MOV KQ_Nguyen, A; Lưu giữ kết phần nguyên (Lớn 255/12=21) ;Lấy thêm số thập phân MOV A, #10; Nạp giá trị 10 cho A MUL AB; Nhân A với B (Nhân phần dư B với 10) MOV B,#12; Nạp giá trị 12 cho B Động 12 xung/vòng DIV AB; Quy đổi đơn vị xung/giây vòng/giây MOV KQ_ThPhan, A; Lưu giữ kết phần thập phân (Lớn 110/12=9) RET ; Kết thúc chương trình (KETQUA) 3.4.2 Khối hiển thị tốc độ Sau khối xử lý tốc độ, kết đo tốc độ đơn vị vòng giây, chia thành phần phần nguyên (giá trị lớn 21) phần thập phân (giá trị lớn 9) Vì phần hiển thị hiển thị số: hàng chục, đơn vị thập phân HIENTHI: ;Hàng chục MOV A,KQ_NGUYEN; Nạp giá trị phần nguyên tốc độ cho A MOV B, #10; Nạp giá trị 10 cho B DIV AB; Tìm hàng chục (Thanh ghi A) MOVC A,@A+DPTR; Lấy số thứ thự A Bảng ALED MOV led,A; Xuất giá trị A (hàng chục) led SETB seled1; Bật LED hàng chục; ACALL DELAY; Trễ LED hàng chục sáng CLR seled1; Tắt LED hàng chục 14 ;Hàng đơn vị MOV A, B; Chuyển hàng đơn vị từ B đến A (B chứa dư phép chia KQ_Nguyen với 10) MOVC A,@A+DPTR; Lấy số thứ thự A Bảng ALED lưu vào A MOV led, A; Xuất giá trị A (hàng đơn vị) LED CLR dot; Hiển thị dấu chấm ngăn cách hàng đơn vị hàng thập phân SETB seled2; Bật LED hàng đơn vị ACALL DELAY ; Trễ LED hàng đơn vị sáng CLR seled2; Tắt LED hàng đơn vị ;Hàng thập phân MOV A, KQ_ThPhan; Chuyển hàng thập phân vào A MOVC A,@A+DPTR; Lấy số thứ thự A Bảng ALED lưu vào A MOV led, A; Xuất giá trị A (hàng thập phân) LED SETB seled3; Bật LED hàng thập phân ACALL DELAY ; Trễ LED hàng thập phân sáng CLR seled3; Tắt LED hàng thập phân SJMP HIENTHI ; Lặp lại chương trình hiển thị (Chạy vơ tận) RET; Kết thúc chương trình hiển thị 3.5 Chương trình tạo trễ Chương trình tạo trễ nhiệm vụ tạo trễ cho LED chương trình hiển thị sáng Chương trình độ trễ 500uS, tần số quét LED: DELAY: MOV R7, #248 ; Nạp giá trị 248 cho R7 (Bank mặc định 0)- (1 chu kỳ) BACK: DJNZ R7, BACK; Giảm R7 nhảy đến BACK R7 khác 0; (2 chu kỳ) NOP; Khơng làm (1 chu kỳ) RET; Kết thúc chương trình Delay 500us (2 chu kỳ)  Thời gian trễ: Tđ=1 +248*2+1+2= 500uS 15 3.6 Chương trình MAIN: ACALL KHOITAO; Gọi chương trình khởi tạo ACALL HIENTHI; Gọi chương trình hiển thị (chạy vơ tận) ALED: DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H,89H; ;Bảng mã chuyển đổi để hiển thị LED chung ANOT (Từ đến H dùng để báo mức điều khiển mức MAX) END; Kết thúc biên dịch 3.7 Kết luận Chương trình viết cho động chiều độ phân giải cảm biến đo tốc độ 12 xung/vòng hồn Qua chương trình viết, em rút số kết luận sau 3.7.1 Giới hạn đo tốc độ Vì chương trình sử dụng biến đếm byte để đếm xung tốc độ giây, giới hạn tốc độ là: 𝑁𝑚𝑎𝑥 = 255 12 = 21.2 vòng/ giây (1272 vòng/ phút) Để đảm bảo tính dự phòng sai số, tốc độ tối đa khuyên dùng không vượt 20 vòng/giây (1200 vòng/phút) Khi vượt giới hạn tốc độ tối đa, tốc độ đo số dư tốc độ thực tế chia cho 21.2: 𝑁𝐻𝑖ể𝑛 𝑡ℎị = 𝑁𝑇ℎự𝑐 𝑡ế − 𝐾 ∗ 21.2 với K nguyên, K ≥ 3.7.2 Giới hạn điều khiển Chương trình khơng giới hạn điều khiển, giới hạn điều khiển phục thuộc vào linh kiện phần cứng Đặc tính điều khiển: Điều khiển nhảy cấp, bước nhảy 10% 16 CHƯƠNG CHẠY MÔ PHỎNG Trong chương em tiến hành kiểm tra hoạt động mạch mơ phỏng, kiểm tra xem chương trình chạy mong muốn hay chưa 4.1 Kiểm tra động mức STOP Khi bật nguồn ấn STOP, qua mô phỏng, động không hoạt động Xung đầu PWM ln mức thấp Vì điều khiển mức STOP hoạt động tốt Kết thu mơ mức STOP thể hình 4.1 sau: Hin ̀ h 4.1 Mô với mức điều khiển STOP 4.2 Kiểm tra hoạt động mức 10% đến 90% Vì mức từ 10% đến 90% sử dụng chung mạch mã hoá sử dụng chung đoạn lệnh chương trình, em kiểm tra hoạt động đồng thời mức điều khiển Trong trình chạy kiểm tra, kết hợp đồng hồ Oscilloscope để đo xem tần số xung, độ rộng xung mong muốn hay không để phát sửa chữa lỗi tồn đọng Vì kiểm tra mức này, kết nhận tương tự nhau, em báo cáo só mức điều khiển ngẫu nhiên 10%, 50% 80% 17 4.2.1 Mức điều khiển: 10% Mô với mức điều khiển 10% (Hình 4.2): Hin ̀ h 4.2 Mơ với mức điều khiển 10% Khi dùng Oscilloscope kiểm tra, thu hình 4.2: Hin ̀ h 4.3 Thơng số xung PWM mức điều khiển 10% Theo hình 4.3, em thấy xung PWM có: - Chu kỳ xung: 10.15ms - Thời gian xung mức cao: 1.05ms  Tần sô xung: 98.5Hz, độ rộng xung: 10.3%  Sai số tần số điều khiển 1.5%, sai số độ rộng xung 0.3% 18 4.2.2 Mức điều khiển 50% Mô với mức điều khiển 50% (Hình 4.4): Hin ̀ h 4.4 Mô với mức điều khiển 50% Kiểm tra với Oscilloscope (Hình 4.5): Hin ̀ h 4.5 Thơng số xung PWM mức điều khiển 50% Theo hình 4.5, em thấy xung PWM có: - Chu kỳ xung: 10.10ms - Thời gian xung mức cao: 5.05ms  Tần sô xung: 99Hz, độ rộng xung: 50% Sai số tần số điều khiển 1.0%, sai số độ rộng xung 0% 19 4.2.1 Mức điều khiển 80% Mô với mức điều khiển 80% (Hình 4.6): Hin ̀ h 4.6 Mô với mức điều khiển 80% Kiểm tra với Oscilloscope (Hình 4.7): Hin ̀ h 4.7 Thơng số xung PWM mức điều khiển 80% Theo hình 4.7, em thấy xung PWM có: - Chu kỳ xung: 10.10ms - Thời gian xung mức cao: 8.05ms  Tần sô xung: 99Hz, độ rộng xung: 79.7% Sai số tần số điều khiển 1.0%, sai số độ rộng xung 0.3% 20 4.3 Kiểm tra hoạt động mức MAX Tương tự mức STOP, mức MAX dùng ngõ tín hiệu điều khiển riêng biệt Đối với mức này, yêu cầu xung độ rộng 100% (ln mức cao) Kết thu mô mức MAX thể hình 4.8 sau: Hin ̀ h 4.8 Mơ với mức điều khiển MAX Khi mô phỏng, xung nhận ln giữ mức cao, phù hợp với mục đích điều khiển 4.4 Kết luận Qua việc kiểm tra hoạt động mạch phần mềm mô Proteus, em nhận thấy mạch hoạt động cho kết tương đối tốt, sai số đầu tương đối nhỏ (sai số độ rộng xung PWM 1%) 21 ... điều khiển Khối điều khển có chức điều khiển tốc độ động Với bước nhảy cấp 10% (từ trạng thái đứng yên đến tốc độ định mức) 2.1.4.1 Bảng điều khiển Hin ̀ h 2.4 Bảng điều khiển Hình 1.4 bảng điều. .. tốn “Đo điều khiển tốc độ động DC phương pháp điều chế độ rộng xung sử dụng Vi Điều Khiển 8051” STAR T Khởi tạo: - Khởi tạo ngắt - Khởi tạo giá trị ngắt Ngắt INT0? Y - Nhận giá trị điều khiển Xử... khối động Hin ̀ h 2.2 Khối động Động sử dụng mạch với thông số sau: - Điện áp định mức: Uđm= 5V - Tốc độ định mức: Nđm= 20 vòng/ giây Motor DC có cảm biến tốc độ với ba đầu ra, hai đầu có độ phân

Ngày đăng: 23/04/2019, 19:29

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan