Nhiệt kế điện tử điều khiển tự động 2

55 846 0
Nhiệt kế điện tử điều khiển tự động 2

Đ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

Nhiệt kế điện tử điều khiển tự động

mm««nn :: vvii xxöö llýý Linhdt1 1 Lời nói đầu Trong công nghệ điện tử ,Vi Xử Lý là một thành phần quan trọng không thể thiếu,nó mang nhiều tính u việt : có thể thay thế một mạch điện phức tạp bằng một vi mạch nhỏ gọn với chi phí thấp hơn , nhng ứng dụng lại đa dạng và linh hoạt hơn.Khả năng điều khiển thông minh hơn ,tiết kiệm năng lợng hơn ,tốc độ xử lý nhanh hơn,ứng dụng nhiều trong hệ thống nhúng . Để học tập tốt môn học Vi Xử Lý ngoài những kiến thức trên sách vở cần có sự thực hành ứng dụng vào thực tế. Trên cơ sở đó chúng em đã áp dụng những kiến thức có đợc trong quá trình học tập để chế tạo sản phẩm NHIệT Kế ĐIệN Tử Điều khiển tự động dùng vi điều khiển AVR của ATMEL ,có khả năng đo và tự động điều khiển nhiệt độ. áp dụng Vi Xử Lý trong lĩnh vực này đã đơc nghiên cứu và phát triển nhiều với những loại vi điều khiển ,cảm biến và ngôn ngữ lập trình khác nhau ví dụ:dùng cảm biến nhiệt độ LM35 kết hợp với AT89S52và IC biến đổi A/D và hiển thị bằng LED7 thanh đo đợc nhiệt độ từ -55 đến +150C,dùng LM34C và 16F88 thuộc vi điều khiển PIC dùng ngôn ngữ lập trình BASIC hiển thị nhiệt độ bằng LCD, chỉ đo đợc nhiệt độ từ -55 đến +125C. Nói chung những loại cảm biến nhiệt độ họ LM so với họ DS thì độ chính xác không cao và tốc độ truyền tín hiệu chậm 2C - 150C với tần số (20 -1500Hz) nhng giá thành chế tạo rẻ. Còn ở loại cảm biến họ DS độ chính xác rất cao do tín hiệu đợc truyền có độ phân dải lên đến 12bit trong 750ms ở loại cảm biến này có tích hợp ROM 64bit,bộ nhớ Logic, mạch ổn định tín hiệu đầu ra ,chính vì vậy mà nó khắc phục đợc những nhợc điểm của cảm biến họ LM .So với những loại nhiệt kế dùng họ vi điều khiển 8051 và PIC nhiệt kế dùng vi điều khiển ATMEGA16L thuộc họ vi điều khiển AVR có nhiều u điểm hơn,so với vi điều khiển PIC lập trình bằng ngôn ngữ lập trình BASIC thì dùng AVR lập trình bằng C thì phần mềm sẽ ngắn gọn hơn, còn so với 8051 thì tốc độ xử lý tín hiệu nhanh hơn không cần lắp thêm bộ biến đổi A/D do ATMEGA16 đã tích hợp sẵn bộ biến đổi A/D và việc lập trình sẽ đơn giản hơn. Sản phẩm này có thể phát triển đợc một số ứng dụng vào đời sống . Có thể lắp đợc nhiều cảm biến DS18B20 vào Bus-1wire với độ dài lên tới 300m và điều kiểm soát đợc giá trị nhiệt độ của từng cảm biến .Một ứng dụng đơn giản là tự động điều khiển nhiệt độ phòng bảo quản hoá chất bằng cách kết hợp với Transistor để đóng mở Role điều khiển máy điều hoà ,nh vậy sẽ tiết kiệm đợc lợng điện năng tiêu hao vô ích trong lúc nhiệt độ đã đạt mức yêu cầu . Do hạn chế về trình độ và thời gian nên đề tài còn rất nhiều những khuyết điểm , chúng em rất mong đợc sự dạy bảo của các thầy, cô và những ý kiến đóng góp của các bạn,để có những hiểu biết rõ hơn về đề tài này. Hà Nội , ngày 5 tháng 12 năm 2007 Nhóm thực hiện đề tài Linhdt1 2Nội dung : Trang Chơng I : Sơ Đồ Nguyên Lý 3 + I.1 : Phần Cứng 4 + I.2 : Phần Mềm 7 Chơng II : Nguyên Lý Hoạt Động + II.1 : Tổng Quan Họ Vi Điều Khiển AVR 9 + II.2 : Vi Điều Khiển ATMEGA16L 20 + II.3 : Cảm Biến Nhiệt Độ DS18B20 43 + II.4 : Hoạt Động Của Mạch Điện 47 Chơng III : Mạch Nạp 48 Chơng IV : Phần Mềm Thiết Kế Và Lập Trình + IV.1 : Proteus7.1SP2 49 + IV.2 : CodeVisionAVR 53 Linhdt1 3CH¦¥NG I : S¥ §å NGUY£N Lý Linhdt1 4 Sơ đồ nguyên lý trên nguồn cấp cho mạch điện là nguồn AC từ 7 đến 24V + 3 chân cấp nguồn cho Chip ATMEGA16L là những chân 10,11,31 không vẽ trên sơ đồ (chân 10 đợc nối với chân 30, chân 11đợc nôí với chân 31). + điện trở PULLUP có giá trị 4,7K + Tụ C3 có thể thay bằng tụ hoá 10uf + Có thể dùng thạch anh 4MHz thay cho loại 8MHz I.1 : phần cứng Phần cứng đợc sử dụng để lắp mạch gồm : 1. Chip ATMEGA16L + Điện áp hoạt động : từ 2.7 đến 5.5VDC + Sơ đồ chân : - VCC : Cấp nguồn + - GND : Nối đất - AVCC : Là chân cấp điện cho cổng A(Port A ) và bộ biến đổi A/D,PC3,PC0,ADC7,ADC6 Nó đợc nối nội bộ đến VCC ngay cả trong trờng hợp ADC không đợc sử dụng. Nếu ADC Linhdt1 5Không đợc sử dụng , nó phải đợc nối với VCC qua bộ lọc thông thấp.Cả PC6 và PC4 cũng sử dụng đợc điện áp AVCC. - AREF : Là chân tín hiệu tham chiếu Analog ( tơng tự ) nối vào bộ biến đổi A/D. - PORT B : Từ PB7 đến PB0 là cổng I/O 8-bit hai chiều với các điện trở Pull-up bên trong (đợc lựa chọn cho mỗi bit ) . Bộ đệm đầu ra của Port B có đặc tính điều khiển cân đối với cả tín hiệu Source( nguồn ) và Sink (bên trong).Khi là tín hiệu đầu vào , các chân của cổng B sẽ Tiêu thụ dòng nếu các điện trở Pull-Up bên trong đợc kích hoạt. Các chân của Port B là 3 trạng thái khi có tín hiệu Reset đợc kích hoạt, thậm chí đồng hồ không chạy.Tuỳ thuộc việc đặt các cầu chì lựa chọn xung nhịp, chân PB6 có thể đợc sử dụng nh là bộ khuếch đại dao dộng đảo. Tuỳ thuộc việc đặt cầu chì lựa chọn xung nhịp ,chân PB7 có thể đợc sử dụng nh là đầu ra từ bộ khuếch đại dao động đảo. Nếu nh bộ dao động RC định cỡ bên trong đợc sử dụng nh là nguồn xung nhịp của chip bên trong thì PB7-PB6 đợc sử dụng nh là đầu vào TOSC2 và TOSC1 cho Timer/Counter2 nếu nh Bit AS2 trong thanh ghi ASSR đợc đặt. - PORT C : Port C là cổng I/O 7-bit hai chiều với các điện trở Pull-up bên trong (dợc lựa chọn cho mỗi bit) . Bộ nhớ đệm đầu ra của Port C có tính điều khiển cân đối với cả tín hiệu Source và sink .Khi là các tín hiệu đầu vào , các chân của Port C là 3 trạng thái khi có tín hiệu reset đợc kích hoạt ,thậm chí đồng hồ không chạy. Đối voi chân PC6 Nếu cầu chì RSTDISBL đợc lập trình , PC6 đợc sử dụng nh là một chân đầu vào Reset . Khi tín hiệu ở mức thấp dài hơn độ dáI của xung nhỏ nhất sẽ gây ra Reset ngay cả khi các xung nhịp không còn. - PORT D : Port D là cổng I/O 8-bit hai chiềuvới các điện trở Pull-Up bên trong (đợc lựa chọn cho mỗi bit). Bộ đệm đầu ra của Port D có đặc tính giống Port C. - PORT A : Đầu ra của bộ biến đổi A/D - XTAL1 & XTAL2 : Chân vào ra của thạch anh tạo dao động 2. LCD 2 dòng 16 ký tự +Điện áp hoạt động từ 2.7 5VDC +Tần số hiển thị 2MHZ ở mức điện áp 5V 3. Cảm Biến Nhiệt Độ DS18B20 Linhdt1 6 + Điện áp hoạt động từ 3.0 5VDC - Chân 1 : GND - Chân 2 : DQ (truyền tín hiệu) - Chân 3 : Nguồn Vcc + Có thể đo nhiệt độ từ -55 đến +125C (-67F đến +257F) GND DQ VCC - Khi lắp vào mạch phải nối chân 2 và chân 3 với một điện trở 4K7 4. Những linh kiện khác 2 tụ 2200uf 16V 7805 - Để lọc nguồn 1 IC ổn áp 5V - Tạo điện áp 5V cấp cho mạch 33 1 tụ 47uf 16V 104 - Làm mạch reset 2 tụ gốm 33pf - ổn định làm việc cho thạch anh 20V 0.5A 1 tụ gốm 104pf - bảo vệ mạch tránh những thành phần tần số cao 1 điện trở 4,7K và 1 điện trở 10K - Nối chân 2 va chân 3 của DS18B20 va nối với mạch 8.000 Rese Biến áp 20V- 0.5A Thach anh 8.000MHz Cầu Diod Linhdt1 7I.2 : PHầN MềM Phần mềm viết bằng ngôn ngữ C /* Nhiet ke dien tu v1.0 by Linh */ #asm .equ __w1_port=0x1b //Đặt cổng nhiệt độ .equ __w1_bit=6 //Đặt bit nối cảm biến #endasm #asm .equ __lcd_port=0x15 //Đặt cổng LCD #endasm #include <lcd.h> // Khởi tạo LCD #include <ds18b20.h> #include <delay.h> #include <stdio.h> #include <mega16.h> char lcd_buffer[33]; /* Số lợng tối đa chip DS18B20 nối vào hệ thống */ #define MAX_DEVICES 8 /* Vùng mã DS18B20 ROM */ unsigned char rom_code[MAX_DEVICES][9]; main() { unsigned char i,j,t1,devices; PORTD=0x00; lcd_init(16); lcd_putsf("Truong CDCN \n Thanh Do"); delay_ms(1000);thời gian hiện chữ trên LCD lcd_clear(); lcd_putsf("Lop DTVT1-K3"); delay_ms(1000); lcd_clear(); lcd_putsf("Desined by \n LINH"); delay_ms(1000); lcd_clear(); lcd_putsf("GVHD:NGUYEN DINH\nTHUAN"); delay_ms(1000); lcd_clear(); /* Kiểm tra số lợng DS18B20 nối vào hệ thống */ devices=w1_search(0xf0,rom_code); Linhdt1 8sprintf(lcd_buffer,"So luong: \n %u DS18B20",devices); lcd_puts(lcd_buffer); delay_ms(2000); /* Hiển thị mã ROM */ if (devices) { for (i=0;i<devices;i++) { sprintf(lcd_buffer,"Ma ROM\nchip #%u la:",i+1);Hiển thị mã ROM chip lcd_clear(); Xoá ký tự lcd_puts(lcd_buffer); delay_ms(1000); lcd_clear(); for (j=0;j<8;j++) { sprintf(lcd_buffer,"%02X ",rom_code[i][j]); lcd_puts(lcd_buffer); if (j==3) lcd_gotoxy(0,1); }; delay_ms(1000); }; } else while (1); /* Dừng lại khi có lỗi */ /* Đặt chế độ làm việc ở độ chính xác 12 bit */ for (i=0;i<devices;) if (!ds18b20_init(&rom_code[i++][0],20,30,DS18B20_12BIT_RES)) { sprintf(lcd_buffer,"Thiet bi\nloi #%u",i); lcd_clear(); lcd_puts(lcd_buffer); while (1); /* Dừng lại khi có lỗi */ }; /* Đọc nhiệt độ và kiểm tra điều kiện */ while (1) { j=1; for (i=0;i<devices;i++) { Linhdt1 9 sprintf(lcd_buffer,"t%u=%+.0f\xdfC",j++,ds18b20_temperature(&rom_code[i][0])); lcd_clear(); lcd_puts(lcd_buffer); t1 = ds18b20_temperature(0); if (t1<35||t1>13) { PORTD=0x00; // Tắt thiết bị làm nóng và làm lạnh trong điều kiện khác } if (t1 >= 35) ; Đặt điều kiện làm lạnh { PORTD=0x01; //Bật thiết bị làm lạnh } if (t1 <= 13) ; Đặt điều kiện làm nóng { PORTD=0x02; //Bật thiết bị làm nóng } delay_ms(500); Thời gian khởi động }; }; } CHƯƠNG II : NGUYÊN Lý HOạT ĐộNG II.1 : Tổng Quan Họ Vi Điều Khiển AVR Vi iu khin AVR (Atmel Norway design) thuc h vi iu khin Atmel, nú l h Vi iu khin mi trờn th trng cng nh i vi ngi s dng. õy l h Vi iu Khin c ch to theo kin trỳc RISC (Reduced Intruction Set Computer) cú cu trỳc khỏ phc tp. Ngoi cỏc tớnh nng nh cỏc h VK khỏc, nú cũn tớch hp nhiu tớnh nng mi rt tin li cho ngi thit k v lp trỡnh.S ra i ca AVR bt ngun t yờu cu thc t l hu ht khi cn lp trỡnh cho vi iu khin, chỳng ta thng dựng nhng ngụn ng bc cao HLL (Hight Level Language) lp trỡnh ngay c vi loi chip x lớ 8 bit trong ú ngụn ng C l ngụn ng ph bin nht. Tuy nhiờn khi biờn dch thỡ kớch thc on mó s tng nhiu so vi dựng ngụn ng Assembly. Hóng Atmel nhn thy rng cn phi phỏt trin mt cu trỳc c bit cho ngụn ng C gim thiu s chờnh lch kớch thc mó ó núi trờn. V kt qu l h vi iu khin AVR ra i vi vic lm gim kớch thc on mó khi biờn dch v thờm vo ú l thc hin lnh ỳng n chu k mỏy vi 32 thanh ghi tớch ly v t tc nhanh hn cỏc h vi iu khin khỏc t 4 n 12 ln. Vỡ th nghiờn cu AVR l mt ti khỏ lý thỳ v giỳp cho học sinh, sinh viờn bit thờm mt h vi iu khin vo loi mnh hin nay. [...]... ny l thi gian khi ng li t ch ng S tr v t mt thng trỡnh iu khin ngt mt 4 chu k xung nhp Trong thi gian 4 chu k ny, PC (2 bytes) c ly ra t ngn xp, SP c tng lờn 2, v bit I trong SREG c t II .2 : Đặc Điểm Của ATMEGA16L + Sơ đồ nguyên lý : 20 Linhdt1 21 Linhdt1 Các đặc Tính Của Vi Điều Khiển ATMEGA16L - Hiu nng cao, tiờu th nng lng ớt - Kin trỳc RISC - Reduce Instruction Set Computer (Có nghĩa là máy tính... gim nng lng tiờu th, ch ,đóng băng trạng thái - I/O v cỏc loi - 32 ng I/O kh trỡnh - in ỏp hot ng 2. 7 5.5V - Nhit hot ng: -40oC-85oC + Cỏc tc - 0-8 MHz khi in ỏp 2. 7 5.5V, 0 - 16MHz khi in ỏp 4.5 5V - Tiờu th nng lng ti 1 MHz, 3V, 25 oC i vi ATmega16L - Hot ng tớch cc: 1.1mA - Chế độ nghỉ ở 0.35mA - Ch nng lng thp: . để chế tạo sản phẩm NHIệT Kế ĐIệN Tử Điều khiển tự động dùng vi điều khiển AVR của ATMEL ,có khả năng đo và tự động điều khiển nhiệt độ. áp dụng Vi. loại nhiệt kế dùng họ vi điều khiển 8051 và PIC nhiệt kế dùng vi điều khiển ATMEGA16L thuộc họ vi điều khiển AVR có nhiều u điểm hơn,so với vi điều khiển

Ngày đăng: 16/11/2012, 09:16

Hình ảnh liên quan

thỏi. Tất cả cỏc ngắt cú vector ngắt riờng biệt trong bảng vector ngắt. Cỏc ngắt này cú mức độ ưu tiờn theo vị trớ của vector ngắt tương ứng - Nhiệt kế điện tử điều khiển tự động 2

th.

ỏi. Tất cả cỏc ngắt cú vector ngắt riờng biệt trong bảng vector ngắt. Cỏc ngắt này cú mức độ ưu tiờn theo vị trớ của vector ngắt tương ứng Xem tại trang 13 của tài liệu.
Bảng hằng số cú thể được đặt trong khụng gian bộ nhớ chương trỡnh. Bản đồ bộ nhớ chương trỡnh như hỡnh vẽ  - Nhiệt kế điện tử điều khiển tự động 2

Bảng h.

ằng số cú thể được đặt trong khụng gian bộ nhớ chương trỡnh. Bản đồ bộ nhớ chương trỡnh như hỡnh vẽ Xem tại trang 25 của tài liệu.
Bảng 1.2 Cỏc nguồn tạo xung nhịp và cỏch lựa chọn Nguồn xung nhịp mặc định    - Nhiệt kế điện tử điều khiển tự động 2

Bảng 1.2.

Cỏc nguồn tạo xung nhịp và cỏch lựa chọn Nguồn xung nhịp mặc định Xem tại trang 31 của tài liệu.
Bảng 1.3 Lựa chọn chế độn gủ - Nhiệt kế điện tử điều khiển tự động 2

Bảng 1.3.

Lựa chọn chế độn gủ Xem tại trang 32 của tài liệu.
Bảng vector ngắt – hình 4 - Nhiệt kế điện tử điều khiển tự động 2

Bảng vector.

ngắt – hình 4 Xem tại trang 36 của tài liệu.
Địa chỉ vector ngắt và Reset – hình 3 - Nhiệt kế điện tử điều khiển tự động 2

a.

chỉ vector ngắt và Reset – hình 3 Xem tại trang 36 của tài liệu.
wire bus) giống hình d−ới đõy: - Nhiệt kế điện tử điều khiển tự động 2

wire.

bus) giống hình d−ới đõy: Xem tại trang 45 của tài liệu.

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan