Bối cảnh và vấn đề nghiên cứu

Trong lĩnh vực sản xuất công nghiệp và đời sống, các hệ thống truyền động sử dụng động cơ điện ngày càng chiếm ưu thế so với động cơ đốt trong dùng nhiên liệu xăng, dầu hay khí đốt nhờ hiệu suất năng lượng cao, cấu tạo gọn gàng, giá thành hợp lý, cùng khả năng điều khiển khởi động, đảo chiều, hãm dừng và thay đổi tốc độ linh hoạt. Trong các nhóm động cơ điện, động cơ điện một chiều (DC) thường được ưu tiên lựa chọn cho các ứng dụng đòi hỏi dải điều chỉnh tốc độ rộng, thường xuyên đảo chiều quay và kiểm soát quá trình tăng giảm tốc mượt mà hơn so với động cơ xoay chiều.

Để điều khiển động cơ DC, các phương pháp truyền thống bao gồm thay đổi điện áp đặt vào phần ứng, điều chỉnh từ thông kích từ hoặc ghép thêm điện trở phụ vào mạch phần ứng. Cùng với sự phát triển của kỹ thuật điện tử, việc ứng dụng các bộ vi điều khiển (MCU) chuyên dụng kết hợp mạch công suất bán dẫn và cảm biến tốc độ đã trở thành giải pháp tối ưu nhằm nâng cao độ chính xác và giảm thiểu không gian lắp đặt. Đồ án tập trung nghiên cứu, thiết kế hệ thống điều khiển và đo lường tốc độ quay của động cơ điện một chiều sử dụng vi điều khiển 8-bit AT89C52 (họ 8051) kết hợp cảm biến quang học encoder.

Theo công bố của nhóm tác giả, nhiệm vụ và yêu cầu kỹ thuật của đề tài bao gồm 7 nội dung cụ thể:

  1. Thiết kế mạch điện điều khiển động cơ DC 12V đáp ứng các yêu cầu: quay thuận, quay nghịch, tăng tốc độ, giảm tốc độ và đảo chiều quay động cơ.
  2. Thực hiện thao tác điều chỉnh các chức năng thông qua hệ thống phím bấm bao gồm: nút khởi động, nút điều khiển quay thuận, nút điều khiển quay ngược, nút tăng tốc, nút giảm tốc và nút dừng động cơ để thiết lập tốc độ làm việc theo mong muốn.
  3. Xây dựng hệ thống hiển thị tốc độ làm việc chi tiết trên LED 7 đoạn (hoặc LCD), đồng thời tích hợp các đèn LED đơn thông báo trạng thái hoạt động (quay thuận, quay ngược, dừng).
  4. Làm quen với nguyên lý và phương pháp điều khiển đối tượng động cơ điện một chiều trong thực tế.
  5. Khảo sát hoạt động thực tế của các linh kiện điện tử, các vi mạch tích hợp (IC) và cảm biến tốc độ quang học.
  6. Xây dựng và tối ưu hóa chương trình điều khiển cho vi điều khiển thực hiện chính xác các yêu cầu đặt ra.
  7. Đề xuất các hướng phát triển nhằm nâng cao chất lượng hệ thống với tiêu chí chi phí kinh tế phù hợp.

Đối tượng và phạm vi nghiên cứu:

  • Đối tượng nghiên cứu: Động cơ điện một chiều DC 12V tích hợp đĩa mã hóa xung; vi điều khiển AT89C52 (họ vi điều khiển MCS-51); cảm biến quang học encoder 100 xung/vòng; mạch cầu H tích hợp IC L298; mạch hiển thị LED 7 đoạn; mạch nguồn ổn áp LM7805.
  • Phạm vi nghiên cứu: Thiết kế phần cứng nguyên lý, gia công mạch in (PCB), tính toán tham số định thời/đếm xung và xây dựng mã nguồn nhúng bằng ngôn ngữ Assembly cho hệ vi điều khiển 8051 hoạt động với thạch anh 12MHz.

Cơ sở lý thuyết và phương pháp

Đề tài sử dụng khung lý thuyết kỹ thuật điện - điện tử và kỹ thuật vi xử lý để giải quyết bài toán đo lường và điều khiển truyền động điện:

  • Kiến trúc vi điều khiển AT89C52 (họ 8051): Vi điều khiển 8-bit có 8KB bộ nhớ Flash ROM trên chip, 128 bytes RAM nội, 32 chân vào/ra (I/O) phân bố trên 4 cổng (Port 0 đến Port 3), 3 bộ định thời/bộ đếm 16-bit (Timer 0, Timer 1, Timer 2), 6 nguyên nhân ngắt với 2 mức ưu tiên, và khối dao động thạch anh tích hợp. Hệ thống thanh ghi chức năng đặc biệt (SFR) được sử dụng để điều khiển hoạt động ngoại vi bao gồm TMOD, TCON, T2CON, IE, IP, PSW, DPTR, SBUF và PCON.
  • Lý thuyết cảm biến đo tốc độ (Encoder): Nguyên lý chuyển đổi chuyển động cơ học thành chuỗi xung điện áp vuông. Đồ án khảo sát hai dạng cấu trúc: encoder cảm ứng điện từ và encoder quang học tương đối (đếm xung). Tốc độ quay $n$ (vòng/phút) của động cơ liên hệ với tần số xung $f$ qua biểu thức: $$n = \frac{60f}{p} = \frac{60f}{N}$$ Trong đó $p$ là số răng/số lỗ trên đĩa mã hóa, $N$ là số xung trên một vòng quay của encoder, $f$ là tần số tín hiệu xung thu được.
  • Lý thuyết điều khiển động cơ điện một chiều và mạch cầu H: Nguyên lý tạo mômen điện từ dựa trên tương tác giữa từ trường stator và dòng điện chạy trong dây quấn phần ứng rotor theo lực Lorentz ($F = B \cdot I \cdot l$). Phương pháp điều chế độ rộng xung (PWM) được sử dụng để thay đổi điện áp trung bình cấp vào phần ứng. Mạch cầu H 4 khóa bán dẫn (tích hợp trong IC L298) cho phép cấp điện áp đảo cực tính lên động cơ để điều khiển chiều quay (thuận/nghịch), hãm dừng và ngăn chặn các trạng thái ngắn mạch nguồn.
  • Phương pháp nghiên cứu thực tế:
    • Phương pháp phân tích - tính toán giải tích: Tính toán giá trị nạp cho các thanh ghi định thời (Timer 0), bộ đếm (Timer 1) và bộ phát PWM (Timer 2) dựa trên tần số thạch anh 12MHz và độ phân giải encoder 100 xung/vòng.
    • Phương pháp thiết kế và gia công kỹ thuật: Thiết kế sơ đồ nguyên lý, bố trí linh kiện, thiết kế mạch in (PCB) cho các khối nguồn, khối công suất và khối xử lý.
    • Phương pháp lập trình và gỡ lỗi hệ thống nhúng: Soạn thảo chương trình điều khiển bằng hợp ngữ Assembly, cấu hình trực tiếp các cổng vào/ra và các chương trình phục vụ ngắt (ISR).

Thiết kế và triển khai

Hệ thống điều khiển và đo tốc độ động cơ được xây dựng theo cấu trúc phân khối chức năng khép kín, kết hợp giữa phần cứng mạch điện và phần mềm điều khiển trên chip.

1. Phân tích kiến trúc phần cứng

Hệ thống phần cứng bao gồm các khối chức năng chính:

  • Khối nguồn nuôi: Sử dụng hai đường nguồn độc lập để chống nhiễu công nghiệp. Đường nguồn 12V DC cấp trực tiếp cho mạch công suất động cơ. Đường nguồn 5V DC sử dụng IC ổn áp tuyến tính LM7805 kết hợp 4 tụ điện lọc nguồn (chống nhiễu tần số cao và san phẳng điện áp) cùng 1 LED báo nguồn, cung cấp mức điện áp chuẩn TTL (từ 4,75V đến 5,25V) cho vi điều khiển và các IC số.
  • Khối xử lý trung tâm (AT89C52): Sử dụng thạch anh ngoài 12MHz (chu kỳ máy $T_0 = 1\mu\text{s}$). Port 0 kết hợp điện trở treo 10kΩ dùng để xuất dữ liệu giải mã LED 7 đoạn; Port 1 nhận tín hiệu điều khiển từ bàn phím; Port 2 xuất xung PWM và tín hiệu logic điều khiển hướng đến L298; Port 3 nhận xung encoder và thực thi các chương trình ngắt.
  • Khối đo tốc độ (Encoder): Gồm 1 đĩa mã hóa có lỗ khoét gắn đồng trục động cơ, 1 LED phát hồng ngoại, 1 phototransistor và IC khuếch đại thuật toán (OP-AMP) làm mạch so sánh tín hiệu kết hợp biến trở định ngưỡng R9. Khi trục quay, chùm tia hồng ngoại bị ngắt quãng liên tục làm thay đổi nội trở phototransistor, tạo ra chuỗi xung vuông mức 0V và 5V đưa về chân ngắt và bộ đếm của vi điều khiển.
  • Khối công suất (IC L298): Mạch tích hợp kiểu vỏ Multiwatt 15 chân, chứa cầu H kép với dòng tải cực đại 4A, điện áp hoạt động lên đến 46V, tích hợp mạch bảo vệ quá nhiệt. Bốn trạng thái đóng/ngắt của các van bán dẫn được điều khiển bởi vi điều khiển theo bảng trạng thái logic:
Khóa A1 Khóa B1 Khóa A2 Khóa B2 Trạng thái hoạt động Ghi chú vận hành
1 0 1 0 Động cơ quay thuận Dòng điện chạy qua A1 $\rightarrow$ Động cơ $\rightarrow$ A2
0 1 0 1 Động cơ quay ngược Dòng điện chạy qua B1 $\rightarrow$ Động cơ $\rightarrow$ B2
1 1 0 0 Hãm động cơ Hãm động năng/ngắn mạch phần ứng
0 0 1 1 Hãm động cơ Hãm động năng/ngắn mạch phần ứng
1 0 0 1 Ngắn mạch nguồn Trạng thái cấm (gây chập cháy mạch)
0 1 1 0 Ngắn mạch nguồn Trạng thái cấm (gây chập cháy mạch)
  • Khối hiển thị và cảnh báo: Gồm module 4 LED 7 đoạn (sử dụng loại Anode chung hoặc Cathode chung) ghép nối qua điện trở hạn dòng 330Ω để duy trì dòng điện an toàn 10mA - 20mA trên mỗi thanh LED, kết hợp các LED đơn hiển thị trạng thái quay thuận, quay ngược và dừng.

2. Tính toán tham số và thiết kế phần mềm

Đồ án phân tích hai phương án đo tốc độ và lựa chọn phương án tối ưu dựa trên tài nguyên phần cứng:

Tiêu chí kỹ thuật Phương án 1 (Đếm số xung trong thời gian mẫu $T_s$) Phương án 2 (Đo khoảng thời gian giữa 2 cạnh xung)
Nguyên lý Đếm tổng số xung $count$ xuất hiện trong chu kỳ lấy mẫu $T_s$ cố định. Đo độ rộng thời gian $t$ giữa 2 sườn xuống liên tiếp của xung encoder.
Phần cứng yêu cầu 1 Timer định thời ($T_s$) + 1 Counter đếm xung. 1 Timer định thời độ phân giải cao + Chân ngắt ngoài/bắt tín hiệu (Capture).
Độ phức tạp thuật toán Đơn giản, tính toán trực tiếp, chiếm ít thời gian CPU. Phức tạp, đòi hỏi thiết bị phụ trợ hoặc giao tiếp ngoại vi tốc độ cao.
Giới hạn kỹ thuật Tùy thuộc vào thời gian lấy mẫu $T_s$ và độ phân giải encoder. Chiếm hầu hết thời gian CPU nếu đo ở tốc độ vòng quay lớn.
Quyết định lựa chọn Được lựa chọn do thuật toán đơn giản, tiết kiệm linh kiện. Không chọn.

Xác lập tham số đo lường:

  • Với encoder có độ phân giải $N = 100$ xung/vòng, công thức tính tốc độ động cơ là: $$n = \frac{60 \cdot count}{N \cdot T_s} = \frac{60 \cdot count}{100 \cdot T_s}$$
  • Để tối ưu hóa thuật toán hiển thị, nhóm tác giả chọn thời gian lấy mẫu $T_s$ thỏa mãn điều kiện $\frac{60}{100 \cdot T_s} = 1 \Rightarrow T_s = 0{,}6\text{s}$. Khi đó, giá trị tốc độ quay $n$ (vòng/phút) chính bằng số xung $count$ đếm được trong $0{,}6\text{s}$.
  • Chu kỳ máy của AT89C52 với thạch anh 12MHz là $T_0 = 1\mu\text{s}$. Tổng số xung nhịp cần đếm trong $0{,}6\text{s}$ là: $$\text{Số nhịp} = \frac{0{,}6}{10^{-6}} = 600.000\text{ nhịp}$$
  • Do bộ định thời 16-bit đếm tối đa 65.536 nhịp, chương trình chia $0{,}6\text{s}$ thành 12 khoảng định thời nhỏ, mỗi khoảng dài $50.000\mu\text{s}$ ($12 \times 50.000\mu\text{s} = 600.000\mu\text{s}$).
  • Giá trị nạp ban đầu cho Timer 0 ở Chế độ 1 (16-bit) là: $$65.536 - 50.000 = 15.536\text{ (Thập phân)} = \text{3CB0H (Hexadecimal)}$$ $\Rightarrow$ Nạp TH0 = 0x3C và TL0 = 0xB0. Biến đếm ngắt lặp lại đủ 12 lần sẽ hoàn tất một chu kỳ lấy mẫu $0{,}6\text{s}$.
  • Timer 1 được cấu hình ở Chế độ 1 làm Counter đếm xung từ chân P3.5.

Xác lập tham số điều chế độ rộng xung PWM:

  • Tần số điều chế PWM được chọn là $f = 1\text{kHz}$ (chu kỳ $T = 1.000\mu\text{s}$).
  • Dải điều chỉnh tốc độ gồm 10 cấp (từ 10% đến 100% chu kỳ nhiệm vụ).
  • Sử dụng Timer 2 ở chế độ tự nạp lại 16-bit để phát tín hiệu ngắt định thời mỗi $100\mu\text{s}$. Giá trị nạp vào thanh ghi RCAP2H và RCAP2L là: $$65.536 - 100 = 65.436\text{ (Thập phân)} = \text{FF9CH (Hexadecimal)}$$ $\Rightarrow$ Nạp RCAP2H = 0xFF và RCAP2L = 0x9C.

Nội dung chính theo từng chương

CHƯƠNG I: GIỚI THIỆU CHUNG

Chương này tổng quan về vai trò của động cơ điện trong công nghiệp, phân loại các dòng động cơ 3 pha, 1 pha và động cơ điện một chiều. Tác giả chỉ ra các ưu điểm của động cơ DC trong các hệ thống đòi hỏi điều chỉnh vận tốc liên tục và đảo chiều linh hoạt. Chương I xác lập 7 mục tiêu kỹ thuật, danh mục linh kiện chính (AT89C52, encoder quang, động cơ 12V, LED 7 đoạn, IC nguồn, tụ điện, điện trở) và tiêu chuẩn thiết kế hệ thống điều khiển tốc độ động cơ DC bằng vi điều khiển họ 8051.

CHƯƠNG II: SƠ ĐỒ KHỐI

Chương II mô tả sơ đồ cấu trúc tổng thể và phân định chức năng của từng khối trong mạch điện:

  • Khối vi xử lý (AT89C52): Trung tâm điều khiển, tiếp nhận xung encoder, xử lý ngắt, tính toán vận tốc, phát xung PWM và điều khiển xuất dữ liệu.
  • Khối cảm biến (Encoder): Gắn đồng trục động cơ, chuyển đổi tốc độ góc thành chuỗi xung điện áp vuông đưa về vi điều khiển.
  • Khối công suất (L298): Mạch cầu H chịu dòng cao, nhận tín hiệu PWM và logic hướng để điều khiển trực tiếp động cơ DC 12V.
  • Khối nguồn ổn áp: Cung cấp nguồn 5V DC chuẩn TTL cho IC số và nguồn 12V DC riêng biệt cho phần động lực.
  • Khối hiển thị & Phím bấm: Hiển thị tốc độ bằng LED 7 thanh, hiển thị trạng thái bằng LED đơn và tiếp nhận thao tác điều khiển từ người dùng.

CHƯƠNG III: CƠ SỞ LÝ THUYẾT GIẢI QUYẾT BÀI TOÁN

Chương này trình bày toàn diện cơ sở lý thuyết vi xử lý và phần tử chấp hành:

  • Cấu trúc phần cứng vi điều khiển họ 8051: Sơ đồ 40 chân, chức năng dồn kênh Port 0, các chân điều khiển /PSEN, ALE, /EA, RST, XTAL1, XTAL2.
  • Bản đồ bộ nhớ: 128 bytes RAM nội (chia thành 4 bank thanh ghi R0-R7, vùng RAM định địa chỉ bit, vùng RAM đa dụng) và không gian 21 thanh ghi chức năng đặc biệt (SFR).
  • Chế độ hoạt động của các bộ định thời (Timer 0, Timer 1: Mode 0 13-bit, Mode 1 16-bit, Mode 2 tự nạp 8-bit, Mode 3 định thời phân chia; Timer 2 chế độ tự nạp 16-bit) và hệ thống 6 nguồn ngắt (IE, IP, thứ tự ưu tiên ngắt cứng).
  • Cấu tạo và nguyên lý hoạt động của cảm biến Encoder quang học đếm xung (cấu trúc phát - thu hồng ngoại, đĩa mã hóa, phân biệt chiều quay qua 2 kênh lệch pha $90^\circ$, sơ đồ 4 dây: Đỏ 5V, Xanh GND, Vàng và Trắng tín hiệu).
  • Cấu tạo LED 7 đoạn (Anode chung, Cathode chung), phương pháp quét và bảng mã hiển thị.
  • Nguyên lý hoạt động mạch cầu H, phân tích chi tiết 16 trạng thái khóa van bán dẫn và các thông số kỹ thuật của IC L298 (chịu áp 46V, dòng cực đại 4A, chân Multiwatt 15).
  • Cấu tạo stator, rotor, hệ thống chổi than - cổ góp và phương trình lực điện từ của động cơ điện một chiều.

CHƯƠNG IV: THIẾT KẾ VÀ GIA CÔNG PHẦN CỨNG

Chương IV trình bày sơ đồ nguyên lý và thiết kế mạch in chi tiết:

  • Thiết kế khối nguồn ổn áp 5V sử dụng IC LM7805, diode chống ngược dòng, hệ thống 4 tụ lọc chống nhiễu và san phẳng gợn sóng điện áp.
  • Mạch ghép nối cảm biến quang học sử dụng biến trở R9 và bộ khuếch đại thuật toán OP-AMP làm tầng so sánh điện áp, tạo xung vuông biên độ chuẩn 0 - 5V chống nhiễu kích ngắt vi điều khiển.
  • Sơ đồ mạch in (PCB) liên kết vi điều khiển AT89C52 với IC công suất L298, khối LED 7 đoạn, hệ thống điện trở hạn dòng 330Ω và điện trở treo cổng Port 0.

CHƯƠNG V: TÍNH TOÁN THAM SỐ VÀ THIẾT KẾ PHẦN MỀM

Chương V là trọng tâm tính toán kỹ thuật và hiện thực hóa thuật toán:

  • Phân tích và lựa chọn phương án đo xung theo thời gian lấy mẫu $T_s = 0{,}6\text{s}$ trên encoder $N = 100$ xung/vòng.
  • Tính toán giá trị nạp thanh ghi Timer 0 (TH0 = 0x3C, TL0 = 0xB0) kết hợp đếm ngắt 12 chu kỳ để định thời chuẩn $0{,}6\text{s}$ với tần số thạch anh 12MHz.
  • Tính toán giá trị nạp Timer 2 (RCAP2H = 0xFF, RCAP2L = 0x9C) định thời chu kỳ ngắt $100\mu\text{s}$ tạo xung PWM tần số 1kHz với 10 cấp điều khiển công suất.
  • Xây dựng lưu đồ thuật toán chương trình chính, chương trình con tạo trễ, chương trình con quét hiển thị LED, chương trình ngắt Timer 0 và ngắt Timer 2.
  • Cung cấp toàn bộ mã nguồn chương trình nhúng viết bằng ngôn ngữ Assembly họ 8051 (khởi tạo thanh ghi TMOD = 0x51, IE = 0xAA, T2CON = 0x04, cấu hình các hàm KHOITAO, HIENTHISO, QUAYTHUAN, TANGTOC, GIAMTOC, DUNG, QUAYNGUOC).

Kết quả và đóng góp

1. Kết quả kỹ thuật đạt được

  • Chế tạo hoàn chỉnh phần cứng: Thiết kế và chế tạo thành công bo mạch điều khiển tích hợp vi điều khiển AT89C52, mạch công suất L298, mạch nguồn ổn định 5V/12V và khối hiển thị tốc độ trên LED 7 đoạn.
  • Hiện thực hóa thuật toán đo tốc độ: Hệ thống đo và hiển thị chính xác tốc độ quay thực tế của động cơ DC thông qua cảm biến encoder quang học 100 xung/vòng với chu kỳ lấy mẫu $T_s = 0{,}6\text{s}$, không cần thực hiện các phép tính chia phức tạp trong vi điều khiển.
  • Điều khiển truyền động đa chức năng: Điều khiển động cơ hoạt động ổn định ở 10 cấp tốc độ bằng phương pháp điều chế PWM tần số 1kHz, thực hiện chính xác các lệnh phím bấm: khởi động, tăng tốc, giảm tốc, dừng mềm/hãm dừng, đảo chiều quay thuận/nghịch mà không xảy ra hiện tượng ngắn mạch cầu H.

2. Đóng góp về mặt giải pháp kỹ thuật

  • Giải pháp tối ưu hóa tính toán số nguyên: Bằng cách chọn chu kỳ lấy mẫu $T_s = 0{,}6\text{s}$ phù hợp với encoder 100 xung/vòng, đồ án đã quy đổi trực tiếp giá trị thanh ghi đếm count thành tốc độ vòng/phút ($n = count$), loại bỏ hoàn toàn các phép toán nhân/chia dấu phẩy động phức tạp trên vi điều khiển 8-bit có tài nguyên hạn chế.
  • Phân tách nguồn động lực và nguồn điều khiển: Ứng dụng giải pháp cấp nguồn kép kết hợp mạch lọc 4 tụ và mạch so sánh OP-AMP, triệt tiêu xung nhiễu điện từ do chổi than động cơ DC gây ra đối với mạch số vi điều khiển.

Hạn chế và hướng nghiên cứu tiếp

1. Hạn chế của hệ thống

  • Chu kỳ lấy mẫu $T_s = 0{,}6\text{s}$ là khoảng thời gian tương đối dài, khiến đáp ứng hiển thị tốc độ có độ trễ nhất định khi động cơ thay đổi tải đột ngột hoặc tăng giảm tốc nhanh.
  • Hệ thống điều khiển tốc độ theo vòng hở (Open-loop control), chưa tích hợp thuật toán điều khiển bù sai số tự động (như bộ điều khiển PID số) để tự động duy trì ổn định tốc độ khi có tải biến thiên.
  • Thiết bị hiển thị LED 7 đoạn chỉ hiển thị được thông số vận tốc dạng số, chưa hiển thị trực quan các thông số cấu hình mở rộng hoặc menu cài đặt.

2. Hướng phát triển của đề tài

  • Nghiên cứu tích hợp màn hình tinh thể lỏng (LCD) để mở rộng giao diện giám sát, hiển thị đồng thời tốc độ đặt, tốc độ thực, dòng điện tiêu thụ và chiều quay.
  • Ứng dụng các thuật toán điều khiển kín (Closed-loop PID) trên vi điều khiển nhằm tự động ổn định tốc độ động cơ khi tải trọng thay đổi.
  • Bổ sung cổng truyền thông nối tiếp UART/RS232 để kết nối và truyền dữ liệu giám sát tốc độ về máy tính (PC).

Giá trị tham khảo

Đồ án là tài liệu kỹ thuật có giá trị tham khảo ứng dụng thực tế cao:

  • Đối tượng thụ hưởng: Sinh viên, giảng viên và kỹ sư thuộc các ngành Kỹ thuật Điện - Điện tử, Tự động hóa, Cơ điện tử và Kỹ thuật Máy tính đang thực hiện các đồ án môn học Vi điều khiển, Hệ thống nhúng, Điện tử công suất hoặc Truyền động điện.
  • Nội dung giá trị nhất:
    • Phương pháp tính toán giá trị nạp thanh ghi định thời (TH0, TL0, RCAP2H, RCAP2L) cho họ vi điều khiển MCS-51.
    • Sơ đồ mạch giao tiếp công suất IC L298 và mạch lọc chuẩn hóa tín hiệu xung quang học sử dụng OP-AMP.
    • Kỹ thuật lập trình hợp ngữ Assembly hợp thức hóa quá trình xử lý ngắt kép (vừa đếm xung, vừa định thời mẫu, vừa phát xung PWM).

Câu hỏi thường gặp

1. Tại sao nhóm tác giả lại chọn thời gian lấy mẫu $T_s = 0{,}6\text{s}$ để đo tốc độ động cơ?

Xuất phát từ công thức vận tốc $n = \frac{60 \cdot count}{N \cdot T_s}$ với encoder có $N = 100$ xung/vòng. Khi chọn $T_s = 0{,}6\text{s}$, hệ số $\frac{60}{100 \times 0{,}6} = 1$, giúp tốc độ động cơ $n$ (vòng/phút) bằng đúng số xung count đếm được trong bộ đếm. Điều này giúp vi điều khiển 8051 không cần thực hiện phép chia phức tạp, tiết kiệm bộ nhớ và chu kỳ máy.

2. Vi điều khiển AT89C52 sử dụng các bộ định thời (Timer) nào và đảm nhận những vai trò gì?

Đồ án sử dụng cả 3 bộ định thời của AT89C52:

  • Timer 0 (Mode 1 16-bit): Định thời chu kỳ lấy mẫu $50.000\mu\text{s}$ (lặp lại 12 lần để đủ chu kỳ lấy mẫu $T_s = 0{,}6\text{s}$).
  • Timer 1 (Mode 1 16-bit): Hoạt động ở chế độ Counter đếm sườn xung phát ra từ encoder.
  • Timer 2 (Chế độ tự nạp 16-bit): Định thời chu kỳ ngắt $100\mu\text{s}$ để tạo xung PWM tần số 1kHz điều khiển 10 cấp tốc độ động cơ.

3. Vì sao phải sử dụng hai đường nguồn 5V và 12V riêng biệt trong thiết kế mạch?

Đường nguồn 12V DC công suất lớn dùng để cấp điện cho động cơ một chiều và mạch công suất L298. Đường nguồn 5V DC qua IC ổn áp LM7805 cung cấp điện áp chuẩn TTL ổn định cho vi điều khiển AT89C52 và các IC số, giúp triệt tiêu hiện tượng sụt áp, nhiễu xung điện từ do quá trình đóng cắt động cơ gây treo hoặc cháy hỏng vi điều khiển.

4. IC công suất L298 có những thông số định mức nào và cần lưu ý gì khi điều khiển mạch cầu H?

IC L298 chịu được điện áp nguồn cấp tối đa lên đến 46V, tổng dòng điện tải một chiều liên tục lên tới 4A và tích hợp cơ chế bảo vệ quá nhiệt. Khi điều khiển cầu H, cần tuyệt đối tránh các tổ hợp trạng thái đóng đồng thời hai khóa trên cùng một nhánh cầu (như $A_1=1, B_2=1$ hoặc $B_1=1, A_2=1$) vì sẽ gây hiện tượng ngắn mạch trực tiếp nguồn điện, dẫn đến cháy nổ tầng công suất.


Kết luận

Đồ án "Đo tốc độ quay của động cơ dùng 8051" đã giải quyết thành công bài toán đo lường và điều khiển truyền động động cơ điện một chiều 12V bằng hệ thống nhúng vi điều khiển AT89C52. Toàn bộ kiến trúc phần cứng từ khối nguồn ổn áp, khối xử lý, khối công suất cầu H L298 đến cảm biến encoder quang học và LED hiển thị đều được thiết kế, chế tạo hoàn chỉnh. Việc phối hợp linh hoạt 3 bộ định thời cùng ngôn ngữ lập trình Assembly đã tối ưu hóa hiệu năng tính toán số học, mang lại độ chính xác cao trong việc đo tốc độ và điều chế PWM 10 cấp. Công trình là tài liệu tham khảo kỹ thuật hữu ích cho công tác đào tạo và nghiên cứu ứng dụng vi điều khiển họ MCS-51 trong điều khiển tự động.