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

Thiết kế thiết bị điều khiển trong nhà sử dụng vi điều khiển PIC

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 (740.25 KB, 37 trang )

TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI
VIỆN ĐIỆN TỬ VIỄN THÔNG
====o0o====
BÁO CÁO
BÀI TẬP LỚN VI XỬ LÝ
ĐỀ TÀI:
THIẾT KẾ MẠCH ĐIỀU KHIỂN THIẾT BỊ TRONG
NHÀ
Nhóm: 03 – Lớp TC2051 – kỳ 20132

GVHD: PGS.TS. PHẠM NGỌC NAM
Hà Nội, 6/2014
Báo cáo BTL Vi Xử Lý Group 03
2014
TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI
VIỆN ĐIỆN TỬ VIỄN THÔNG
====o0o====
BÁO CÁO
BÀI TẬP LỚN VI XỬ LÝ
ĐỀ TÀI:
THIẾT KẾ MẠCH ĐIỀU KHIỂN THIẾT BỊ TRONG
NHÀ
Nhóm: 03 – Lớp TC2051 – kỳ 20132

GVHD: PGS.TS. PHẠM NGỌC NAM
Hà Nội, 6/2014
2
Báo cáo BTL Vi Xử Lý Group 03
2014
Tiêu chí đánh giá Thang điểm
1. Tổng điểm ban đầu


10.0
2. Điểm trừ
2.1. Không có sản phẩm
2.2. Không có báo cáo bản cứng
2.3. Thiếu chức năng: đăng nhập password bằng keypad
2.4. Thiếu chức năng: hiển thị password/tình trạng đăng nhập trên
LCD
2.5. Thiếu chức năng: cảnh báo khi nhập sai 2 lần
2.6. Thiếu chức năng: chỉnh sửa, thay đổi password
2.7. Thiếu chức năng: hiển thị ngày, giờ hiện tại trên LCD
2.8. Thiếu chức năng: hẹn giờ tắt đèn
2.9. Thiếu chức năng: đèn tự động bật tắt phụ thuộc vào cường độ
sang hiện tại
2.10. Thiếu chức năng: hiển thị nhiệt độ hiện thời lên LED 7 thanh
2.11. PCB không có tên nhóm và các thành viên
2.12. Báo cáo sơ sài/thiếu nội dung (tên để tài/nhóm/mục lục/yêu cầu
của đề tài/kế hoạch nhóm/thiết kế sơ đồ khối/code)
3. Điểm cộng
3.1. Mạch in và sắp xếp linh kiện đẹp
3.2. Các chức năng đã thực hiện có đáp ứng tốt (độ nhạy, tốc độ tính
toán, hiển thị)
3.3. Có chức năng: sử dụng mô hình nhà để demo hệ thống
3.4. Có chức năng: tự động bật đèn khi có người đi vào phòng, sử
dụng cảm biến hồng ngoại
3.5. Có thêm các chức năng sáng tạo khác
3.6. Có một đoạn code viết bằng mã ASM
3.7. Dễ sử dụng (bàn phím lớn, ghi chú rõ ràng, thao tác đơn giản)
3.8. Trình bày rõ ràng, trả lời được các câu hỏi chuyên môn
TỔNG ĐIỂM:
3

Báo cáo BTL Vi Xử Lý Group 03
2014
MỤC LỤC
4
Báo cáo BTL Vi Xử Lý Group 03
2014
DANH MỤC HÌNH VẼ
DANH MỤC BẢNG BIỂU
5
Báo cáo BTL Vi Xử Lý Group 03
2014
LỜI NÓI ĐẦU
Khoa học kĩ thuật ngàu càng phát triển mạnh mẽ, kỹ thuật điện tử cũng được chú
trọng phát triển nhiều hơn. Ngày nay, cũng với sự tiến bộ của khoa học kĩ thuật, đời sống xã
hội ngày càng phát triển dựa trên những ứng dụng của khoa học vào đời sống. Vì vậy mà
công nghệ điện tử mang tính tự động ngày càng được ứng dụng rộng rãi. Sự phát triển của
máy tính đã mở rộng các ứng dụng của vi điều khiển. Các bộ vi điều khiển đa tính năng
đang được ứng dụng rộng rãi và thâm nhập ngày càng nhiều trong các lĩnh vực kỹ thuật và
đời sống xã hội. Hầu hết các thiết bị được điều khiển tự động, từ các thiết bị văn phòng đến
cho đến các thiết bị trong gia đình đều dùng các bộ vi điều khiển nhằm đem lại sự tiện nghi
cho con người trong thời đại công nghiệp hóa, hiện đại hóa.
Để ứng dụng môn kĩ thuật vi xử lí vào thực tế, dưới sự hướng dẫn của thầy Phạm Ngọc
Nam và các anh trợ giảng, chúng em đã thiết kế và hoàn thành đề tài : “Mạch điều khiển
thiết bị trong nhà “. Với sự nỗ lực của bản thân nhưng do thời gian kiến thức và kinh
nghiệm của chúng em còn hạn chế nên không thể tránh khỏi những sai sót. Chúng em rất
6
Báo cáo BTL Vi Xử Lý Group 03
2014
mong nhận được sự giúp đỡ và đóng góp ý kiến của thầy cô cùng các bạn để đề tài hoàn
thiện hơn.

Chúng em xin chân thành cảm ơn!
Hà Nội, tháng 5 năm 2014
7
Báo cáo BTL Vi Xử Lý Group 03
2014
CHƯƠNG 1: MÔ TẢ ĐỀ TÀI
1.1 Yêu cầu chức năng
Từ những vấn đề đặt ra ở trên, bọn em xác định yêu cầu về chức năng của
hệ thống cần đạt được, đó là:
• Đăng nhập password vào nhà thông qua hệ thống keypad và hiển thị trên LCD. Vào
menu chọn chế độ đăng nhập,ở đây LCD sẽ hiển thị 2 dòng,
dòng 1: “Password: “
Dòng 2: dòng nhập password.
Nếu đúng thì trả về “ Đăng nhập thành công”, nếu sai thì trả về “ Đăng nhập lỗi ”.
• Báo hiệu chuông cảnh báo khi đăng nhập sai 2 lần. Chuông sẽ kêu 1 hồi để báo hiệu
cho người sử dụng biết rằng mật khẩu bị sai.
• Có thể thay đổi password. Người dùng có thể ấn nút menu chọn chế độ thay đổi hoặc
đăng nhập password. Sau đó ấn nút ok. Hệ thống sẽ yêu cầu nhập password cũ, nếu
đúng thì mới được đổi password.
• Khi không đăng nhập thì hiển thị trên LCD ngày, tháng, năm và giờ hiện tại. ( Có thể
thêm chức năng chỉnh lại giờ ngày tháng)
1. Hiển thị nhiệt độ hiện thời trên led 7 thanh. Ta dùng 1 cảm biến nhiệt độ đo nhiệt độ
ngoài trời, sau đó đưa tín hiệu vào pic để pic xử lý và đưa ra kết quả ra led 7 thanh.
• Điều khiển bật hoặc tắt đèn phụ thuộc vào ánh sáng trong phòng. Sử dụng cảm biến
ánh sáng kiểm tra điều kiện để có thể bật hoặc tắt đèn.
• Hẹn giờ tắt đèn theo thời gian. Ở menu chọn chế độ hẹn giờ tắt đèn.
8
Báo cáo BTL Vi Xử Lý Group 03
2014
1.2 Yêu cầu phi chức năng

 Sử dụng vi điều khiển 16f877a để điều khiển hoạt động của hệ thống.
 Sử dụng keypad dán 4x4.
  Code viết bằng mã ASM và code C.
  PCB có tên nhóm và các thành viên: Trong file pcb in tên các thành viên của
nhóm
Group03_TC2051
Vu Ha Nam
Tran Quoc Huy
Tran Tien Dat
Ha Duy Phu
Le Duy Tho
  Kích thước mạch khoảng 12x15, đi dây 2 lớp, có phủ đồng, mối hàn đẹp, đi
dây và xắp xếp linh kiện trên board hợp lý.
  Có chức năng menu cho người dùng sử dụng dễ dàng
1.3 Sơ đồ khối hệ thống
Từ những mục tiêu đã Sắp xếp linh kiện hợp lý và đơn giản.đặt ra ở phần 1, phần 2
đưa ra sơ đồ khối của hệ thống cũng như các giải pháp được sử dụng. Đây là cơ sở chính để
thiết kế phần cứng cho toàn bộ hệ thống.
9
Báo cáo BTL Vi Xử Lý Group 03
2014
Figure Sơ đồ khối mạch điểu khiển thiết bị trong nhà
10
Báo cáo BTL Vi Xử Lý Group 03
2014
1.4 Kế hoạch thực hiện và phân chia công việc
Phân chia công việc của các thành viên:
Tên thành viên Công việc Ghi chú
Vũ Hà Nam© Tổng hợp mach, thiết kế mạch in, đặt
mạch và hàn linh kiện

Hà Duy Phú Viết code chính, test mạch, viết báo cáo
Lê Duy Thọ Viết code chính, test mạch,viết báo cáo
Trần Tiến Đạt Viết code phần cảm biến hiển thị nhiệt độ,
thời gian thực
Trần Quốc Huy Viết code phần Giao tiếp đèn, thời gian
thực
Table : Bảng phân công công việc
11
Báo cáo BTL Vi Xử Lý Group 03
2014
CHƯƠNG 2: THIẾT KẾ HỆ THỐNG
2.1 Khối Nguồn
Mạch gồm có các linh kiện sau:
- 1 cầu diode biến AC thành DC,
- tụ 1000µF và tụ gốm 104 để lọc nguồn
- IC ổn áp 7805 để tạo ra nguồn
• Chức năng: Nguồn vào là nguồn xoay chiều, được đưa qua biến áp
sau đó cho qua cầu chỉnh lưu đưa vào chân IN của IC7805 để lấy ra
nguồn 5V cung cấp cho toàn mạch
Figure : Sơ đồ nguyên lý mạch nguồn
2.2 Khối tạo dao động
Tạo dao động cho Pic 16f877a ta sử dụng thạch anh tần số 20MHz và sử dụng 2 tụ
33pf
12
Báo cáo BTL Vi Xử Lý Group 03
2014
Cấu tạo mạch như sau
Figure : Sơ đồ nguyên lý khối tạo dao động
2.3 Khối cảm biến nhiệt độ
• Chức năng: Xác định một cách chính xác

nhất nhiệt độ trong phòng
• Linh kiện sử dụng: cảm biến nhiệt độ LM35
 LM35 là IC cảm biến nhiệt độ
thayđổi 10mv sau 1 độ C.
 LM35 sẽ được kết nối với chân củavdk sau
đó vdk sẽ đọc giá trị thông qua ADC kết quả
sẽ được hiển thị qua 2 LED 7 thanh.
13
Báo cáo BTL Vi Xử Lý Group 03
2014
Figure Cảm biến nhiệt độ LM35
2.4 Khối cảm biến ánh sáng
• Chức năng: Xác định cường độ ánh sáng
hiện tại trong phòng
• Linh kiện sử dụng: quang trở
• Nguyên lý làm việc: Khi ánh sáng chiếu
vào với một mức độ nhất định tín hiệu sẽ
được đưa vào bằng cách đọc ADC. VDK
sẽ quyết định đầu ra lên mức 1 hoặc
xuống mức 0.
Figure : Cảm biến ánh sáng
2.5 Bàn phím
-Nhập password trên keypad là các số từ 0->9
-Nhấn nút Menu để mở menu(A)
-Nhấn nút ENTER để đăng nhập, clear để xóa.
Trong quá trình nhập nếu có sai sót thì có thể sử
dụng nút backspace(B) để điều chỉnh.
Figure : Bàn phím
2.6 Thời gian thực
 Chức năng: Cấp chính xác thời gian thực để hiển thị lên LCD.

 Linh kiện sử dụng: IC thời gian thực DS1307,thạch anh,pin,
 Nguyên lý làm việc:
DS 1307 là một IC thời gian thực với nguồn cung cấp nhỏ, dùng để cập nhật thời
gian và ngày tháng với 56 bytes SRAM. Địa chỉ và dữ liệu được truyền nối tiếp qua
2 đường bus 2 chiều. Để không phải điều chỉnh lại thời gian vào những lúc bị mất
nguồn, ta nối thêm 1 pin 3.3V vào chân số 3 của IC DS1307 (sao cho chân + của pin
14
Báo cáo BTL Vi Xử Lý Group 03
2014
nối vào IC và chân – của pin nối xuống đất). Hai chân 1 và 2 của DS1307 được nối
vào bộ dao động thạch anh có tần số 32,768Hz để tạo dao động cho IC hoạt động.
Figure : Khối thời gian thực DS1307
2.7 Vi điều khiển PIC 16f877a
Giới thiệu chung về vi điều khiển PIC 16F877A
PIC là họ vi điều khiển 8 bit theo công nghệ mới, với những tính năng rất mạnh được
tích hợp trong chip của hãng Microchip theo công nghệ RISC, mạnh ngang hàng với các họ
vi điều khiển 8 bit khác như AVR, Pisoc. Do ra đời muộn hơn nên họ vi điều khiển PIC có
nhiều tính năng mới đáp ứng tối đa nhu cầu của người sử dụng so với họ 8051, 89xx. Nó ổn
định hơn, có khả năng tích hợp và mềm dẻo hơn trong việc lập trình.
PIC 16F877A có đầy đủ tính năng của họ PIC, so với các loại khác thì giá thành là vừa phải
khi nghiên cứu và làm các công việc ứng dụng tới vi điều khiển.
Tính năng:
15
Báo cáo BTL Vi Xử Lý Group 03
2014
 Bộ nhớ chương trình 8Kx14 bit, bộ nhớ dữ liệu 368x8 byte RAM và bộ nhớ dữ liệu
EEPROM dung lượng 256x8 byte.
 Đóng vỏ 40 chân trong đó chia làm các Port vào ra dự liệu: Port A,B,C,D,E với 33
chân vào ra dữ liệu.
 Các chuẩn giao tiếp SPI, SSP I2C

 Chuẩn giao tiếp nối tiếp USART với 9 bit địa chỉ.
 Chuẩn giao tiếp song song với các chân điều khiển RD,WR và CS ở ngoài.
 Có 8 kênh ADC 10 bit. Hai bộ so sánh. Có 2 kênh PWM.
 Hai bộ timer/counter 8 bit, một bộ timer/counter 16 bit.
 1 bộ định thời Watchdog.

Mô tả các chân

Figure Sơ đồ chân của vi điều khiển PIC16F877A
Hai chân VDD cấp nguồn dương, 2 chân VSS cấp nguồn âm cho Vi điều khiển hoạt động.
Chân 1 : master clear _ là chân reset cứng khởi động lại moij hoạt động của hệ thống
16
Báo cáo BTL Vi Xử Lý Group 03
2014
Hai chân OSC1,OSC2 các chân tạo bộ dao động ngoài cho VĐK, các chân này được nối với
thạch anh (12M), tụ gốm 22p. Hoạt động như một mạch dao động 3 điểm điện dung.
Với các chức năng tích hợp sẵn trên, vi điều khiển PIC 16F877A thể hiện là một
dòng chip VĐK không chỉ có tốc độ tốt mà còn được tích hợp khá nhiều chức năng ngoại
vi, phù hợp với vai trò của một chip xử lý trung tâm.
Figure : Sơ đồ nguyên lý khối Vi điều khiển
2.8 Khối hiển thị LCD
17
Báo cáo BTL Vi Xử Lý Group 03
2014
+)Sử dụng một LCD để hiện thị
thông tin giờ,ngày, tháng,
năm,password
Dùng LCD 16x2
Figure LCD
a) Mô tả chi tiết hiển thị trên LCD:

• Ban đầu khi chưa đăng nhập LCD hiển thị thời gian:
• Dòng 1:Giờ-Phút-Giây.
• Dòng 2:Ngày-Tháng-Năm.
• Khi ấn A LCD hiển thị:
• Dòng 1:Mật Khẩu.
• Dòng 2:_con trỏ để nhập mật khẩu.Nếu đúng thì LCD sẽ hiển thị
Menu.Nếu sai LCD hiển thị “Sai mật khẩu” và trở lại màn hình
trạng thái lúc nhập mật khẩu sau 2s.
• Khi đã đăng nhập thành công LCD hiển thị Menu:
• Cài đặt thời gian.
• Thay đổi pass.
• Cài đặt thời gian bật đèn.
• Cài đặt thời gian tắt đèn.
• Bằng cách ấn A hoặc số trên bàn phím số tương ứng sẽ chon được
chức năng mình cần.
• Dòng 1:Cài đặt thời gian
• Dòng 1:Giờ-Phút-Giây.
• Dòng 2:Ngày-Tháng-Năm.
 Điều chỉnh các tham số:”Giờ,Phút,Giây,Ngày,Tháng,Năm”
 =>Điều chỉnh các thông số của các tham số thông qua bàn phím
số.Kết thúc mỗi tham số ấn A (Các tham sô trong quá trình điều
chỉnh sẽ nháy).
18
Báo cáo BTL Vi Xử Lý Group 03
2014
• Dòng 2: Đổi pass.
• Dòng 1:”nhập pass cũ”.
• Dòng 2:_con trỏ xuất hiện để nhập pass…
• Sau khi ấn A nếu sai LCD chuyển về trạng thái “Đổi pass”.Nếu
đúng LCD chuyển sang hiển thị kế tiếp:

• Dòng 1:”nhập pass mới”.
• Dòng 2:_con trỏ xuất hiện để nhập pass mới.
• Sau khi ấn N5 LCD chuyển sang hiển thị kế tiếp:
• Dòng 1:”bạn có lưu thay đổi không”
• Dòng 2:1.Không……….2Có.
• Tác động lên khối bàn phím các số 1 hoặc 2 để chọn “Không”
hay “Có”
• Dòng 1:Cài đặt thời gian bật đèn:
• Dòng 1:Thời gian bật đèn.
• Dòng 2:Giờ-Phút.
• Thao tác điều chỉnh tưởng tự như thay đổi thời gian.Sau khi ấn
A LCD chuyển sang hiển thị.
• Dòng 1:”Ban có kích hoạt”
• Dòng 2:1.Có………………2.Không.
• Tác động lên khối bàn phím các sô 1 hoặc 2 để chọn “Có” hay
“Không”.
• Dòng 2:Cài đặt thời gian tắt đèn:
• Tương tự cài đặt thời gian bật đèn.
2.9 Khối đèn
Để điều khiển bật tắt đèn 12V ta sử dụng transistor và role
Khi VDK phát tín hiệu “1” ~5V Trans tắt. Đèn sáng
Khi VDK phát tín hiệu “0” ~0V Trans thông. Đèn tắt
19
Báo cáo BTL Vi Xử Lý Group 03
2014
Figure Khối Đèn
2.10 Khối Led 7 thanh
• Chức năng: Hiển thị nhiệt độ
trong phòng
• Linh kiện sử dụng: 2 Led 7

thanh để hiển thị nhiệt độ
phòng, trasistor và các điện
trở để tạo thành mạch
khuếch đại.
• Sử dụng IC 74HC595 để
chốt Led
Figure LED 7 thanh
20
Báo cáo BTL Vi Xử Lý Group 03
2014
2.11 Khối chuông báo
Khi password nhập sai quá 2 lần, còi cảnh
báo sẽ được bật lên
Chuông cảnh báo sử dụng là:
Thông số chuông: 3V 9.5x12MM sound
output trong 10cm 80dB
Buzzer cùng với bộ chuyển dac và điện trở
nối với pic để điều khiển tắt mở còi.
Figure Khối chuông báo
CHƯƠNG 3: MẠCH THỰC TẾ
a. Sơ đồ nguyên lý toàn mạch
21
Báo cáo BTL Vi Xử Lý Group 03
2014
Figure Sơ đồ nguyên lý
b. Sơ đồ Layout mạch và hình ảnh thật sản phẩm
Figure Mạch Nguồn
Figure LED
22
Báo cáo BTL Vi Xử Lý Group 03

2014
Figure LCD
23
Báo cáo BTL Vi Xử Lý Group 03
2014
Figure PIC
24
Báo cáo BTL Vi Xử Lý Group 03
2014
TÀI LIỆU THAM KHẢO
[1] Microchip: Datasheet PIC 16f877a
[2] Google.com
[3] codientu.org
[4] Picvietnam.com
[5] Phạm Ngọc Nam: Tài liệu môn học Vi xử lý
25

×