Mục lục
I. Giới thiệu
1. Đặt vấn đề
2. Các phương pháp đo nhiệt độ
3. Nhiệm vụ thiết kế
II. Tổng quan về phần cứng
1. Sơ đồ khối
2. Giới thiệu về các thiết bị.
2.1. LM335
2.2. ADC0809
2.3. Bộ vi xử lý 8051
2.4. Khối phím ấn
2.5. Hiển thị Led
2.6. RS 232
2.7. Nguồn
III. Phần mềm
1. Lưu đồ thuật toán
1.1 Lưu đò thuật toán đọc ADC
1.2 Lưu đồ thuạt toán phục vụ ngắt phím
1.3 Lưu đồ kiểm tra
1.4 Lưu đồ truyền tin
2. Phần mềm chương trình
IV. Đánh giá sai số
V. Kết luận,tài liệu tham khảo
1
I. Giới thiệu
1. Đặt vấn đề
Nhiệt độ là một trong những đại lượng vật lý được quan tâm nhiều nhất. Bởi vì
nhiệt độ có vai trò quyết định trong nhiều tính chất của vật chất. Một trong những
đặc điểm tác động của nhiệt độ là làm thay đổi một cách liên tục các đại lượng chịu
sự ảnh hưởng của nó,ví dụ như áp suất ,thể tích của một chất khí . Bởi vậy, trong
các nghiên cứu khoa học , trong công nghiệp và đời sống hàng ngày việc đo nhiệt độ
là điều rất cần thiết. Tuy nhiên, để đo được trị số chính xác của nhiệt độ lại là vấn đề
không đơn giản.
Cùng với sự ra đời và phát triển mạnh mẽ của các hệ vi xử lý,việc đo nhiệt độ áp
dụng vi xử lý,vi điều khiển đã mở ra nhiêu hướng,đưa đến nhiều phương pháp khác
nhau,linh hoạt và chính xác hơn. Có nhiều cách để đo nhiệt độ , trong đó có thể liệt
kê một số phương pháp sau đây:
- Phương phỏp quang dựa trên sự phân bố bức xạ nhiệt do dao động nhiệt
(do hiệu ứng Doppler).
-Phương pháp cơ dựa trên sự dãn nở của vật rắn , của chất lỏng hoặc khí (với
áp suất không đổi ) , hoặc dựa trên tốc độ âm.
-Phương pháp dựa trên sự phụ thuộc của đIện trở vào nhiệt độ , hiệu ứng
Sêbeck , hoặc dựa trên sự thay đổi tần số dao động của thạch anh.
2. Các phương pháp đo nhiệt độ
Trước tiờn núi về cỏc cảm biến nhiệt độ,đó là các cảm biến được sử dụng vào các quá trình
nhiệt như: đốt nóng, làm lạnh, trao đổi nhiệt.v.v. .Đại lượng vào của cảm biến nhiệt độ là nhiệt độ
và đại lượng ra là tín hiệu điện (dòng,áp).Một số cảm biến thường sử dụng:
+Nhiệt điện trở : Nguyên lý làm việc là có điện trở thay đổi theo sự thay đổi nhiệt độ
của nó.Tuỳ theo tác dụng nhiệt của dòng điện cung cấp chạy qua chuyển đổi người ta
phân ra: Nhiệt điện trở đốt nóng và nhiệt điện trở không đốt nóng
• Nhiệt điện trở đốt nóng ,dòng điện chạy qua rất lớn làm nhiệt độ của nó
tăng lên cao hơn nhiệt độ môi trường(100°C -800°C), nên có sự toả nhiệt
ra môi trường xung quanh, như nhiệt dẫn, đối lưu, bức xạ .
• Nhiệt điện trở không đốt nóng, dòng điện chạy qua rất nhỏ không làm
tăng nhiệt độ của điện trở và nhệt độ của nó bằng nhiệt độ môi trường.
Nhiệt điện trở loại này dùng để đo nhiệt độ và các đại lượng cơ học như
đo di chuyển.
Nhiệt điện trở phân làm hai loại: Nhiệt điện trở dây(nhiệt điện trở đồng,nhiệt điện trở
Platin, nhiệt điện trở Niken) và nhiệt điện trở bán dẫn.
+Cặp nhiệt điện:Nguyên lý làm việc dựa trên 2 hiệu ứng:Thomson và Seebek
Ứng dụng của cặp nhiệt điện chủ yếu để đo nhiệt độ, ngoài ra nó còn dược dùng
để đo các đại lượng không điện và điện khác như: đo dòng điện ở tần số cao,đo
hướng chuyển động và lưu ượng của các dòng chảy, đo di chuyển , đo áp suất
nhỏ
+Cảm biến nhiệt độ dùng đặc tính diode và tranzitor
Đo nhiệt độ là nhiệm vụ thường gặp trong các ngành nhiệt học, hoá học ,luyện kim...Tuỳ
theo nhiệt độ đo mà có thể dùng các phương pháp đo khác nhau.Thông thường nhiệt độ đo
được chia thành 3 giải : Nhiệt độ thấp, nhiệt độ trung bình và nhiệt độ cao.Ở nhiệt độ trung
2
bỡnh v thp, phng phỏp o thng l tip xỳc ngha l cỏc chuyn i c t trc tip
ngay mụi trng cn o. i vi nhit cao,o bng phng phỏp khụng tip xỳc, ngha l
dng c o t ngoi mụi trng o.
Mt trong s nhng cỏch ú l o nhit khụng tiộp xỳc s dng cm bin
LM335
3. Nhim v thit k
Thit k h b VXL o nhit s dng VK89C51 v cm bin LM335 gii
quyt nhng vn sau:
- Thit k mch o nhit trong di t 0
o
C-100
o
C v hin th.
- Cnh bỏo khi nhit ln hn 80
o
C v khi nh hn 20
o
C
- Kt ni truyn thụng tin o c vo mỏy tớnh
- Vit chng trỡnh phn mm gii quyt nhng vn trờn
II. Tng quan v phn cng
1. S khi
2. Gii thiu v cỏc khi
2.1 Khi cm bin LM335
LM335 là cảm biến nhiệt độ có khoảng đo từ -40
0
C đến +100
0
C, độ chính xác cao,
tính năng cảm biến nhiệt độ rất nhạy.Tín hiệu ngõ ra tuyến tín với tín hiệu ngõ vào.
Công dụng của LM335:
+ LM335 có độ biến thiên theo nhiệt độ là: 10mV/K
O
+ Có sự ổn định cao: ở 25
O
C chỉ có sai số 1%.
+ Chỉ tiêu kĩ thuật:
Cm
bin
LM335
Mch
khuch
i
ADC
VK 8051 Khi
bn
phớm
Khi hin th
LED
PC
3
- Tiêu tán công suất thấp.
- Dòng làm việc từ 4.10
-4A
5.10
-3
A
- Dòng ngợc 15mA
- Dòng thuận 10mA
- Sự biến thiên của điện thế theo nhiệt độ có hàm
V
OUT
= 0.01xT
O
K
= 2.73 + 0.01xT
O
C
+ Cấu trúc của bộ cảm biến LM335 là loại cảm biến có 3 chân tín hiệu ra
tơng tự
2.2 Khi iu chnh in ỏp hay mch khuộch i
Đầu đo dới dạng vi mạch LM 335 là một đầu đo nhiệt độ đơn giản và chính
xác ,có điện áp lối ra tỷ lệ thuận với nhiệt độ của đầu đo. Đầu đo này không cần đến linh
kiện ở ngoài nên không cần chuẩn lại ở những nhiệt độ khác nhau .Trong vùng nhiệt độ
phòng , độ chính xác đạt cỡ 0,25
0
C .Dòng điện tiêu thụ cỡ 60uA nên có thể bỏ qua sự tăng
nhiệt độ đầu đo dòng điện nuôi tạo ra .
Tơng ứng với dải nhiệt độ đo di t 0
o
C-100
o
C thì điện áp ra tuyến tính là 2.73-
3.73V.Ta điều chỉnh biến trở R20 để ở 25
0
C thì điện áp ra ở chân 2 của cảm biến là
2.98V.
- iện áp ra của cảm biến là từ 2.73-3.73V ,trong khi thang điện áp vào làm việc
của ADC0809 là 0-5V ,do vậy ta cần tiến hành chuẩn hóa tín hiệu trớc khi đa đến
ADC. .Sơ đồ mạch thực hiện việc đó nh trên .Nguyên lý hoạt động của mạch đó là:
+ Dùng một đi ốt zener và một nguồn nuôi để tạo ra điện áp ổn định 5V.
4
V
out
VR
+5V
LM335
+ Điện áp này đợc nối với một biến trở R21 nối đất. Dùng biến trở này để điều
chỉnh điện áp vào bộ đệm là 2.73V. Bộ đệm dùng để hạn chế dòng điện trong mạch .
+ Qua bộ đệm điện áp vẫn là 2.73V . Điện áp này đợc đa đến một mạch trừ.
+ Bộ trừ đợc nối với các điện trở nh hình vẽ . Giá trị của các điện trở đợc cho nh
trên hình. Với cách mắc nh vậy điện áp ra của bộ trừ là :
Vout = Vin(+) Vin(-)
Ta có :
Vin(+) = 2.73 - 3.73 V
Vin(-) = 2.73V
Do vậy :
Vout = 0 - 1V
Ta đã đạt đợc yêu cầu về điện áp. Và cũng để hạn chế dòng điện ta phải đa
điện áp này vào ADC qua một bộ đệm nh trên hình vẽ.
Ta cần hiển thị kết quả ra LED ,muốn vậy cần có sự đồng nhất :
Nhiệt độ đo(
0
C ) Mã nhị phân ở đầu ra của ADC
+ Điện áp ở lối ra của LM335 là 10mV /
0
C
+ Do vậy vấn đề này đợc giải quyết bằng cách đặt điện áp ở các chân Vref của
ADC thích hợp.
Nh ta đã biết ADC 0809 có 8 bít ở đầu ra nên có:
2
8
- 1 = 255 ( bậc thang )
Ta s dng ngun 5V,v 1 bin tr to ra V
ref
(+) ca ADC0809 l 2.55V,
Nờn suy ra in ỏp (ref)=2.55V .
Kích cỡ bậc thang là :
2.55/ 255 =0.01(V)
- Điện áp đa tới chân vào của ADC là 0 - 1 V tơng ứng với nhiệt độ đầu đo
của cẩm biến là 0 - 100
0
C
- Tín hiệu lối ra của cảm biến 10mV /
0
C.
- Kích cỡ bậc thang 10mV
2.3Khi chuyn i ADC - s dng ADC0809
Có nhiều phơng pháp để chuyển đổi một đại lợng tơng tự sang giá trị số nh:
- ADC dạng sóng bậc thang :lớp ADC đơn giản này sử dụng bộ đếm nhị phân
làm thanh ghi và cho phép xung nhịp đẩy bộ đếm tăng mỗi lần một bớc,cho đến khi VAX
# VA. ADC loại này gọi là ADC sóng bậc thang vì dạng sóng tại VAX có từng bậc đi
lên . ADC dạng sóng bậc thang bao gồm một bộ đếm ,một DAC ,một bộ so sánh tơng
tự ,và một cổng AND điều khiển . Đầu ra bộ so sánh dùng làm tín hiệu điều khiển kết
thúc chuyển đổi EOC-tớch cc mc thp
*Ưu điểm: +Tơng đối đơn giản
+Phù hợp với các ứng dụng tốc độ chậm.
*Nhợc điểm:Nếu tăng số bit để tăng độ phân giải thi khi đó chỉ cần
thêm 1 bit ,thời gian chuyển đổi đã tăng gấp đôi.Nh vậy tăng độ phân giải thì thời gian
chuyển đổi kéo dài.Vì thế ADC loại này không phù hợp với những ứng dụng đòi hỏi phải
liên tục chuyển đổi một tín hiệu tơng tự thay đổi nhanh thành tín hiệu số.
- ADC liên tiếp-xấp xỉ(ADC0804,ADC0809...).
5
Đây là phương pháp được sử dụng rộng rãi , nhưng mạch điện có phức tạp nhưng
thời gian chuyển đổi ngắn hơn . Phương pháp này có thời gian chuyển đổi không phụ
thuộc vào điện áp ngõ vào .
Sơ đồ khối chuyển đổi ADC dùng phương pháp xấp xỉ liên tiếp
Hoạt động
Khi tác động cạnh xuống của xung Start thì ADC bắt đầu chuyển đổi
-Mạch logic điều khiển đặt bit có nghĩa lớn nhất của thanh ghi diều khiển lên mức
cao và tất cả các bit còn lại ở mức thấp . Số nhị phân ra ở thanh ghi điều khiển được
qua mạch DAC để tạo ra điện áp tham chiếu V’
a
.
Nếu V’
a
> V
a
thì ngõ ra bọ so sánh xuống mức thấp làm cho mạch logic diều khiển
xóa bit MSB xuống mức thấp
Nếu V’
a
<V
a
thì ngõ ra bọ so sánh ở mức cao làm cho mạch logic điều
khiển giữ bit MSB ở mức cao .
Tiếp theo mạch logic điều khiển đưa bit có nghĩa kế bit MSB lên mức cao và tạo ở
ngõ ra khối DAC một điện áp tham chiếu V’
a
rồi đem so sánh tương tự như bit MSB
như trên . Quá trình này cứ tiếp tục cho đến bit cuối cùng trong thanh ghi điều khiển .
Lúc đó thì V’
a
gần bằng V
a
ngõ ra của mạch logic điều khiển báo kết thúc chuyển đổi .
Như vậy mạch đổi ra n bit chỉ mất n chu kì xung clock nên có thể đạt tốc độ rất cao
. Tuy nhiên mạch ADC xấp xỉ liên tiếp lại không thể đáp ứng với tín hiệu tương tự vào
biến đổi cực nhanh .
- ADC chuyển đổi nhanh(MC10319,AD9010,... )
+Bộ chuyển đổi nhanh (fast converter)là loại ADC có tốc độ cao nhất nhưng sơ
đồ mạch phức tạp hơn các loại khác.Chẳng hạn,ADC nhanh N bit cần 2N-1 bộ so sánh,2N
điện trở và logic mã hoá cần thiết.
+ Bộ chuyển đổi nhanh không cần tín hiệu xung nhip vì tiến trình chuyển đổi
xảy ra liên tục.
+ Thời gian chuyển đổi là thời gian cần thiết để xuất hiện một đầu ra số đáp lại
một thay đổi ở đầu vào tương tự,chỉ phụ thuộc vào khoảng trễ do truyền của bộ so sánh và
bộ mã hoá.Do đó ADC nhanh có thời gian chuyển đổi vô cùng ngắn ngủi:
6
Clock
Start
EOC
V
A
V’
A
+
_
DAC
Thanh ghi điều khiển
Logic điều khiển MSB
LSB
VD:MC10319(Motorola)-8 bit: tc<20ns
AD9010(Analog Devices)-10 bit: tc<15ns.
Ngoài ra còn một số phương pháp khác như:ADC sóng bậc thanh lên/xuống;ADC tích hợp
hai độ dốc;ADC chuyển đổi điện thế thành tần số; điều biến sigma/delta.
TỔNG QUAN Về ADC 0809:
ADC0809 là bộ chuyển đổi tương tự-số 8 bit 8 đầu vào tương tự được dồn kênh
bởi 1 bộ dồn kênh tích hợp sẵn trên chip ADC.Như vậy một mặt nó không cần bộ dồn kênh
tương tự ngoài ,mặt khác lại cho phép có nhièu đầu vào hơn, Điều này rất thuận tiện cho
việc đo ,giám sát các đại lương vật lý ở nhiều điểm đo khác nhau.
ADC0809 có 8 kênh đầu vào tương tự .Như vậy ADC0809 cho phép giám sát
đồng thời 8 bộ cảm biến,8 kênh đầu vào tương tự được dồn kênh và được chọn nhờ nhờ 3
chân địa chỉ A,B,C .
ADC0809 hoạt động theo phương pháp liên tiếp-xấp xỉ.
Các đặc tính:
-Dễ dàng giao tiếp với các bộ vi xử lý
-Bộ dồn kênh 8 đầu vào với logic địa chỉ
-Dải điện áp đầu vào 5V và nguồn cấp 5 V
Một vài thông số kỹ thuật chính:
-Độ phân giải: 8 bit
-Sai số : +/- 1LSB
-Nguồn cung cấp: 5V .
-Công suất: 15mW.
-Tốc độ chuyển đổi: <100us
Sơ đồ khối cấu trúc bên trong ADC0809:
Các chân của ADC0809
7
Sơ đồ chân của ADC0809
-Vcc: Chân cấp nguồn.
Điện áp nguồn:5V
-GND: Chân nối đất.
- V
ref
(+) và V
ref
(-)
Hai chân đưa điện áp tham chiếu.
Thường V
ref
(-) nối đất.Trong bài V
ref
(+) được nối với nguồn 5V và một biến
trở 10k để lấy ra V
ref
(+)=2.55V
-IN0->IN7(Input):-8 kênh đầu vào tương tự.
- ADDA,ADDB,ADDC là 3 chân chọn kờnh đầu vào.
A,B,C la 3 bit chọn 1 trong 8 kênh đầu vào của 1 Multiplexer tương tự được
tích hợp trong bộ ADC0809.
-ALE(Address Latch Enable):
Chân để chốt địa chỉ (kênh vào).
- Start: Chân gửi tín hiệu bắt đầu chuyển đổi.
- EOC(End off Convertion):Chân nay để gửi tín hiệu kết thúc chuyển đổi.
- OE(Output Enable): Chân gửi tín hiệu cho phép lấy số liệu số ở đầu ra.
- 01->08: là 8 chân tương ứng 8 bit đầu ra của số liệu 8 bit đã được chuyển đổi.
- CLK: Chân tín hiệu Clock , để gửi tín hiệu xung đồng hồ để ADC làm việc .
CHỨC NĂNG & HOẠT ĐỘNG CỦA ADC0809
* Sơ đồ khối chức năng của ADC0809:
8
*ADC0809 thể hiện trên sơ đồ trên có thể dược chia theo chức năng thành 2 mạch
con cơ bản.Hai mạch con này là một bộ dồn kênh và một bộ chuyển đổi A/D.
-Bộ dồn kênh sử dụng 8 khoá tương tự công nghệ CMOS chuẩn để cung cấp một
trong 8 đầu vào tương tự.Các khoá được điều khiển chọn,tuỳ thuộc vào số liệu được chốt ở
thanh ghi địa chỉ bộ dồn kênh (multiplexer address register) 3 bit.
- Khối chức năng thứ hai là bộ chuyển đổi A/D liên tiếp-xấp xỉ,chuyển tín hiệu
tương tự đầu ra của bộ dồn kênh thành một từ số 8 bit. Đầu ra bộ dồn kênh sẽ đi đến một
trong hai đầu vào của bộ so sánh. Đầu vào kia nhân được từ 1 thang điện trở 256R được
mắc vào một cây khoá dùng transistor MOSFET (MOSFET transistor switch tree).Logic
điều khiển bộ chuyển đổi sẽ điều khiển switch tree, đưa điện áp tương ứng chảy
ra(funneling a particular tap voltage) đến bộ so sánh. Đặt cơ sở cho kết quả của sự so sánh
này,bộ logic điều khiển và thanh ghi liên tiếp xấp xỉ(SAR)sẽ quyết định điện áp được chọn
để lấy ra sẽ cao hơn hay thấp hơn giá trị hiện tại trên thang điện trở.Tiến
trình(algorithm)này được thực hiện 8 lần trong 1 chuyển đổi,mỗi chuyển đổi cần 8 chu kỳ
đồng hồ.Như vậy tổng cộng thời gian chuyển đổi là 64 chu kỳ đồng hồ.
-Khi một chu kỳ chuyển đổi hoàn thành,số liệu kết quả được đưa vào bộ chốt đầu
ra 3 trạng thái.Số liệu trong bộ chốt đầu ra có thể sau đó có thể được đọc bởi một hệ thống
tiếp nhận số liệu(host system) bất cứ lúc nào trước khi kết thúc chu kỳ chuyển đổi tiếp theo
.Khả năng 3 trạng thỏi của bộ chốt cho phép giao tiếp dễ dàng với các hệ thống bus định
hướng(bus oriented systems).
-Thực hiện hoạt động của các bộ chuyển đổi này bằng một bộ vi xử lý hoặc một
số logic điều khiển thì rất đơn giản.Thiết bị điều khiển đầu tiên sẽ chọn kênh vào. Để làm
điều này ,một địa chỉ kênh 3 bit được áp vào các chân A,B,C;và chân ALE (Address Latch
Enable) được đưa xung tích cực để khoá địa chỉ vào thanh ghi địa chỉ bộ dồn kênh.
9
-
Để bắt đầu chuyển đổi,chân START được áp xung tích cực. ở sườn lên của xung
này,những thanh ghi trong được xoá và ở sườn xuống sự chuyển đổi được bắt đầu.
Cần 8 chu kỳ đồng hồ trong mỗi lần xấp xỉ.Dù là không có chuyển đổi trong quá
trình đó,ADC0809 vẫn quay vòng ở bên trong(internally cycling) qua 8 chu kỳ đồng
hồ.Một xung start có thể xuất hiện bất cứ lúc nào trong suốt quá trình này nhưng sự chuyển
đổi sẽ không thật sự bắt đầu đến khi bộ chuyển đổi quay vòng bên trong đến khi bắt đầu
chuỗi 8 chu kỳ đồng hồ sau.Chỉ cần chân START được giữ ở mức cao thì sẽ không có
chuyển đổi,nhưng khi chân start đựơc đưa xuống thấp sự chuyển đổi sẽ bắt đầu trong
khoảng thời gian 8 chu kỳ đú.
-Đầu ra EOC được lật ở sườn lên của xung start.Nó cũng được điều khiển bởi
chu trình gồm 8 chu kỳ đồng hồ,nên nó sẽ xuống thấp trong khoảng thời gian 8 chu kỳ
đồng hồ khi xảy ra sườn lên của xung start .
Sơ đồ thời gian của ADC0809:
Kênh được chọn C B A
IN0 0 0 0
IN1 0 0 1
IN2 0 1 0
IN3 0 1 1
IN4 1 0 0
IN5 1 0 1
IN6 1 1 0
IN7 1 1 1
10
Kết nối các chân của ADC0809 với VĐK8051
- Vỡ chỉ dựng 1 đầu đo nên 3 chân ADDA,B,C ta đặt ở mức 0
- 01-08 là 8 bit đầu ra được nối với cổng P0 của 8051
- EOC nối với ngắt ngoài INT0
- ALE,START,EO được điều khiển bởi các tín hiệu READ/WRITE
- Đầu đo nhiệt độ nối vào IN0.
2.4 Bộ vi xử lý 8051
Tổng quan cấu trúc 8051:
MCS-51 là họ vi điều khiển của INTEL. Các nhà sản xuất IC khác như Siemens,
Advanced Micro Divices, Fujitsu và Philips được cấp phép làm các nhà cung cấp thứ hai
cho các chíp của họ MCS-51.Vi mach tổng quát cưa họ MCS-51 là chíp 8051, linh kiện
đầu tiên của họ này được đưa ra thị trường. Chíp 8051 có các đặc trưng được tóm tắt như
sau :
_4KB ROM.
_128 byte RAM.
_ 4 port xuất nhập (I/O port ) 8- bit.
_ 2 bộ định thời 16 bit.
_ Mạch giao tiếp nối tiếp.
_ Không gian nhớ chương trình (mã) ngoài 64K.
_ Không gian nhớ dữ liệu ngoài 64K.
_ Bộ xử lý bít(thao tác trên các bit riêng rẽ).
_ 210 vị trí được định địa chỉ, mỗi vị trí 1 bit.
11
Sơ đồ khối của chíp 8051.
1) Tổ chức chân của MCS51:
Sơ đồ chân của 8051 dạng DIP.
12