KHOA ĐIỆN – ĐIỆN TỬ
BỘ MÔN ĐIỆN TỬ
-o0o -BÀI TẬP LỚN THIẾT KẾ HỆ THỐNG NHÚNG ĐỀ TÀI: TRAFFIC LIGHT
GVHD: BÙI QUỐC BẢO
Trang 2LỜI CẢM ƠN
Lời đầu tiên, nhóm chúng em xin chân thành cảm ơn bộ môn Điện tử - viễn thông , trường Đại học Bách Khoa đã tạo điều kiện thuận lợi cho em thực hiện bài tập lớn.
Đặc biệt chúng em xin chân thành cảm ơn thầy Bùi Quốc Bảo đã rất tận tình hướng dẫn, chỉ bảo chúng em trong suốt thời gian thực hiện bài tập lớn vừa qua.
Chúng em cũng xin chân thành cảm ơn tất cả các Thầy, các Cô trong Trường đã tận tình giảng dạy, trang bị cho chúng em những kiến thức cần thiết, quý báu để giúp em thực hiện được đồ án.
Mặc dù chúng em đã có cố gắng, nhưng với trình độ còn hạn chế, trong quá trình thực hiện đề tài không tránh khỏi những thiếu sót Chúng em hi vọng sẽ nhận được những ý kiến nhận xét, góp ý của Thầy về những vấn đề triển khai trong bài tập lớn.
Chúng em xin trân trọng cảm ơn!
Tp Hồ Chí Minh, ngày 16 tháng 12 năm 2022 .
Trang 3
TÓM TẮT BÀI TẬP LƠN
Bài tập lớn này trình bày về traffic light hay còn gọi là hệ thống đèn giao
thông, đèn điều khiển giao thông, hay đèn xanh đèn đỏ) là một thiết bị đượcdùng để điều khiển giao thông ở những giao lộ có lượng phương tiện lưu thônglớn (thường là ngã ba, ngã tư đông xe qua lại) Đây là một thiết bị quan trọngkhông những an toàn cho các phương tiện mà còn giúp giảm ùn tắc giao thôngvào giờ cao điểm Nó được lắp ở tâm giao lộ hoặc trên vỉa hè Đèn tín hiệu giaothông có thể hoạt động tự động hay cảnh sát giao thông điều khiển.
Trang 6DANH SÁCH BẢNG PHÂN CHIA CÔNG VIỆC
Bảng 1 Phân chia công việc theo ngày 2Bảng 2 Phân chia công việc từng thành viên 3
Trang 71 GIỚI THIỆU
1.1 Tổng quan
-Lý do chọn đề tài:
Với mỗi một dân tộc, để kinh tế phát triển thì sự phát triển về khoa học, kỹ thuật là sư cần thiết và đặc biệt quan trọng Với sự phát triển mạnh mẽ của kinh tế như hiên nay, giao thông đang là một bài toán khó đòi hỏi nhiều ngành, nhiều cấp phải quan tâm, và tìm ra hướng giải quyết Để làm giảm bớt khó khăn đó cũng như làm cho việc lưu thông trên các tuyền đường được thông thoáng và giảm thiểu tai nạn, thì việc đặt các cột đèn giao thông tại các ngã và thời gian quyết định đi cho phép đi và cấm đi của các tuyến là đặc biệt quan trọng.
Đối với một ngã tư, tại mỗi thời điểm trong ngày thì sự lưu thông ở mỗi ngã tư là rất quan trọng Vì thế, một chương trình điều khiển đèn giao thông ngã tư được lưu thông một cách tốt nhất là cần thiết và hết sức quan trọng.
Với những nhận định như trên, em đã quyết định chọn đề tài “Thiết kế hệ thống đèn giao thông ngã tư” làm đề tài bài tập lớn.
-Mục tiêu:
Ngày nay cùng với sự phát triển kinh tế, việc đô thị hoá cũng đang gia tăng nhanh chóng dẫn đến lượng phương tiện lưu thống trong các đô thị cũng tăng theo Do đó vấn đề đảm bảo giao thông trong các đô thị, đặc biệt tại các nút giao thông diễn ra thông suốt là rất quan trọng.
Để việc đi lại tại các nút giao thông được thông suốt và thuận lợi thì chúng ta có thể nhờ đến sự giúp đỡ của lực lượng Cảnh sát giao thông và các lực lượng khác Tuy nhiên, với các đô thị lớn có số nút giao thông nhiều thì khó có đủ lực lượng để đảm nhiệm công việc này Mặt khác việc nhờ đến sự giúp đỡ của Cảnh sát giao thông và các lực lượng khác cũng khó khăn và tốn kém.
1.2 Nhiệm vụ đề tài
- Nội dung 1: Tìm hiểu nguyên lý, lý thuyết về cách hoạt động của hệ thống đèn giao thông ở ngã tư, cách hiển thị và các chế độ làm việc
- Nội dung 2: Tìm hiểu về cảm biến, vi xử lý, bo mạch phát triển, tìm hiểu lý thuyết về các chân GPIO, các giao tiếp trong vi điều khiển UART, I2C, SPI, …, các ngắt, … của vi điều khiển và các linh kiện cần thiết cho dự án ví dụ mạch ổn áp, mạch nguồn Tìm hiểu cách kết nối các led vào các chân phù hợp của vi điều khiển.
Trang 8- Nội dung 3: Thiết kế bộ điều khiển hệ thống đèn giao thông, sử dụng giải thuật sử dụng giải thuật phù hợp để mạch hoạt động đúng với chức năng đề ra.
- Cách tiếp cận:
Sử dụng tài liệu môn Kỹ thuật Cảm biến, Kỹ thuật số và Thiết kế Hệ thống nhúng tham khảo cho đề tài.
Tham khảo thêm từ những Group học tập trên mạng xã hội, trang web học tập, những video hướng dẫn trên Youtube.
Khảo sát một số mạch điện từ mạng internet, khảo sát các bãi giữ xe thông minh hiện hành để chọn lựa phương án thiết kế sau này.
Từ những ý tưởng và kiến thức của mình, kết hợp sự hướng dẫn của giáo viên, em đã lắp ráp thử nghiệm nhiều dạng mạch khác nhau để từ đó chọn lọc những mạch điện tối ưu.
1.3 Phân chia công việc trong nhóm
Kế hoạch làm việc :
Bảng 1 Phân chia công việc theo ngày
Trang 9-Phát triển trình điều khiển,
-Triển khai chương trình phần
Bảng 2 Phân chia công việc từng thành viên
STTCông việcChi tiết công việcNgười thực chức năng của từng chân GPIO của vi điều khiển,
Trang 10Tìm hiểu các giải thuật để hiển thị thời gian, từ
Chi tiết các giá trị của từng linh kiện dựa trên
Đưa các linh kiện mới kiếm được lên Proteus
Sau khi chọn thuật toán, viết thuật toán dưới
Trang 112 LÝ THUYẾT
a Vi điều khiển PIC16F877A
Cấu trúc bộ nhớ của vi điều khiển PIC16F877A bao gồm bộ nhớ chương trình (Program memory) và bộ nhớ dữ liệu (Data Memory).
Bộ nhớ chương trình
Bộ nhớ chương trình của vi điều khiển PIC16F877A là bộ nhớ flash, dung lượng bộ nhớ 8K word (1 word = 14 bit) và được phân thành nhiều trang (từ page 0 đến page 3) Như vậy bộ nhớ chương trình có khả năng chứa được 8*1024 = 8192 lệnh (vì một lệnh sau khi mã hóa sẽ có dung lượng 1 word (14 bit).
Để mã hóa được địa chỉ của 8K word bộ nhớ chương trình, bộ đếm chương trình có dung lượng 13 bit (PC<12:0>) Khi vi điều khiển được reset, bộ đếm chương trình sẽ chỉ đến
Trang 12địa chỉ 0000h (Reset vector) Khi có ngắt xảy ra, bộ đếm chương trình sẽ chỉ đến địa chỉ 0004h (Interrupt vector).
Bộ nhớ dữ liệu
Bộ nhớ dữ liệu của PIC là bộ nhớ EEPROM được chia làm nhiều bamk Đối với PIC16F877A, bộ nhớ dữ liệu được chia ra làm 4 bank Mỗi bank có dung lượng 128 byte, bao gồm các thanh ghi có chức năng đặc biệt SFR (Special Function Register) nằm ở các vùng địa chỉ thấp và các thanh ghi mục đich chung GPR (General Purpose Register) nằm ở vùng địa chỉ còn lại trong bank Các thanh ghi SFR thường xuyên được sử dụng (ví dụ như thanh ghi STATUS) sẽ được đặt ở tất cả các bank của bộ nhớ dữ liệu giúp thuận tiện trong quá trình xuất và làm giảm bớt lệnh của chương trình.
Các thông số cơ bản
Đây là vi điều khiển 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à 20 MHz 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 33 pin I/O.
Các đặc tính ngoại vi bao gồm các khối chức năng sau: - 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.
- Đặc tính Analog: 8 kênh chuyển đổi ADC 10 bit - Hai bộ so sánh.
- Bên cạnh đó là một vài đặc tính khác của vi điều khiển như: - Bộ nhớ flash với khả năng ghi xóa được 100.000 lần.
- Bộ nhớ EEPROM với khả năng ghi xóa được 1.000.000 lần Dữ liệu bộ nhớ - 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 Programming) - Watchdog Timer với bộ dao động trong.
- Chức năng bảo mật mã chương trình - Chế độ Sleep.
- Có thể hoạt động với nhiều dạng Oscillator khác nhau
b Cảm biến mưa (Rain Sensor)
Trang 13Cảm biến mưa (Rain Sensor)
Giới thiệu
Cảm biến nước mưa (Rain Water Sensor ) được sử dụng để phát hiện mưa, nước hoặc các dung dịch dẫn điện tiếp xúc với bề mặt cảm biến sẽ phát ra tín hiệu để làm các ứng dụng tự động: phát hiện mưa, báo mực nước tự động,
Thông số kỹ thuật
Điện áp sử dụng: 5VDC
Kích thước tấm cảm biến mưa: 54 x 40mm Kích thước board PCB: 30 x 16mm
Tín hiệu đầu ra: Digital TTL (0VDC / 5VDC) và đầu ra Analog A0 trả giá trị điện áp tuyến tính theo lượng nước tiếp xúc với cảm biến.
Lỗ cố định bu lông dễ dàng để cài đặt Có đèn báo hiệu nguồn và đầu ra
Độ nhạy có thể được điều chỉnh thông qua chiết áp
LED sáng lên khi không có mưa đầu ra cao, có mưa, đầu ra thấp LED tắt.
Chế độ kết nối
VCC: Nguồn GND: Đất
D0: Đầu ra tín hiệu TTL chuyển đổi A0: Đầu ra tín hiệu Analog
c Mạch đèn giao thông 5V
Giới thiệu
Mạch led đèn giao thông là một trong những module led được sử dụng làm các mô hình điện tử, với 3 bóng đèn led để mô phỏng cột đèn giao thông chính xác Kích thước của mạch led giao thông nhỏ gọn, dễ dàng sử dụng.
Trang 15kháng lớn, C2 có tác dụng ngăn nguồn đầu vào tăng áp đột ngột làm dạng sóng điện áp đầu vào có hình răng cưa.
Tụ C3 và C4 để lọc điện áp cấp cho tải tiêu thụ lấy từ chân Vo của IC 7805, tụ C3 có các dụng cung cấp điện áp tạm thời cho tải khi điện áp tải đột ngột bị sụt áp, tụ C4 trở kháng lớn, C4 có tác dụng lọc nhiễu điện áp đầu ra (nhiễu là các điện áp không mong muốn làm cho dạng sóng điện áp ngõ ra có hình răng cưa).
e LED 7 đoạn
- Sử dụng 4 led đôi để đếm thời gian được lấy từ ngõ ra Port D của PIC16F877A - Cấp tín hiệu để chạy led đi từ Port B của Pic sau khi đi qua 2 transistor thay đổi dòng
áp để phù hợp với đèn.
3 THIẾT KẾ VÀ THỰC HIỆN PHẦN CỨNG
Yêu cầu thiết kế
o Giá thành sản phẩm <700.000 VNĐ o Thời gian delay nhỏ hơn hoặc bằng 1s o Công suất tiêu thụ nhỏ hơn 1W
+ Mạch đơn giản dễ thực hiện
+ Tổn hao công suất bé, mạch có thể dùng pin hoặc acquy
Tuy nhiên khi sử dụng kĩ thuật số rất khó khăn trong việc thay đổi chương trình Muốn thay đổi một chương trình nào đó thì buộc phải thay đổi phần
Trang 16cứng Do đó mỗi lần phải lắp lại mạch dẫn đến tốn kém về kinh tế mà nhiều khi yêu cầu đó không thực hiện được nhờ phương pháp này.
Với sự phát triển mạnh mẽ của ngành kĩ thuật đặc biệt là cho ra đời các họ vi xử lí, vi điều khiển PLC đã giải quyết được những bế tắc và kinh tế hơn mà phương pháp dùng IC số kết nối lại không thực hiện được.
- Với vi mạch dùng kĩ thuật vi xử lý:
Với phương pháp này có những ưu điểm sau:
+ Ta có thể thay đổi một cách linh hoạt bằng việc thay đổi phần mềm trong khi đó phần cứng không thay đổi mà mạch dùng IC số không thể thực hiện được mà nếu có thể thực hiện được thì cũng cứng nhắc mà người công nhân khó tiếp cận, dễ nhầm.
+ Số linh kiện sử dụng trong mạch cũng ít hơn + Mạch đơn giản hơn mạch dùng IC số
Song do phần cứng của vi xử lí chỉ sử dụng CPU đơn chíp mà không có các bộ nhớ RAM, ROM, các bộ timer, hệ thống ngắt Do vậy việc viết chương trình gặp nhiều khó khăn Do vậy hiện nay để khắc phục những nhược điểm trên hiện nay người ta sử dụng bộ vi điều khiển.
- Điều khiển bằng vi điều khiển:
Ngoài ưu điểm của phương pháp trên, phương pháp này còn có những ưu điểm sau:
+ Do trong vi điều khiển có sử dụng các bộ timer, các hệ thống ngắt, câu lệnh đơn giản nên việc lập trình đơn giản hơn.
+ Trong mạch có thể sử dụng ngay bộ nhớ trong đối với chương trình có quy mô nhỏ rất tiện lợi mà vi xử lí không thực hiện được.
+ Nó có thể giao tiếp nối tiếp trực tiếp với máy tính mà vi xử lí cũng giao tiếp được nhưng là giao tiếp song song sang nối tiếp để giao tiếp với máy tính
Vẽ sơ đồ khối tổng quát
Trang 17 Led 7 thanh hiển thị thời gian sáng của đèn.
Nút nhấn: Ở đây có 4 nút nhấn (Normal, Rush Hour, Night, Reset)
Nút nhấn Normal: Đèn Đỏ (35s), Đèn Xanh (30s), Đèn Vàng (5s).
Nút nhấn Rush Hour: Đèn Đỏ (60s), Đèn Xanh (55s), Đèn Vàng (5s).
Nút nhấn Night: Chỉ hoạt động đèn Vàng đến khi chuyển chế độ.
Nút nhấn Reset: Mỗi khi chuyển chế độ dùng nút Reset để chuyển.
Cảm biến mưa: Có 2 mức tín hiệu 0 và 1 (Mức 0: Tắt chế độ mưa, Mức 1: Cho phép chế độ mưa được hoạt động)
Vẽ sơ đồ mạch chi tiết -Mạch mô phỏng - Schematic:
11
Trang 18Hình 3 Khối vi điều khiển
Trang 19Hình 5 Khối hiển thị LEDHình 4 Khối nút nhấn
-Mạch PCB:
Trang 214 THIẾT KẾ VÀ THỰC HIỆN PHẦN MỀM
a Lưu đồ thuật toán
b Hoạt động
Nút nhấn Normal: Đèn Đỏ (35s), Đèn Xanh (30s), Đèn Vàng (5s) Nút nhấn Rush Hour: Đèn Đỏ (60s), Đèn Xanh (55s), Đèn Vàng (5s) Nút nhấn Night: Chỉ hoạt động đèn Vàng đến khi chuyển chế độ Nút nhấn Reset: Mỗi khi chuyển chế độ dùng nút Reset để chuyển.
Trang 22Cảm biến mưa: Có 2 mức tín hiệu 0 và 1 (Mức 0: Tắt chế độ mưa, Mức 1: Cho phép chế độ mưa được hoạt động) Khi cảm biến mưa được ở mức thì hệ thống sẽ lập tức chuyển sang chế độ mưa.
c Các mode hoạt động Mode điều khiển:
Mode tự động:
Trang 29
} }
5 KẾT QUẢ THỰC HIỆN
Nhóm em chủ yếu sử dụng phần mềm proteus để thực hiện mô phỏng và phần mềm altium để design và thiết kế mạch in.
Trên proteus hệ thống chạy tốt, test code mạch chạy hoàn toàn đúng.
Tuy nhiên, do lỗi ở phần thiết kế nên mạch chúng em khi gia công ra không hoạt động được
Trang 30Hình 8 Hoàn thành sản phẩm thực tế
Trang 31Hình 9 Sản phẩm mô phỏng
Đánh giá về kết quả làm việc nhóm
Các vấn đề cần hoàn thành Đánh giá Phân chia % số điểm Tìm hiểu lí thuyết Hoàn thành tốt và đúng
thời hạn
Chia đều cho từng thành viên trong nhóm
Thiết kế và mô phỏng Hoàn thành đúng thời hạn Đóng góp ý kiến Đóng góp ý kiến nhiệt
tình, đưa ra được nhiều ý kiến để cùng thảo luận Mục tiêu chung của đề tài: vẫn chưa hoàn thành được
6 KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN
6.1 Kết luận
Sau khi thực hiện đề tài này, nhóm chúng em học được rất nhiều kinh nghiệm bổ ích trong việc thiết kế một hệ thống nhúng Học được cách sử dụng các phần mềm viết chương
Trang 32trình cho vi điều khiển như PIC-C Compiler, phần mềm mô phỏng như Proteus, phần mềm thiết kế mạch in Aitium Bên cạnh đó, chúng em cũng phần nào hiểu rõ hơn về vi điều khiển PIC 16F877A và cách tính toán, sử dụng hợp lí các linh kiện cho một hệ thống nhúng Tuy nhiên, trong quá trình thiết kế có sai sót nên chúng em vẫn chưa hoàn thành được mạch trên thực tế và nhóm chúng em vẫn chưa khắc phục được.
6.2 Hướng phát triển
Đề tài này của chúng em có thể sử dụng ổn trong thực tế Sau này có thể thêm một số chi tiết đèn để báo hiệu cho người đi bộ
7 TÀI LIỆU THAM KHẢO
[1] Hạnh Nhất, “lập trình cho PIC sử dụng PIC C Compiler trang 50”,