1. Trang chủ
  2. » Luận Văn - Báo Cáo

Dùng c viết giao điện điều khiển nhiệt độ autoturning

26 324 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

Nội dung

Dùng CCS cho PIC để giám sát và điều khiển nhiệt độ lò. Sử dụng phương pháp autoturning, nguồn vào trực tiếp là 220V~, bóng đèn cũng là đèn xoay chiều. Đã thử nghiệm ấp trứng gà và thành công đạt 90%.

Mạch điều khiển nhiệt độ MỤC LỤC LỜI NÓI ĐẦU CHƯƠNG 1: TỔNG QUAN CHUNG 1.1 Giới thiệu LM35 1.2 Giới thiệu họ PIC PIC16F877A 1.2.1 Giới thiệu họ PIC 1.2.2 Giới thiệu PIC16F877A CHƯƠNG 2.NGUYÊN LÝ CÔNG NGHỆ 2.1 Công nghệ lựa chọn thiết bị 2.2 Mô mạch điện 11 CHƯƠNG 3: PHẦN CỨNG MẠCH CHUYỂN ĐIỀU KHIỂN NHIỆT ĐỘ 14 3.1 Sơ đồ mạch 14 3.2 Kết thực nghiệm 15 3.3 Phát triển thiết bị 15 PHỤ LỤC 18 TÀI LIỆU THAM KHẢO 26 Mạch điều khiển nhiệt độ LỜI NÓI ĐẦU Hiện nay, có nhiều yếu tố khách quan xung quanh như: nhiệt độ, độ ẩm, ánh sáng, không khí…mà ta cần phải tìm hiểu điều khiển chúng phục vụ cho mục đích Trong số nhiệt độ yếu tố thiết yếu ảnh hưởng nhiều đến đời sống người Và thực tế có nhiều phương pháp đo lường điều khiển nhiệt độ đưa Trên sở đó, em thực tập dài Thầy Võ Duy Thành hướng dẫn với đề tài “Đo điều khiển lò nhiệt sử dụng cảm biến LM35” Do thời gian có hạn kiến thức hạn chế nên không tránh khỏi sai sót Vì em kính mong nhận lời nhận xét, đánh giá góp ý thầy để em khắc phục phát triển vấn đề tồn Em xin chân thành cảm ơn! Hà Nội, ngày10 tháng 12 năm 2015 Sinh viên thực Đinh Văn Nam Mạch điều khiển nhiệt độ CHƯƠNG 1: TỔNG QUAN CHUNG 1.1 Giới thiệu LM35 Hình 1.1: Mô tả việc truyền nhận tín hiệu chuẩn LM35 cảm biến đo nhiệt độ với tín hiệu dạng analog LM35 cảm biến nhiệt có tính xác cao, đầu có tỷ lệ tuyến tính với nhiệt độ theo thang độ Celsius Đặc điểm LM35: +Điện áp đầu vào từ 4V đến 30V +Độ phân giải điện áp đầu 10mV/oC +Độ xác cao 25oC 0.5oC +Trở kháng đầu thấp cho 1mA tài +Dải nhiệt độ đo LM35 từ -55oC đến 150oC ới mức điện áp khác Xét số mức điện áp sau: -Nhiệt độ -55oC điện áp đầu -550mV - Nhiệt độ 25oC điện áp đầu 250mV Mạch điều khiển nhiệt độ - Nhiệt độ 150oC điện áp đầu 1500mV Tùy theo mắc LM35 để ta đo giải nhiệt độ phù hợp Đối với hệ thống em sử dụng nguồn cấp cho LM35 5VDC nên giải điện áp đo từ 0oC đến 150oC 1.2 Giới thiệu họ PIC PIC16F877A 1.2.1 Giới thiệu họ PIC PIC họ vi điều khiển RISC sản xuất công ty Microchip Technology.Dòng PIC PIC1650 phát triển Microelectronics Division thuộcGeneral_Instrument PIC bắt nguồn từ chữ viết tắt “Programmable IntelligentComputer” (Máy tính khả trình thông minh) sản phẩm hãng General Instrumentsđặt cho dòng sản phẩm họ PIC1650 Lúc này, PIC 1650 dùng để giaotiếp với thiết bị ngoại vi cho máy chủ 16 bit CP1600, vậy, người ta gọi PIC vớitên “Peripheral Interface Controller” (Bộ điều khiển giao tiếp ngoại vi) CP1600 mộtCPU tốt, lại hoạt động xuất nhập, Một số đặc tính Vi điều khiển PIC Hiện có nhiều dòng PIC có nhiều khác biệt phần cứng, chúngta điểm qua vài nét sau : •8/16 bit CPU, xây dựng theo kiến trúc Harvard có sửa đổi •Flash ROM tuỳ chọn từ 256 byte đến 256 Kbyte •Các cổng Xuất/ Nhập (I/ O) (mức logic thường từ 0V đến 5.5V, ứngvới logic logic 1) •8/16 bit Timer •Các chuẩn giao tiếp nối tiếp đồng bộ/ khung đồng USART •Bộ chuyển đổi ADC Analog-to-digital converters, 10/12 bit •Bộ so sánh điện áp (Voltage Comparator) •Các module Capture/ Compare/ PWM •LCD Mạch điều khiển nhiệt độ •MSSP Peripheral dựng cho giao tiếp I2C, SPI •Bộ nhớ nội EPROM – ghi/ xoá lớn tới triệu lần •Module Điều khiển động cơ, đọc encoder •Hỗ trợ giao tiếp USB •Hỗ trợ giao tiếp CAN •Hỗ trợ giao tiếp LIN •Hỗ trợ giao tiếp IrDA •Một số dòng có tích hợp RF (PIC16f639, RFPIC) •DSP tính xử lý tín hiệu số (dsPIC) Đặc điểm thực thi tốc độ caocủa RISC CPU họ vi diều khiển PIC16F87XA : •Chỉ gồm 35 lệnh đơn •Tất lệnh 1chu kỳ ngoại trừ chương trình chu kỳ •Tốc độ hoạt động :+ DC- 20MHz ngõ vào xung clock.+ DC- 200ns chu kỳ lệnh •Độ rộng nhớ chương trình Flash 8K x 14word, nhớ dữliệu (RAM) 368 x 8bytes, nhớ liệu EPROM 256 x 8bytes Những đặc tính ngoại vi Timer0 : 8- bit định thời/ đếm với 8- bit prescaler - Timer1 : 16- bit định thời/ đếm với prescaler, tăng lên suốt chế độSleep qua thạch anh/ xung clock bên ngoài.- Timer2 : 8- bit định thời/đếm với 8- bit, prescaler postscaler - Hai module Capture, Compare, PWM* Capture có độ rộng 16 bit, độ phân giải 12.5ns* Compare có độ rộng 16 bit, độ phân giải 200ns* Độ phân giải lớn PWM 10bit.- Có 13 ngõ I/O điều khiển trực tiếp- Dòng vào dòng lớn :* 25mA dòng vào cho chân* 20mA dòng cho chân Đặc điểm tương tự 10 bit, với kênh chuyển đổi tương tự sang số (A/D).- Brown – out Reset (BOR).- Module so sánh tương tự.* Hai so sánh tương tự.* Module điện áp chuẩn VREF lập trình PIC.- Có thể lập trình ngõ vào đến từ ngõ vào PIC điện áp bên trong.- Những ngõ so sánh sử dụng cho bên Các đặc điểm đặc biệt : Mạch điều khiển nhiệt độ Có thể ghi/ xoá 100.000 lần với kiểu nhớ chương trình Enhanced Flash 1.000.000 ghi/ xoá với kiểu nhớ EPROM.- EPROM lưu trữ liệu 40 năm Có thể tự lập trình lại điều khiển phần mềm.- Mạch lập trình nối tiếp qua chân Nguồn đơn 5V cấp cho mạch lập trình nối tiếp Watchdog Timer (WDT) với dao động RC tích hợp sẵn Chip cho hoạt độngđáng tin cậy Có thể lập trình mờ bảo vệ Tiết kiệm lượng với chế độ Sleep Có thể lựa chọn dao động Mạch dở sai (ICD : In- Circuit Debug) qua chân Công nghệ CMOS Năng lượng thấp, tốc độ cao Flash/ công nghệ EPROM- Việc thiết kế hoàn toàn tĩnh-Khoảng điện áp hoạt động từ 2V đến 5.5V-Tiêu tốn lượng thấp 1.2.2 Giới thiệu PIC16F877A -PIC16F877A thuộc nhóm PIC16F8X nhóm PIC họ PIC16XX họ Vi điều khiển 8-bit, tiêu hao lượngthấp, đáp ứng nhanh, chế tạo theo công nghệ CMOS, chống tĩnh điện tuyệt đối Nhóm baogồm thiết bị sau:PIC16F83,PIC16CR83,PIC16F84,PIC16CR84 Họ PIC16F8X có nhiều tính đặc biệt làm giảm thiểu thiết bị ngoại vi, vậykinh tế cao, có hệ thống bật đáng tin cậy tiêu thụ lượng thấp Ở có sựlựa chọn dao dộng có chân kết nối dao động RC nên có giải pháp tiết kiệmcao Chế độ SLEEP tiết kiệm nguồn đánh thức nguồn reset Và cònnhiều phần khác giới thiệu bên nói rõ phần - PIC16F877A có 40 chân với phân chia cấu trúc sau : +Có port xuất nhập +Có kênh chuyển đổi A/D 10-bit +Có PWM +Có định thời: Timer0, Timer1, Timer2 +Có giao tiếp chuyển tiếp : chuẩn RS232, I2C +Có giao tiếp LCD Mạch điều khiển nhiệt độ SƠ ĐỒ CHÂN VI ĐIỀU KHIỂN PIC16F877A Hình 1.2 Sơ đồ chân PIC16F877A Cụ thể port với chức năng: PORTA: Đầu vào/ra số, ngõ vào tương tự RA2 RA3 cổng vào điện áp tham chiếu RA4: ngõ vào xung clock cho timer, ngõ so sánh RA5: Ngõ vào chọn lựa SPI phụ, ngõ so sánh RE: điều khiển đọc/ghi port nhánh song song PORTC: Đầu vào/ra số,ngoài RC0: Ngõ vào dao động xung timer1, ngõ vào xung clock bên timer1 RC1: Ngõ vào dạo động timer1,ngõ vào/ra capture2,ngõ PWM2 RC2: NGõ vào/ra capture1, ngõ PWM RC3: Ngõ vào xung clock nối tiếp đồng bộ/ngõ chế độ SPI I2C RC4,5: liệu vào /ra SPI RC6: Truyền bất đồng USART, xung đồng USART RC7: Nhận bất đồng USART, liệu đồng USART PORTD: Đầu vào/ra số, liệu port nhánh song song PORTB: Đầu xuất/nhập số, RB0: Ngắt RB3: Chân cho phép lập trình điện áp thấp ICPS RB4,5,6,7: Ngắt portb Mạch điều khiển nhiệt độ Hình 1.3 Sơ đồ bên tròn vi điều khiển Như nói , vi điều khiển PIC có kiến trúc Harvard, CPU truy cập chươngtrình liệu hai bus riêng biệt, nên làm tăng đáng kể băng thông so với kiếntrúc Von Neumann CPU truy cập chương trình liệu bus.Việc tách riêng nhớ chương trình nhớ liệu cho phép số bit từ lệnh có thểkhác với số bit liệu Ở PIC 16F877A, từ lệnh dài 14 bit , từ liệu bit.PIC 16F877A chứa ALU bit ghi làm việc WR (working register).ALU đơn vị tính toán số học logic, thực hiên phép tình số đại số Boole trênthanh ghi làm việc WR ghi liệu ALU thực phép cộng, trừ,dịch bit phép toán logic Mạch điều khiển nhiệt độ CHƯƠNG 2.NGUYÊN LÝ CÔNG NGHỆ 2.1 Công nghệ lựa chọn thiết bị Từ yêu cầu toán đo nhiệt độ điều khiển nhiệt môi trường Ta có sơ đồ khối toán sau: Môi trường LM35 Vi điều khiển Hình 2.1 Sơ đồ khối toán -Do cảm biến LM35 đầu xuất điện áp nên ta lựa chọn cổng vào vi điều khiển input analog Tìm hiểu tri tiết analog PIC16F877A PIC16F877A có cổng portA đầu vào Analog 10bit, chọn cổng AN0 PIC16F877A cổng vào từ LM35 Ở toán e đặt mặc định nguồn cấp cho LM35 5V hệ số theo nhiệt độ LM35 10mV/1oC Nên nhiệt độ đo = điện áp đo được/2.048 -Để vi điều khiển điều khiển nhiệt môi trường ta sử dụng bóng đèn sợi đốt thông qua triac điều khiển góc mở ly opto +Lựa chọn Triac BTA12-600B 12A 600V với: Điện áp tối đa mở 600V, dòng 12A Điện áp tối đá cực gate 1.3V,dòng tối đa cực gate 50mA +Lựa chọn opto cách ly là: MOC3020, Voltage-Isolation = 5300Vrms, Voltage-off state = 400V Ta có sơ đồ khối thiết kế mạch nguyên lý sau: LM35 VDK Opto Triac Đèn Hình 2.2 Sơ đồ khổi thiết kế mạch Mạch điều khiển nhiệt độ Để đặt đặt ta sử dụng nút ấn để cài đặt nhiệt độ đặt Vi điều khiển xuất tín hiệu điều khiển qua opto điểu khiển mở triac để bật đèn Ta có sơ đồ khối công nghệ: Star Y N Đo nhiệt độ (T-sp=1) Y Hiển thị Y N Set nhiệt độ Y Up Down Y Y N T_set>T_sp Đèn sáng (out=o) T_set500){ //500ms Time_Disp=0; 22 Mạch điều khiển nhiệt độ set_adc_channel(0); value = (float)read_adc(); //delay_ms(10); value=value/2.048; //if(0[...]... PIC16F877A c them c c tụ tantium105 với ch c năng chống nhiễu cho vi điều khiển 14 Mạch điều khiển nhiệt độ 3.2 Kết quả th c nghiệm Hình 3.2 Hình ảnh mạch đang chạy Nhận xét: Mạch chạy ổn định, đo đư c giá trị gần đúng với c c thiệt bị đo nhiệt độ chuẩn x c cao Đặt và sự tăng dảm để điều khiển triac đóng mở đúng theo yêu c u bài toán đặt ra Dùng điện thoại đo nhiệt độ phòng là 22oC thì mạch đo đư c. .. Time_Disp=0; LCD_Cmd(0x01); LCD_Char("set up"); LCD_Cmd(0xc0); LCD_Char("T_sp:"); 21 Mạch điều khiển nhiệt độ convert_bcd((int8)Temp_Set); LCD_Cmd(0xCA); LCD_Char(tram); LCD_Char(chuc); LCD_Char(donvi); LCD_Char(" ^C "); } } //Ham gui data qua rs232 //Khung ban tin su dung 5 byte //byte1: 'B' - bao hieu bat dau ban tin //byte2: tram - chu so hang tram //byte3: chuc - chu so hang chuc //byte4: donvi - chu so... Nên c thể tiếp t c bư c thi c ng mạch thật 13 Mạch điều khiển nhiệt độ CHƯƠNG 3: PHẦN C NG MẠCH CHUYỂN ĐIỀU KHIỂN NHIỆT ĐỘ 3.1 Sơ đồ mạch Em sử dụng phần mềm thiết kế mạch là phần mềm altium designer Hình 3.1 Sơ đồ nguyên lý Mạch đư c thiết kế theo từng khối và đư c kết nối với nhau Đảm bảo tính nhất quán và đầy đủ c c chân tín hiệu c ng như dễ quan sát và chỉnh sửa Ở c c chân nguồn c a vi điều khiển. .. c trong mô phỏng Hình 3.3 Khối com kết nối với vi điêu khiển 15 Mạch điều khiển nhiệt độ Giao diện hiển thị nhiệt độ Hình 3.4 Giao diện máy tính Kết quả chạy mô phỏng Hình 3.5 Kết quả mô phỏng 16 Mạch điều khiển nhiệt độ Hình 3.6 Kết quả th c tế Nhận xét: Đã kết nối mạch vi điều khiển với máy tính và hiển thị đư c đồ thị lên máy tính C khả thi để phát triển c c bư c tiếp theo 17 Mạch điều khiển nhiệt. ..Mạch điều khiển nhiệt độ 2.2 Mô phỏng mạch điện Mạch điện đư c mô phỏng với phần mềm proteus, đư c thiết kế theo phương pháp module hóa Đầu tiên là vi điều khiển PIC16F877A với thạch anh ngoài là 20Mhz, với đầu vào từ chân LM35 đư c đưa vào chân RA0, đầu ra điều khiển triac là chân RB3 Hình 2.4 Khối vi điều khiển LM35 đư c mô phỏng trên proteus Hình 2.5 Khối c m biến LM35 11 Mạch điều khiển nhiệt độ. .. nhiệt độ Và LCD để hiển thị nhiệt độ đặt Hình 2.6 Khối LCD hiển thị Khối nút ấn để c i đặt nhiệt độ đặt Hinh 2.7 Khối nút ấn c i đặt nhiệt độ Khối driver triac để bật đèn 12 Mạch điều khiển nhiệt độ Hinh 2.8 Khối driver triac Mạch mô phỏng tổng thể Hình 2.9 Sơ đồ mô phỏng Nhận xét: Mô phỏng đã hiển thị đư c nhiệt độ C i đặt đư c nhiệt độ bằng nút ấn và out ra chân điều khiển triac Vậy đạt yêu c u bài toán... bao chuong trinh con============ void convert_bcd(int8 x); void display(); void welcome(); void update();//dua nhiet do dat out ra ngoai void convert_bcd(int8 x) { tram =x/100; chuc =x/10; chuc = chuc %10; donvi =x%10; 19 Mạch điều khiển nhiệt độ tram = tram +0x30; chuc = chuc + 0x30; donvi = donvi + 0x30; } //==================Run a text on LCD to welcome========== Void welcome(){ int x=0; LCD_Cmd(0x01)//=========Clear... hieu ket thuc ban tin void send_232() { putc('B'); putc(tram); putc(chuc); putc(donvi); putc('D'); } void Display_Temp(void) { if(Mode_Set)return; //Chi cho hien thi cai dat if(++Time_Disp>500){ //500ms Time_Disp=0; 22 Mạch điều khiển nhiệt độ set_adc_channel(0); value = (float)read_adc(); //delay_ms(10); value=value/2.048; //if(0 ... thị nhiệt độ C i đặt nhiệt độ nút ấn out chân điều khiển triac Vậy đạt yêu c u toán đề Nên tiếp t c bư c thi c ng mạch thật 13 Mạch điều khiển nhiệt độ CHƯƠNG 3: PHẦN C NG MẠCH CHUYỂN ĐIỀU KHIỂN... +Độ phân giải điện áp đầu 10mV/oC +Độ x c cao 25oC 0.5oC +Trở kháng đầu thấp cho 1mA tài +Dải nhiệt độ đo LM35 từ -55oC đến 150oC ới m c điện áp kh c Xét số m c điện áp sau: -Nhiệt độ -55oC điện. .. //if(0

Ngày đăng: 03/12/2016, 13:54

TỪ KHÓA LIÊN QUAN

w