Đồ án Kỹ thuật Vi điều khiển: Hệ thống đèn giao thông ngã 5 dùng PIC16F877A

Đồ án kỹ thuật vi điều khiển hệ thống đèn giao thông ngã 5 sử dụng PIC16F877A. Tìm hiểu giải pháp điều khiển, sơ đồ mạch và code mẫu chi tiết. Ứng dụng thực tế!

Người đăng

Ẩn danh

Thể loại

Đồ án môn học
76
2
0

Phí lưu trữ

30 Point

Mục lục chi tiết

CAM ĐOAN VỀ LIÊM CHÍNH HỌC THUẬT

1. CHƯƠNG 1: GIỚI THIỆU ĐỀ TÀI

1.1. Đặt vấn đề

1.2. Các tính năng chính của đèn giao thông tại ngã 5

1.3. Phương pháp điều khiển đèn giao thông

1.4. Khả năng ứng dụng/mở rộng của đề tài

2. CHƯƠNG 2: LINH KIỆN

2.1. Vi điều khiển sử dụng

2.1.1. Giới thiệu về vi điều khiển PIC16F877A

2.2. Các tài nguyên của vi điều khiển được sử dụng trong đồ án

2.3. Các linh kiện hiển thị

2.3.1. Tìm hiểu về IC 74HC595

2.3.2. Tìm hiểu về led 7 đoạn

2.4. Các linh kiện điện

3. CHƯƠNG 3: NGUYÊN LÝ HOẠT ĐỘNG

3.1. Phân tích cách thức hoạt động của hệ thống

3.1.1. Nguyên lý vận hành của hệ thống

3.2. Phân tích hệ thống đèn giao thông ngã 5

3.3. Sơ đồ nguyên lý của toàn mạch

3.3.1. Sơ đồ chân điều khiển đèn tín hiệu

3.3.2. Sơ đồ chân điều khiển led 7 đoạn

3.3.3. Các sơ đồ nguyên lý phụ

4. CHƯƠNG 4: LƯU ĐỒ THUẬT TOÁN VÀ CHƯƠNG TRÌNH

4.1. Lưu đồ thuật toán

Tóm tắt

I. Khám phá Đèn Giao Thông Ngã 5 Dùng PIC16F877A Đồ Án Kỹ Thuật Quan Trọng

Trong bối cảnh đô thị hóa nhanh chóng, mật độ giao thông ngày càng tăng, đặc biệt tại các nút giao phức tạp như ngã 5, việc điều khiển đèn giao thông hiệu quả trở thành một thách thức lớn. Hệ thống đèn giao thông ngã 5 dùng PIC16F877A được phát triển như một đồ án kỹ thuật vi điều khiển nhằm giải quyết vấn đề này. Đồ án không chỉ tập trung vào việc đảm bảo an toàn giao thông ngã 5 mà còn hướng đến mục tiêu giảm thiểu ùn tắc, đặc biệt vào các giờ cao điểm. Việc ứng dụng vi điều khiển PIC16F877A mang lại nhiều ưu điểm vượt trội, từ chi phí đến khả năng lập trình và mở rộng. Đây là một giải pháp thiết thực, có khả năng ứng dụng cao trong thực tế, góp phần cải thiện hạ tầng giao thông thông minh. Nghiên cứu này phác thảo một hệ thống nhúng hoàn chỉnh, từ sơ đồ nguyên lý đèn giao thông ngã 5 đến lập trình PIC16F877Amô phỏng Proteus đèn giao thông, cung cấp cái nhìn toàn diện về quá trình phát triển một mạch đèn giao thông ngã 5 hiện đại. Mục tiêu chính là xây dựng một hệ thống hoạt động ổn định, linh hoạt, có thể điều chỉnh theo các tình huống giao thông khác nhau, bao gồm cả chế độ bình thường, ưu tiên và ban đêm.

1.1. Tầm quan trọng của điều khiển đèn giao thông thông minh

Hệ thống điều khiển đèn giao thông đóng vai trò then chốt trong việc duy trì trật tự và an toàn giao thông ngã 5. Các nút giao phức tạp như ngã 5 thường là điểm nóng về ùn tắc và tai nạn nếu không có sự điều phối hiệu quả. Một hệ thống thông minh giúp tối ưu hóa điều khiển luồng giao thông, giảm thời gian chờ đợi và nguy cơ va chạm. Theo tài liệu gốc, đèn giao thông không chỉ "đảm bảo sự an toàn giữa các phương tiện tham gia giao thông mà còn giảm ùn tắc giao thông vào các giờ cao điểm đặc biệt tại các ngã 4 và ngã 5" [1]. Điều này đặc biệt đúng với các đô thị đang phát triển, nơi mật độ phương tiện gia tăng không ngừng. Việc áp dụng công nghệ vi điều khiển PIC16F877A cho phép tạo ra các thuật toán điều khiển linh hoạt, có khả năng thích ứng với các tình huống giao thông thực tế, từ đó nâng cao hiệu quả tổng thể của hệ thống.

1.2. Lý do chọn vi điều khiển PIC16F877A cho đồ án

Việc lựa chọn vi điều khiển PIC16F877A cho đồ án kỹ thuật đèn giao thông ngã 5 được dựa trên nhiều ưu điểm nổi bật. Tài liệu nghiên cứu nhấn mạnh rằng PIC16F877A có "giá thành rẻ", "mạch đơn giản dễ thực hiện", "công suất làm việc bé", "việc lập trình đơn giản" và "có thể giao tiếp với máy tính" [1]. Những đặc tính này làm cho PIC16F877A trở thành một lựa chọn lý tưởng cho các dự án hệ thống nhúng học thuật và ứng dụng thực tiễn. Khả năng tích hợp Timer, các cổng I/O đa dạng, cùng với bộ nhớ chương trình và dữ liệu linh hoạt, hỗ trợ mạnh mẽ cho việc xây dựng bộ đếm thời gian đèn giao thông và điều khiển nhiều tín hiệu đèn khác nhau. Đặc biệt, việc hỗ trợ chuẩn giao tiếp RS232 cũng mở ra khả năng giao tiếp với máy tính để điều khiển và giám sát, tăng tính linh hoạt và tiện ích cho toàn bộ hệ thống.

II. Thách Thức Thiết Kế Đèn Giao Thông Ngã 5 Trong Đô Thị Hiện Đại

Việc thiết kế một hệ thống đèn giao thông ngã 5 không phải là điều đơn giản, đòi hỏi sự phân tích kỹ lưỡng về nguyên lý hoạt động đèn giao thông và các thách thức về điều khiển luồng giao thông. Ngã 5 với nhiều làn đường và hướng di chuyển khác nhau tạo ra một môi trường phức tạp, dễ gây ra xung đột nếu không có thuật toán điều khiển tối ưu. Mục tiêu của đồ án kỹ thuật này là giải quyết các vấn đề như ùn tắc cục bộ, nguy cơ tai nạn tại các điểm giao cắt, và đảm bảo sự công bằng cho tất cả các luồng xe. Các yêu cầu về thiết kế hệ thống đèn giao thông không chỉ dừng lại ở việc chuyển đổi tín hiệu đèn mà còn phải tính toán đến thời gian chờ, khả năng phản ứng với tình hình giao thông và các chế độ hoạt động đặc biệt. Điều này đòi hỏi một nền tảng hệ thống nhúng đủ mạnh mẽ như vi điều khiển PIC16F877A để xử lý các tác vụ đa luồng và tương tác với nhiều thành phần phần cứng khác nhau, từ đèn LED đến màn hình hiển thị.

2.1. Phân tích nguyên lý hoạt động đèn giao thông tại các nút giao phức tạp

Tại một nút giao ngã 5, nguyên lý hoạt động đèn giao thông trở nên phức tạp hơn rất nhiều so với ngã 4 thông thường. Mỗi làn đường có thể có các tín hiệu riêng biệt cho rẽ phải, đi thẳng, và rẽ trái, cùng với đèn dành cho người đi bộ. Theo tài liệu, "mỗi chiều đều có 3 làn dành cho xe cơ giới... Đồng thời, tại mỗi tuyến đường đều có vạch phân cách dành cho người đi bộ qua đường" và "3 đèn tín hiệu điều khiển rẽ phải, đi thẳng, rẽ trái, 1 tín hiệu điều khiển người đi bộ" [1]. Điều này đòi hỏi một thuật toán điều khiển giao thông tinh vi để đảm bảo không có xung đột giữa các luồng xe và người đi bộ. Hệ thống phải quản lý các chu kỳ đèn xanh/đỏ cho 5 làn đường một cách tuần tự, cân bằng thời gian để tránh ùn tắc ở một làn cụ thể. Phân tích này là nền tảng để xây dựng sơ đồ nguyên lý đèn giao thông ngã 5 và phát triển chương trình điều khiển.

2.2. Các yêu cầu kỹ thuật và tính năng cần có của hệ thống nhúng

Hệ thống nhúng đèn giao thông ngã 5 dùng PIC16F877A cần đáp ứng nhiều yêu cầu kỹ thuật quan trọng. Trước hết, hệ thống phải đảm bảo hoạt động ổn định và tin cậy trong mọi điều kiện môi trường. Các tính năng chính được đề cập bao gồm ba chế độ hoạt động: Bình thường, Ưu tiên và Ban đêm, có thể "được điều khiển bằng tay" [1]. Điều này yêu cầu khả năng chuyển đổi linh hoạt giữa các chế độ. Ngoài ra, hệ thống cần có bộ đếm thời gian đèn giao thông hiển thị rõ ràng trên các màn hình LED 7 đoạn, giúp người tham gia giao thông dễ dàng quan sát. Khả năng giao tiếp với máy tính thông qua RS232 cũng là một tính năng quan trọng để giám sát và điều chỉnh, như đã được đề cập trong phần linh kiện điện tử cho đồ án [1]. Về phần cứng, việc sử dụng các Port I/O của vi điều khiển PIC16F877A để điều khiển đèn tín hiệu và các IC hiển thị là yêu cầu cơ bản.

III. Thiết Kế Mạch Đèn Giao Thông Ngã 5 Với Vi Điều Khiển PIC16F877A

Việc xây dựng mạch đèn giao thông ngã 5 là một bước cốt lõi trong quá trình thực hiện đồ án kỹ thuật vi điều khiển. Đây là nơi lý thuyết được chuyển hóa thành hiện thực thông qua việc kết nối các linh kiện điện tử cho đồ án và thiết kế sơ đồ nguyên lý đèn giao thông ngã 5 chi tiết. Trái tim của hệ thống là vi điều khiển PIC16F877A, chịu trách nhiệm quản lý tất cả các tín hiệu đèn và hiển thị thời gian. Quá trình này bao gồm việc thiết kế mạch nguồn ổn áp 5V, mạch tạo xung dao động với thạch anh 4MHz, và mạch Reset cần thiết để đảm bảo PIC hoạt động ổn định [1]. Ngoài ra, việc điều khiển 10 đèn LED 7 đoạn để hiển thị thời gian đếm lùi trên mỗi làn đường yêu cầu một phương pháp quét LED thông minh và việc sử dụng các IC chuyên dụng. Mỗi thành phần của mạch đèn giao thông ngã 5 đều được lựa chọn và bố trí cẩn thận để đạt được hiệu suất tối ưu và độ tin cậy cao.

3.1. Chi tiết sơ đồ nguyên lý đèn giao thông ngã 5 Các khối chính

Sơ đồ nguyên lý đèn giao thông ngã 5 là bản thiết kế chi tiết các kết nối điện và thành phần mạch. Các khối chính bao gồm: khối vi điều khiển trung tâm (PIC16F877A), khối nguồn ổn áp (sử dụng LM7805), khối tạo xung dao động (thạch anh 4MHz và tụ điện), khối Reset (nút nhấn và điện trở/tụ), khối hiển thị (LED 7 đoạn và IC 74HC595), và khối điều khiển đèn tín hiệu (các đèn LED giao thông và điện trở hạn dòng) [1]. Việc đặt các chân điều khiển của PIC16F877A cho từng tín hiệu đèn rẽ phải, đi thẳng/rẽ trái và đèn đi bộ được tính toán kỹ lưỡng, ví dụ: "Chân B0 -> B4 là các chân bật tắc đèn tín hiệu rẽ Phải trên các làn đường từ 1 – 5" [1]. Sự sắp xếp hợp lý của các khối này đảm bảo mạch hoạt động đúng theo nguyên lý hoạt động đèn giao thông đã định.

3.2. Lựa chọn linh kiện điện tử cho đồ án PIC LED và IC driver

Việc lựa chọn linh kiện điện tử cho đồ án đèn giao thông ngã 5 dùng PIC16F877A là rất quan trọng để đảm bảo hiệu suất và độ bền của hệ thống. Ngoài vi điều khiển PIC16F877A, các linh kiện hiển thị như LED 7 đoạn loại anode chung được sử dụng để hiển thị thời gian đếm xuống. Để điều khiển 10 LED 7 đoạn (2 led cho mỗi làn) và tiết kiệm chân vi điều khiển, tài liệu đề xuất sử dụng 2 IC 74HC595 [1]. IC 74HC595 là một thanh ghi dịch nối tiếp ra song song, giúp mở rộng số lượng chân điều khiển từ PIC một cách hiệu quả. Điện trở hạ dòng (220 Ω) được thêm vào để "tránh làm hư hỏng Led" [1]. Các linh kiện phụ khác như thạch anh 4MHz, tụ 33pF, điện trở 10KΩ và 2.2KΩ cho mạch Reset, cùng với BJT (C1815) để quét các LED 7 đoạn, đều được lựa chọn cẩn thận để tối ưu hóa hiệu suất toàn mạch.

3.3. Xây dựng mạch driver LED và hiển thị mạch giải mã 7 đoạn

Để điều khiển các đèn tín hiệu giao thông và đặc biệt là hệ thống hiển thị thời gian, mạch driver LEDmạch giải mã 7 đoạn là không thể thiếu. Đối với việc hiển thị thời gian đếm lùi trên mỗi làn đường, hệ thống sử dụng 2 LED 7 đoạn. Việc này được thực hiện thông qua "phương pháp quét led với mỗi lần sẽ hiển thị trên 2 led 7 đoạn của mỗi tuyến đường thông qua 2 IC 74HC595" [1]. IC 74HC595 nhận dữ liệu nối tiếp từ vi điều khiển PIC16F877A và chuyển đổi thành tín hiệu song song để điều khiển các đoạn của LED 7 đoạn. Các chân điều khiển như DS, SH_CP, ST_CP của IC 74HC595 được kết nối với các chân của PIC để thực hiện việc dịch và chốt dữ liệu. Phương pháp quét, kết hợp với các transistor (C1815), giúp bật tắt các LED 7 đoạn một cách hiệu quả, đảm bảo hiển thị rõ ràng đồng thời tiết kiệm tài nguyên chân I/O của PIC, làm cho mạch đèn giao thông ngã 5 trở nên gọn nhẹ và tối ưu.

IV. Hướng Dẫn Lập Trình PIC16F877A Để Điều Khiển Đèn Giao Thông Tối Ưu

Lập trình PIC16F877A là khía cạnh then chốt để biến mạch đèn giao thông ngã 5 từ một tập hợp linh kiện điện tử thành một hệ thống nhúng hoạt động thông minh. Quá trình này bao gồm việc sử dụng môi trường phát triển MPLAB IDEngôn ngữ lập trình C cho PIC để viết mã điều khiển. Mã chương trình phải được thiết kế để quản lý các chu kỳ đèn, thời gian đếm lùi, và chuyển đổi giữa các chế độ hoạt động khác nhau (Bình thường, Ưu tiên, Ban đêm). Việc triển khai thuật toán điều khiển giao thông đòi hỏi sự hiểu biết sâu sắc về các ngắt (interrupts) như Timer1 và RDA để xử lý các sự kiện thời gian thực và giao tiếp với máy tính. Sau khi mã được viết, việc mô phỏng Proteus đèn giao thông giúp kiểm tra và gỡ lỗi trước khi nạp chương trình vào chip bằng phần mềm nạp code PIC. Toàn bộ quá trình lập trình PIC16F877A cần được thực hiện một cách tỉ mỉ để đảm bảo điều khiển đèn giao thông chính xác và hiệu quả.

4.1. Sử dụng MPLAB IDE và ngôn ngữ lập trình C cho PIC

MPLAB IDE là môi trường phát triển tích hợp (Integrated Development Environment) chính thức từ Microchip, cung cấp công cụ mạnh mẽ để lập trình PIC16F877A. Trong đồ án kỹ thuật này, ngôn ngữ lập trình C cho PIC (cụ thể là CCS C Compiler) được sử dụng vì tính linh hoạt và hiệu quả của nó. Mã nguồn C cho phép lập trình viên dễ dàng định cấu hình các Port I/O, quản lý ngắt Timer và các giao tiếp nối tiếp. Các thư viện chuẩn như #include <16F877A.h>#use delay(crystal=4MHz) được khai báo để tận dụng các tính năng phần cứng của vi điều khiển PIC16F877A. Việc sử dụng các macro và hàm tùy chỉnh như Xuat() để điều khiển IC 74HC595 giúp tối ưu hóa mã và làm cho việc phát triển hệ thống hiển thị trở nên dễ dàng hơn. Sự kết hợp giữa MPLAB IDE và CCS C tạo ra một quy trình phát triển mạnh mẽ và trực quan cho hệ thống nhúng này.

4.2. Triển khai thuật toán điều khiển giao thông và bộ đếm thời gian đèn giao thông

Thuật toán điều khiển giao thông cho ngã 5 là trung tâm của phần mềm. Tài liệu mô tả chi tiết các lượt ưu tiên cho từng làn đường (Lượt thứ nhất: Ưu tiên làn 1; Lượt thứ hai: Ưu tiên làn 2, v.v.) và các quy tắc chuyển đổi trạng thái đèn (rẽ trái/đi thẳng xanh, rẽ phải đỏ, làn kế tiếp đỏ, người đi bộ xanh) [1]. Hệ thống sử dụng ngắt Timer1 để tạo ra bộ đếm thời gian đèn giao thông. Thời gian trên LED 7 đoạn sẽ giảm 1 đơn vị sau mỗi giây, được tính toán thông qua cấu hình Timer1 với bộ chia trước và giá trị nạp trước thanh ghi TMR1, đảm bảo chương trình con phục vụ ngắt được gọi sau mỗi 0.5s [1]. Biến dem_tg được sử dụng để kiểm tra khi nào thời gian ưu tiên của một làn kết thúc, từ đó kích hoạt việc chuyển đổi lượt ưu tiên và thiết lập lại thời gian cho các làn khác. Điều này cho phép điều khiển luồng giao thông một cách linh hoạt theo các kịch bản đã định.

4.3. Mô phỏng Proteus đèn giao thông và phần mềm nạp code PIC

Trước khi triển khai trên phần cứng thực tế, mô phỏng Proteus đèn giao thông đóng vai trò quan trọng trong việc kiểm tra tính đúng đắn của sơ đồ nguyên lý đèn giao thông ngã 5 và mã lập trình PIC16F877A. Proteus cho phép người dùng mô phỏng hoạt động của mạch điện tử, các tín hiệu ngõ vào/ra, và cách vi điều khiển tương tác với các linh kiện khác như LED, IC 74HC595. Quá trình mô phỏng giúp phát hiện và khắc phục lỗi phần cứng và phần mềm ở giai đoạn sớm, tiết kiệm thời gian và chi phí. Sau khi mã chương trình đã được kiểm tra và hoàn thiện, phần mềm nạp code PIC (như PICkit3 hoặc các công cụ tương tự) được sử dụng để chuyển mã nhị phân từ máy tính vào bộ nhớ Flash của vi điều khiển PIC16F877A. Mạch nạp được kết nối qua các chân ICSP (In-Circuit Serial Programming) của PIC, cho phép nạp chương trình ngay trên mạch điện mà không cần tháo chip ra [1].

V. Ứng Dụng Thực Tiễn Từ Đồ Án Kỹ Thuật Đèn Giao Thông Ngã 5

Đồ án kỹ thuật đèn giao thông ngã 5 dùng PIC16F877A không chỉ là một bài tập học thuật mà còn mang lại những ứng dụng thực tiễn quan trọng trong việc cải thiện an toàn giao thông ngã 5 và tối ưu hóa điều khiển luồng giao thông. Hệ thống này đã chứng minh khả năng quản lý phức tạp của một nút giao nhiều làn đường thông qua ba chế độ hoạt động linh hoạt: Bình thường, Ưu tiên và Ban đêm. Mỗi chế độ được thiết kế để đáp ứng các điều kiện giao thông khác nhau, từ đó nâng cao hiệu quả và giảm thiểu tắc nghẽn. Khả năng giao tiếp với máy tính thông qua cổng nối tiếp RS232, kết hợp với giao diện người dùng trên MATLAB GUI, mở ra tiềm năng lớn cho việc giám sát và điều chỉnh hệ thống từ xa. Những kết quả đạt được từ hệ thống đèn giao thông này là minh chứng cho việc ứng dụng thành công vi điều khiển PIC16F877A vào các bài toán kỹ thuật thực tế, góp phần xây dựng các thành phố thông minh hơn.

5.1. Các chế độ hoạt động và tính năng mở rộng của hệ thống đèn giao thông

Hệ thống đèn giao thông ngã 5 được thiết kế với ba chế độ hoạt động chính để tối ưu hóa điều khiển luồng giao thông tùy thuộc vào tình hình thực tế: Chế độ Bình thường, Chế độ Ưu tiên và Chế độ Ban đêm [1]. Trong Chế độ Bình thường, các làn đường được ưu tiên tuần tự theo một chu kỳ định sẵn. Chế độ Ưu tiên cho phép kéo dài thời gian đèn xanh cho một hoặc nhiều làn đường cụ thể, hữu ích trong các trường hợp có lưu lượng xe đột biến hoặc ưu tiên cho xe cứu hỏa, cứu thương. Chế độ Ban đêm chuyển tất cả các đèn tín hiệu sang nhấp nháy đèn vàng, cho phép các phương tiện di chuyển tự do nhưng vẫn cảnh báo [1]. Ngoài ra, hệ thống còn có khả năng mở rộng bằng cách tích hợp "IC thời gian thực để việc thay đổi qua từng chế độ diễn ra một cách tự động" [1], hoặc thêm các giao diện người dùng phức tạp hơn để điều khiển thông qua máy tính.

5.2. Đánh giá hiệu suất và cải thiện an toàn giao thông ngã 5

Hiệu suất của đồ án kỹ thuật đèn giao thông ngã 5 được đánh giá dựa trên khả năng giảm ùn tắc và nâng cao an toàn giao thông ngã 5. Việc áp dụng vi điều khiển PIC16F877A với thuật toán điều khiển giao thông đã được thử nghiệm và mô phỏng trên Proteus cho thấy khả năng điều phối luồng xe một cách hiệu quả. Các chế độ hoạt động linh hoạt giúp hệ thống thích nghi với các điều kiện giao thông khác nhau, từ đó giảm thiểu xung đột và nguy cơ tai nạn. Đặc biệt, việc hiển thị bộ đếm thời gian đèn giao thông trên LED 7 đoạn cung cấp thông tin rõ ràng cho người lái xe, giúp họ chủ động hơn trong việc di chuyển. Những cải tiến trong thiết kế hệ thống đèn giao thông này không chỉ mang lại lợi ích về mặt kỹ thuật mà còn góp phần trực tiếp vào việc tạo ra một môi trường giao thông an toàn và thông suốt hơn cho cộng đồng, đặc biệt tại các nút giao phức tạp.

VI. Tổng Kết và Hướng Phát Triển Đèn Giao Thông Ngã 5 Dùng PIC16F877A

Đồ án kỹ thuật đèn giao thông ngã 5 dùng PIC16F877A đã thành công trong việc xây dựng một giải pháp hiệu quả cho việc điều khiển đèn giao thông tại các nút giao phức tạp. Từ sơ đồ nguyên lý đèn giao thông ngã 5 đến quá trình lập trình PIC16F877Amô phỏng Proteus đèn giao thông, mỗi bước đều được thực hiện một cách tỉ mỉ, mang lại một hệ thống nhúng hoạt động ổn định và có khả năng mở rộng. Thành tựu này không chỉ khẳng định năng lực của vi điều khiển PIC16F877A trong các ứng dụng thực tiễn mà còn mở ra nhiều hướng phát triển tiềm năng cho các hệ thống đèn giao thông thông minh hơn trong tương lai. Việc tối ưu hóa thuật toán điều khiển giao thông và tích hợp các công nghệ mới sẽ tiếp tục cải thiện an toàn giao thông ngã 5 và nâng cao chất lượng cuộc sống đô thị.

6.1. Thành tựu đạt được từ đồ án kỹ thuật vi điều khiển

Đồ án kỹ thuật vi điều khiển về đèn giao thông ngã 5 dùng PIC16F877A đã đạt được nhiều thành tựu đáng kể. Hệ thống đã được thiết kế và triển khai thành công, từ việc chọn lựa linh kiện điện tử cho đồ án đến việc viết mã ngôn ngữ lập trình C cho PIC trong MPLAB IDE. Đặc biệt, khả năng điều khiển đèn giao thông tại một nút giao 5 chiều với ba chế độ hoạt động linh hoạt (Bình thường, Ưu tiên, Ban đêm) đã chứng tỏ hiệu quả của giải pháp. Việc sử dụng mạch giải mã 7 đoạn và IC 74HC595 đã giúp hiển thị bộ đếm thời gian đèn giao thông một cách rõ ràng và tiết kiệm tài nguyên. Thành quả này không chỉ cung cấp một mô hình hoạt động hiệu quả mà còn là nền tảng vững chắc cho các nghiên cứu và ứng dụng tiếp theo trong lĩnh vực thiết kế hệ thống đèn giao thông thông minh.

6.2. Tiềm năng tích hợp cảm biến giao thông và IoT

Tương lai của đèn giao thông ngã 5 dùng PIC16F877A hứa hẹn nhiều tiềm năng mở rộng, đặc biệt là việc tích hợp cảm biến giao thông và Internet of Things (IoT). Việc bổ sung các cảm biến giao thông (như cảm biến vòng từ, hồng ngoại, hoặc camera) có thể cung cấp dữ liệu lưu lượng xe theo thời gian thực, cho phép hệ thống điều chỉnh thuật toán điều khiển giao thông một cách động và tối ưu hơn, thay vì chỉ dựa vào các chu kỳ cố định. Điều này sẽ nâng cao khả năng điều khiển luồng giao thông và giảm ùn tắc một cách đáng kể. Hơn nữa, việc tích hợp IoT sẽ cho phép hệ thống đèn giao thông giao tiếp với các hệ thống giao thông thông minh khác, tạo ra một mạng lưới điều khiển đồng bộ và hiệu quả trên quy mô lớn. Khả năng "sử dụng thêm IC thời gian thực để việc thay đổi qua từng chế độ diễn ra một cách tự động" cũng là một hướng phát triển để tăng tính tự động hóa [1].

30/09/2025

Trích đoạn nội dung tài liệu

Đặt vấn đề: Như chúng ta đã biết đèn giao thông là một hệ thống quan trọng không những đảm bảo sự an toàn giữa các phương tiện tham gia giao thông mà còn giảm ùn tắc giao thông vào các giờ cao điểm đặc biệt tại các ngã 4 và ngã 5. Trong phần này chúng tôi muốn đề cập đến giải pháp phân luồng giao thông tại ngã 5 bằng đèn giao thông. Đặc biệt giải quyết ùng tắt giao thông vào các giờ cao điểm.2 Giới thiệu chung về đề tài và phân tích 1.1 Các tính năng chính của đèn giao thông tại ngã 5 Trước tiên, mỗi chiều đều có 3 làn dành cho xe cơ giới. Được quy định làn bên phải dành cho xe rẽ phải, làn ở giữa dành cho xe chạy thẳng và làn bên trái dành cho xe rẽ trái.

Đồng thời, tại mỗi tuyến đường đều có vạch phân cách dành cho người đi bộ qua đường. Tại mỗi tuyến đường đều có 3 đèn tín hiệu điều khiển rẽ phải, đi thẳng, rẽ trái, 1 tín hiệu điều khiển người đi bộ và 1 tín hiệu đèn vàng được sử dụng trong chế độ ban đêm. Gồm có 3 chế độ: Bình thường, Ưu tiên và Ban đêm được điều khiển bằng tay.2 Phương pháp điều khiển đèn giao thông Điều khiển đèn giao thông bằng vi điều khiển với các ưu điểm:  Giá thành rẻ  Mạch đơn giản dễ thực hiện  Công suất làm việc bé  Việc lập trình đơn giản  Có thể giao tiếp với máy tính 1.3 Khả năng ứng dụng/mở rộng của đề tài 2 SVTH: Nguyễn Thanh Lộc - 17CDT1 Huỳnh Văn Chiến - 17CDT1 Tên đồ án: Đồ án môn học Kỹ thuật vi điều khiển GVHD: Ths. Trần Quang Khải Có khả năng sử dụng trong thực tế tùy thuộc vào những yêu cầu cụ thể như:  Mỗi tuyến đường có 3 làn (trái, thẳng, phải) hay không.

Hay nói cách khác mỗi tuyến đường phải lớn.  Việc ùng tắt giao thông chỉ xảy ra từ 1 đến 3 tuyến đường. Khi chuyển đổi qua chế độ khác cần phải có người điều khiển hệ thống chưa tự động chuyển đổi được theo thời gian thực vì vậy có thể sử dụng thêm IC thời gian thực để việc thay đổi qua từng chế độ diễn ra một cách tự động. 3 SVTH: Nguyễn Thanh Lộc - 17CDT1 Huỳnh Văn Chiến - 17CDT1 Tên đồ án: Đồ án môn học Kỹ thuật vi điều khiển GVHD: Ths.

Trần Quang Khải CHƯƠNG 2: LINH KIỆN 2.1 Vi điều khiển sử dụng Sử dụng vi điều khiển Pic 16F877A Các Port được sử dụng ở đây là A, B, C, D. Sử dụng ngắt Timer 1 để đếm thời gian lùi trên mỗi tuyến đường. Sử dụng ngắt RDA nhận và gửi dữ liệu thông qua RS232. Kết nối với máy tính thông qua RS232 kết nối với hai chân RC6/TX/CK và RC7/RX/DT.1 Giới thiệu về vi điều khiển PIC16F877A thuộc họ PIC16FXXX với tập lệnh gồm 35 lệnh có độ dài 14 bit.

Mỗi lệnh đều được thực thi trong một chu kỳ xung clock. Tốc độ hoạt động tối đa cho phép là 20MHz với một chu kỳ lệnh là 200ns. Bộ nhớ chương trình 8Kx14 bit, bộ nhớ dữ liệu 368x8 byte RAM và bộ nhớ dữ liệu EEPROM với dung lượng 256x8 byte. Số PORT I/O là 5 với 35 pin I/O.

Các đặc tính ngoại vi: Timer0: Bộ đếm 8 bit với bộ chia tần số 8 bit. Timer1: Bộ đếm 16 bit với bộ chia tần số, có thể thực hiện chức năng đếm dựa vào xung clock ngoại vi ngay khi vi điều khiển hoạt động ở chế độ sleep. Timer2: Bộ đếm 8 bit với bộ chia tần số, bộ postcaler. Hai bộ Capture/so sánh/ điều chế độ rộng xung.

Các chuẩn giao tiếp nối tiếp SSP(Synchronous Serial Port), SPI và I2C. Chuẩn giao tiếp nối tiếp USART với 9 bit địa chỉ. Cổng giao tiếp song song PSP(Parallel Slave Port) với các chân điều khiển RD, WR, CS ở bên ngoài. 4 SVTH: Nguyễn Thanh Lộc - 17CDT1 Huỳnh Văn Chiến - 17CDT1 Tên đồ án: Đồ án môn học Kỹ thuật vi điều khiển GVHD: Ths.

Trần Quang Khải Các đặc tính Analog: 8 kênh chuyển đổi ADC 10 bit. Hai bộ so sánh. Bên cạnh đó có một vài đặc tính khác của vi điều khiển như: Bộ nhớ Flash có khả năng ghi xóa được 100. Bộ nhớ EEPROM với khả năng ghi xóa được 1.

Bộ nhớ dữ liệu EEPROM có thể lưu trữ trên 40 năm. Khả năng tự nạp chương trình với sự điều khiển của phần mềm. Nạp được chương trình ngay trên mạch điện ICSP(In Circuit Serial Programing) thông qua 2 chân. Watchdog Timer với bộ dao động trong.

Chức năng bảo mật mã chương trình. Có thể hoạt động với nhiều dạng Oscillator khác nhau. 5 SVTH: Nguyễn Thanh Lộc - 17CDT1 Huỳnh Văn Chiến - 17CDT1 Tên đồ án: Đồ án môn học Kỹ thuật vi điều khiển GVHD: Ths. Trần Quang Khải Hình 2.1: Sơ đồ chân của PIC16F877A [1] 2.2 Các tài nguyên của vi điều khiển được sử dụng trong đồ án Sử dụng các Port A, B, D để thực hiện các việc bật tắt các tín hiệu đèn.

Đếm thời gian sử dụng ngắt Timer 1. Truyền nhận dữ liệu qua Ngắt RDA. Sử dụng Port C với hai chân RC6/TX/CK và RC7/RX/DT để giao tiếp USART thông qua RS232. 6 SVTH: Nguyễn Thanh Lộc - 17CDT1 Huỳnh Văn Chiến - 17CDT1 Tên đồ án: Đồ án môn học Kỹ thuật vi điều khiển GVHD: Ths.

Trần Quang Khải 2.2 Các linh kiện hiển thị Sử dụng 2 Led 7 đoạn trên mỗi tuyến đường để hiển thị thời gian đếm xuống cho mỗi tín hiệu đèn giao thông tương ứng. Ở đây ta sử dụng phương pháp quét led với mỗi lần sẽ hiển thị trên 2 led 7 đoạn của mỗi tuyến đường thông qua 2 IC 74HC595 được điều khiển bằng 3 chân D5, D6 và D7 tương ứng với các chân SH_CP, DS và ST_CP trên IC 74HC595. Đồng thời sử dụng các Transistor để bật tắt các led 7 đoạn trên mỗi tuyến đường sao cho phù hợp với phương pháp quét.2: Sơ đồ nối chân IC74HC595 điều khiển 2 led 7 đoạn 7 SVTH: Nguyễn Thanh Lộc - 17CDT1 Huỳnh Văn Chiến - 17CDT1 Tên đồ án: Đồ án môn học Kỹ thuật vi điều khiển GVHD: Ths. Trần Quang Khải Hình 2.3: Sơ đồ nối chân bật tắt 2 led 7 đoạn trên mỗi ngã đường Hình 2.4: Sơ đồ kết nối chân hiển thị 2 led 7 đoạn 2.1 Tìm hiểu về IC 74HC595: 8 SVTH: Nguyễn Thanh Lộc - 17CDT1 Huỳnh Văn Chiến - 17CDT1 Tên đồ án: Đồ án môn học Kỹ thuật vi điều khiển GVHD: Ths.

Trần Quang Khải Điện áp nguồn cấp cực đại 7V. Dòng vào 20mA. Dòng ra 35mA.3: Sơ đồ chân IC 74HC595 [2] Nguyên lý hoạt động của IC74HC595 (Các chân được đề cập trong Proteus) [2]: Pin 14 (DS): Đầu vào dữ liệu nối tiếp. Chuỗi dữ liệu nối tiếp từ vi điều khiển tới chân này được truyền vào bên trong thanh ghi dịch sau mỗi xung Clock.

Pin 11 (SH_CP): Xung Clock thanh ghi dịch. Khi xuất hiện sườn dương ở chân này, dữ liệu đầu vào DS (Pin14) sẽ được dịch từng bit vào thanh ghi 8 bit. Pin 10 (Reset): Đầu vào active mức thấp, không đồng bộ. Khi chân này ở mức thấp (0), thanh ghi được reset, bộ chốt 8 bit không được hoạt động.

Pin 12 (ST_CP): Xung Clock cho đầu ra bộ Latch. Khi xuất hiện sườn dương ở chân này, dữ liệu trong thanh ghi dịch được đẩy ra bộ Latch. 9 SVTH: Nguyễn Thanh Lộc - 17CDT1 Huỳnh Văn Chiến - 17CDT1 Tên đồ án: Đồ án môn học Kỹ thuật vi điều khiển GVHD: Ths. Trần Quang Khải Output (Pin 15, 1, 2, 3, 4, 5, 6, 7): Các đầu ra không đảo.

Do sử dụng bộ Latch nên đầu ra sẽ có 3 trạng thái: mức thấp (0), mức cao (1) hoặc mức trở khảng cao (Z). Pin 9 (Q7’): Đầu ra không đảo, là chuỗi dữ liệu đầu ra nối tiếp, nó là đầu ra của thanh ghi dịch, mỗi khi gặp sườn dương Shift Clock ở Pin 11, giá trị thanh ghi bị dịch đi và bit có trọng số cao nhất dược đẩy sang đầu ra Q7’.2 Tìm hiểu về led 7 đoạn [3] Led 7 đoạn là một linh kiện điển tử phổ biến, được dùng như một công cụ hiển thị đơn giản nhất. Trong Led 7 đoạn bao gồm ít nhất 7 Led đơn nối lại với nhau.4 mô tả sơ đồ bố trí chân của 1 Led 7 đoạn. Các Led đơn được gọi tên lần lượt là các chữ cái A, B, C, D, E, F, G và dấu chấm DP.

Ở đây chúng ta sử dụng loại Anode chung. Với các chân anode (chân dương) của tất cả led đơn được mắc chung với nhau. Bằng việc kết hợp sáng/tắt các Led đơn thì người dùng có được các ký tự mong muốn. Để cho một Led đơn sáng, trước tiên chân anode chung phải được nối với nguồn VCC, sau đó chân canode của Led đơn tương ứng đó được nối đất (Hình 2.

Mã hiển thị Led 7 đoạn loại anode chung được trình bày ở bảng 2.4: Sơ đồ bố trí chân của Led 7 đoạn loại anode Chung [2] 10 SVTH: Nguyễn Thanh Lộc - 17CDT1 Huỳnh Văn Chiến - 17CDT1 Tên đồ án: Đồ án môn học Kỹ thuật vi điều khiển GVHD: Ths. Trần Quang Khải Hình 2.5: Led 7 đoạn loại Anode chung [3] Bảng 2.1: Mã hiển thị led 7 đoạn loại Anode chung [3] Ở phần 3.2 [3], để tránh làm hư hỏng Led thì chúng ta nói thêm 1 điện trở hạ dòng điện qua Led với giá trị R = 220 Ω.3 Các linh kiện điện Sử dụng nguồn ổn áp 5V (LM7805) để cấp nguồn cho vi điều khiển. Các chân 11, 32 (VDD) nối 5V, Còn các chân 12, 31 (VSS) nối GND. 11 SVTH: Nguyễn Thanh Lộc - 17CDT1 Huỳnh Văn Chiến - 17CDT1 Tên đồ án: Đồ án môn học Kỹ thuật vi điều khiển GVHD: Ths.

Trần Quang Khải Hình 2.6: Sơ đồ mạch nguồn 5V cung cấp cho vi điều khiển Mạch tạo xung dao động sử dụng thạch anh 4MHz ở hai chân OSC1 (chân 13) và OSC2 (chân 14) mắc với hai tụ song song có trị số 33pF giúp tăng tính ổn định cho bộ dao động.7: Sơ đồ mạch tạo xung dao động 4MHz. Mạch Reset tại chân MCLR 12 SVTH: Nguyễn Thanh Lộc - 17CDT1 Huỳnh Văn Chiến - 17CDT1 Tên đồ án: Đồ án môn học Kỹ thuật vi điều khiển GVHD: Ths. Trần Quang Khải Hình 2.8: Sơ đồ mạch Reset tại chân MCRL. 13 SVTH: Nguyễn Thanh Lộc - 17CDT1 Huỳnh Văn Chiến - 17CDT1 Tên đồ án: Đồ án môn học Kỹ thuật vi điều khiển GVHD: Ths.

Trần Quang Khải CHƯƠNG 3: NGUYÊN LÝ HOẠT ĐỘNG 3.1 Phân tích cách thức hoạt động của hệ thống 3.1 Nguyên lý vận hành của hệ thống * Đối với chế độ bình thường Lượt thứ nhất: Ưu tiên cho làn 1 Làn 1: Đèn rẽ trái và đi thẳng được bật xanh, đèn rẽ phải (qua làn 2) chuyển đỏ.

Nội dung được bảo vệ bản quyền — Tải xuống đầy đủ