1. Trang chủ
  2. » Giáo Dục - Đào Tạo

Đồ án môn học vi xử lý thiết kế mạch đo nhiệt độ trong phòng và hiển thị led 7 thanh

37 6 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Thiết kế mạch đo nhiệt độ trong phòng và hiển thị led 7 thanh
Tác giả Nguyễn Ngọc Thiện, Lê Hoàng Long
Người hướng dẫn PGS. Lê Minh Thùy
Trường học Đại Học Bách Khoa Hà Nội
Chuyên ngành Vi xử lý
Thể loại đồ án
Năm xuất bản 12/2023
Thành phố Hà Nội
Định dạng
Số trang 37
Dung lượng 1,25 MB

Nội dung

Nguyên lý hoạt động của cảm biến nhiệt độ LM35Cảm biến LM35 hoạt động bằng cách cho ra một giá trị điện áp nhất định tại chân VOUT chân giữa ứng với mỗi mức nhiệt độ.. Theo c

Trang 1

ĐẠI HỌC BÁCH KHOA HÀ NỘI

Trang 2

Yêu cầu của dự án

Yêu cầu Chức năng, Thông

+++

Trang 3

Giới thiệu thành viên của dự án

Họ và tên: Nguyễn Ngọc Thiện MSSV: 20202836

Phụ trách công việc:

- Lên ý tưởng, lựa chọn linh kiện

- Tìm hiểu nguyên lý,sơ đồ thuật toán

- Mô phỏng trên Proteus mạch đo nhiệt độ dùng LM35+ADC0808+AT89C52

- Code Assembly trên KeilC

- Lắp mạch thực tế

Họ và tên: Lê Hoàng Long MSSV: 20202821

Phụ trách công việc:

- Lên ý tưởng, lựa chọn linh kiện

- Tìm hiểu nguyên lý,sơ đồ thuật toán

- Lắp mạch thực tế

Trang 4

Kế hoạch thực hiện chung của dự án

Nội dung Kết quả cần

đạt

Thời gian (tuần)

Chốt loại cảm biến cần

dùng

T1-T2

Tìm hiểu về

các linh kiện

-Sơ đồ khối chức năng, yêu cầu,…

Trang 5

Kế hoạch và nội dung thực hiện của từng thành viên

Nguyễn Ngọc Thiện

Nội dung Mô tả (tính năng, thông số,…) Kết quả

cần đạt

Thời gian thực hiện (theo tuần)

Ghi chú

T1-T2

Tìm hiểu

linh kiện

cần thiết

-Linh kiện cần thiết để tạo mạch

đo nhiệt độ với cảm biến LM35:

mô phỏng mạch từ những linh kiện đã tìm hiểu

chính

T7-T9

Trang 6

xác trong Proteus Nắp

mạch

thực tế

-Nắp mạch trên board test ,thay đổi nhiệt độ để kiểm tra tính đúng đắn của mạch

-Mạch chạy ổn định và

chính xác

T11

T9-Lê Hoàng Long

-Tìm hiểu một số loại cảm biến

nhiệt độ thích hợp với yêu cầu

dự án

-Chốt được một loại cảm biến cần dùng (LM35)

-Linh kiện cần thiết để tạo mạch

đo nhiệt độ với cảm biến LM35:

-Nắp mạch trên board test ,thay

đổi nhiệt độ để kiểm tra tính

đúng đắn của mạch

T9-T11

Trang 7

Tự đánh giá tỷ lệ đóng góp của từng thành viên trong dự án theo kế hoạch (trước khi thực hiện, thực hiện trong khi lên kế hoạch thực hiện

dự án)

Người thực hiện Tỷ lệ Giải quyết được những vấn đề

gì của dự án (cần ghi rõ để có

cơ sở đánh giá tỷ lệ) Nguyễn Ngọc

Thiện

50% - Xây dựng ý tưởng, đưa ra

giải pháp

- Lập trình KeilC

- Mô phỏng Proteus

- Lắp mạch thực tế

Lê Hoàng Long 50% - Tìm hiểu nguyên lý

- Vẽ lưu đồ thuật toán

- Lắp mạch thực tế

Trang 8

NỘI DUNG THỰC HIỆN:

Phương án thiết kế :

- Sử dụng LM35 để đo nhiệt độ sau đó ta thu được tín hiệt tương tự ( nhiệt độ quy đổi ra điện áp) để xử lý được tín hiệu điện này ta cần một

IC chuyển đổi tương tự sang số ở đây ta chọn ADC0808, sau đó ouput của ADC 0808 sẽ được chuyển đến AT89S52 để xử lý sau đó sẽ được hiện thị lên led 7 thanh để thông báo kết quả

Trang 9

Phân tích các yêu cầu của dự án:

I.Sơ đồ khối :

ADC

Khối Xử Lý Khối Hiện Thị

Trang 10

II Lưu đồ Thuật Toán:

Trang 11

Tìm hiểu các nghiên cứu, sản phẩm và linh kiện liên quan

I LM35

1 Cảm biến nhiệt độ LM35 là gì ?

LM35 là một cảm biến nhiệt độ tương tự, điện áp ở đầu ra của cảm biến

tỷ lệ với nhiệt độ tức thời và có thể dễ dàng được xử lý để có được giá trị nhiệt độ bằng oC

Ưu điểm của LM35 so với cặp nhiệt điện là nó không yêu cầu bất kỳ hiệu chuẩn bên ngoài nào Lớp vỏ cũng bảo vệ nó khỏi bị quá nhiệt Chi phí thấp và độ chính xác cao

2 Sơ đồ chân của cảm biến nhiệt độ LM35 :

Trang 12

Số

3 Thông số kỹ thuật của cảm biến LM35

• Hiệu chuẩn trực tiếp theo oC

• Điện áp hoạt động: 4-30VDC

• Dòng điện tiêu thụ: khoảng 60uA

• Khoảng nhiệt độ đo được: -55°C đến 150°C

• Điện áp thay đổi tuyến tính theo nhiệt độ: 10mV/°C

LM35 có thể đo nhiệt độ trong phạm vi từ -55oC đến 150oC Độ chính xác thực tế của cảm biến: ±1/4°C ở nhiệt độ phòng và ±3/4°C trong phạm vi nhiệt độ từ -55°C đến 150°C Việc chuyển đổi điện áp đầu ra sang oC cũng dễ dàng và trực tiếp

4 Nguyên lý hoạt động của cảm biến nhiệt độ LM35

Cảm biến LM35 hoạt động bằng cách cho ra một giá trị điện áp nhất định tại chân VOUT (chân giữa) ứng với mỗi mức nhiệt độ Như vậy, bằng cách đưa vào chân bên trái của cảm biến LM35 điện áp 5V, chân phải nối đất, đo hiệu điện thế ở chân giữa, có được nhiệt độ (0-100ºC) tương ứng với điện áp đo được

5 Các dạng mạch đo nhiệt độ

Trang 13

LM35 có thể được sử dụng một trong hai cấu hình mạch như hình bên dưới Cả hai đều mang lại kết quả khác nhau

Trong cấu hình mạch phía bên trái, cảm biến chỉ có thể đo nhiệt độ

dương từ 2 oC đến 150 oC Theo cấu hình mạch này, chúng ta chỉ cần cấp nguồn cho LM35 và kết nối đầu ra trực tiếp với bộ chuyển đổi

tương tự sang số

Trong cấu hình mạch thứ hai, chúng ta có thể đo nhiệt độ toàn dải từ

-55 oC đến 150 oC Cấu hình mạch này hơi phức tạp nhưng mang lại kết quả cao Trong trường hợp này, chúng ta phải kết nối một điện trở bên ngoài (R1) để chuyển mức điện áp âm lên dương Giá trị điện trở bên ngoài có thể được tính toán theo công thức ghi bên dưới cấu hình mạch

Đối với yêu cầu dự án ở đây tôi sẽ dùng cấu hình mạch 1

( mạch bên trái )

6 Các bước tính toán nhiệt độ bằng cảm biến nhiệt độ LM35

• Thiết kế mạch

• Cấp nguồn cho cảm biến với điện áp từ 4V đến 30V Chân GND được nối đất

• Kết nối chân VOUT với đầu vào bộ chuyển đổi tương tự sang số ADC hay vi điều khiển

• Lấy mẫu đọc ADC để xác định điện áp đầu ra VOUT

• Chuyển đổi điện áp thành nhiệt độ

Trang 14

7 Công thức chuyển đổi điện áp thành nhiệt độ

Công thức để chuyển đổi điện áp sang nhiệt độ độ C cho LM35 là: Nhiệt độ đo được (oC) = Điện áp được đọc bởi bộ ADC/10 mV

Trang 16

Số chân Tên chân Mô tả

1 đến 5, 27, 28 Kênh Analog 1 đến 5 7 chân này là chân đầu vào điện áp Analog (từ cảm biến)

Là chân đầu vào, nếu được cấp mức logic cao sẽ bắt đầu quá trình chuyển đổi tín hiệu

7

End of Conversion (EOC)

Là chân đầu ra, sẽ có mức logic cao khi quá trình chuyển đổi tín hiệu kết thúc

10 CLOCK Chân cấp tín hiệu xung clock

(0V-5V) khoảng 20Mhz

điện áp 5V

12 V ref (+) Chân điện áp tham chiếu, thường

dùng điện áp+ 5V

16 Vref (-) Vref được kết nối với đất

Enable (ALE)

Chân được kích tạm thời lên mức logic cao để chọn kênh ADC 23,24,25 ADD A, ADD B,

ADD C

Ba chân này được sử dụng để

chọn kênh

2 Các tính năng của ADC0808

• Dễ giao tiếp với các vi xử lý hoặc hoạt động độc lập

• Có thể đo liên tục lên đến 8 giá trị Analog

ngoài (Clock)

Trang 17

• Đầu ra digital khác nhau có giá trị từ 0 đến 255, Công suất hoạt động 15mW, thời gian chuyển đổi tín hiệu 100us

• Khi Vref = 5V, cứ tăng mỗi 19,53mV giá trị tương tự sẽ có một bit tăng lên ở đầu ra digital (Step size)

Đầu ra digital được lấy từ chân 2 -1 (OUT 1) đến 2 -8 (OUT 8) và điện áp analog vào chân Vin (+) như trong mạch Lưu ý rằng đầu còn lại của nguồn điện áp (cảm biến / module) nên được nối đất với mạch để bộ chuyển đổi ADC hoạt động

Bây giờ, để bắt đầu chuyển đổi tín hiệu ADC, cần cấp mức logic cao vào chân START ngay khi chân EOC lên mức logic cao Có thể được thực hiện thông qua code hoặc có thể đơn giản kết nối chân EOC với chân START như mạch bên dưới

Trang 18

4 Giản đồ xung giao tiếp IC ADC0808

Trang 19

III AT89S52

1.Giới thiệu Vi điều khiển AT89S52

AT89S52 là một trong những bộ vi điều khiển phổ biến của họ

Atmel, vi điều khiển AT89S52 là vi điều khiển công nghệ CMOS 8 bit

có bộ nhớ Flash 8kb và bộ nhớ RAM 256 byte

2.Sơ đồ chân AT89S52

Sơ đồ chân của vi điều khiển 8-bit AT89S52 được hiển thị bên dưới:

Trang 20

- Chân VCC: Chân số 40 là VCC cấp điện áp nguồn cho Vi điều khiển Nguồn điện cấp là +5V±0.5

- Chân GND: Chân số 20 nối GND(hay nối Mass) Khi thiết kế

cần sử dụng một mạch ổn áp để bảo vệ cho Vi điều khiển, cách

đơn giản là sử dụng IC ổn áp 7805

- Port 0 (P0) Port 0 gồm 8 chân (từ chân 32 đến 39) có hai chức năng:

+ Chức năng xuất/nhập

+ Chức năng là bus dữ liệu và bus địa chỉ (AD7-AD0)

- Port 1 (P1) Port 1 gồm 8 chân (từ chân 1 đến chân 8), chỉ có

chức năng làm các đường xuất/nhập, không có chức năng khác

- Port 2 (P2) Port 2 gồm 8 chân : Chức năng xuất/nhập

Chức năng là bus địa chỉ cao (A8-A15): khi kết nối với bộ

nhớ ngoài có dung lượng lớn, cần 2 byte để định địa chỉ của bộ

nhớ, byte thấp do P0 đảm nhận, byte cao do P2 này đảm nhận

Trang 21

- Port 3 (P3) Port 3 gồm 8 chân (từ chân 10 đến 17):

Chức năng xuất/nhập

Với mỗi chân có một chức năng riêng thứ hai như trong bảng sau

P3.0 RxD Ngõ vào nhận dữ liệu nối tiếp P3.1 TxD Ngõ xuất dữ liệu nối tiếp P3.2 INT0 Ngõ vào ngắt cứng thứ 0 P3.3 INT1 Ngõ vào ngắt cứng thứ 1 P3.4 T0 Ngõ vào của Timer/Counter thứ 0 P3.5 T1 Ngõ vào của Timer/Counter thứ 1 P3.6 WR Ngõ điều khiển ghi dữ liệu lên bộ nhớ

ngoài P3.7 RD Ngõ điều khiển đọc dữ liệu từ bộ nhớ

bên ngoài P1.0 T2 Ngõ vào của Timer/Counter thứ 2 P1.1 T2X Ngõ nạp lại/thu nhận của

Timer/Counter thứ 2

- Chân RESET (RST) Ngõ vào RST ở chân 9 là ngõ vào Reset dùng để thiết lập trạng thái ban đầu cho vi điều khiển

- Chân XTAL1 và XTAL2 Hai chân này có vị trí chân là 18 và 19

được sử dụng để nhận nguồn xung clock từ bên ngoài để hoạt động

- Chân cho phép bộ nhớ chương trình PSEN (Program Store Enable)

- Chân ALE (chân cho phép chốt địa chỉ-chân 30) có chức năng là

bus dữ liệu do đó phải tách các đường dữ liệu và địa chỉ

- Chân EA dùng để xác định chương trình thực hiện được lấy từ ROM nội hay ROM ngoại

3.Nắp mạch thực tế

Trang 22

3.1.Kết nối trên hai chân XTAL1 và XTAL2

Mạch dao động được đưa vào hai chân này thông qua thạch anh như sau:

C1,C2 = 30pF±10pF ( thường sử dụng 33pF).Hoặc có thể cấp tín hiệu xung clock lấy từ một mạch tạo dao động nào đó đưa vào Vi điều khiển

3.2.Chu kì máy

Chu kì máy là khoảng thời gian cần thiết được qui định để Vi điều khiển thực hiện hoàn thành một lệnh cơ bản Một chu kì máy bằng 12 lần chu kì dao động của nguồn xung dao động cấp cho nó

3.3 Kết nối các Port với Led

Các Port khi xuất tín hiệu ở mức logic 1 thường không đạt đến 5V mà dao động trong khoảng từ 3.5V đến 4.9V và dòng xuất ra rất nhỏ dưới 5mA ( P0,P2 dòng xuất khoảng 1mA ; P1,P3 dòng xuất ra khoảng 1mA đến 5mA ) vì vậy dòng xuất này không đủ để có thể làm led sáng

Tuy nhiên khi các Port xuất tín hiệu ở mức logic 0 dòng điện cho phép đi qua lớn hơn rất nhiều :

Dòng lớn nhất qua P0 : ~25mA

Dòng lớn nhất qua P1,P2,P3 : 15mA

Trang 23

Do đó khi kết nối với led hoặc các thiết bị khác Vi điều khiển sẽ gặp trở ngại là nếu tác động làm led sáng khi Vi điều khiển xuất ở mức 1 , lúc này dòng và áp ra không đủ để led sáng rõ ( led đỏ sáng ở điện áp 1.6V-2.2V và dòng trong khoảng 10mA) Khắc phục bằng cách sau :

a Cho led sáng khi Vi điều khiển ở mức 0:

Khi Px.x ở mức 1 led không sáng

Khi Px.x ở mức 0 led sáng

b.Cho led sáng khi Vi điều khiển xuất ở mức 1 :

Như đã trình bày vì ngõ ra Vi điều khiển ở mức 1 không đủ cho led sáng, để led sáng được cần đặt thêm một điện trở kéo lên nguồn VCC ( gọi là điện trở treo )

Tùy từng trường hợp mà chọn R2 để dòng và áp phù hợp với thiết bị nhận

Khi Px.x ở mức 0, có sự chêng lệch áp giữa nguồn VCC và chân Px.x – dòng điện đi từ VCC qua R2 và Px.x về Mass, do đó hiệu điện thế giữa hai chân đèn led gần như bằng 0, led không sáng

Khi Px.x ở mức 1 (+5V), dòng điện không chạy qua chân Vi điều khiển để về mass được, có sự chênh lệch giữa hai chân led, dòng điện trong trường hợp này qua led về Mass do đó led sáng

R2 thường được sử dụng với giá trị từ 4.7KΩ đến 10KΩ

4 Mạch Reset

Trang 24

Chân RESET được kết nối như sau :

Với Vi điều khiển sử dụng thạch anh có tần số fzat=12MHz sử dụng C=10uF và R=10KΩ :

5 Nối chân EA lên Vcc (5V) thực hiện chương trình từ bộ nhớ ROM nội , do đó nối chân EA với Vcc để thiết đặt cho Vi điều khiển thực hiện chương trình từ bộ nhớ ROM nội ( bộ nhớ ROM tích hợp sẵn trong vi điểu khiển )

IV.LED 7 đoạn

Led 7 đoạn có cấu tạo bao gồm 7 led đơn có dạng thanh xếp theo

hình và có thêm một led đơn hình tròn nhỏ thể hiện dấu chấm tròn ở góc dưới, bên phải của led 7 đoạn 8 led đơn trên led 7 đoạn có

Anode(cực +) hoặc Cathode(cực -) được nối chung với nhau vào một điểm, được đưa chân ra ngoài để kết nối với mạch điện 8 cực còn lại trên mỗi led đơn được đưa thành 8 chân riêng, cũng được đưa ra

ngoài để kết nối với mạch điện Nếu led 7 đoạn có Anode(cực +)

chung, đầu chung này được nối với +Vcc, các chân còn lại dùng để

điều khiển trạng thái sáng tắt của các led đơn, led chỉ sáng khi tín

hiệu đặt vào các chân này ở mức 0 Nếu led 7 đoạn có Cathode(cực ) chung, đầu chung này được nối xuống Ground (hay Mass), các

-chân còn lại dùng để điều khiển trạng thái sáng tắt của các led đơn,

led chỉ sáng khi tín hiệu đặt vào các chân này ở mức 1

Trang 25

Vì led 7 đoạn chứa bên trong nó các led đơn, do đó khi kết nối cần đảm bảo dòng qua mỗi led đơn trong khoảng 10mA-20mA để bảo vệ led Nếu kết nối với nguồn 5V có thể hạn dòng bằng điện trở 330Ω trước các chân nhận tín hiệu điều khiển

Sơ đồ vị trí các led được trình bày như hình bên:

Các điện trở 330Ω là các điện trở bên ngoài được kết nối để giới hạn dòng điện qua led nếu led 7 đoạn được nối với nguồn 5V

Chân nhận tín hiệu a điều khiến led a sáng tắt, ngõ vào b điều khiển led b

Dữ liệu xuất có dạng nhị phân như sau : hgfedcba

Trang 26

Bảng mã hiển thị led 7 đoạn dành cho led 7 đoạn có Anode chung (các led đơn

sáng ở mức 0):

Số hiển thị trên led 7 đoạn

Mã hiển thị led 7 đoạn dạng nhị

phân

Mã hiển thị led 7 đoạn dạng thập lục phân

Trang 27

Bảng mã hiển thị led 7 đoạn dành cho led 7 đoạn có Cathode chung (các led đơn sáng ở mức 1):

Số hiển

thị trên

led 7

đoạn

Mã hiển thị led 7 đoạn dạng nhị phân

Mã hiển thị led 7 đoạn

dạng thập lục phân

Trang 28

Thử nghiệm và Đánh giá

*) Tính toán điện áp so sánh phù hợp :

Độ phân giải ADC được tính theo công thức :

Cho Vref - =0V thì tính được Vref + = 2550mV

Trong mạch ta sử dụng biến trở RV1 để hiệu chỉnh tạo ra đúng giá trị

*) Tính toán tạo xung cho chân P1.7 để cấp cho ADC 0808:

Tạo xung với chu kỳ T= 14µs tại chân P1.7 để cấp cho ADC

Trang 29

Xung tạo ra ở chân P1.7 của At89s52

* Đánh giá :

- Mô phỏng bằng phần mềm Proteus 8 mạch chạy ổn định cho kết quả đúng với giá trị nhiệt độ của cảm biến LM35

Trang 30

Code trên KeilC 5:

Trang 31

movc a,@a + dptr mov 20h,a

mov a,11h

movc a,@a + dptr mov 21h,a

ret

hienthi: mov p0,21h setb led1

Trang 33

Hoàn thiện sản phẩm

Trang 34

Kết luận

Nguyễn Ngọc Thiện

Nội dung Mô tả (tính năng, thông số,…) Kết quả

cần đạt

Thời gian thực hiện thực tế

(theo tuần)

Trạng thái (hoàn thành, chư hoàn thành, không thực hiện)

và kết quả đã đạt được

so với

dự kiến Lên ý

-Linh kiện cần thiết để tạo mạch

đo nhiệt độ với cảm biến LM35:

Trang 35

chính xác trong Proteus

-Mạch chạy ổn định và

chính xác

T9-T11 -Hoàn

thành

Trang 36

Lê Hoàng Long

Nội dung Mô tả (tính năng, thông số,…) Kết quả

cần đạt

Thời gian thực hiện thực tế

(theo tuần)

Trạng thái (hoàn thành, chư hoàn thành, không thực hiện)

và kết quả đã đạt được

so với

dự kiến Lên ý

T2

T1 Hoàn thành

Tìm hiểu

linh kiện

cần thiết

-Linh kiện cần thiết để tạo mạch

đo nhiệt độ với cảm biến LM35:

ADC0808,AT89S52,nguồn5V,

T9

T3 Hoàn thành

Ngày đăng: 26/02/2024, 20:18

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w