Tải bản đầy đủ (.docx) (32 trang)

ĐÈN GIAO THÔNG dùng VDK ( có code đầy đủ )

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (535.61 KB, 32 trang )

ĐÈN GIAO THÔNG
MỤC LỤC

1


CHƯƠNG 1: GIỚI THIỆU
1.1 Ý tưởng

Như hiện nay, chúng ta đang đối mặt với rất nhiều vấn đề trong giao thông
đường bộ, ví như vấn nạn kẹt xe, đường xá bị ùn tắc giao thông một cách
nghiêm trọng. Từ đó, giải pháp đưa ra là đèn giao thông ở các giao lộ chính, các
ngã tư là một trong những thiết bị rất hữu ích trong việc phân luồng giao thông
đường bộ. Đèn giao thông ra đời giúp cho việc thao tác thủ công thành công
nghệ máy móc thông minh.
Trong quá trình tham gia giao thông thực tế, các trục đèn giao thông ở
các ngã tư lớn vẫn còn gặp nhiều khó khăn và chưa được tối ưu cho lắm. Nhận
thấy vậy, em đưa ra các yêu cầu về đèn giao thông như:
- Tùy chỉnh được thời gian thực ở mỗi đèn giúp giải quyết vấn nạn kẹt
xe vào thời gian cao điểm.
- Ưu tiên rẽ trái riêng biệt với luồng xe đi thẳng.
- Xây dựng đèn giao thông ngã tư theo hướng phát triển mới.
1.2 Giới thiệu
Đề tài này được thực hiện với sự kết hợp giữa vi điều khiển và LED 7 đoạn
dựa trên trình biên dịch ngôn ngữ Assembly code. Sử dụng công nghệ quét LED
7 đoạn để sử dụng hiệu quả hơn. Mặt khác, sản phẩm này còn có thể tùy biến
thời gian thực để giúp giải quyết nhiều vấn đề như đã nêu trên và ưu tiên rẽ trái
cho việc tối ưu hóa lối đi.
1.3 Mục tiêu
Mục tiêu là thiết kế, thi công, điều khiển mô hình đèn giao thông ngã tư. Từ
đó, xây dựng cho phù hợp với điều kiện giao thông Việt Nam hiện nay.


Hệ thống bao gồm:
- Khối đèn báo tín hiệu.
- Khối LED 7 đoạn hiển thị thời gian.
- Các nút nhấn để điều chỉnh thời gian.
- Vi xử lý để điều khiển sản phẩm.

2


CHƯƠNG 2: GIỚI THIỆU VỀ PHẦN CỨNG
2.1 Vi điều khiển AT89C51
2.1.1 Giới thiệu về vi điều khiển AT89C51
AT9C51 là một hệ vi tính 8 bit đơn chíp CMOS có hiệu suất cao,công suất
nguồn tiêu thụ thấp và có 4Kbyte bộ nhớ ROM Flash xoá được lập trình được.Chip
này được sản xuất dựa vào công nghệ bộ nhớ không mất nội dung có độ tích hợp
cao của Atmel.
AT89C51 có các đặc trưng sau: 4Kbyte Flash, 128 byte Ram, 32 đường xuất
nhập, hai bộ định thời / đếm 16 bit, một cấu trúc ngắt 2 mức ưu tiên và 5 nguyên
nhân ngắt, một port nối tiếp song công, mạch dao động và tạo xung clock trên chip.
Ngoài ra AT8951 đượ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,
port nố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 dung của RAM nhưng không cho mạch dao
động cung cấp xung clock nhằm vô hiệu hoá các hoạt động khác của chip cho đến
khi có reset cứng tiếp theo.
Các đặc điểm của 8951 được tóm tắt như sau:
- 4 KB bộ nhớ có thể lập trình lại nhanh, có khả năng tới 1000 chu kỳ ghi xoá
- Tần số hoạt động từ: 0Hz đến 24 MHz

- 3 mức khóa bộ nhớ lập trình
- 2 bộ Timer/counter 16 Bit
- 128 Byte RAM nội.
- 4 Port xuất /nhập I/O 8 bit.
- Giao tiếp nối tiếp.
- 64 KB vùng nhớ mã ngoài
- 64 KB vùng nhớ dữ liệu ngoại.
- Xử lý Boolean (hoạt động trên bit đơn).
- 210 vị trí nhớ có thể định vị bit.
- 4 us cho hoạt động nhân hoặc chia.

2.1.2 Sơ đồ chân

3


Hình 2.1: Sơ đồ chân AT89C51.
2.2 Các linh kiện chung sử dụng trong mạch
-

Diode 1N4007.

-

LM 7805.

-

Transistor C1815.


-

Thạch anh 12MHz.

-

Nút nhấn Button (2 port).

-

Tụ Capacitor 10MF.

-

Tụ Capacitor 0.1mF.

-

Trở Resistor 220 ohm,10K ohm, 4,7K ohm, 330 ohm.

4


-

Domino2.

-

Led 7 đơn, anode chung.


-

Chip AT89C51.

-

Đế gắn chip.

-

Led đơn, đục (xanh lá, đỏ, vàng).

5


CHƯƠNG 3: SƠ ĐỒ NGUYÊN LÝ VÀ MÔ
PHỎNG
3.1 Sơ đồ nguyên lý

Hình 3.1: Sơ đồ nguyên lý.
- Sơ đồ nguyên lý được vẽ trên phần mềm mô phỏng protues
3.2 Sơ đồ khối của hệ thống

Hình 3.2 : Sơ đồ khối của hệ
thống.
3.3 Sơ đồ giải thuật
6



Hình 3.3: sơ đồ giải thuật hệ thống.
3.4 Chức năng và nhiệm vụ của từng khối
- Khối LED 7 đoạn : đảm nhiệm chức năng hiển thị thời gian.
- Khối phím: đảm nhiệm chức năng tùy chỉnh thời gian thực cho đèn
tín hiệu giao thông.
- khối LED đơn: đảm nhiệm chức năng hiển thị tín hiệu phân luồng
giao thông thông thông qua màu ( xanh, đỏ, vàng).
- Khối điều khiển: phần trọng tâm của toàn mạch gồm vi điều khiển
AT89C51, quản lý hết mọi chức năng trong mạch khi ta đưa trình biên dịch lập
trình ngôn ngữ nạp vào (code).
3.5 Sơ đồ mạch in

7


Hình 3.4: sơ đồ mạch in.
3.6 Mạch thực tế

8


Hình 3.5: Mặt trước của mạch thực tế.

Hình 3.6: Mặt sau của mạch thực tế.

CHƯƠNG 4: MÔ PHỎNG VÀ THỰC
NGHIỆM
4.1 Kết quả mô phỏng

9



Hình 4.1: kết quả chạy mô phỏng.
Vi điều khiển AT89C51 gồm 4 port chính và các port phụ khác với
chức năng lọc, nhiễu tín hiệu. Sử dụng 4 port chính đó sẽ đảm nhiệm để điều
khiển như sau:
- Port 0: những chân của port 0 sẽ điều khiển khối LED 7 đoạn. Trong
port 0 bao gồm có những port nhỏ từ port 0.0 đến port 0.7. Các port nhỏ này sẽ
được nối với các chân của các con LED 7 đoạn như trong hình.
- Port 1: Ta sử dụng 4 chân trong port 1 này là từ chân 1.0 đến chân
1.3 để điều khiển chân C của các transistor C1815.
- Port 2: Các chân của port 2 được sử dụng để điều khiển những con
led đơn trong khối led đơn dùng để báo đèn tín hiệu bằng các màu.
- Port 3: Được dùng để điều khiển các nút nhấn tùy chỉnh thời gian
thực sẽ được hiển thị lên LED 7 đoạn.
4.2 Kết quả thực nghiệm

10


Hình 4.2: kết quả thực nghiệm.
Mạch thực tế chạy ổn định, đúng theo yêu cầu đề tài đã đặt ra.

11


CHƯƠNG 5: KẾT LUẬN
5.1 Ưu điểm và khuyết điểm của đề tài
- Ưu điểm: giải quyết nạn kẹt xe, ùn tắc giao thông, và có phân luồng
ưu tiên rẽ trái để tránh xảy ra sự cố ùn tắc tại các giao lộ lớn và làm giảm khả năng

tai nạn giao thông.
- Khuyết điểm: độ nhạy chưa cao, tùy biến chưa được tốt.
5.2 Khả năng ứng dụng và phát triển
Trong tương lai, sẽ phát triển thêm, tích hợp thêm các chức năng tiên
tiến khác như tự động điều chỉnh thời gian theo cái múi giờ khác nhau để có thể tối
ưu hóa việc phân luồng giao thông tránh gây ách tắc hay kẹt xe.

12


DANH MỤC CÁC TÀI LIỆU THAM KHẢO
[1] Giáo trình kỹ thuật số 1. Nguyễn Như Anh.
[2] Giáo trình thực tập điện tử. Th.S Hà Duy Hưng.
[3] Slide bài giảng Kỹ thuật vi xử lý, Trần Công Thịnh, Đại học Tôn Đức
Thắng Tp. Hồ Chí Minh.
[4] "DS18B20 Programmable Resolution 1-Wire Digital Thermometer."
Maxim Integrated, 2015.
[5] "DS1307 64 X 8, Serial, I²C Real-Time Clock." Maxim Integrated,
2015.

13


Phụ lục
Code
K1

BIT

P3.0


K2

BIT

P3.1

K3

BIT

P3.2

K4

BIT

P3.3

CHEDO

EQU R3

MAIN:
MOV 10H,#7 ;xanh 2
MOV 11H,#3;vang 2
MOV 12H,#20 ;do 1
MOV 13H,#3 ;vang 1
MOV 14H,#1 ;bien cong
MOV 15H,#7 ;xanh 1

MOV 16H,#20 ;DO 2
MOV 17H,#7 ;RE TRAI1
MOV 18H,#7 ;RE TRAI 2
BEGIN:
MOV CHEDO,#1
MOV A,10H ;
ADD A,18H ; Ð? 1
ADD A,11H ;
14


ADD A,11H ;
MOV 12H,A
MOV R0,A
MOV A,10H ;XANH2
MOV R1,A
JMP CTA
CTA: ;xanh 2
CJNE CHEDO,#1,CTA1
CLR P3.5 ;cho do 1 sang
SETB P3.4 ;tat led do 2
MOV P2,#10011011B ; cho bd2,x2,bd1 sang
DEC R0
DEC R1
CJNE R1,#-1,HIENTHIX
MOV A,11H ; VANG 2
MOV R1,A
MOV A,R0
ADD A,14H ;BÙ THI?U CHO Ð?
MOV R0,A

MOV CHEDO,#2
CTA1: ;vang 2
CJNE CHEDO,#2,CTA2
CLR P3.5 ;DO 1 SANG
15


SETB P3.4 ;DO2 TAT
MOV P2,#10101011B ;v2, bd2,bd1,d1 sang
DEC R0
DEC R1
CJNE R1,#-1,HIENTHIX
MOV A,18H
MOV R1,A
MOV A,R0
ADD A,14H ;BÙ THI?U CHO Ð?
MOV R0,A
MOV CHEDO,#3
CTA2:;CHO PHEP RE TRAI
CJNE CHEDO,#3,CTA3
CLR P3.5 ;DO 1 SANG
CLR P3.4 ;DO2 sang
MOV P2,#01111011B ;DX2 sang
DEC R0
DEC R1
CJNE R1,#-1,HIENTHIX
MOV A,11H ; gia tri 3
MOV R1,A
MOV R0,A
MOV CHEDO,#4

16


CTA3: ;VANG CHO PHEP RE TRAI
CJNE CHEDO,#4,CTB
CLR P3.5 ;DO 1 SANG
CLR P3.4 ;DO2 SANG
MOV P2,#01111011B ;v2 sang
DEC R0
DEC R1
CJNE R1,#-1,HIENTHIX
MOV A,15H
ADD A,17H
ADD A,13H
ADD A,13H
MOV 16H,A
MOV R1,A
MOV A,15H
MOV R0,A
MOV CHEDO,#5
SJMP CTA3 ;tranh truong hop chay hien thi 2 lan
HIENTHIX: JMP HIENTHI

CTB: ;ch?y dèn bt
CJNE CHEDO,#5,CTB1
SETB P3.5 ;DO 1 TAT
17


CLR P3.4 ;DO2 SANG

MOV P2,#10111001B ;XANH 1 SÁNG
DEC R0
DEC R1
CJNE R0,#-1,HIENTHI
MOV A,13H ; gia tri 3
MOV R0,A
MOV A,R1
ADD A,14H ;BÙ THI?U Ð?
MOV R1,A
MOV CHEDO,#6
CTB1: ;VANG 1
CJNE CHEDO,#6,CTB2
SETB P3.5 ;DO 1 TAT
CLR P3.4 ;DO2 SANG
MOV P2,#10111010B ;VANG 1 SÁNG
DEC R0
DEC R1
CJNE R0,#-1,HIENTHI
MOV A,17H ;VANG 1
MOV R0,A
MOV A,R1
ADD A,14H ;BÙ THI?U Ð? 1
18


MOV R1,A
MOV CHEDO,#7
CTB2: ;CHO PHÉP R? TRÁI 1
CJNE CHEDO,#7,CTB3
CLR P3.5 ;DO 1 SANG

CLR P3.4 ;DO2 sang
MOV P2,#10110111B ;DX2 sang
DEC R0
DEC R1
CJNE R0,#-1,HIENTHI
MOV A,13H ; VANG 1
MOV R0,A
MOV A,R1
ADD A,14H ;BÙ THI?U Ð? 1
MOV R1,A
MOV CHEDO,#8
CTB3:
CLR P3.5 ;DO 1 SANG
CLR P3.4 ;DO2 SANG
MOV P2,#10110111B ;v2 sang
DEC R0
DEC R1
CJNE R0,#-1,HIENTHI
19


LJMP BEGIN
HIENTHI:
MOV 30H,R0
MOV 31H,R1
CALL HIENTHI1
JNB K1,CHINH
JMP CTA

;=======================================================

CHINH:
MOV P2,#0FFH
SETB P3.4
SETB P3.5
CLR P2.1 ; cho xanh 1 sang de chinh
JNB K1,$
XANH1: ; chinh den xanh 1
MOV 30H,15H
MOV A,#0
MOV B,#0
CALL HIENTHI2
JNB K2,TANGXANH1
JNB K3,GIAMXANH1
20


JNB K1,VANG1
JNB K4,EXIT1
JMP XANH1
TANGXANH1:

; tang cho thoi gian den xanh len 1

JNB K2,$
INC 15H
MOV R6,15H
CJNE R6,#100,XANH1
MOV 15H,#0
JMP XANH1
GIAMXANH1:


;giam thoi gian den xanh

JNB K3,$
DEC 15H
MOV R6,15H
CJNE R6,#255,XANH1
MOV 15H,#99
JMP XANH1
VANG1:
JNB K1,$
MOV P2,#0FFH
CLR P2.0 ; cho vang 1 sang va chinh

VANG11:
21


MOV 30H,13H
MOV A,#0
MOV B,#0
CALL HIENTHI2
JNB K2,TANGVANG1
JNB K3,GIAMVANG1
JNB K1,TRAI1
JNB K4,EXIT1
JMP VANG11
TANGVANG1:
JNB K2,$
INC


13H

MOV R6,11H
CJNE R6,#100,VANG11
MOV 13H,#0
JMP VANG11
GIAMVANG1:
JNB K3,$
DEC 13H
MOV R6,13H
CJNE R6,#255,VANG11
MOV 13H,#99
JMP VANG11
22


EXIT1:

JMP EXIT ;

TRAI1:
JNB K1,$
MOV P2,#0FFH
CLR P2.3 ; cho R? TRÁI 1 XANH

TRAI11:
MOV 30H,17H
MOV A,#0
MOV B,#0

CALL HIENTHI2
JNB K2,TANGTRAI1
JNB K3,GIAMTRAI1
JNB K1,XANH2
JNB K4,EXIT2
JMP TRAI11
TANGTRAI1:
JNB K2,$
INC

17H

MOV R6,17H
CJNE R6,#100,TRAI11
MOV 17H,#0
JMP TRAI11
23


GIAMTRAI1:
JNB K3,$
DEC 17H
MOV R6,17H
CJNE R6,#255,TRAI11
MOV 17H,#99
JMP TRAI11
XANH2:
JNB K1,$
MOV P2,#0FFH
CLR P2.5

XANH22:
MOV 31H,10H
MOV A,#0
MOV B,#0
CALL HIENTHI3
JNB K2,TANGXANH2
JNB K3,GIAMXANH2
JNB K1,VANG2
JNB K4,EXIT2
JMP XANH22
TANGXANH2:
JNB K2,$
24


INC

10H

;MOV A,10H
;SUBB A,11H
MOV R6,10H
CJNE R6,#100,XANH22
MOV 10H,#0
JMP XANH2
GIAMXANH2:
JNB K3,$
DEC 10H
MOV A,10H
CJNE A,#255,XANH22

MOV 10H,#99
JMP XANH22
EXIT2:

JMP EXIT ;

VANG2:
JNB K1,$
MOV P2,#0FFH
CLR P2.4
VANG22:

MOV 31H,11H

MOV A,#0
MOV B,#0
CALL

HIENTHI3
25


×