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

mạch đo nhiệt độ điều khiển quạt bằng asembly

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 (840.41 KB, 38 trang )

LỜI MỞ ĐẦU

Trong xã hội hiện nay đời sống tinh thần, vật chất của con người không
ngừng nâng cao. Chính vì thế mà sự ra đời của các thiết bị điện tử nói mới
chung ngày càng nhiều với các hình thức đa dạng, xong việc bảo vệ những
thiết bị điện tử này hoạt động lâu dài vẫn còn gặp nhiều khó khăn. Nhìn
chung những thiết bị hoạt động quá nhiệt độ sẽ làm giảm tuổi thọ của thiết bị
hoặc cháy linh kiện trong quá trình làm việc. Nhưng những tai nạn này lại xảy
ra chủ yếu do sự thay đổi nhiệt độ khi làm việc kết hợp với nhiệt độ môi
trường tăng cao. Vì vậy để đảm tính an toàn cho các thiết bị khi hoạt động
trong những khu vực khí hậu nóng ẩm như Việt Nam thì cần phải có một thiết
bị đo nhiệt độ của môi trường xung quanh các linh kiện, thiết bị này có chức
năng đo nhiệt độ của môi trường xung quanh linh kiện, đồng thời có khả năng
điều khiển hệ thống quạt tản nhiệt khi nhiệt độ môi trường xung quanh linh
kiện đạt đến một ngưỡng nhiệt độ được ấn định trước.
Với sự tích lũy kiến thức của môn học Vi điều khiển và các môn học
khác em có thể thiết kế một thiết bị có chức năng đo nhiệt độ của môi trường
và có khả năng điều khiển quạt tản nhiệt. Đó cũng chính là lý do để em chọn
đề tài thiết kế Mạch đo nhiệt độ và điều khiển quạt theo nhiệt độ.
Với đề tài này, chúng em sẽ có cơ hội tìm hiểu và vận dụng kiến thức đã
học của mình vào các ứng dụng cơ bản nhất trong đời sống. Cụ thể là sẽ tìm
hiểu, đi sâu vào thiết kế mạch đo nhiệt độ hiển thị lên 7 đoạn và điều khiển
quạt theo nhiệt độ.
Do kiến thức còn hạn chế và chưa có nhiều kinh nghiệm nên trong quá
trình thực hiện đề tài không tránh khỏi những thiếu sót. Rất mong được sự
góp ý, nhận xét từ thầy cô để bài báo cáo hoàn chỉnh và rõ ràng hơn.
Em xin chân thành cảm ơn!...

1



PHẦN I
TỔNG QUAN VỀ ĐỒ ÁN
Ngày nay, nhân loại đã và đang trải qua những sự phát triển vượt bật
về mọi mặt.Trong đó lĩnh vực điện tử đóng một vai trò không nhỏ.Điện tử
góp phần rất lớn vào quá trình tự động hoá,thực sự đã giúp con người có
những tiến bộ vượt bậc. Đặc biệt là việc đo nhiệt độ môi trường cũng như
việc cảnh báo khống chế nhiệt độ môi trường làm việc được ứng dụng rộng
rãi trong các nghành tổng hợp của nhiều lĩnh vực tri thức.
Trong đồ án này em chọn thiết kế và thi công mạch “ đo nhiệt độ hiển
thị trên led 7 đoạn” sử dụng vi điều khiển họ 8051,mạch có thể đo nhiệt độ từ
0°C đến 99°C, có khả năng cập nhật nhanh với sự thay đổi của nhiệt độ môi
trường.
Mạch được đặt trước nhiệt độ để so sánh với nhiệt độ môi trường bên
ngoài. Vì vậy mạch có thể làm quạt quay tương ứng khi nhiệt độ môi trường
thay đổi so với nhiệt độ đặt trước. Để theo dõi nhiệt độ hiển thị dễ dàng hơn
cho hiện thị trên LED 7 đoạn. Cụ thể khi nhiệt độ môi trường lớn hơn 40 oC
quạt sẽ quay làm mát các thiết bị.

2


PHẦN II
NỘI DUNG VÀ KẾT QUẢ
CHƯƠNG 1: CƠ SỞ LÝ THUYẾT
1.1. Sơ đồ khối

Hình 1.1. Sơ đồ khối của mạch
1.2. Nguyên lý hoạt động của mọi hệ thống
Đối tượng cần đo là đại lượng vật lý, dựa vào các đặt tính của đại lượng
cần đo mà ta chọn ra những loại cảm biến phù hợp để thực hiện biến đổi

những thông số cần đo thành đại lượng điện hay điện áp.dòng 4-10mA hay 420mA.Sau đó cho qua bộ lọc và khuếch đại tín hiệu đo nếu thấy cần thiết
Tín hiệu sau khi hiệu chỉnh sẽ chuyển qua bộ chuyển đổi ADC-Analog
Digital Converter. Bộ này sẽ chuyển đổi tín hiệu từ dạng tương tự sang tín
hiệu số.
Tín hiệu số này được đưa đến bộ vi điều khiển,vi xử lý để thực hiện
những chức năng theo yêu cầu và xử lý tín hiệu theo chương trình đã lập trình
và nạp sẵn trong IC.
Theo đó bộ vi điều khiển sẽ thực hiện tác dụng xử lý, hiển thị trên led 7
đoạn theo yêu cầu đặt ra.

3


CHƯƠNG 2: NỘI DUNG VÀ CÁC LINH KIỆN CHÍNH SỬ DỤNG
2.1. Hệ thống đo lường
2.1.1 Giới thiệu về hệ thống đo lường
Trong một hệ thống đo lường sẽ bao gồm ba thành phần cơ bản nhất
như sau:
- Khối chuyển đổi
- Khối mạch đo
- Khối chỉ thị
Mỗi khối đảm nhiêm một chức năng riêng biệt để tạo thành một hệ
thống hoàn chỉnh.
2.1.2. Hệ thống đo lường số
Trong các hệ thống đo thì phương pháp sử dụng hệ thống đo lường số
là chuẩn và chính xác nhất,bên cạnh đó do tính chất tích hợp nên hệ thống đo
lường số nhỏ gọn và thỏa mãn yêu cần đặt ra.
Trong đề tài mạch đo và điều khiển nhiệt độ này cũng sử dụng hệ thống đo
lường số.Với hai mức logic thấp và cao sẽ dễ dàng lọa bỏ những sai số do tín
hiệu gây ra,ngoài ra với yêu cầu về giao tiếp máy tính thì hệ thống cũng được

thực hiện một cách rõ ràng hệ thống đo lường số được sử dụng rộng rãi trong
công nghiệp hiện nay.
2.2. Giới thiệu tổng quan về họ Vi điều khiển 89C51
AT89C51 là một vi điều khiển 8 bit, chế tạo theo công nghệ CMOS
chất lượng cao, công suất thấp với 4 KB PEROM (Flash Programeable and
erasable read only memory).
Các đặc điểm của 8951 được tóm tắt như sau:
- 4KB bộ nhớ, có thể lập trình lại nhanh, có khả năng ghi xóa tới 1000 chu kỳ
-Tần số hoat động từ 0 Hz đế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

4


- Xử lý Boolean (hoạt động trên bit đơn)
- 210 vị trí nhớ có thể định vị bit
- 4μs cho hoạt động nhân hoặc chia
2.2.1 Cấu trúc bên trong của AT89C51

Hình 2.1. Sơ đồ khối của AT89C51
Phần chính của vi điều khiển 8051 là bộ xử lí trung tâm (CPU: central
processing unit) bao gồm:
+ Thanh ghi tích lũy A
+ Thanh ghi tích lũy phụ B, dùng cho phép nhân và phép chia

+ Đơn vị logic học (ALU : Arithmetic Logical Unit )
+ Từ trạng thái chương trình (PSW : Prorgam Status Word) + Bốn băng
thanh ghi

5


+ Con trỏ ngăn xếp
+ Ngoài ra còn có bộ nhớ chương trình, bộ giải mã lệnh, bộ điều khiển thời
gian và logic.
Đơn vị xử lí trung tâm nhận trực tiếp xung từ bộ dao động, ngoài ra
còn có khả năng đưa một tín hiệu giữ nhịp từ bên ngoài.
Chương trình đang chạy có thể cho dừng lại nhờ một khối điều khiển
ngắt ở bên trong. Các nguồn ngắt có thể là: các biến cố ở bên ngoài, sự tràn
bộ đếm định thời hoặc cũng có thể là giao diện nối tiếp.
Hai bộ định thời 16 bit hoạt động như một bộ đếm.
Các cổng (port0,1,2,3), sử dụng vào mục đích điều khiển. Ở cổng 3 có
thêm các đường dẫn điều khiển dùng để trao đổi với một bộ nhớ bên ngoài,
hoặc để đầu nối giao diện nối tiếp, cũng như các đường ngắt dẫn bên ngoài.
Giao diện nối tiếp có chứa một bộ truyền và một bộ nhận không đồng bộ, làm
việc độc lập với nhau.Tốc độ truyền qua cổng nối tiếp có thể đặt trong dãi
rộng và được ấn định bằng một bộ định thời.
Trong vi điều khiển 8951 có hai thành phần quan trọng khác đó là bộ
nhớ và các thanh ghi:
+ Bộ nhớ gồm có bộ nhớ RAM và bộ nhớ ROM dùng để lưu trữ dữ liệu và
mã lệnh.
+ Các thanh ghi sử dụng để lưu trữ thông tin trong quá trình xử lí. Khi CPU
làm việc nó làm thay đổi nội dung của các thanh ghi.
2.2.2 Sơ đồ và chức năng các chân.


6


Hình 2.2. Sơ đồ chân của AT89C51
Chức năng các chân của AT89C51:
+ Port 0 (P0.0 – P0.7 hay chân 32 – 39): Ngoài chức năng xuất nhập ra, port 0
còn là bus đa hợp dữ liệu và địa chỉ (AD0 – AD7), chức năng này sẽ được sử
dụng khi AT89C51 giao tiếp với thiết bị ngoài có kiến trúc bus.

Hình 2.3. Port 0
+ Port 1 (P1.0 – P1.7 hay chân 1 – 8): có chức năng xuất nhập theo bit và
byte. Ngoài ra, 3 chân P1.5, P1.6, P1.7 được dùng để nạp ROM theo chuẩn
ISP, 2 chân P1.0 và P1.1 được dùng cho bộ Timer 2.

7


Hình 2.4. Port1
+ Port 2 (P2.0 – P2.7 hay chân 21 – 28): là một port có công dụng kép. Là
đường xuất nhập hoặc là byte cao của bus địa chỉ đối với các thiết kế dùng bộ
nhớ mở rộng.

Hình 2.5. Port 2
+ Port 3 (P3.0 – P3.7 hay chân 10 – 17): mỗi chân trên port 3 ngoài chức năng
xuất nhập ra còn có một số chức năng đặc biệt sau:
Bit
P3.0
P3.1
P3.2
P3.3

P3.4
P3.5
P3.6

Tên
RXD
TXD
INT0
INT1
T0
T1
WR

Chức năng chuyển đổi
Dữ liệu nhận cho port nối tiếp
Dữ liệu truyền cho port nối tiếp
Ngắt bên ngoài 0
Ngắt bên ngoài 1
Ngõ vào của Timer/Counter 0
Ngõ vào của Timer/Counter 1
Xung ghi bộ nhớ dữ liệu ngoài
8


P3.7

RD

Xung đọc bộ nhớ dữ liệu ngoài
Bảng 1: chức năng Port 3


Hình 2.6. Port 3
+ RST (Reset – chân 9): mức tích cực của chân này là mức 1, để reset ta phải
đưa mức 1 (5V) đến chân này với thời gian tối thiểu 2 chu kỳ máy (tương
đương 2µs đối với thạch anh 12MHz.
+ XTAL 1, XTAL 2: AT89S52 có một bộ dao động trên chip, nó thường
được nối với một bộ dao động thạch anh có tần số lớn nhất là 33MHz, thông
thường là 12MHz.
+ EA (External Access): EA thường được mắc lên mức cao (+5V) hoặc mức
thấp (GND). Nếu ở mức cao, bộ vi điều khiển thi hành chương trình từ ROM
nội. Nếu ở mức thấp, chương trình chỉ được thi hành từ bộ nhớ mở rộng.
+ ALE (Address Latch Enable): ALE là tín hiệu để chốt địa chỉ vào một thanh
ghi bên ngoài trong nửa đầu của chu kỳ bộ nhớ. Sau đó các đường port 0 dùng
để xuất hoặc nhập dữ liệu trong nửa chu kỳ sau của bộ nhớ.
+ PSEN (Program Store Enable): PSEN là điều khiển để cho phép bộ nhớ
chương trình mở rộng và thường được nối với đến chân /OE (Output Enable)
của một EPROM để cho phép đọc các bytes mã lệnh. PSEN sẽ ở mức thấp
trong thời gian đọc lệnh. Các mã nhị phân của chương trình được đọc từ
EPROM qua Bus và được chốt vào thanh ghi lệnh của bộ vi điều khiển để giải
9


mã lệnh. Khi thi hành chương trình trong ROM nội, PSEN sẽ ở mức thụ động
(mức cao).
+ Vcc, GND: AT89S52 dùng nguồn một chiều có dải điện áp từ 4V – 5.5V
được cấp qua chân 40 (Vcc) và chân 20 (GND).
2.2.3 Tổ chức bộ nhớ
Bộ nhớ của MCS-51 bao gồm: bộ nhớ trong và bộ nhớ ngoài:

Hình 2.7. Sơ đồ bộ nhớ MCS - 51

-Khi /EA được nối với +5v thì bộ nhớ ngoài không được dùng, MCS-51 chỉ
truy nhập EEPROM trong để đọc mã chương trình và cất số liệu vào RAM
trong. Khi /EA được nối đất thì bộ nhớ chương trình ROM trong không được
dùng, MCS-51 đọc mã chương trình từ bộ nhớ chương trình ngoài bằng tín
hiệu /PSEN, còn bộ nhớ số liệu ngoài được truy nhập bằng các tín hiệu /WR
và /RD, do có bộ nhớ chương trình và bộ nhớ số liệu ngoài có thể dùng chung
bus địa chỉ A0 A15.Bộ nhớ số liệu trong của họ MCS-51 có địa chỉ từ 00h
đến FFh, trong đó nhóm 8052 có đủ 256 byte RAM, nhóm 8051 chỉ có 128
byte RAM ở các địa chỉ thấp từ 00h đến 7fh, vùng địa chỉ cao từ 80h đến FFh
được dành cho các thanh ghi chức năng đặc biệt SFR. Tổ chức vùng 128 byte
thấp bộ nhớ số liệu RAM trong của họ MCS-51như trên hình 3, nó được chia
thành ba miền.
10


-Miền các băng thanh ghi chiếm địa chỉ từ 00h đến 1fh có 32 byte chia thành
băng, mỗi băng có 8 thanh ghi được đánh số từ R0 đến R7.
-Tại mỗi thời điểm chỉ có một băng thanh ghi có thể truy nhập và được gọi là
băng tích cực. Để chọn băng tích cực cần nạp giá trị thích hợp cho các bít
RS0và RS1 của thanh ghi từ trạng thái PSW, mặc định bằng 0 là tích cực.
Miền RAM được định địa chỉ bít có 16 byte 8 bít = 128 bít, chiếm địa chỉ từ
20h đến 1fh. Mỗi bít ở miền này được định địa chỉ riêng từ 00h đến 7fh nên
có thể truy nhập đến từng bít riêng rẽ bằng các lệnh xử lý bít. Vùng RAM
được định địa chỉ bít và các lệnh xử lý bít là một trong những đặc tính nổi bật
đem lại sứcmạnh cho họ bộ vi điều khiển MCS-51.
-Miền RAM thông thường có 80 byte chiếm địa chỉ từ 30h đến 7fh. Các thanh
ghi chức năng đặc biệt (viết tắt theo tiếng Anh là SFR) là tập các thanh ghi
bên trong của bộ vi điều khiển. Họ MCS-51 định địa chỉ cho tất cả các SFR ở
vùng 128 byte cao của bộ nhớ số liệu trong (xem hình 2), mỗi SFR có tên gọi
và địa chỉ riêng, một số SFR có định địa chỉ cho từng bít. Khi bật nguồn hoặc

RESET, tất cả các SFR đều được nạp giá trị đầu, sau đó chương trình cần nạp
lại giá trị cho các SFR cần dùng theo yêu cầu sử dụng.
-Việc truy nhập đến các SFR chỉ có thể thực hiện bằng phương pháp địa chỉ
trực tiếp với tên gọi hoặc địa chỉ của SFR là toán hạng của lệnh. Với các SFR
có định địa chỉ bít, có thể truy nhập và thay đổi trực tiếp từng bít.của nó bằng
các lệnh xừ lý bít. Bảng 2 cho biết thông tin chủ yếu về các SFR.
-Ở nhóm 8051vùng 128 byte cao của bộ nhớ số liệu trong chỉ có các
SFR,không tồn tại các ô nhớ khác ở vùng nhớ này. Ở nhóm 8052 bộ nhớ số
liệu trong có 256 byte RAM, các ô nhớ của vùng RAM 128 byte cao chỉ có
thể truy nhập được bằng phương pháp địa chỉ gián tiếp, còn các SFR cũng có
địa chỉ nằm trong vùng đó nhưng chỉ truy nhập được bằng phương pháp địa
chỉ trực tiếp, vì thế việc truy nhập chúng không bị xung đột và nhầm lẫn.

11


Hình 2.8. Tổ chức bộ nhớ AT89C51
2.3 Giới thiệu về IC ADC0804
2.3.1 Tìm hiểu về IC ADC0804
Các bộ chuyển đổi ADC thuộc những thiết bị được sử dụng rộng rãi
nhất để thu dữ liệu. Các máy tính số sử dụng các giá trị nhị phân, nhưng trong
thế giới vật lý thì mọi đại lượng ở dạng tương tự (liên tục). Nhiệt độ, áp suất
(khí hoặc chất lỏng), độ ẩm và vận tốc và một số ít những đại lượng vật lý của
thế giới thực mà ta gặp hằng ngày. Một đại lượng vật lý được chuyển về dòng
điện hoặc điện áp qua một thiết bị được gọi là các bộ biến đổi. Các bộ biến

12


đổi cũng có thể coi như các bộ cảm biến. Mặc dù chỉ có các bộ cảm biến

nhiệt, tốc độ, áp suất, ánh sáng và nhiều đại lượng tự nhiên khác nhưng chúng
đều cho ra các tín hiệu dạng dòng điện hoặc điên áp ở dạng liên tục. Do vậy,
ta cần một bộ chuyển đổi tương tự số sao cho bộ vi điều khiển có thể đọc
được chúng. Một chip ADC được sử dụng rộng rãi phổ biến là ADC0804.

Hình 2.9. ADC0804 thực tế
2.3.2 Sơ đồ chân của ADC0804

Hình 2.10: Sơ đồ chân của ADC0804
2.3.3 Cấu trúc ADC0804
Chip ADC0804 là bộ chuyển đổi tương tự số thuộc họ ADC800 của
hãng National Semiconductor. Chip này cũng được nhiều hãng khác sản xuất.

13


Chip có điện áp nuôi +5V v à độ phân giải 8 bit. Ngoài độ phân giải thì thời
gian chuyển đổ i cũng là một tham số quan trọng khi đánh giá bộ ADC. Thời
gian chuyển đổi được định nghĩa là thời gian mà bộ ADC cần để chuyển một
đầu vào tương tự thành một số nhị phân. Đối với ADC0804 thì thời gian
chuyển đổi phụ thuộc vào tần số đồng hồ được cấp tới chân CLK và CLK IN
và không bé hơn 110µs. Các chân khác của ADC0804 có chức năng như sau:
+ CS (Chip select): Chân số 1, là chân chọn Chip, đầu vào tích cực mức thấp
được sử dụng để kích hoạt Chip ADC0804. Để truy cập ADC0804 th ì chân
này phải ở mức thấp.
+ RD (Read): Chân số 2, là một tín hiệu vào, tích cực ở mức thấp. Các bộ
chuyển đổi đầu vào tương tự thành số nhị phân và giữ nó ở một thanh ghi
trong. RD được sử dụng để có dữ liệu đã được chyển đổi tới đầu ra của
ADC0804. Khi CS = 0 nếu có một xung cao xuống thấp áp đến chân RD thì
dữ liệu ra dạng số 8 bit được đưa tới các chân dữ liệu (DB0 – DB7).

+ WR (Write): Chân số 3, đây là chân vào tích c ực mức thấp được dùng để
báo cho ADC biết bắt đầu quá trình chuyển đổi. Nếu CS = 0 khi WR tạo ra
xung cao xuống thấp thì bộ ADC0804 bắt đầu quá trình chuyển đổi giá trị
đầu vào tương tự Vin về số nhị phân 8 bit. Khi việc chuyển đổi hoàn tất thì
chân INTR được ADC hạ xuống thấp.
+ CLK IN và CLK R: CLK IN (chân số 4), là chân vào nối tới đồng hồ ngo
ài được sử dụng để tạo thời gia n. Tuy nhiên ADC0804 c ũng có một bộ tạo
xung đồng hồ ri êng. Để dùng đồng hồ riêng thì các chân CLK IN và CLK R
(chân s ố 19) được nối với một tụ điện v à một điện trở (như hình vẽ). Khi đó
tần số được xác định bằng biểu thức:
F = 1/ 1.1RC

(1)

Với R = 10 kΩ, C = 150 pF và tần số f = 606 kHz và thời gian chuyển đổi là
110 µs.
+ Ngắt INTR (Interupt): Chân số 5, là chân ra tích c ực mức thấp. Bình
thường chân này ở trạng thái cao v à khi việc chuyển đổi ho àn tất thì nó
xuống thấp để báo cho CPU biết l à dữ liệu chuyển đổi sẵn sàng để lấy đi. Sau

14


khi INTR xuống thấp, cần đặt CS = 0 và gửi một xung cao xuống thấp tới
chân RD để đưa dữ liệu ra.
+ Vin (+) và Vin (-): Chân số 6 và chân số 7, đây là 2 đầu vào tương tự vi sai,
trong đó V in = Vin(+) – Vin(-). Thông thường Vin(-) được nối tới đất và
Vin(+) được dùng làm đầu vào tương tự và sẽ được chuyển đổi về dạng số.
+ Vcc: Chân số 20, là chân nguồn nuôi +5V. Chân này còn được dùng làm
điện áp tham chiếu khi đầu vào Vref/2 để hở.

+ Vref/2: Chân số 9, là chân điện áp đầu vào được dùng làm điện áp tham
chiếu. Nếu chân này hở thì điện áp đầu vào tương tự cho ADC0804 nằm trong
dải 0 đến +5V. Tuy nhiên, có nhiều ứng dụng mà đầu vào tương tự áp đến
Vin khác với dải 0 đến +5V. Chân Vref/2 được dùng để thực hiện các điện áp
đầu ra khác 0 đến +5V.
Vref/2 (V)
Hở
2.0
1.5
1.28
1.0
0.5

Vin (V)

Kích thước bước (mV)

0–5
5/256 = 19.53
0–4
4/256 = 15.62
0–3
3/256 = 11.71
0 – 2.56
2.56/256 = 10
0–2
2/256 = 7.81
0–1
1/256 = 3.90
Bảng 2: Quan hệ điện áp V ref/2 với Vin


+ D0 - D7: D0 - D7, chân số 18 – 11, là các chân ra d ữ liệu số (D7 là bit cao
nhất MSB và D0 là bit thấp nhất LSB). Các chân này được đệm ba trạng thái
và dữ liệu đã được chuyển đổi chỉ được truy cập khi chân CS = 0 và chân RD
đưa xu ống mức thấp. Để tính điện áp đầu ra ta tính theo công thức sau:
Dout = Vin / Kích thước bước

(2)

2.4 Giới thiệu về cảm biến nhiệt LM35
Đây là cảm biến nhiệt được tích hợp chính xác cao của hãng National
Semiconductor. Điện áp đầu ra của nó tỉ lệ tuyến tính với nhiệt độ theo thang
độ Celsius. Điện áp ngõ ra thay đổi 10mv (điện áp bước) cho mỗi sự thay đổi
1C. Chúng không yêu cầu cân chỉnh ngoài.

15


LM35 có 4 dạng: TO-46, SO-8, TO-92, TO-220. Nhưng thường dùng
nhất là dạng TO-92.
2.4.1 Sơ đồ chân.

Hình 2.11. Sơ đồ chân LM35
Chân 1: Chân nguồn Vcc
Chân 2: Đầu ra Vout
Chân 3: GND
2.4.2: Một số thông số chính của LM35
+ Điện áp đầu vào từ 4V đến 30V
+ Độ phân giải điện áp đầu ra là 10mV/oC
+ Độ chính xác cao ở 25 C là 0.5 C

+ Trở kháng đầu ra thấp 0.1 cho 1mA tải

16


Dải nhiệt độ đo được của LM35 là từ -55 C - 150 C với các mức điện áp ra
khác nhau. Xét một số mức điện áp sau :
+Nhiệt độ -55 C điện áp đầu ra -550mV
+ Nhiệt độ 25 C điện áp đầu ra 250mV
+Nhiệt độ 150 C điện áp đầu ra 1500mV
Tùy theo cách mắc của LM35 để ta đo các giải nhiệt độ phù hợp. Đối với hệ
thống này thì đo từ 0 đến 150. Chi tiết các bạn có thể xem trong datasheet của
nó.
Tính toán nhiệt độ đầu ra của LM35.
Việc đo nhiệt độ sự dụng LM35 thông thường chúng ta sử dụng bằng cách
LM35 - > ADC - > Vi điều khiển
Như vậy ta có:
U= t.k

(3)

Với : u là điện áp đầu ra.
t là nhiệt độ môi trường đo.
k là hệ số theo nhiệt độ của LM35 10mV/1 độ.
Giả sử điện áp Vcc cấp cho LM35 là 5V ADC 10bit.
Vậy bước thay đổi của LM35 sẽ là 5/(2^10) = 5/1024.
Giá trị ADC đo được thì điện áp đầu vào của LM35 là:
(t*k)/(5/1024) = ((10^-2)*1024*t)/5 = 2.048*t
Vậy nhiệt độ ta đo được t = giá trị ADC/2048
Tương tự với ADC 11bit và Vcc khác ta cũng tính như trên để được công

thức lấy nhiệt độ
Sai số của LM35:
+ Tại 0 độ C thì điện áp của LM35 là 10mV
+ Tại 150 độ C thì điện áp của LM35 là 1.5V
==> Giải điện áp ADC biến đổi là 1.5 - 0.01 = 1.49 (V)
+ ADC 11 bit nên bước thay đổi của ADC là : n = 2.44mV
Vậy sai số của hệ thống đo là : Y = 0.00244/1.49 = 0.164
2.5. IC ổn áp LM7805

17


LM7805 là IC ổn áp 5V giúp ta có nguồn ổn áp 5V cho các linh kiện sau
nó hoạt động ổn định.
2.5.1.Đặc điểm:
+Đầu vào điện áp từ 5V đến 18V
+Dòng điện ngỏ ra là 500mA và điện áp ngỏ ra là 5V
+Nhiệt độ chịu đựng được của IC từ -40’C đến +125’C
2.5.2. Hình dạng và kí hiệu:

Hình 2.12. Hình dạng và kí hiệu LM7805
2.6. Thiết kế các khối chức năng của mạch.
2.6.1:Khối cảm biến nhiệt độ sử dụng LM35:
a. Sơ đồ nguyên lý:

Hình 2.13. Sơ đồ nguyên lý LM35
b. Nguyên lý hoạt động :

18



Mạch cảm biến hoạt động dựa trên nguyên tắc sau: Khi nhiệt độ môi
trường thay đổi,qua cảm biến ta sẽ thu được tính hiệu ngõ ra,cứ 10mV thì
nhiệt độ tăng lên 1°C.
+Chân 1: Chân nguồn Vcc=5V
+Chân 2: Đầu ra Voutnối với Vin+ của ADC0804
+Chân 3: GND
2.6.2. Khối hiệu chỉnh tín hiệu đo :
Sơ đồ nguyên lý :

Hình 2.14. Sơ đồ nguyên lý khối hiệu chỉnh
Điều chỉnh bằng để cung cấp điện áp chuẩn cho khối chuyển đổi ADC.

19


2.6.3. Khối chuyển đổi tương tự sang số ADC0804
a. Sơ đồ nguyên lý:

Hình 2.15. Sơ đồ nguyên lý ADC0804
b. Nguyên lý hoạt động:
Khối chuyển đổ tín hiệu sử dụng ADC0804 dùng để chuyển đổi tín
hiệu tương tự là nhiệt độ ở chân Vin+ sang tín hiệu số.Sau khi chuyển đổi thì
tín hiệu số được đưa vào khối vi xử lý thông qua các chân DB0-DB7.
+Chân số 1: CS (Chip select) nối với chân P3.0 của 89C51,là chân chọn
chip, đầu vào tích cực mức thấp được sử dụng để kích hoạt Chip ADC-0804.
Để truy cập tới ADC0804 thì chân này phải được đặt ở mức thấp.
+Chân số 2:RD (Read): nối với chân P3.1 của 89C51, là chân nhận tín hiệu
vào tích cực ở mức thấp. Các bộ chuyển đổi của 0804 sẽ chuyển đổi đầu vào
tương tự thành số nhị phân và giữ nó ở một thanh ghi trong. Chân RD được

sử dụng để cho phép đưa dữ liệu đã được chyển đổi tới đầu ra của ADC-0804.

20


Khi CS = 0 nếu có một xung cao xuống thấp áp đến chân RD thì dữ liệu ra
dạng số 8 bit được đưa tới các chân dữ liệu (DB0 – DB7).
+Chân số 3: WR (Write) nối với chân P3.2 của 89C51, đây là chân vào tích
cực mức thấp được dùng báo cho ADC biết để bắt đầu quá trình chuyển đổi.
Nếu CS = 0 khi WR tạo ra xung sườn thấp nên cao thì bộ ADC-0804 bắt đầu
quá trình chuyển đổi giá trị đầu vào tương tự Vin thành số nhị phân 8 bit. Khi
việc chuyển đổi hoàn tất thì chân INTR được ADC hạ xuống thấp.
+Chân số 4 là CLK IN và Chân số 19 là CLK R: CLK IN (chân số 4), là chân
vào nối tới đồng hồ ngoài được sử dụng để tạo thời gian.
Tuy nhiên ADC0804 cũng có một bộ tạo xung đồng hồ riêng. Để dùng đồng
hồ riêng thì các chân CLK IN và CLK R (chân số 19) được nối với một tụ
điện và một điện trở. Khi đó tần số được xác định bằng biểu thức:

F = 1/(1.1xRC)

(4)

Giá trị R = 3k9 và C= 151pF và tần số nhận được là f = 1543kHz
+Chân số 5: Ngắt INTR (Interrupt): nối với chân P3.3 của 89C51, là chân ra
tích cực mức thấp. Bình thường chân này ở trạng thái cao và khi việc chuyển
đổi tương tự số hoàn tất thì nó chuyển xuống mức thấp để báo cho CPU biết
là dữ liệu chuyển đổi sẵn sàng để lấy đi. Sau khi INTR xuống thấp, cần đặt
CS = 0 và gửi một xung cao xuống thấp tới chân RD để đưa dữ liệu ra.
+Chân số 6 Vin (+) và chân số 7 Vin (-): Chân số 6 nối với Vout của LM35,
đây là 2 đầu vào tương tự vi sai, trong đó Vin = Vin(+) – Vin(-). Thông

thường Vin(-) được nối tới đất và Vin(+) được dùng làm đầu vào tương tự và
sẽ được chuyển đổi về dạng số.
+Chân số 20 Vcc:là chân nguồn nuôi +5V cho ADC0804
+Chân số 9 Vref/2:Nối với một biến trở, là chân điện áp đầu vào được dùng
làm điện áp tham chiếu. Nếu chân này hở thì điện áp đầu vào tương tự cho
ADC0804 nằm trong dải 0 đến +5V. Tuy nhiên, có nhiều ứng dụng mà đầu
vào tương tự áp đến Vin khác với dải 0 đến +5V. Chân Vref/2 được dùng để
thực hiện các điện áp đầu ra khác 0 đến +5V.

21


+Chân số 11 đến chân số 18 là DB0-DB7 nối với P1 của IC89C5:là các chân
ra dữ liệu số (D7 là bit cao nhất MSB và D0 là bit thấp nhất LSB). Các chân
này được đệm ba trạng thái và dữ liệu đã được chuyển đổi chỉ được truy cập
khi chân CS = 0 và chân RD đưa xuống mức thấp. Để tính điện áp đầu ra ta
tính theo công thức sau :

Dout = Vin / Kích thước bước

(5)

2.6.4.Khối xử lý trung tâm 89C51.
a. Sơ đồ nguyên lý :

Hình 2.16. Sơ đồ nguyên lý khối xử lý 89C51
Nguyên lý hoạt động:
Tín hiệu sau khi được ADC chuyển đổi thành tín hiệu số 8bit được đưa vào
khối xử lý thông qua Port1.Lúc này ta sẽ nhận được dữ liệu nhiệt độ là số
8bit.Khối xử lý trung tâm sẽ thực hiện chuyển đổi dữ liệu nhiệt độ thành mã

led 7 đoạn để hiển thị và điều khiển thiết bị theo nhiệt độ.Port0 là dữ liệu
được đưa ra led 7 đoạn.Hai led hiển thị được điều khiển bằng P2.0 và
P2.1.Các chân P3.0-P3.3 được nối với ADC để điều khiển quá trình đọc và
chuyển đổi dữ liệu.

22


+Chấn số 1-8(Port1) nối với DB0-DB7 của ADC0804:Nhận dữ liệu chuyển
đổi tín hiệu tương tự sang số 8bit từ ADC để đưa vào khối xử lý.
+Chân số 9(RST): Nối với mạch reset.
+Chân số 10-14(P3.0-P3.3):Lần lượt nối với các chân CS,RD,WR,INTR của
ADC0804 và P3.4 nối với phần điều khiển thiết bị theo nhiệt độ.
+Chân số 18-19(XTAL1-XTAL2):Được nối với mạch tạo dao động dùng thạch
anh.
+Chân số 20(GND):Được nối với mass của nguồn.
+Chân số 21-22(P2.0-P2.1):Được nối với 2 transistor để điều khiển đóng mở
2 led 7 đoạn hiển thị nhiệt độ.
+Chân số 31(EA): Nối với nguồn 5V.
+Chân số 32-39(Port0):Lần lượt nối với các chân A, B, C, D, E, F, G, DP
của led 7 đoạn.Là Port chứa dữ liệu mã hex để để khiển hiển thị cho led 7
đoạn.
+Chân số 40:Nối với nguồn 5V
2.6.5.Khối hiển thị led 7 đoạn

Hình 2.17. Sơ đồ nguyên lý khối hiển thị
Nguyên lý hoạt động:
Tín hiệu nhiệt độ được khối xử lý trung tâm chuyển đổi thành mã led 7 đoạn
và lưu ở Port0.Các chân A,B,C,D,E,F,G,DP của led 7 đoạn được nối với


23


Port0.Mạch sử dụng led 7 đoạn Anode chung nên ta dùng transistor loại pnp
để điều khiển đóng mở thông qua 2 chân P2.0 và P2.1.
+Các chân từ A-DP của led 7 đoạn nối lần lượt với P0.0-P0.7
+Các chân anode chung của led 7 đoạn được nối với chân E của transistor.
+Chân B của transistor được nối với chân P2.0 và P2.1
+Chân C của transistor được nối nguồn 5V.
CHƯƠNG 3:CHƯƠNG TRÌNH ĐIỀU KHIỂN VIẾT BẰNG
ASSEMBLER
3.1.Lưu đồ giải thuật chương trình điều khiển:
3.1.1. Lưu đồ giải thuật của ADC

BẮT ĐẦU

ĐẶT CS=0 ĐỂ BẮT ĐẦU CHUYỂN ĐỔI

TẠO XUNG THẤP LÊN CAO CHO WR

CHỜ INTR=0
INTR=1
INTR=0
TẠO XUNG CAO XUỐNG THẤP CHO
RD

KÊT THÚC

24



Hình 3.1. Lưu đồ giải thuật ADC0804

3.1.2. Lưu đồ giải thuật BCD hiển thị

BẮT ĐẦU

CHIA GIÁ TRỊ NHIỆT ĐỘ CHO 10

LẤY MÃ BCD ĐƠN VỊ CHO LED 2
LẤY MÃ BCD HÀNG CHỤC CHO LED 1

SỐ DƯ LÀ HÀNG ĐƠN VỊ
SỐ NGUYÊN LÀ HÀNG CHỤC

KÊT THÚC

25


×