Điều khiển nhiệt độ lò nhiệt bằng phương pháp PID

39 164 1
Điều khiển nhiệt độ lò nhiệt bằng phương pháp PID

Đ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

ĐIỀU KHIỂN NHIỆT LÒDỤC NHIỆT BẰNG PHƯƠNG PHÁP PID BỘĐỘ GIÁO VÀ ĐÀO TẠO ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP HỒ CHÍ MINH KHOA: ĐIỆN- ĐIỆN TỬ ĐỒ ÁN MƠN HỌC Đề tài : Điều khiển nhiệt độ lò nhiệt phương pháp PID GVHD: Ts Ngô Văn Thuyên Tp.Hồ Chí Minh Tháng 01 năm 2010 PHATTRIENCONGNGHE.COM Trang ĐIỀU KHIỂN NHIỆT ĐỘ LÒ NHIỆT BẰNG PHƯƠNG PHÁP PID NHẬN XÉT CỦA GIẢNG VIÊN HƯỚNG DẪN ……………………………………………………………………………… ……………………………………………………………………………… ……………………………………………………………………………… ……………………………………………………………………………… ……………………………………………………………………………… ……………………………………………………………………………… ……………………………………………………………………………… ……………………………………………………………………………… ……………………………………………………………………………… ……………………………………………………………………………… ……………………………………………………………………………… ……………………………………………………………………………… ……………………………………………………………………………… ……………………………………………………………………………… ……………………………………………………………………………… ……………………………………………………………………………… ……………………………………………………………………………… ……………………………………………………………………………… ……………………………………………………………………………… ……………………………………………………………………………… ……………………………………………………………………………… ……………………………………………………………………………… ……………………………………………………………………………… ……………………………………………………………………………… ……………………………………………………………………………… …………………………………………………………………………… PHATTRIENCONGNGHE.COM Trang ĐIỀU KHIỂN NHIỆT ĐỘ LÒ NHIỆT BẰNG PHƯƠNG PHÁP PID Mục Lục Trang A Giới thiệu chung B 1.Điều khiển nhiệt độ Phương pháp điều khiển PID Nội dung I.Vi điều khiển PIC 16F877A 1.Đặc tính bật vi điều khiển C 2.Khả vi điều khiển Các đặt tính bật thiết bị ngoại vi chip 4.Sơ đồ chức chân Pic 16F877A 5.Sơ đồ khối vi điều khiển Pic 16F877A Các ghi có chức đặc biệt 7.Xử lý ADC 13 II.Cảm biến nhiệt độ LM35 15 III.LCD 16x2 16 IV.Phương pháp điều khiển PID 18 V Giao tiếp máy tính vi điều khiển 31 VI.Sơ đồ kết nối phần cứng 34 VII.Lưu đồ giải thuật 35 Kết luận Phụ lục 1.Chương trình C PHATTRIENCONGNGHE.COM Trang ĐIỀU KHIỂN NHIỆT ĐỘ LÒ NHIỆT BẰNG PHƯƠNG PHÁP PID A.GIỚI THIỆU CHUNG 1.Điều khiển nhiệt độ Vấn đề điều khiển giám sát nhiệt độ sử dụng nhiều lĩnh vực sản xuất khác như: điều khiển lò ấp trứng gà, vịt bà nông dân hay điều khiển giám sát nhiệt độ lò hơi….Điều quan trọng nhiệt độ phải ổn định xác tương đối.Sử dụng phương pháp điều khiển PID đảm bảo tiêu chí kỹ thuật kinh tế nhà sản xuất yêu cầu 2.Phương pháp PID Ngày nay, với phát triển vượt bậc khoa học công nghệ, phương pháp điều khiển thông thường không đủ khả đáp ứng yêu cầu ngày khắt khe ứng dụng Người ta bắt đầu áp dụng nhiều giải thuật điều khiển khác giải thuật PID, Fuzzy logic (điều khiển mờ), mạng nơ ron… thu kết khả quan.Thuật toán PID áp dụng rộng rãi hầu hết hệ thống điều khiển tự động từ cơ, nhiệt, lưu chất đến điện PID kết hợp thuật tốn tỉ lệ, tích phân, vi phân; điều khiển khơng có sai lệch, khâu I bù giảm dao động để loại bỏ sai số dịch chuyển, giảm thời gian trễ nhờ khâu D B.NỘI DUNG : I.Vi điều khiển PIC 16F877A 1.Đặc tính bật vi điều khiển Sử dụng công nghệ tích hợp cao RISC CPU Người sử dụng lập trình với 35 câu lệnh đơn giãn Tất câu lệnh thực chu kỳ ngoại trừ số lệnh rẽ nhánh thực chu kỳ lệnh Tốc độ hoạt động là: -Xung đồng hồ vào DC 20MHz -Chu 200ns Bộ nhớ chương trình flash 8Kx 14words Bộ nhớ Ram 368x8bytes Bộ nhớ EFPROM 256x8 bytes PHATTRIENCONGNGHE.COM Trang ĐIỀU KHIỂN NHIỆT ĐỘ LÒ NHIỆT BẰNG PHƯƠNG PHÁP PID 2.Khả vi điều khiển Khả ngắt: lên tới 15 nguồn ngắt ngắt Ngăn nhớ Stack đọc phân chia làm mức Truy cập nhớ địa trực tiếp giám tiếp Nguồn khởi động lại (POR) Bộ tạo xung thời gian(PWRT) tạo dao động (OST) Bộ đếm xung thời gian(WDT) với nguồn dao động chip nguồn dao động (RC) hoạt động đáng tin cậy Có mạch chương trình bảo vệ Phương thức cất giữ SLEEP Có lưa chọn dao động cơng nghệ CMOS FLASH/EFPROM nguồn mứa thấp , tốc độ cao Thiết kế hoàn tồn tĩnh Mạch chương trình nối tiếp có hai chân Xử lý đọc/ghi tới nhớ chương trình Dải điện hoạt động rộng 2V đến 5.5V Nguồn sử dụng 2.5mA Công suất tiêu thụ: 255,sau đếm đến 255 tự reset cho đếm lại Thời điểm đếm từ 255 0, bit TOIF ghi INTCON set lên Nếu ngắt xảy trỏ chương trình nhảy đến chương trình phục vụ ngắt Bên cạnh việc nhận xung nội,giá trị Timer tăng lên nhờ việc nhận xung từ bên qua chân RA4/TOCK1,khi Timer hoạt động đếm - Bit TMR0IE bit điều khiển ngắt TIMER - Muốn cho TIMER hoạt động chế độ timer ta Clear bit TOCS - Muốn cho TIMER hoạt động chế độ counter ta set bit TOCS Sơ đồ khối nguyên lý hoạt động TIMER1 PHATTRIENCONGNGHE.COM Trang 10 ĐIỀU KHIỂN NHIỆT ĐỘ LÒ NHIỆT BẰNG PHƯƠNG PHÁP PID Đáp ứng điều khiển tích phân tỉ lệ PI Bộ điều khiển tỉ lệ tích phân có ưu điểm triệt tiêu sai lệch nhờ thêm điều khiển tích phân vào điều khiển tỉ lệ Tuy nhiên, việc thêm khâu tích phân vào có nhược điểm làm gia tăng khuynh hướng dao động biến điều khiển Do đó, cần phải giảm hệ số tỉ lệ đi, điều làm hệ thống đáp ứng chậm so với ban đầu Nếu q trình có độ trễ lớn, tín hiệu sai lệch nhận không phản ánh độ sai lệch thật Nguyên nhân độ trễ làm cho đáp ứng hệ thống khơng với sai lệch tại, nghĩa hệ làm việc tín hiệu cũ Phương trình miền thời gian: y(t ) = K e(t ) + K ∫0t e(t ).dt P I Hàm truyền: 1+T s K N = K (1+ ) G ( s) = K + I = K P s P T s P sT N N o Bộ điều khiển vi phân tỉ lệ PD Bộ điều khiển vi phân thường kết hợp với điều khiển tỉ lệ nhằm làm giảm khuynh hướng dao động cho phép nâng cao độ lợi Trong đó, PHATTRIENCONGNGHE.COM Trang 25 ĐIỀU KHIỂN NHIỆT ĐỘ LÒ NHIỆT BẰNG PHƯƠNG PHÁP PID điều khiển tỉ lệ thay đổi đầu tỉ lệ với độ lớn sai lệch, điều khiển vi phân thay đổi đầu tỉ lệ với tốc độ biến đổi sai lệch, tức điều khiển vi phân tính trước giá trị tương lai sai lệch thay đổi đầu tương ứng với tính tốn Chính điều giúp điều khiển vi phân tiện dụng q trình điều khiển có tải thay đổi bất ngờ Bộ PD lý tưởng cấu trúc ghép song song cấu tỉ lệ cấu vi phân Tín hiệu điều khiển PD tổng tín hiệu điều khiển riêng lẻ Phương trình theo miền thời gian mô tả bên de(t )  de(t )  = K e(t ) +T u(t ) = u + u = K e(t ) + K V dt  P D P D dt P  Hàm truyền: G(s) = K (1+ sT ) P V o Bộ điều khiển vi tích phân tỉ lệ PID Bộ điều khiển vi tích phân tỉ lệ PID bao gồm ba điều khiển vi phân, tích phân tỉ lệ Nhờ đó, điều khiển PID kết hợp tất ưu điểm ba điều khiển: tỉ lệ giúp sai lệch bé, tích phân loại bỏ sai lệch tĩnh, vi phân giảm khuynh hướng dao động Bộ PID lý tưởng cấu trúc ghép song song ba điều khiển tích phân, vi phân tỉ lệ Phương trình theo miền thời gian PID lý tưởng trình bày bên de(t ) u(t ) = K e(t ) + K ∫ e(t )dt + K P I D dt Hay: K K de(t )   u(t ) = K e(t ) + I ∫ e(t )dt + D  P K K dt  P P   PHATTRIENCONGNGHE.COM Trang 26 ĐIỀU KHIỂN NHIỆT ĐỘ LÒ NHIỆT BẰNG PHƯƠNG PHÁP PID Trong đó: KP hệ số khuếch đại PID KI tốc độ tích phân, hay hệ số tích phân (s-1) KD hệ số vi phân, hay số thời gian vi phân K I = K T P N K K D =T V P với TN gọi thời gian hiệu chỉnh gọi thời gian tác động sớm Hàm truyền: G (s) = K   + T s + T T s N N V 1 + + T s  = K P  T s V  P T s N N   hoặc: G (s) = K U (s) =K + I +K s P D E (s) s Ưu điểm điều khiển PID: • Sai lệch e(t) lớn, tín hiệu điều chỉnh u(t) lớn nhờ vai trò khuếch đại KP • Sai lệch e(t) chưa 0, điều khiển PID tạo tín hiệu điều chỉnh nhờ thành phần tích phân KI • Sự thay đổi sai lệch lớn, phản ứng thích hợp u(t) nhanh nhờ thành phần PD Bộ điều khiển PID ứng dụng nhiều hệ thống tự động đòi hỏi tính ổn định, độ xác tốc độ đáp ứng mà điều khiển thông thường thực như: ổn định tốc độ động vị trí, hệ thống lò nhiệt, điều khiển mức, lưu lượng, công nghệ robot… PHATTRIENCONGNGHE.COM Trang 27 ĐIỀU KHIỂN NHIỆT ĐỘ LÒ NHIỆT BẰNG PHƯƠNG PHÁP PID 2.Thuật tốn PID số Có nhiều kiểu điều khiển khác áp dụng cho hệ rời rạc Cách điều khiển thường dùng công nghiệp hiệu chỉnh nối tiếp với PID số Thiết kế điều khiển PID số xác định hàm truyền với thông số tối ưu PID số để hệ thống thoả mãn yêu cầu độ ổn định, thời gian độ, sai số xác lập Từ thuật tốn ta xây dựng phương trình sai phân viết hàm truyền thể quan hệ ngõ vào ngõ Xuất phát từ mơ tả tốn học hệ liên tục: u (t ) = u P (t ) + u I (t ) + u D (t ) T = K P e(t ) + K I ∫ e(t )dt + K D de dt Khi chuyển sang mơ hình rời rạc u(t) thay uK=u(k) u k = u kP + u kI + u kD a Khâu tỉ lệ u P (t ) = K P e(t ) thay bằng: Bộ điều khiển tỉ lệ sinh hành động điều khiển tỉ lệ với sai lệch u P k = K P ek Khi tăng Kp cho phép giảm sai lệch, giảm thời gian tăng trưởng độ vọt lố tăng, tăng tần số dao động thời gian độ PHATTRIENCONGNGHE.COM Trang 28 ĐIỀU KHIỂN NHIỆT ĐỘ LÒ NHIỆT BẰNG PHƯƠNG PHÁP PID T b Khâu tích phân u I (t ) = K I e(t )dt thay ∫ o : u =u I k I k −1 ekI + ekI −1 + KI T Bộ điều khiển tích phân sinh hành động điều khiển liên tục tăng tín hiệu sai lệch Khi tăng Ki cho phép giảm nhanh thời gian tăng trưởng, hệ thống đáp ứng nhanh, nhiên độ vọt lố tăng dễ dẫn đến dao động hệ thống Sự tồn thành phần Ki cho phép loại bỏ hẳn sai số C Khâu vi phân u D (t ) = K D u kD = K D de(t ) thay sai phân lùi dt e k − e k −1 T Bộ điều khiển vi phân sinh hành động điều khiển tỉ lệ với tốc độ biến đổi tín hiệu sai lệch Mặc dù khâu vi phân không ảnh hưởng đến sai số tăng Kd giảm độ vọt lố thời gian độ Ảnh hưởng tăng thông số Ki,Kp,Kd đến đáp ứng ngõ tổng kết bảng sau: PHATTRIENCONGNGHE.COM Trang 29 ĐIỀU KHIỂN NHIỆT ĐỘ LÒ NHIỆT BẰNG PHƯƠNG PHÁP PID Đáp ứng hệ Rise time Over shoot Setting time Steady-state thống error Kp Giảm Tăng Ít thay đổi Giảm Ki Giảm Tăng Tăng Triệt tiêu Kd Ít thay đổi Tăng Giảm Ít thay đổi Các khâu P,I,D hiệu chỉnh trực tiếp đồng thời sai số hệ thống điều khiển kín Ngồi hiệu chỉnh PID đường tín hiệu phản hồi PHATTRIENCONGNGHE.COM Trang 30 ĐIỀU KHIỂN NHIỆT ĐỘ LÒ NHIỆT BẰNG PHƯƠNG PHÁP PID V.Giao tiếp máy tính vi điều khiển 1.Chuẩn truyền thông nối tiếp RS 232 RS-232 chuẩn truyền thông sử dụng phổ biến bên cạnh hai chuẩn truyền thông khác RS-442 RS-485 Lúc đầu, RS-232 xây dựng chủ yếu phục vụ ghép nối điểm – điểm hai thiết bị đầu cuối (DTE – Data Terminal Equipment), chẳng hạn hai máy tính, máy tính máy in, máy tính modem… ĐƯỜNG RS-232 DTE MODEM (DCE) MODEM (DCE) DTE VIỄN THÔNG Đường truyền RS 232 Ngày nay, máy tính cá nhân có một vài cổng nối chuẩn RS-232 (cổng COM), sử dụng để kết nối với thiết bị ngoại vi máy tính khác Nhiều thiết bị cơng nghiệp tích hợp cổng RS-232 phục vụ cho cơng việc lập trình tham số hóa 2.Cấu tạo cổng RS-232 (cổng COM) Cổng RS-232 có ba loại giắc cắm khác nhau: dạng chân DB – 9, dạng 25 chân DB – 25, dạng 26 chân ALT – A Trong đó, hai dạng DB – DB – 25 sử dụng phổ biến Trong đề án này, loại DB – sử dụng phổ biến hỗ trợ cho hầu hết máy tính ngày Sơ đồ chân ý nghĩa chân trình bày bên • TxD (Transmit Data): đường gửi liệu • RxD (Receive Data): đường nhận liệu PHATTRIENCONGNGHE.COM Trang 31 ĐIỀU KHIỂN NHIỆT ĐỘ LÒ NHIỆT BẰNG PHƯƠNG PHÁP PID • RTS (Request To Send): Yêu cầu gửi; truyền đặt đường lên mức hoạt động sẵn sàng truyền liệu • CTS (Clear To Send): Xố để gửi; nhận đặt đường lên mức hoạt động để thơng báo cho truyền sẵn sàng nhận liệu (a) Sơ đồ giắc cắm (b) Sơ đồ chiều tín hiệu DCD RxD DSR RTS CTS RI TxD DCD RxD DTR TxD GND DSR DTR RTS GND CTS DSR RTS CTS RI Data Set Ready Request To Send Clear To Send Ring Indicator DCD RxD TxD DTR Ready Data Carrier Detect Receive Data Transmit Data Data Terminal Cấu tạo cổng COM • DSR (Data Set Ready): Dữ liệu sẵn sàng; tính hoạt động giống với CTS kích hoạt truyền sẵn sàng nhận liệu • SG (Signal Ground): Đất tín hiệu • DCD (Data Carrier Detect): Phát tín hiệu mang liệu • DTR (Data Terminal Ready): Đầu cuối liệu sẵn sàng; tính hoạt động giống với RTS kích hoạt nhận muốn truyền liệu 3.Chế độ làm việc Chế độ làm việc hệ thống RS-232 hai chiều toàn phần (full – duplex), tức hai thiết bị tham gia thu phát tín hiệu lúc Như vậy, việc truyền PHATTRIENCONGNGHE.COM Trang 32 ĐIỀU KHIỂN NHIỆT ĐỘ LỊ NHIỆT BẰNG PHƯƠNG PHÁP PID thơng cần tối thiểu dây dẫn; đó, hai dây tín hiệu nối chéo đầu thu phát hai trạm dây đất, minh họa hình bên Với cấu hình tối thiểu này, việc đảm bảo độ an tồn(chính xác) truyền dẫn tín hiệu phụ thuộc trách nhiệm phần mềm TxD RxD RTS CTS DTR TxD RxD RTS CTS DTR DSR GND DSR GND Transmit Data Receive Data Request To Send Clear To Send Data Terminal Ready Data Set Ready Ground a) CÊu h×nh ghÐp nèi tèi thiÓu TxD RxD RTS CTS DTR TxD RxD RTS CTS DTR DSR GND DSR GND b) ChÕ ®é b¾t tay Cấu hình ghép nối theo chuẩn RS 232 Chương trình truyền nhận tín hiệu viết dựa phần mềm VB Máy tính thu nhận liệu (giá trị lực theo thời gian) người dùng nhập vào, truyền xuống cho vi điều khiển PIC qua chân TxD Sau đó, liệu nhận từ chân RxD xử lý hiển thị lên hình đồ họa để so sánh, cho thấy độ đáp ứng hệ thống PHATTRIENCONGNGHE.COM Trang 33 ĐIỀU KHIỂN NHIỆT ĐỘ LÒ NHIỆT BẰNG PHƯƠNG PHÁP PID VI.Sơ đồ kết nối phần cứng 1.Mạch điều khiển Mạch điều khiển bao gồm : Bộ dao động thạch anh nối vào chân 13,14 vi điều khiển Cảm biến LM35 với đầu nối với chân RA0 Mạch động lực nối với chân CCP1 LCD 2.Mạch động lực Mạch động lực nối với chân ccp1 vi điều khiển Hai transitor Q1 va Q2 dùng để kích dẫn cho opt ovà tải.Tải đèn sợi đốt để sinh nhiệt.Opto dung để cách ly điện áp mạch động lực mạch điều khiển để mạch không bị nhiễu PHATTRIENCONGNGHE.COM Trang 34 ĐIỀU KHIỂN NHIỆT ĐỘ LÒ NHIỆT BẰNG PHƯƠNG PHÁP PID 3.Module UART Việc truyền nhận liệu với máy tính thực thơng qua cổng COM IC MAX232 cho phép chuyển đổi qua lại hai chuẩn TTL RS232 khác mức điện áp quy định mức logic.RS232 [0]: +3V >> +12V [1]: -12V >> -3V TTL [0]: 0V [1]: 5V VII.Lưu đồ giải thuật Lưu đồ chương trinh: PHATTRIENCONGNGHE.COM Trang 35 Lưu đồ tính tốn P,I,D: PHATTRIENCONGNGHE.COM Trang 36 C.KẾT LUẬN Về đồ án đưa phương pháp điều khiển PID.Tuy nhiên nhiều hạn chế Nhóm cố gắng hồn thiện đưa vào ứng dụng thực tế đời sống sản xuất PHỤ LỤC Chương trình CCS cho vi điều khiển PIC #define #include "16F877A.h" #device *=16 adc=8 #use delay(clock=20000000) #FUSES NOWDT, HS, NOPUT, NOPROTECT, NODEBUG, NOBROWNOUT, NOLVP, NOCPD, NOWRT #use rs232(baud=9600,parity=N,xmit=PIN_C6,rcv=PIN_C7) #include int8 read1,read2,m,thuc,dat_pc,dat=40,kp=100,kd=10,ki=2,error,pre_error; int16 P,I,D,sum,duty; #INT_RDA void serial_isr() {dat_pc=getc(); } void send_to_pc(int8 giatri) { printf("%2u\r",giatri); } void main () { set_tris_b(0); set_tris_a(0xFF); set_tris_d(0x00); set_tris_c(0x00); set_tris_b(0x00); // Khoi tao cho ngat ngoai enable_interrupts (INT_RDA); // ext_int_edge(H_TO_L); enable_interrupts (GLOBAL); //Khoi tao ADC setup_adc_ports(AN0_AN1_AN3); setup_adc(ADC_CLOCK_INTERNAL); delay_ms(50); // Khoi tao PWM setup_ccp1(ccp_pwm); PHATTRIENCONGNGHE.COM Trang 37 lcd_init(); Printf(LCD_putc,"\LOP 06118"); delay_ms(200); Printf(LCD_putc,"\fDO AN KI THUAT"); delay_ms(200); while(TRUE) { // m=(input_b()&0x01); // if(m=0x01)//Nhan cong tac Run // { set_ADC_channel(1);//Doc adc tu bien tro(nhiet dat) // delay_ms(10); // read1=read_adc(); // dat=read1*0.1960784314; set_ADC_channel(0);//Doc ADC tu LM35 delay_ms(10); read2=read_adc(); thuc =read2*1.960784314; //Chuong trinh PID so error = dat-thuc; // tinh sai so P = KP*error; // tinh phan ti le I = I+KI*(pre_error+error)/4; // thoi gian lay mau la 0.5s D = KD*(error-pre_error)*2; pre_error= error; // luu lai gia tri sai so truoc sum = P+I+D; // tin hieu tong qua khau PID duty = sum; // cap nhat gia PID vao bo phat PWM if (duty>1023) duty=1023; // gia tri lon nhat cua ghi PWM // if (error==0) // I=255; // tri nhiet ngo dat yeu cau if (error

Ngày đăng: 05/04/2020, 20:38

Từ khóa liên quan

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

Tài liệu liên quan