ddieuf khiển đèn tín hiệu giao thông taih ngã tư
Trang 1Luận văn
Đề tài: Tín Hiệu Đèn Giao
Thông
Trang 2LỜI NÓI ĐẦU
Ngày nay, với sự phát triển ngày càng mạnh về lĩnh vực khoa học kỹ thuậtcũng như tất cả các lĩnh vực khác Đặc biệt ngành điện tử là một trong những ngànhkhoa học kỹ thuật đáp ứng rất tốt nhu cầu cuộc sống của con người
Trong ngành điện tử thì có rất nhiều lĩnh vực chuyên môn hóa khác nhau,nhưng vi điều khiển là một trong những lĩnh vực đáp ứng rất tốt nhu cầu trên củacon người Vì nó là một vi mạch rất nhỏ nhưng giải quyết được rất nhiều vấn đềkhó khăn, phức tạp Chính vì vậy, hầu hết các thiết bị điện tử hiện nay đều sử dụng
vi mạch điều khiển
Nói đến vi điều khiển thì phải nói đến 89XX Đây là một trong những con
vi xử lí được sử dụng khá rộng rãi và rất phổ biến trong đời sống hiện nay, giá thànhlại vừa phải Vì vậy, nó là một con vi điều khiển được sử dụng nhiều trong giảngdạy và học tập
Trang 3
NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN
Trang 4
NHẬN XÉT CỦA HỘI ĐỒNG CHẤM ĐỒ ÁN
Tp.HCM, ngày … tháng … năm 2010
Ký tên
Trang 5MỤC LỤC
Trang
Lời nói đầu: 1
Lời cảm ơn: 2
Nhận xét của Giáo Viên Hướng Dẫn: 3
Nhận xét của hội đồng chấm đồ án: 4
Mục lục: 5
PHẦN I: VẤN ĐỀ ĐẶT RA: 7
PHẦN II: PHƯƠNG ÁN THIẾT KẾ: 9
1 Mô tả hoạt động của hệ thống: 10
2 Phương án thiết kế: 10
3 Sơ đồ khối hệ thống: 11
PHẦN III PHẦN THIẾT KẾ: 12
1 Khối vi điều khiển: 13
Sơ lược về vi điều khiển: 13
Sơ đồ bên trong của vi điều khiển: 14
Khảo sát, chức năng từng chân: 15
Nhóm chân nguồn nuôi: 15
Chức năng của các chân tín hiệu: 15
Các chân tín hiệu điều khiển: 16
Trang 63 Khối nguồn: 21
PHẦN IV THIẾT KẾ VÀ THI CÔNG MẠCH: 23
1 Sơ đồ nguyên lý toàn mạch: 24
2 Nguyên lý hoạt động: 26
3 Lưu đồ giải thuật: 27
4 Chương trình điều khiển: 29
5 Một số hình ảnh sau khi mô phỏng trên protues: 35
6 Tài liệu tham khảo: ……… 37
Trang 7PHẦN I VẤN ĐỀ ĐẶT RA
Trang 8Trong hệ thống giao thông hiện nay ở nước ta, vấn đề về an toàn giao thông vàtránh ùn tắc tại các đô thị và thành phố lớn là một trong những vấn đề hết sức cấpbách và được toàn xã hội quan tâm Vì vậy các phương tiện hướng dẫn giao thôngđóng vai trò rất quan trọng, nó góp phần hạn chế những xung đột xảy ra khi thamgia giao thông Tại các đô thị thì hệ thống đèn điều khiển giao thông là rất quantrọng Hệ thống đèn điều khiển giao thông không những có tác dụng hạn chế nhữngxung đột trong giao thông thành phố mà còn là công cụ điều khiển các luồng giaothông nhằm hạn chế ùn tắc - một vấn đề nan giải tại các thành phố lớn Vì lí do trên,
chúng em quyết định chọn đề tài “Thiết kế hệ thống đèn điều khiển đèn giao
thông” cho đồ án môn học:
Trang 9PHẦN II PHƯƠNG ÁN THIẾT KẾ
Trang 101 Mô tả hoạt động của hệ thống:
Mật độ giao thông phát triển mạnh mẽ ở các đô thị lớn đòi hỏi hệ thống điềukhiển giao thông phải chính xác, linh hoạt, đơn giản nhưng hiệu quả cao Hệ thốngđèn giao thông phần nào đã đáp ứng được những yêu cầu trên Mỗi cột gồm cácđèn: Xanh - Đỏ - Vàng điều khiển các phương tiện đang tham gia giao thông
Hoạt động của từng pha ở chế độ điều khiển tự động như sau:
độ, chuẩn bị dừng lại
2 Phương án thiết kế:
Hiện nay việc sử dụng các mạch số kết kợp với chíp vi điều khiển trong các
hệ thống điều khiển tự động đã trở nên rất phổ biến vì những ưu việt của nó như: độchính xác cao, khả năng lập trình được, tốc độ điều khiển nhanh, sử dụng đơn giản,
… Mặt khác kỹ thuật số, vi xử lý, vi điều khiển là lĩnh vực đang phát triển mạnh mẽ
và có ứng dụng trong rất nhiều ngành sản xuất Vì vậy, ta sẽ thiết kế một hệ thốngđiều khiển giao thông đơn giản, chỉ sử dụng bộ vi điều khiển Tất cả các tín hiệuđiều khiển đều được đưa đến khối hiển thị trực tiếp từ các cổng của bộ vi điềukhiển Phương án này có đặc điểm là mạch gọn nhẹ, không quá phức tạp, cách thức
bố trí linh kiện dễ dàng, lập trình đơn giản, dễ chỉnh sửa
Trang 113 Sơ đồ khối hệ thống :
Hình 1: Sơ đồ khối hệ thống Đèn Giao Thông
KHỐI
VI ĐIỀU KHIỂNTRUNG TÂMAT89C51
KHỐI HIỂNTHỊ THỜI GIAN
KHỐI ĐÈN LED ĐƠN
KHỐI
NÚT
NHẤN
NGUỒN
Trang 12PHẦN III.
PHẦN THIẾT KẾ
Trang 131 Khối vi điều khiển:
1.1 Sơ lược về vi điều khiển:
Vi điều khiển AT89C51 là một vi điều khiển thuộc họ 8051, loại
CMOS,có tốc độ cao và công suất thấp với bộ nhớ Flash có thể lập trình được Nóđược sản xuất với công nghệ bộ nhớ không bay hơi mật độ cao của hãng Atmel
AT89C51 có 40 chân, được đóng gói theo tiêu chuẩn PDIP.
Hình 2:Sơ đồ chân ra của vi điều khiển AT89C51.
U2
AT89C51
9 18
30 31
1 2 3 4 5 6 7 8
21 22 23 24 25 26 27 28 10 11 12 13 14 15 16 17
39 38 37 36 35 34 33 32
RST XTAL2 XTAL1 PSEN
ALE/PROG EA/VPP
P1.0 P1.1 P1.2 P1.3 P1.4 P1.5 P1.6 P1.7
P2.0/A8 P2.1/A9 P2.2/A10 P2.3/A11 P2.4/A12 P2.5/A13 P2.6/A14 P2.7/A15 P3.0/RXD P3.1/TXD P3.2/INTO P3.3/INT1 P3.4/TO P3.5/T1 P3.6/WR P3.7/RD
P0.0/AD0 P0.1/AD1 P0.2/AD2 P0.3/AD3 P0.4/AD4 P0.5/AD5 P0.6/AD6 P0.7/AD7
Trang 141.2 Sơ đồ bên trong của vi điều khiển:
Hình 3: Sơ đồ bên trong vi điều khiển.
- Các đặc điểm tiêu chuẩn (của họ vi điều khiển 8051):
PSEN AE\ ALE
CPU
Điều khiển
ngắt
Các thanh ghi khác
128 Byte RAM
ROM 4k - 8051
Timer 0 Timer 1
Trang 15+ 1 cổng nối tiếp song công (full-duplex).
+ Mạch tạo dao động trên chip và mạch đồng hồ
- AT89C51 được thiết kế với logic tĩnh cho hoạt động có tần số giảm
xuống 0 và hỗ trợ hai chế độ tiết kiệm năng lượng được lựa chọn bằng phần mềm.Chế độ nghỉ dừng CPU trong khi vẫn cho phép RAM, các bộ định thời/đếm, cổngnối tiếp và hệ thống ngắt tiếp tục hoạt động Chế độ nguồn giảm duy trì nội dungcủa RAM nhưng không cho mạch dao động cung cấp xung clock nhằm vô hiệu hóacác hoạt động khác của chip cho đến khi có reset cứng tiếp theo
1.3 Khảo sát, chức năng từng chân:
1.3.1 Nhóm chân nguồn nuôi:
- nguồn nuôi +5V (chân số 40)
- nối đất (chân số 20)
1.3.2 Chức năng của các chân tín hiệu:(Các cổng vào/ra song song)
- 8051 có 4 cổng vào/ra song song 8 bit là Port0, Port1, Port2,
Cổng Port 1 (các chân 1÷8):
Trang 16Là cổng vào/ra song song có tác dụng kép Khi không hoạt động xuấtnhập các chân của cổng này có nhiều chức năng riêng
1.3.3 Các chân tín hiệu điều khiển:
- Chân cho phép bộ nhớ chương trình PSEN (Program Storage Enable): Tín hiệu PSEN là tín hiệu ra ở chân 29 có tác dụng kép.Cho phép đọc bộ nhớ chương trình ngoài, thường được nối đến chân OE (Output Enable) của
EPROM cho phép đọc các byte mã lệnh Tín hiệu PSEN ở logic 0 trong thời gian viđiều khiển tìm nạp lệnh Các mã lệnh được đọc từ EPROM qua bus dữ liệu và đượcchốt vào thanh ghi lệnh IR của vi điều khiển để giải mã.Khi vi điều khiển thi hànhchương trình trong ROM nội PSEN sẽ ở mức logic1.Chân cho phép chốt địa chỉALE/PROG (Address Latch Enable):
- Chân tín hiệu ALE (chân 30) đưa ra xung điều khiển cho phépchốt
byte thấp của địa chỉ khi vi điều khiển truy xuất bộ nhớ ngoài.Chân này cũng là đầuvào của xung lập trình khi lập trình cho FLASH, khi đó chân tín hiệu ở mức 0 Khihoạt động bình thường, tín hiệu ALE được phát ra với tần số không đổi bằng 1/6 tần
số của bộ tạo dao động trên chip, và có thể sử dụng cho mục đích định thời Tuynhiên, sẽ có một xung ALE bị bỏ qua mỗi khi vi điều khiển truy xuất bộ nhớ ngoài
- Chân tín hiệu truy xuất ngoài EA (External Access): Tín hiệu vàoEA
(chân 31) được nối với 5V (mức logic 1) hoặcvới GND (mức 0) Nếu ở mức 1, viđiều khiển thi hành chươngtrình từ ROM nội Nếu ở mức 0, vi điều khiển sẽ thi
P3.0 RXD Dữ liệu nhận cho Port nối tiếp
P3.1 TXD Dữ liệu phát cho Port nối tiếp
P3.6 /WR Xung ghi bộ nhớ dữ liệu ngoài
P3.7 /RD Xung ghi đọc nhớ dữ liệu
ngoài
Trang 17hành chươngtrình ở bộ nhớ mở rộng Chân EA được lấy làm chân cấp nguồn 12Vkhi lập trình choFLASH trong vi điều khiển.Chân thiết lập lại RST (Reset):
- Chân RST (chân 9) là đường vào xóa chính của vi điều khiển dùng để
thiết lập lại hệ thống Khi chân tín hiệu này đưa lên mức cao ít nhất là 2 chu kì máy,các thanh ghi bên trong được nạp những giá trị thích hợp để khởi động hệ thống.RST có thể được kích khi cấp điện dùng một mạch R-C Mạch này như sau:
Hình 4: Mạch thiết lập lại cho 8051
- Các chân XTAL1, XTAL2: Các chân này (chân 18, 19) nối với bộ tạo
dao động trên chip.Mạch tạo dao động như sau:
Trang 18Tần số của dao động thường là 12MHz Khi đó tụ có giá trị 33pF.Chân VCCnối đến +5V của nguồn cấp, chân GND nối đất.
1.4 Bộ nhớ trên chip:
RAM trong:
- Bộ vi điều khiển 8051 có 128 byte RAM trong bao gồm 32 byte đầu tiên(00H đến 1FH) dành cho các thanh ghi, 16 byte tiếp theo (20H đến 2FH) là vùngRAM định địa chỉ theo bit, sau đó là 80 byte RAM nháp
-Vùng thanh ghi có 32 byte, chia thành 4 khối (bank 0 đến bank 3),mỗikhối có 8 thanh ghi (từ R0 đến R7)
- Ở vùng RAM định địa chỉ theo bit, các bit được đánh địa chỉ từ 00H đến7FH
- Các thanh ghi chuyên dụng (SFRs – Special Function Registers):
- Các thanh ghi này có địa chỉ từ 80H đến FFH Chúng chứa nộidung củacác thanh ghi điều khiển
ROM:
- Bộ vi điều khiển AT89C51 có 4KB FLASH lập trình được
- ROM luôn chiếm vùng địa chỉ thấp nhất trong bộ nhớ chương trình
1.5 Các Bộ định thời/Bộ đếm:
- Bộ vi điều khiển 8051 có 2 Bộ định thời/Bộ đếm là Bộ định thời/Bộ đếm
0 và Bộ định thời/Bộ đếm 1 Chúng có thể hoạt động như là bộ định thời hoặc bộđếm
- Chế độ hoạt động của các Bộ định thời/Bộ đếm được cất trong thanh ghiTMOD:
- Nếu bit GATE xóa, các Bộ định thời/Bộ đếm được phép hoạt đông khi
bit TR# tương ứng trong thanh ghi TCON thiết lập Ngược lại,nếu GATE thiết lậpthì các Bộ định thời/Bộ đếm chỉ hoạt động khicác chân INT# tương ứng tích cực(mức thấp)
- Bit C/T# dùng để lựa chọn chế độ hoạt động bộ đếm hay bộ địnhthời.
Nếu được thiết lập thì nó hoạt đông theo chế độ đếm sự kiện,lúc này nguồn xung
Trang 19cho bộ đếm là xung ngoài đưa vào từ chân T# tương ứng (chân 14, 15) Nếu bị xóa,thì nó hoạt động theo chế độ định thời với nguồn xung là xung tạo ra từ bộ tạo daođông trên chip sau khi chia 12.
- Các bit M0, M1 dùng để xác dịnh chế độ đếm cho các bộ đếm: Sự hoạt
động của các Bộ định thời/Bộ đếm được điều khiển bởi thanh ghi TCON:
- Các bit TR# cho phép Bộ định thời/Bộ đếm hoạt động (nếu được thiết
lập) hoặc không cho phép chúng hoạt động (nếu bị xóa)
- Các bit TF# là các cờ tràn tương ứng với các Bộ định thời/Bộ đếm.
Chúng được thiết lập khi xảy ra tràn và được xóa bằng phần cứng nếu khi đó bộ xử
lý rẽ nhánh đến chương trình phục vụ ngắt tương ứng
- Các bit IT# là các bit ngắt Thiết lập IT# tạo ra chế độ ngắt cạnh, chânINT# nhận ra một ngắt khi nhận ra có một sườn âm (↓) của tín hiệu vào Xóa IT#tạo ra chế độ ngắt mức, tức là ngắt được tạo ra khi tín hiệu vào ở mức thấp (0) Ởchế độ ngắt mức, khi tín hiệu vào còn ở mức thấp thì ngắt được tạo ra liên tục chođến khi tínhiệu vào chuyển lên mức cao hoặc thiết lập IT#
- Các bit IE# là các cờ ngắt cạnh, được thiết lập khi dò thấy ngắt cạnh
1.6 Điều khiển ngắt:
Bộ vi điều khiển 8051 có 5 nguồn ngắt: TF0, TF1, INT0, INT1 và ngắt docổng nối tiếp Sự điều khiển hoạt động ngắt được cất trong 2 thanh ghi là thanh ghicho phép ngắt IE (Interrupt Enable) và thanh ghi xác định thứ ự ưu tiên ngắt IP(Interrupt Priority).Các bit và chức năng của chúng trong thanh ghi IE như sau
Trang 202.1 Led 7 thanh dung Anode chung:
f
Trang 21- Các chân đều dùng điện trở để hạn dịng cho 7seg để đề phịng cháy Bìnhthường LED hoạt động ở mức 1,8 – 3V dịng từ 10 – 20mA thì nĩ sẽ cho sáng đẹp
và mạnh
- Mạch này chúng em dùng phương pháp quét: Tối thiểu là các LED hiển thị
phải sáng 24 lần/giây (tiêu chuẩn của điện ảnh) Thực tế người ta thường làm caohơn một chút, cĩ thể đến 60, 70 lần/giây Hiển thị LED bằng phương pháp quét làphương pháp hiển thị mà tại mỗi thời điểm dữ liệu được truyền đến tất cả các LEDnhưng chỉ cĩ một LED được cho phép hiển thị dữ liệu đĩ
2.2 LED đơn hiển thị Xanh, Vàng, Đỏ:
2.3 Tính giá trị điện trở hạn dịng cho LED:
Dòng qua mỗi nhánh của led khoảng 10 - 20mA
Sụt áp trên mỗi nhánh của led khoảng 1,8V 3VV
Giá trị điện trở R nhỏ nhất:
Trang 22Hình 8: Sơ đồ nguyên lý mạch nguồn.
Trang 23PHẦN IV.
THIẾT KẾ VÀ THI CÔNG
MẠCH
Trang 241 Sơ đồ nguyên lý toàn mạch:
Trang 25f g
d p A
f g
d p A
f g
d p A
R 2 0
F
R 9 2 2 0
B E
E
Q 2
A 1 0 1 5
C F
f g
Trang 262.Nguyên lý hoạt động:
Cấp nguồn từ 9 – 12V qua mạch nguồn ổn áp còn 5VDC ổn định cấp chotoàn mạch hoạt động
Các mạch hiển thị hoạt động trên nguyên tắc điều khiển bit vào/ra của các
cổng trên IC 89C51 Chương trình được nạp vào IC này và cụ thể như sau: Vi điềukhiển được lập trình để điều khiển 2 công việc chính:
Chuyển mức của các đèn tín hiệu trên hai làn đường (Xanh, Đỏ, Vàng) Việcchuyển mức này sẽ được thực hiện bằng 6 bit truyền tín hiệu: Làn đường thứ nhất
và làn đường thứ hai sẽ dùng P0.0 – P0.7 để hiển thị đèn Xanh, Vàng, Đỏ
Các đèn hiển thị là các LED 7 thanh nối chung nhau anốt Đèn sáng sẽ tươngứng với mức logic thấp Giữa các lần hiển thị sẽ kết hợp đèn của hai làn đường Đènxanh ở làn 1 thì tương ứng sẽ là đèn đỏ ở làn 2 và ngược lại Và chuyển mức giữacác đèn sẽ xen kẽ những bộ đếm, kết thúc mỗi bộ đếm sẽ tương ứng thiết lập lại cácbit để hiển thị các trạng thái đèn tiếp theo
Việc tạo ra số thập phân được thực hiện bằng cách ghi dãy số Hexa 21 giảmdần vào vị trí ROM nội.(Lúc này ta sử dụng chân số 31(EA/VPP) và cho nó mứcđiện áp cao(mức 1) để đọc dữ liệu từ Rom nội)
Các trạng thái đèn hiển thị được điều khiển thông qua khối nút nhấn
Trang 273 Lưu đồ giải thuật:
Tg1: = tgx Tg2: = tgx + tgv
S
A
Đ
3
Trang 28Chỉnh giờ, phút
Đ12
Tg1 = 0
X1 tắt, v1 sáng
Tg1:= tgv
SA
Chỉnh tgx, tgvĐ
SA
SA
Đ
SA
SA
3
Trang 294 Chương trình điều khiển:
;Thiet ke va lap trinh mach den giao thong voi 3 den xanh vang do
; - Dung Port 0 de dieu khien den xanh vang do
; - Dung Port 2 de hien thi thoi gian
; - Dung port 1 de noi voi cac phim nhan dung de dieu khien va
;chinh thoi gian cua den xanh, vang va do
BO_DEM2 EQU 32H
Trang 32MOV R6,#0
DJNZ R6,$
RET
Trang 33;************************************************************BCD_7DOAN:
Trang 35MA_LED: DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H END
5 Một số hình ảnh sau khi mô phỏng trên protues:
P1.0 P1.2 P1.4 P1.6
P2.0 P2.2 P2.4 P2.6 P3.0 P3.2 P3.4 P3.6 P1.1
P P P P P P P P
VCC VCC VCC
P1.0 P1.1 P1.2
P0.5 P0.4 P0.3
P P
XTAL1 19
ALE 30 EA 31 PSEN 29
RST 9
P0.0/AD0 39P0.1/AD1 38P0.2/AD2 37P0.3/AD3 36P0.4/AD4 35P0.5/AD5 34P0.6/AD6 33P0.7/AD7 32
P1.0 1 P1.1 2 P1.2 3 P1.3 4 P1.4 5 P1.5 6 P1.6 7 P1.7 8
P3.0/RXD 10P3.1/TXD 11P3.2/INT0 12P3.3/INT1 13P3.4/T0 14P3.7/RD 17P3.6/WR 16P3.5/T1 15P2.7/A15 28
P2.0/A8 21P2.1/A9 22P2.2/A10 23P2.3/A11 24P2.4/A12 25P2.5/A13 26P2.6/A14 27U1
AT89C51
X1 CRYSTAL
MODE - SELECT INC + DEC - RESET - UPDATE
1 3 5 7
16 14 12 10 9 RN1
RX8
=>
Trang 36P1.0 P1.2 P1.4 P1.6
P2.0 P2.2 P2.4 P2.6 P3.0 P3.2 P3.4 P3.6 P1.1
P P P P P P P P
VCC VCC VCC
P1.0 P1.1 P1.2
P0.5 P0.4 P0.3
P P
XTAL1 19
ALE 30 EA 31 PSEN 29
RST 9
P0.0/AD0 39P0.1/AD1 38P0.2/AD2 37P0.3/AD3 36P0.4/AD4 35P0.5/AD5 34P0.6/AD6 33P0.7/AD7 32
P1.0 1 P1.1 2 P1.2 3 P1.3 4 P1.4 5 P1.5 6 P1.6 7 P1.7 8
P3.0/RXD 10P3.1/TXD 11P3.2/INT0 12P3.3/INT1 13P3.4/T0 14P3.7/RD 17P3.6/WRP3.5/T1 1615 P2.7/A15 28
P2.0/A8 21P2.1/A9 22P2.2/A10 23P2.3/A11 24P2.4/A12 25P2.5/A13 26P2.6/A14 27U1
AT89C51
X1 CRYSTAL
MODE - SELECT INC + DEC - RESET - UPDATE
1 3 5 7
16 14 12 10 9 RN1
P2.0 P2.2 P2.4 P2.6 P3.0 P3.2 P3.4 P3.6 P1.1
P P P P P P P P
VCC VCC VCC
P1.0 P1.1 P1.2
P0.5 P0.4 P0.3
P P
XTAL1 19
ALE 30 EA 31 PSEN 29
RST 9
P0.0/AD0 39P0.1/AD1 38P0.2/AD2 37P0.3/AD3 36P0.4/AD4 35P0.5/AD5 34P0.6/AD6 33P0.7/AD7 32
P1.0 1 P1.1 2 P1.2 3 P1.3 4 P1.4 5 P1.5 6 P1.6 7 P1.7 8
P3.0/RXD 10P3.1/TXD 11P3.2/INT0 12P3.3/INT1 13P3.4/T0 14P3.7/RD 17P3.6/WRP3.5/T1 1615 P2.7/A15 28
P2.0/A8 21P2.1/A9 22P2.2/A10 23P2.3/A11 24P2.4/A12 25P2.5/A13 26P2.6/A14 27U1
AT89C51
X1 CRYSTAL
MODE - SELECT INC + DEC - RESET - UPDATE
1 3 5 7
16 14 12 10 9 RN1