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

Đề tài khóa luận tốt nghiệp "Thiết kế và thi công mạch điều khiển đèn tín hiệu giao thông" được sinh viên Lê Quốc Hưng (Lớp 98 KĐĐ3/7, Khóa 1998 – 2002, Ngành Kỹ thuật điện tử, Khoa Điện – Điện tử, Trường Đại học Sư phạm Kỹ thuật Thành phố Hồ Chí Minh) thực hiện dưới sự hướng dẫn của thầy Lê Thanh Đạo trong thời gian từ ngày 03/12/2001 đến ngày 02/03/2002.

Bối cảnh thực tiễn của nghiên cứu xuất phát từ thực trạng hạ tầng giao thông tại Thành phố Hồ Chí Minh trong giai đoạn thập niên 1990 và đầu những năm 2000. Khi đó, lưu lượng phương tiện gia tăng nhanh chóng theo đà phát triển kinh tế, trong khi hệ thống đường sá còn nhiều hạn chế và các trụ đèn tín hiệu giao thông còn thưa thớt, thường xuyên gặp sự cố hư hỏng tại các nút giao trọng điểm như tuyến Nam Kỳ Khởi Nghĩa, Cách Mạng Tháng Tám, Xô Viết Nghệ Tĩnh, Nguyễn Thị Minh Khai... Tình trạng này dẫn đến hiện tượng ùn tắc giao thông, gia tăng tai nạn và gây mất an ninh trật tự công cộng.

Mục tiêu và nhiệm vụ nghiên cứu của đồ án bao gồm:

  1. Khảo sát nguyên lý hoạt động và kiến trúc của các mạch điều khiển tín hiệu đèn giao thông sử dụng vi mạch số rời truyền thống.
  2. Nghiên cứu cấu trúc phần cứng, tập lệnh và các ngoại vi của vi điều khiển 8951 (họ MSC-51).
  3. Thiết kế sơ đồ nguyên lý và thi công mô hình phần cứng điều khiển đèn tín hiệu giao thông tại ngã tư.
  4. Xây dựng chương trình điều khiển bằng hợp ngữ Assembly (ASM51) để tạo chu kỳ đèn tuần tự, đếm lùi thời gian và quét chuyển đổi các chế độ hoạt động.

Phạm vi nghiên cứu giới hạn ở mô hình điều khiển tín hiệu đèn giao thông tại một ngã tư giao lộ hai chiều, tích hợp bộ hiển thị thời gian đếm lùi bằng LED 7 đoạn, chế độ đèn báo cảnh báo ban đêm (chớp tắt đèn vàng) và hai chế độ ưu tiên cưỡng bức tuyến đường bằng công tắc chuyển mạch.


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

Đồ án vận dụng lý thuyết mạch số, kỹ thuật vi xử lý – vi điều khiển và phương pháp thiết kế hệ thống nhúng thực nghiệm:

  • Khung lý thuyết vi mạch số: Phân tích các tầng logic số, mạch định thời dùng IC NE555, bộ đếm nhị phân/BCD (74LS93, 4040, HEF4017B), mạch giải mã (4514B), cổng logic (4081, 4071) và mạch so sánh độ lớn (7485).
  • Kiến trúc vi điều khiển họ MSC-51 (Intel 8951): Khảo sát cấu trúc Harvard với bộ nhớ chương trình và dữ liệu tách biệt; cấu hình 4 cổng xuất nhập 8-bit (Port 0 – Port 3); các bộ định thời Timer 0/Timer 1 16-bit; bộ truyền thông nối tiếp dị bộ UART; hệ thống 5 nguồn ngắt; các thanh ghi chức năng đặc biệt SFR (TMOD, TCON, SCON, IE, IP, PCON, PSW, DPTR, SP).
  • Phương pháp nghiên cứu thực nghiệm: Thiết kế mạch nguyên lý, lắp ráp linh kiện trên board thử nghiệm, viết chương trình điều khiển bằng hợp ngữ Assembly trên môi trường MS-DOS, sử dụng trình biên dịch ASM51.EXE và OH.EXE để tạo mã máy .HEX, nạp vào vi điều khiển 8951 và đo kiểm hoạt động thực tế.

Thiết kế và triển khai hệ thống

Hệ thống điều khiển đèn giao thông được thiết kế theo cấu trúc module hóa gồm 5 khối chức năng chính:

1. Khối nguồn ổn áp DC

Bộ nguồn sử dụng biến áp hạ áp từ lưới điện xoay chiều 220V xuống 6,3VAC, qua cầu diode nắn dòng 1A, tụ hóa lọc nguồn $C_1 = 220\mu\text{F}$ và IC ổn áp tuyến tính LM7805 để cung cấp điện áp $+5\text{V}$ DC ổn định cho toàn bộ mạch điều khiển và các linh kiện số.

2. Khối trung tâm và giao tiếp ngoại vi

Khối trung tâm sử dụng vi điều khiển 8951 gắn thạch anh dao động $12\text{MHz}$ cùng mạch tạo xung Reset tự động và Reset thủ công bằng nút nhấn. Vi điều khiển tiếp nhận tín hiệu điều khiển chế độ và điều phối hai khối hiển thị:

  • Khối hiển thị trạng thái đèn: Kết nối qua Port 0 (P0.0 – P0.5) thông qua IC đệm dòng 8-bit 74LS244 để điều khiển 6 LED màu (2 LED Đỏ $Đ_1, Đ_2$, 2 LED Vàng $V_1, V_2$, 2 LED Xanh $X_1, X_2$). Các LED đấu cực Cathode xuống mass; khi chân ra của 74LS244 ở mức logic 1 ($+5\text{V}$), LED sẽ phát sáng.
  • Khối báo thời gian: Sử dụng 01 LED 7 đoạn loại Anode chung (Anode nối nguồn $+5\text{V}$), các đoạn từ $a$ đến $g$ và $dp$ được kết nối trực tiếp với 8 chân của Port 1 (P1.0 – P1.7). Logic điều khiển ở mức thấp (mức 0 làm sáng đoạn, mức 1 làm tắt đoạn).
  • Khối điều khiển chế độ: Sử dụng 3 công tắc gạt $SW_1, SW_2, SW_3$ nối với các chân P2.0, P2.1, P2.2 của Port 2 để lựa chọn chế độ vận hành.
Chân Port 1 Đoạn LED 7 đoạn Mã hiển thị số 0 Mã hiển thị số 1 Mã hiển thị số 2 Mã hiển thị số 9
P1.0 $a$ 0 1 0 0
P1.1 $b$ 0 0 0 0
P1.2 $c$ 0 0 1 0
P1.3 $d$ 0 1 0 0
P1.4 $e$ 0 1 0 1
P1.5 $f$ 0 1 1 0
P1.6 $g$ 1 1 0 0
P1.7 $dp$ 1 1 1 1
Giá trị Hex — 0C0H 0F9H 0A4H 090H

3. Thiết kế phần mềm điều khiển

Chương trình được viết trong tập tin nguồn CONG1.ASM, sử dụng Timer 0 ở Mode 1 (định thời 16-bit) để tạo trễ chuẩn 1 giây (DELAY). Vòng trễ lặp 20 lần chu kỳ tràn $50\text{ms}$ thông qua lệnh DJNZ R7, DEL1.

Thuật toán điều phối phân nhánh kiểm tra Port 2 liên tục trong mỗi giây đếm:

  • Nếu Port 2 nhận giá trị 0FFH ($SW_1=1, SW_2=1, SW_3=1$): Thực hiện chu trình đèn giao thông tự động tuần tự.
  • Nếu Port 2 nhận giá trị 0FEH ($SW_1=0$): Gọi chương trình con DBAO (chớp tắt 2 đèn vàng $V_1, V_2$).
  • Nếu Port 2 nhận giá trị 0FDH ($SW_2=0$): Gọi chương trình con UT1 (Ưu tiên tuyến 1: $Đ_1$ tắt, $X_2$ sáng cố định).
  • Nếu Port 2 nhận giá trị 0FBH ($SW_3=0$): Gọi chương trình con UT2 (Ưu tiên tuyến 2: $Đ_2$ tắt, $X_1$ sáng cố định).

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

Chương I: Mở Đầu

Chương này giới thiệu vai trò của ngành điện tử trong sự nghiệp công nghiệp hóa – hiện đại hóa, phân tích tình trạng ách tắc giao thông tại các tuyến đường huyết mạch ở TP. Hồ Chí Minh và sự cần thiết của hệ thống đèn tín hiệu giao thông thông minh. Tác giả xác định giới hạn nghiên cứu tập trung vào mô hình ngã tư có hiển thị đồng hồ thời gian đếm lùi và tích hợp các chế độ ưu tiên.

Chương II: Giới Thiệu Về Một Số Mạch Điều Khiển Đèn Giao Thông

Tác giả phân tích cấu tạo, nguyên lý và đánh giá ưu khuyết điểm của hai dạng mạch dùng IC số rời:

  • Mạch 1: Sử dụng NE555 (tạo xung 1Hz), IC đếm 74LS93 chuyển sang mã BCD, IC phân kênh 4514B (4 bit sang 16 bit), IC 4081 reset trạng thái 13, cụm IC 4040, 4042, 7485 để chia khung thời gian hoạt động ngày (5h – 23h) và đêm (23h – 5h), cụm IC 4017 và transistor điều khiển rơ-le. Ưu điểm là tự chuyển chế độ ngày/đêm, nhưng nhược điểm là kích thước mạch lớn, chi phí cao, không có chế độ ưu tiên, không hiển thị số giây và muốn thay đổi thời gian phải hàn nối lại phần cứng.
  • Mạch 2: Sử dụng IC NE555 tạo xung kích cho IC đếm Johnson HEF4017B kết hợp 4 cổng OR của IC 4071 tạo chu kỳ 45s (Xanh 20s, Vàng 5s, Đỏ 25s). Mạch tiêu thụ công suất thấp, chi phí rẻ nhưng chu kỳ cứng nhắc, không hiển thị đồng hồ số và không thể thay đổi thông số dễ dàng.

Dựa trên bảng so sánh kỹ thuật và kinh tế, tác giả quyết định lựa chọn giải pháp sử dụng vi điều khiển 8951 nhờ khả năng lập trình linh hoạt, tối giản phần cứng và dễ dàng mở rộng chức năng.

Tiêu chí so sánh Mạch 1 (IC rời + Logic) Mạch 2 (NE555 + HEF4017B) Mạch thiết kế (Vi điều khiển 8951)
Linh kiện xử lý chính NE555, 74LS93, 4514B, 4081, 7485 NE555, HEF4017B, 4071 Vi điều khiển AT89C51/8951
Kích thước & Độ phức tạp Rất cồng kềnh, nhiều đường mạch Trung bình, mạch đơn giản Nhỏ gọn, tối ưu phần cứng
Hiển thị thời gian đếm lùi Không có Không có Có (LED 7 đoạn đếm lùi theo giây)
Chế độ ưu tiên tuyến đường Không hỗ trợ Không hỗ trợ Có (2 chế độ ưu tiên qua công tắc)
Khả năng thay đổi chu kỳ Phải thiết kế lại phần cứng Thay đổi biến trở (phạm vi hẹp) Viết lại chương trình phần mềm

Chương III: Giới Thiệu Về Các IC Liên Quan

Chương III trình bày toàn diện cấu trúc kỹ thuật của vi điều khiển 8951:

  • Cấu tạo 40 chân DIP: Cổng P0 (bus đa hợp địa chỉ/dữ liệu $AD_0-AD_7$), cổng P1 (I/O thuần túy), cổng P2 (byte cao địa chỉ $A_8-A_{15}$), cổng P3 (tích hợp ngắt ngoài INT0, INT1, định thời T0, T1, điều khiển đọc/ghi RD, WR, truyền thông RxD, TxD).
  • Tổ chức bộ nhớ: 128 byte RAM nội phân chia thành 4 bank thanh ghi ($R_0-R_7$, địa chỉ 00H – 1FH), vùng RAM định vị bit (20H – 2FH), vùng RAM đa dụng (30H – 7FH), và vùng các thanh ghi chức năng đặc biệt SFR (80H – FFH).
  • Hoạt động định thời và cổng nối tiếp: 4 chế độ hoạt động của Timer/Counter, các chế độ truyền dữ liệu nối tiếp UART và các vector ngắt hệ thống.
  • Khảo sát IC đệm 8-bit 74LS244 với 2 cổng điều khiển ba trạng thái ($1\overline{G}, 2\overline{G}$).

Chương IV: Thiết Kế Và Thi Công Mạch

Trình bày chi tiết sơ đồ nguyên lý toàn mạch, tính toán thiết kế khối nguồn ổn áp tuyến tính LM7805, thiết kế tầng lái LED qua 74LS244 và LED 7 đoạn Anode chung.

Phần mềm hệ thống được thiết kế theo cấu trúc modul:

  • Chương trình chính khởi tạo các cổng và chạy vòng lặp tuần tự hai pha giao thông:
    • Pha 1: Tuyến 1 Đỏ ($Đ_1$) và Tuyến 2 Xanh ($X_2$) sáng trong 9 giây, sau đó $Đ_1$ và Tuyến 2 Vàng ($V_2$) sáng trong 1 giây.
    • Pha 2: Tuyến 1 Xanh ($X_1$) và Tuyến 2 Đỏ ($Đ_2$) sáng trong 9 giây, sau đó Tuyến 1 Vàng ($V_1$) và $Đ_2$ sáng trong 1 giây.
  • Các hàm giải mã hiển thị: GMA3 (đếm lùi từ 8 về 0), GMA1 (đếm lùi từ 9 về 1), GMA2 (hiển thị số giây cho đèn vàng).
  • Quy trình biên dịch: Soạn thảo mã ASM bằng trình soạn thảo NC/DOS, dịch ra file CONG1.OBJ và CONG1.LST qua ASM51.EXE, sau đó chuyển đổi sang file mã máy CONG1.HEX bằng OH.EXE để nạp vào ROM của chip 8951.

Chương V: Tổng Kết

Đánh giá toàn diện các thông số thực nghiệm của mô hình, phân tích những ưu điểm và hạn chế còn tồn tại, từ đó đề xuất giải pháp bổ sung phần cứng (IC thời gian thực RTC/EPROM) và phương án nâng cấp tầng công suất sử dụng Triac để kéo tải đèn giao thông công suất lớn $220\text{V}$ trên đường phố.


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

Kết quả đạt được

  • Về phần cứng: Thi công hoàn chỉnh mô hình mạch điều khiển đèn tín hiệu giao thông nhỏ gọn, hoạt động ổn định với nguồn cấp $+5\text{V}$ DC tiêu thụ dòng thấp (chỉ 2 LED giao thông và 1 LED 7 đoạn sáng đồng thời, dòng qua mỗi LED khoảng $20\text{mA}$). Mạch đã qua thử nghiệm vận hành liên tục đảm bảo độ bền linh kiện.
  • Về tính năng:
    1. Điều khiển chính xác chu trình đèn tín hiệu ngã tư: Pha Xanh 9s, Pha Vàng 1s, Pha Đỏ 10s (tổng chu kỳ một hướng là 20s).
    2. Hiển thị số giây đếm lùi trực quan trên LED 7 đoạn tương ứng với từng pha đèn.
    3. Cho phép chuyển đổi tức thời sang trạng thái đèn báo nhấp nháy 2 đèn vàng khi gạt $SW_1$ (P2.0 = 0).
    4. Cho phép cưỡng bức thông xe ưu tiên cho Tuyến 1 khi gạt $SW_2$ (P2.1 = 0) hoặc Tuyến 2 khi gạt $SW_3$ (P2.2 = 0).

Đóng góp thực tiễn

Đề tài cung cấp giải pháp chuyển đổi từ các hệ thống điều khiển cơ khí hoặc mạch số rời phức tạp sang giải pháp vi điều khiển khả trình. Việc thay đổi thời gian sáng của các pha đèn hoặc bổ sung thuật toán điều khiển hoàn toàn có thể thực hiện thông qua hiệu chỉnh mã lệnh phần mềm mà không cần hàn nối hay thay đổi cấu trúc bảng mạch in.


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

Hạn chế được ghi nhận

  • Mạch chưa có tính năng tự động chuyển đổi giữa chế độ điều khiển giao thông ban ngày và chế độ đèn vàng cảnh báo ban đêm theo giờ thực tế.
  • Chu kỳ thời gian sáng của các đèn được lập trình cố định trong mã nguồn, người vận hành chưa thể cài đặt hay thay đổi thời gian đếm trực tiếp bằng bàn phím số ngoại vi.
  • Tầng hiển thị đầu ra mới chỉ dừng lại ở LED mô hình công suất nhỏ, chưa thể điều khiển trực tiếp dàn đèn tín hiệu công suất lớn sử dụng điện áp lưới $220\text{V}$ AC.

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

  1. Tự động hóa theo thời gian thực: Ghép nối thêm bộ nhớ EPROM hoặc IC đồng hồ thời gian thực (RTC). Thiết lập chế độ tự động: từ 05h00 đến 22h00 chạy chương trình đèn giao thông tuần tự; từ 22h00 đến 05h00 sáng hôm sau tự động chuyển sang chế độ đèn vàng chớp tắt.
  2. Nâng cấp tầng công suất thực địa: Thiết kế mạch đệm công suất sử dụng Opto-coupler (cách ly quang) kết hợp Triac hoặc Rơ-le công nghiệp để đóng cắt các cụm đèn giao thông cao áp $220\text{V}$ ngoài các giao lộ thực tế.

Giá trị tham khảo

Tài liệu là nguồn tham khảo hữu ích cho sinh viên các ngành Kỹ thuật Điện – Điện tử, Tự động hóa, Kỹ thuật Máy tính và Cơ điện tử khi thực hiện đồ án môn học Vi xử lý, Đồ án Vi điều khiển họ 8051/8951 hoặc Đồ án tốt nghiệp:

  • Khảo sát lý thuyết: Phần phân tích thanh ghi, tập lệnh và các chế độ định thời Timer của họ MCS-51 trong Chương III được trình bày chi tiết, có thể dùng làm tài liệu học tập thực hành vi điều khiển.
  • Kỹ thuật lập trình hợp ngữ: Cung cấp mã nguồn Assembly (CONG1.ASM) hoàn chỉnh với kỹ thuật quét phím kiểm tra ngắt trạng thái xen kẽ trong vòng lặp tạo trễ Timer, thuật toán giải mã LED 7 đoạn Anode chung.
  • Thiết kế phần cứng: Cung cấp sơ đồ kết nối hoàn chỉnh giữa vi điều khiển 8951, IC đệm dòng 74LS244 và các phần tử hiển thị.

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

1. Đồ án sử dụng vi điều khiển nào và tần số thạch anh là bao nhiêu?
Hệ thống sử dụng vi điều khiển 8951 thuộc họ MSC-51 của Intel, hoạt động với thạch anh ngoài có tần số $12\text{MHz}$ (tương ứng mỗi chu kỳ máy là $1\mu\text{s}$).

2. Tại sao tác giả lựa chọn vi điều khiển 8951 thay cho các mạch IC số rời (NE555, 74LS93, 4017)?
Các mạch dùng IC số rời có cấu trúc phần cứng cồng kềnh, giá thành thi công nhiều linh kiện bị đội cao, không hiển thị được thời gian đếm lùi, không có chế độ ưu tiên và mỗi khi cần thay đổi thời gian sáng của đèn bắt buộc phải thiết kế và thi công lại toàn bộ mạch. Trong khi đó, vi điều khiển 8951 nhỏ gọn, giá thành thấp, tích hợp hiển thị thời gian số và dễ dàng thay đổi chu kỳ đèn chỉ bằng việc nạp lại chương trình.

3. LED 7 đoạn hiển thị thời gian được kết nối vào cổng nào và sử dụng loại Anode hay Cathode chung?
LED 7 đoạn hiển thị thời gian là loại Anode chung (Anode nối nguồn $+5\text{V}$), được kết nối trực tiếp với Port 1 (P1.0 – P1.7) của 8951. Mức logic 0 sẽ làm sáng đoạn LED tương ứng và mức logic 1 sẽ tắt đoạn LED.

4. Chế độ ưu tiên tuyến đường và chế độ đèn báo ban đêm được điều khiển như thế nào?
Hệ thống sử dụng 3 công tắc gạt ($SW_1, SW_2, SW_3$) nối vào các chân P2.0, P2.1, P2.2 của Port 2:

  • $SW_1 = 0$ (Port 2 nhận 0FEH): Chuyển sang chế độ đèn báo (2 đèn vàng chớp tắt).
  • $SW_2 = 0$ (Port 2 nhận 0FDH): Chế độ ưu tiên 1 (Tuyến 1 Đỏ $Đ_1$, Tuyến 2 Xanh $X_2$ sáng cố định).
  • $SW_3 = 0$ (Port 2 nhận 0FBH): Chế độ ưu tiên 2 (Tuyến 2 Đỏ $Đ_2$, Tuyến 1 Xanh $X_1$ sáng cố định).

5. Giải pháp nào được đề xuất để nâng cấp mạch mô hình ra ứng dụng thực tế trên đường phố?
Tác giả đề xuất tích hợp thêm module đồng hồ thời gian thực (RTC) để tự động đổi trạng thái ngày/đêm (5h – 22h và 22h – 5h), đồng thời thiết kế lại tầng công suất ngõ ra sử dụng các linh kiện đóng cắt bán dẫn như Triac kết hợp tầng cách ly quang để điều khiển các bộ đèn giao thông công suất lớn chạy nguồn điện lưới xoay chiều $220\text{V}$.


Kết luận

Đồ án tốt nghiệp "Thiết kế và thi công mạch điều khiển đèn tín hiệu giao thông" của tác giả Lê Quốc Hưng đã hoàn thành các mục tiêu đề ra về mặt lý thuyết lẫn thực nghiệm thi công. Hệ thống giải quyết tốt bài toán điều khiển tín hiệu đèn ngã tư đa chế độ (chạy tuần tự 20s, đếm lùi thời gian trên LED 7 đoạn, cảnh báo đèn vàng và ưu tiên tuyến đường) trên nền tảng vi điều khiển họ MCS-51. Công trình thể hiện quy trình thiết kế phần cứng và lập trình hợp ngữ bài bản, mang lại giá trị tham khảo kỹ thuật cho các đề tài nghiên cứu và ứng dụng vi điều khiển trong lĩnh vực tự động hóa giao thông.