Tài liệu Đề tài Thiết kế hệ thống hiển thị nhiệt độ, đồng thời kết hợp đều khiển một số thiết bị dân dụng: MỤC LỤC
Nhận xét của giáo viên hướng dẫn……………………………………..
Lời mở đầu……………………………………………………………..
Phần I: Dẫn Nhập………………………………………………………
Đặt vấn đề.
Mục đích và yêu cầu.
Giới hạn đề tài.
Phần II. Cơ sở lý thuyết………………………………………………..
Giới thiệu vi xử lý PIC 16f877A , cảm biến nhiệt LM35, các IC sử dụng trong mạch.
Phần III: Thiết kế và thi cơng………………………………………….
Chương I: Thiết kế mạch
Sơ đồ khối.
Nguyên lý hoạt động của các khối.
Sơ đồ nguyên lý.
Chương II: Thi cơng mạch.
Dụng cụ sử dụng.
Quá trình thi cơng.
NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN.
………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………...
20 trang |
Chia sẻ: hunglv | Lượt xem: 1287 | Lượt tải: 2
Bạn đang xem nội dung tài liệu Đề tài Thiết kế hệ thống hiển thị nhiệt độ, đồng thời kết hợp đều khiển một số thiết bị dân dụng, để tải tài liệu về máy bạn click vào nút DOWNLOAD ở trên
MỤC LỤC
Nhận xét của giáo viên hướng dẫn……………………………………..
Lời mở đầu……………………………………………………………..
Phần I: Dẫn Nhập………………………………………………………
Đặt vấn đề.
Mục đích và yêu cầu.
Giới hạn đề tài.
Phần II. Cơ sở lý thuyết………………………………………………..
Giới thiệu vi xử lý PIC 16f877A , cảm biến nhiệt LM35, các IC sử dụng trong mạch.
Phần III: Thiết kế và thi cơng………………………………………….
Chương I: Thiết kế mạch
Sơ đồ khối.
Nguyên lý hoạt động của các khối.
Sơ đồ nguyên lý.
Chương II: Thi cơng mạch.
Dụng cụ sử dụng.
Quá trình thi cơng.
NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN.
……………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………
Chữ ký của giáo viên hướng dẫn:
LỜI MỞ ĐẦU
Với sự phát triển khơng ngừng của khoa học kỹ thuật, đặc biệt là ngành điện tử đã ứng dụng rất nhiều trong cơng nghiệp. Trong lĩnh vực điều khiển, từ khi cơng nghệ chế tạo loại vi mạch lập trình phát triển đã đem đến các kỹ thuật điều khiển hiện đại cĩ nhiều ưu điểm hơn so với việc sử dụng các mạch điều khiển lắp ráp bằng các linh kiện rời như kích thước nhỏ, giá thành rẻ, độ làm việc tin cậy, cơng suất tiêu thụ nhỏ.
Ngày nay, trong lĩnh vực điều khiển đã được ứng dụng rộng rãi trong các thiết bị, sản phẩm phục vụ cho nhu cầu sinh hoạt hàng ngày của con người như các loại máy tự động, đồng hồ báo giờ, các loại đèn quang báo,….. đã giúp cho đời sống cuả chúng ta ngày càng hiện đại và tiện nghi hơn.Với những kiến thức học được trên giảng đường, và tìm đọc trong sách và trên mạng Internet, chúng em chọn đề tài là thiết kế hệ thống hiển thị nhiệt độ, đồng thời kết hợp đều khiển một số thiết bị dân dụng.
PHẦN I
Dẫn Nhập
I. Đặt vấn đề.
Cùng với sự phát triển của khoa học và cơng nghệ, các thiết bị điện tử đã, đang và sẽ tiếp tục được ứng dụng ngày càng rộng rãi và mang lại hiệu quả trong hầu hết các lĩnh vực khoa học kỹ thuật cũng như trong đời sống xã hội.
Việc gia cơng, xử lý các tín hiệu điện tử hiện đại đều dựa trên cơ sở nguyên lý số. Vì các thiết bị làm việc dựa trên cơ sở nguyên lý số cĩ ưu điểm hơn hẳn so với các thiết bị làm việc dưạ trên cơ sở nguyên lý tương tự, đặc biệt là trong kỹ thuật tính tốn.
Sự phát triển mạnh mẽ của cơng nghệ điện tử đã cho ra đời nhiều vi mạch số cỡ lớn với giá thành rẻ và khả năng lập trình cao đã mang lại những thay đổi lớn trong ngành điện tử. Mạch sử dụng vi đều khiển ở những mức độ khác nhau đã đang thâm nhập trong các lĩnh vực điện tử thơng dụng và chuyên nghiệp một cách nhanh chĩng. Các trường kỹ thuật là nơi vi đều khiển thâm nhập mạnh mẽ và được học sinh, sinh viên ưa chuộng do lợi ích và tính khả thi của nĩ. Vì thế sự hiểu biết sâu sắc về lập trình vi đều
khiển là khơng thể thiếu đối với sinh viên ngành điện tử hiện nay. Nhu cầu hiểu biết về lập trình và ứng dụng vi đều khiển và đặc biệt là vi đều khiển PIC vào cuộc sống khơng chỉ riêng đối với những người theo chuyên ngành điện tử mà cịn đối với những cán bộ kỹ thuật khác cĩ sử dụng thiết bị điện tử.
II.Mục đích yêu cầu.
Sự cần thiết,quan trọng cũng như tính khả thi và lợi ích của mạch số cũng chính là lý do để chọn và thực hiện đề án “thiết kế mạch hiển thị nhiệt độ” nhằm ứng dụng kiến thức đã học về kĩ thuật mạch và kỹ thuật số vào thực tế.
III.Giới hạn đề tài.
Do đều kiện cịn thiếu tài liệu cũng như linh kiện để thi cơng mạch điện nên nhĩm thực hiện chỉ thiết kế mạch hiển thị nhiệt độ đơn giản ,gọn nhẹ .
PHẦN II
Cơ SởLý Thuyết
I.VI ĐỀU KHIỂN PIC
I.1.Khái quát
PIC(Programmable Intelligent Computer ) là dịng vi điều khiển của MICROCHIP đang được sử dụng phổ biến trong các ứng dụng dân dụng và cơng nghiệp bởi những đặc tính ưu việt của nĩ. Hơn nữa việc lập trình cho PIC lại khá đơn giản bởi số mã lệnh ít, cĩ nhiều cơng cụ hỗ trợ lập trình bằng ngơn ngữ cấp cao như C. Hiện tại PIC cĩ các dịng 8bit và 16bit. Trong báo cáo này ta quan tâm đến PIC 8 bit cụ thể là PIC16F877A - một vi điều khiển với tất cả đặc trưng cơ bản của PIC.
Tại sao dùng PIC
Ta từng sử dụng họ 8051 và thấy được tính hữu dụng của nĩ qua các ứng dụng cơ bản, đơn giản. Tuy nhiên đối với các ứng dụng phức tạp, địi hỏi tốc độ, mức độ tích hợp cao thì bản thân 8051 khĩ đáp ứng được ( hoặc ta phải đầu tư thêm chi phí cho việc xử lí ngoại vi,…). PIC thì khác, hãy xem bảng so sánh sau :
STT
Chức năng
PIC16F877A
AT89C51
1
I/O
5 Ports
4 Ports
2
Flash Memory
8k
4k
3
EEPROM
256bytes
-
4
Timer
3
2
5
Interrupts
15
4
6
ADC
8 channel 10 bit
-
7
PWM
2
-
8
Comparator
2
-
9
Instruction set
35
>100
10
Truyền thơng
SUART,I2C,MSSP,PSP
UART
Bảng II.1: Bảng so sánh chức năng của PIC16F877A và AT89C51
Khả năng tích hợp cao của PIC mang lại sự đơn giản nhưng hiệu quả trong thiết kế và lập trình. Tuy vậy PIC khơng phải là tất cả, khi làm một sản phẩm, tính kinh tế là quan trọng, sử dụng loại vi điều khiển nào mang lại hiệu quả cao nhất là tùy thuộc vào người thiết kế.
I.2. Cấu trúc PIC :
I.2.1 Sơ đồ khối
*Hình dưới đây minh họa một số PIC và sơ đồ chân PIC16F877A.
Hình II.1 : Một số IC PIC thơng dụng
Hình II.2 : Sơ đồ chân của pic 16F877A
I/O Ports :
PIC16F877A( gọi tắt là PIC) cĩ 5Port A,B,C,D,E với các đặc điểm cơ bản như sau
PORT A:
- 6bit
- I/O
- Ngõ vào, điện áp tham chiếu cho ADC
- Clock input
PORT B:
- 8bit
- I/O
- Ngắt ngồi
PORT C:
- 8bit
- I/O
- CCP/PWM output
- Timer Clock output
- Truyền thơng
PORT D:
- 8bit
- I/O
- Truyền thơng song song (network)
PORT E:
- 3bit
- Ngõ vào AD
- Truy xuất bộ nhớ ngồi(WR/RD)
Timers :
PIC cĩ 3 timer, timer0, timer1, timer2. Tần số Clock ngõ vào lớn nhất cĩ thể bằng ¼ tần số thạch anh, tần số xung ngõ vào timer cĩ thể được chia nhỏ hơn bằng cấu hình phần mềm.
TIMER0/COUNTER
- 8 bit
- Cĩ thể cấu hình tần số Clock ngõ vào (prescale)
- Sử dụng Clock từ Xtal hoặc Clock bên ngồi
- Ngắt sảy ra khi tràn timer ( FFh -00h)
TIMER1/COUNTER1
- 16bit
- Ngắt sảy ra khi timer tràn (FFFFh-0000h)
TIMER2/COUNTER2
- 8bit
- Thường sử dụng cho hoạt động PWM
- Cĩ thể cấu hình tần số clock ngõ vào ( prescale)
ADC :
- ADC với độ phân giải 10 bit
- Cĩ thể cấu hình tần số chuyển đổi, kênh chuyển đổi, điện áp tham chiếu bằng phần mềm.
- Cấu hình ngắt khi chuyển đổi xong
Hình II.3 : Sơ đồ cấu tạo cổng ADC của Pic
I.2.2 Cấu trúc địa chỉ ơ nhớ và các thanh ghi
I.3. Tập lệnh PIC:
Để lập trình cho PIC, cĩ thể chọn những ngơn ngữ lập trình khác nhau như ASM, CCS C, HT-PIC, pascal, basic,...Khi viết bằng CCS C thì dịch ra file.hex cĩ dài hơn so với khi viết bằng ASM. Hai ngơn ngữ CCS C và HT-PIC được ưa chuộng hơn cả, CCS C dễ học, gần gũi với ASM cịn HT-PIC là dạng ANSI C.
II.CẢM BIẾN NHIỆT LM35
Cảm biến nhiệt được tích hợp trong IC, là một tích hợp nhận tín hiệu nhiệt độ chuyển thành tín hiệu điện dưới dạng dịng điện hay điện áp. Dựa vào đặc tính rất nhạy cảm của các bán dẫn với nhiệt độ,tạo ra điện áp hoặc dịng điện tỷ lệ thuận với nhiệt độ.đo tín hiệu điện ta biết được giá trị nhiệt độ cần đo.Sự tác động của nhiệt độ tạo ra điện tích tự do và các lỗ trống trong chất bán dẫn.Bằng sự phá vỡ các phân tử, bức các electron thành dạng tư do di chuyển qua vùng cấu trúc mạng tinh thể tạo sự xuất hiện các lỗ trống.Làm cho tỷ lệ điện tử tự do và lỗ trống tăng lên theo quy luật hàm mũ với nhiệt độ .
LM35 Là cảm biến nhiệt độ cĩ thể hoạt động đến 1500c. Cứ tăng 10c, điện áp ra tăng 10mv
Các tính chất của LM35:
+chia độ trực tiếp theo 0c
+Độ chính xác ban đầu là 10c
+Trở kháng động <1Ω
+Tầm nhiệt độ rộng, đo từ 00c→150 0c
+Tần biến thiên điện áp ứng với nhiệt độ tư 0→1000c là 1v
LM35 cĩ 3 chân. Chân 1(Vs) là chân cấp nguồn dương Vcc. Chân 2(GND) là chân nối mass. Chân 3(Vout) là chân xuất điện áp sau khi chuyển đổi từ nhiệt độ sang.
III.Giới thiệu về các IC sử dụng trong mạch.
III.1. IC chốt dữ liệu 74HC573:
a) Đại cương:
Là vi mạch chốt dữ liệu được dùng trong trường hợp muốn giữ lại dữ liệu cần thiết ở ngõ ra, dùng tiết kiệm cổng xuất dữ liệu cho vi xử lý. IC cĩ 8 ngõ vào dữ liệu và 8 ngõ ra để xuất dữ liệu. Ngõ vào 3 trạng thái cĩ 1 D_flip flop để chốt, lưu giữ tín hiệu. Chân 11 ở mức cao dữ liệu được truyền qua, khi chân 11 ở mức thấp thì dữ liệu được chốt ở lối ra cua IC. Chân OE được nối mass.
b)Hình dáng và sơ đồ chân IC74HC573:
Hinh 4:Hình dáng và sơ đồ chân của IC 74573
c) Sơ đồ logic và bảng trạng thái.
Hình 5: Sơ đồ logic của IC 74573
Sơ đồ cấu trúc của IC74573, sự hoạt động của IC được thể hiện ở bảng sự thật
Hình 6: Bảng trạng thái của IC74HC573
III.2. IC Hiển thị led 7segment 7447.
a. Đại cương
IC 7447 giải mã BCD sang mã Led 7 đoạn. Để IC hoạt động ta kết nối chân 16 (Vcc) với nguồn 5 V, chân số 8 với đất. Ngõ vào cĩ 4 chân là 7,1,2,6 tương ứng với A,B,C,D trong đĩ mức ý nghĩa giảm dần từ A đến D. Kết nối các ngõ ra A,B,C,D của IC với chân out của vi xử lý. Các chân LT, BI/RBO, RBI khơng cần kết nối. Nếu ta dùng Led 7 đoạn kiểu cathod chung thì mỗi ngõ ra của IC 7447 cần kết nối với các cổng đảo trước khi đến các chân của Led. Giải quyết điều này bằng cách sử dụng thêm IC 7404.Dễ thấy IC này được tích hợp 6 cổng đảo.
b)Hình dáng và sơ đồ chân IC
c) Sơ đồ logic và bảng trạng thái
Đây là IC khá đơn giản dùng để chuyển tín hiệu dạng số nhị phân ở ngõ vào sang mã 7 đoạn, dễ thấy IC này hoạt động ở tích cực mức thấp. Do đĩ ta cĩ bảng chân thực sau:
BCD inputs
Segment outputs
Display
A
B
C
D
a
b
c
d
e
f
g
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
1
1
0
0
1
1
1
1
1
0
0
1
0
0
0
1
0
0
1
0
2
0
0
1
1
0
0
0
0
1
1
0
3
0
1
0
0
1
0
0
1
1
1
1
4
0
1
0
1
0
0
1
0
0
1
0
5
0
1
1
0
1
1
0
0
0
0
0
6
0
1
1
1
0
0
0
1
1
1
1
7
1
0
0
0
0
0
0
0
0
0
0
8
1
0
0
1
0
0
0
1
1
0
0
9
IV. Led 7 đoạn.
Dùng để hiển thị các số thập phân, nhị phân. Cĩ hai loại cơ bản là: led 7 đoạn cĩ anot chung (hình a), và led 7 đoạn cĩ katot (hình b) chung. Tùy theo yêu cầu mà ta sử dụng.
Ha.Led 7 đoạn Anot chung Hb. Led 7 doạn Katot chung
Phần III
Thiết Kế Và Thi Cơng
I.SƠ ĐỒ KHỐI VÀ NGUYÊN LÝ HOẠT ĐỘNG
I.1. Sơ đồ khối của mạch:
PIC 16F877A
Hiển Thị Ra LED 7 Đoạn
Chuyển Gía Trị Đọc Được Sang Gía Trị Nhiệt Độ
Chuyển Đổi ADC
Khối Cảm Biến LM35
I.2. Nguyên lý hoạt động :
Cảm biến LM35 quy đổi trực tiếp sự thay đổi nhiệt độ mơi trường thành sự thay đổi của điện áp.
VD: với nhiệt độ phịng là 250C thì ở ngõ out của LM35 sẽ cĩ điện áp là 250mV
Với vi đều khiển PIC 16f877A cĩ tích hợp sẵn bộ chuyển đổi ADC, nên tín hiệu lấy từ cảm biến được đưa trực tiếp vào vi đều khiển. PIC sẽ chuyển đ ổi giá trị đọc được thành giá trị nhị phân. Trong mạch này ta chọn bộ ADC 10 bit. Quá trình chuyển đổi như sau:
ADC 10 bit tương ứng giá trị là 1023
Ta chọn VEF=5V =5000mV
Vậy 5000mV ứng với 1023 khoảng
LM35 chuyển đổi 10C tương ứng với 10mV
Suy ra 5000mv tương ứng với 5000C
5000C ứng với 1023
?0 --------------- giá trị bộ ADC đã chuyển đổi (VALUE)
Vậy ta cĩ cơng thức chuyển đổi như sau:
Độ C = (VALUE*500)/1023
Giá trị độ C được chuyển sang mã BCD và được xuất ra ngồi thơng qua IC chốt 74HC573 và IC giải mã 7447 để hiển thị ra led 7 đoạn.
II. Giải thuật chương trình
II.1. Sơ đồ khối chương trình:
BEGIN
LẤY MẪU NHIỆT ĐỘ
CHUYỂN ĐỔI ADC VÀ CHUYỂN SANG GIÁ TRỊ NHIỆT ĐỘ
HIỂN THỊ
II.2. Chương trình giải thuật:
#include
#include
#device adc=10
#FUSES NOWDT, HS, NOPUT, NOPROTECT, NODEBUG, NOBROWNOUT, NOLVP, NOCPD, NOWRT
#use delay(clock=20000000)
#use rs232(baud=9600,parity=N,xmit=PIN_C6,rcv=PIN_C7,bits=9)
float DO_C;
int16 bien,hang_don_vi,hang_chuc;
int16 led_h,led_l,value;
int8 const a[10]={0,1,2,3,4,5,6,7,8,9};
void TAO_MA_BD();
void XUAT_LED();
void BAO_DONG();
//-----------------------------------------------------------------
void main()
{
trisa = 0xFF;
trisb = 0x01;
trisd = 0x00;
// Khoi tao che do cho bo ADC trong PIC
setup_adc_ports(AN0);
setup_adc(ADC_CLOCK_INTERNAL);
set_adc_channel(0);
delay_us(10);
// Lay mau nhiet do lan dau tien
value=read_adc();
delay_ms(10);
DO_C = (float)(VALUE * 500)/1023;
TAO_MA_BD();
// XUAT_LED();
delay_ms(100);
// Cap nhat nhiet do
while(1)
{
output_b(0x00);
value = read_adc();
delay_us(10);
DO_C = (float)(VALUE * 500)/1023;
output_d(0x00);
TAO_MA_BD();
if( led_h >=4) BAO_DONG();
if( led_h <=1) BAO_DONG();
XUAT_LED();
}
}
//======================================================
//Chuyen dang ma de xuat ra led 7 doan
void TAO_MA_BD()
{
if(DO_C >= 10) hang_chuc = 1;
if(DO_C >= 20) hang_chuc = 2;
if(DO_C >= 30) hang_chuc = 3;
if(DO_C >= 40) hang_chuc = 4;
if(DO_C >= 50) hang_chuc = 5;
if(DO_C >= 60) hang_chuc = 6;
if(DO_C >= 70) hang_chuc = 7;
if(DO_C >= 80) hang_chuc = 8;
if(DO_C >= 90) hang_chuc = 9;
if(DO_C < 10) hang_chuc = 0;
bien = hang_chuc*10 ;
hang_don_vi = (DO_C - bien);
led_h = a[hang_chuc];
led_l = a[hang_don_vi];
}
//======================================================================
// Dung 74hc573 chot du lieu de tiet kiem cong
void XUAT_LED()
{
output_high(pin_d0);
output_c(led_h);
output_low(pin_d0);
output_high(pin_d1);
output_c(led_l);
output_low(pin_d1);
delay_ms(100);
}
// NEU NHIET DO CAO HON HOAC THAP HON NHIET DO QUY DINH SE GOI BAO DONG
VOID BAO_DONG()
{
output_high(pin_b0);
output_high(pin_b0);
}
III. SƠ ĐỒ NGUYÊN LÝ
Các file đính kèm theo tài liệu này:
- ban_in_cuoi_cung_8367.doc