版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
//PID算法溫控C2008-08-17structPID{unsignedintSetPoint;//DesiredunsignedintProportion;//ProportionalConstunsignedintIntegral;//積分常數(shù)IntegralConstunsignedintDerivative;//微分常數(shù)DerivativeConstunsignedintLastError;//Error[-1]unsignedintPrevError;//Error[-2]unsignedintSumError;//SumsofErrorsstructPIDspid;//PIDControlStructureunsignedintrout;//PIDResponse(Output)unsignedintrin;//PIDFeedback(Input)sbitdata1=P1^0;sbitclk=P1^1;sbitplus=P2^0;sbitsubs=P2^1;sbitstop=P2^2;sbitoutput=P3^4;sbitDQ=P3^3;unsignedcharunsignedcharhigh_time,low_time,count=0;//占空比調(diào)節(jié)參數(shù)unsignedcharset_temper=35;unsignedchartemper;unsignedchari;unsignedcharj=0;unsignedints;voiddelay(unsignedchartime){unsignedcharm,n;}voidwrite_bit(unsignedcharbitval){}delay(5*90us供DA18B20采樣*/DQ=1;/*DQ總線*/}voidwrite_byte(unsignedcharval){unsignedchari;unsignedchartemp; {temp=val>>i*移位操作,將本次要寫的位移到最低位*/;/}//EA=1*開中斷}unsignedcharread_bit(){unsignedchari,value_bit;DQ=1*釋放總線*/}unsignedcharread_byte(){unsignedchari,value=0;{if(read_bit*讀一字節(jié)數(shù)據(jù),一個時序中讀一次,并作移位處}unsignedcharreset(){unsignedcharpresence;DQ=0*DQ總線開始復(fù)位delay(30*480us*/DQ=1;/*釋放總線*/presence=DQ;/*獲取應(yīng)答信號*/delay(28*延時以完成整個時序*/return(presence);/*返回應(yīng)答信號,有應(yīng)答返回0,無則1*/}voidget_temper(){unsignedchari,j;{i=reset*復(fù)位}while(i!=0*1為無反饋信號*/i=0xcc;/*發(fā)送設(shè)備定位命令*/i=0x44*發(fā)送開始轉(zhuǎn)換命令*/delay(180);*延時*/{i=reset*復(fù)位i=0xcc*設(shè)備定位*/i=0xbe*讀出緩沖區(qū)內(nèi)容*/s=(unsignedint)(j&0x0f);}InitializePIDvoidPIDInit(structPID{memset(pp,0,sizeof(struct}PIDunsignedintPIDCalc(structPID*pp,unsignedintNextPoint{unsignedintErrorpp->SetPointNextPoint;//pp->SumErrorError;//dErrorpp->LastErrorpp->PrevError;//pp->PrevError=pp->LastError;pp->LastError=Error;return(pp->Proportion*Error//pp->Integral*pp pp->Derivative*dError }{unsignedchari;{{}{{rin=s;//Readrout=PIDCalc(&spid,rin);//PerformPID}if(high_time<=100)high_time=(unsignedchar)(rout/800);low_time=(100-}}else{{}{{rin=s;//Readrout=PIDCalc(&spid,rin);//PerformPID}if(high_time<100)high_time=(unsignedchar)(rout/10000);low_time=(100-}}////}T0,40us*100=4msvoidserve_T0()interrupt1using1{else{}}voidserve_sio()interrupt4using2{/*EA=0;{}else}EA=1;}voiddisp_1(unsignedchar{unsignedcharn,a,m;{//k=disp_num1[n];{}}}voiddisplay(){unsignedcharcodeunsignedchardisp_num[6];unsignedintk,k1;}{unsignedcharunsignedcharunsignedcharphil[]={2,0xce,0x6e,0x60,0x1c,2};PIDInit(&spid);//InitializeStructurespid.Proportion=10;//SetPIDCoefficientsspid.Integral=8;spid.SetPoint=100;//SetPIDSetpoint{{}}else{{}}else{{}{}}{//}}//DS18b20#includesbit typedefunsignedchar typedefunsigned voiddelay(word{}byte{byte //DQ //DQ // //0允許,1 節(jié)byte{bytebytevalue=0;{}}voidwrite_byte(char{ fori=8;i>0;i {}}char{bytec[2];intx; }PID增量式PID式中,enen-1en-2分別為第nn-1次和n-2次的偏差值,KpTiTd別為比例系數(shù)、積分系數(shù)和微分系數(shù),T公式,由公式輸出量決定的占空比,后續(xù)加熱電路根據(jù)此的占空參數(shù)的整定可以仿照模擬PID①比例系數(shù)P穩(wěn)態(tài)誤差減?。籔P對象的特性決定的。如果P遠(yuǎn),如果出現(xiàn)這樣的情況P②積分控制II(積分作③微分控制DD調(diào)節(jié)時間較短;DD溫底控制PIDPIDPID(ProportionalIntegralDerivative)控制是控制工程中技術(shù)成熟、應(yīng)用廣泛的一PID檢測元件就會將這種變化后經(jīng)變送器送至PID控制器的輸入端并與其給定值(以下簡)進(jìn)行比較得到偏差值(以下簡稱e值),調(diào)節(jié)器按此偏差并以我們預(yù)先設(shè)定的整定參數(shù)控制,并趨向于給定值(SP1PIDPIDPID(1)PD、PIDPID在連續(xù)-時間控制系統(tǒng)(模擬PID)中,PID機(jī)的快速發(fā)展,人們將計算機(jī)引入到PID控制領(lǐng)域,也就出現(xiàn)了數(shù)字式PID控制。)Tk代替積分,用增量的形式(求差)PID計算公式離散::
這樣就可以讓計算機(jī)或者單片機(jī)通過采樣的方式實(shí)現(xiàn)PID控制,具體的PIDPID控制和增量式PID4給出了控制量的全部大小,所以稱之為全量式或者位制;如果計算機(jī)只對相鄰的兩次作計算,只考慮一次基礎(chǔ)上,計算機(jī)輸出量的大小變化是全部輸出信息的計算,這種控制叫做增量式PIDΔμΔμk=μk-μk-14(5)控制PID本設(shè)計利用了上面所介紹的位置式PID定值進(jìn)行相減得偏差ekPID運(yùn)算產(chǎn)生輸出結(jié)果fOutfOut控制PIDPID的結(jié)構(gòu)體數(shù)據(jù)類型,該數(shù)據(jù)保存PID運(yùn)算所需要的P、I、D系數(shù),以及設(shè)定值,歷史誤差的累加和等信息:defstructtSetPointDesiredtProportionProportionalConsttIntegral;//積分系數(shù)IntegralConsttDerivativeDerivativeConstLastError;//上次偏差SumErrorstPID;//定義一個stPID下面是PID運(yùn)算的算法程序,通過PID運(yùn)算返回fOut,fOut運(yùn)算的CtPIDCalc(PID*pp,intNextPointrpp->SetPoint*10NextPointSumErrorErrororError-pp->LastErrorPrevErrorpp->LastErrorLastError=->Integral*pp->SumError->Derivative*dError效應(yīng)所以不能保留,須把積分項(xiàng)去掉,相反D(微分項(xiàng))則有很強(qiáng)的預(yù)見性,能夠加 方案,下面CPDtPIDCalc(PID*pp,intNextPointrpp->SetPoint*10NextPointorError-pp->LastErrorPrevErrorpp->LastErrorLastError=rn(pp->Proportion*Error->Derivative*dError通過溫度的PID運(yùn)算,產(chǎn)生結(jié)果fOutD.Proportion2PIDD.Integral=0PID積分值D.Derivative5PIDPIDCalc&stPID,(int)(fT*10PIDOA_Buffer&0xff7fOA_Buffer|0x0080TimerBPIDCalc函數(shù)得到fOut參該參數(shù)大于“0”,則開啟加熱器。IRQ2_TMB,fOut1fOut=0,停止加熱。如果PIDCalc計算結(jié)果比較大說明離目標(biāo)溫PID89C52 學(xué)院來源:現(xiàn)代電子術(shù):2009-12-2217:36:09[收藏][評論P(yáng)ID89C52PID算法進(jìn)行溫度控制,它具有控制精度高,能夠克PID算法進(jìn)行溫度控制。-PID控制器的參數(shù)整定是控制系統(tǒng)設(shè)計的內(nèi)容它是根據(jù)PID間的大小。PID控制器參數(shù)整定的方法概括起來有兩大類:一是常數(shù);TD為控制器的微分時間常數(shù)。PID算法的原理即調(diào)節(jié)K為第K-1次采樣時的偏差值;P(K)K次采樣是調(diào)節(jié)器的輸本系統(tǒng)由傳感器A/D采樣輸入、單片機(jī)控制、人機(jī)交互、9C52單片機(jī)實(shí)現(xiàn),控制信號輸出部分則由功率放大和開關(guān)控制2所示。89C52單片機(jī)的全雙工串行口完成和鍵盤部分的雙向通PC機(jī)通信:此部分完成與微機(jī)控制接口RS232PID1kW1L清水進(jìn)行加熱。1。5030s225min由實(shí)驗(yàn)結(jié)果可以看出,系統(tǒng)的誤差基本穩(wěn)定在±0.3℃,可見5min時溫度基本達(dá)到穩(wěn)定,PID算法的單片機(jī)溫度控制等級:-2006-02-7,10:51:03我在用MEGA16PID50.15?PID算法得到的是一個數(shù)值,這個數(shù)值資料 郵件 回復(fù) 回編輯刪除復(fù)↑↑ 【1s等級:-2009-04-資料 郵件復(fù)↑↑ 回復(fù)回3,09:42:23【2hPIDLZ等級:-定時器的值為255100%1點(diǎn)計算PID的三個參數(shù)密切相關(guān)的,在相同PID參數(shù)會得出不同的PID3、想象一下,如果你的PID2009-04-3,11:52:49其實(shí)最關(guān)鍵的就是我寫的第一點(diǎn),只要理解了PID計算出的數(shù)據(jù)是表示的調(diào)節(jié)強(qiáng)度的大小,和占空資料 郵件 回復(fù) 引用回編輯刪除復(fù)↑↑ 【3d等級:-【22009-04-4,14:48:14資料 郵件 回復(fù) 引用回編輯刪除復(fù)↑↑ 【4lengqing13等級:-::2009-04-4,16:33:29
資料 郵件 回復(fù) 復(fù)↑↑
【5
資料
回復(fù)引用回復(fù) ↓↓【】本文介紹了以AT89S51單片機(jī)為的溫器AD590對電熱鍋爐的溫度進(jìn)行實(shí)時精確測量,用超低溫漂移高精度運(yùn)算放大器OP07將溫度-電壓信號進(jìn)行放大,12位的AD574A進(jìn)行AD轉(zhuǎn)換,從而實(shí)算法,實(shí)時更新控制輸出參數(shù),控制可控硅的通【】水溫控制系統(tǒng)PID控制單片方案一采用8031作為控制,以使用最為普遍的器件ADC0809作模數(shù)轉(zhuǎn)換,控制上使用對電阻絲加電的價格便宜,但8031內(nèi)部沒有程序器,需要擴(kuò)展,增加了電路的復(fù)雜性,且ADC08098位的模數(shù)轉(zhuǎn)換,方案二采比流的81作電的制用2的精模轉(zhuǎn)器DA進(jìn)數(shù)據(jù)換,制路分用 可硅通實(shí)對爐度連控制方路單且可以足目的項(xiàng)求精。圖 設(shè)計了以AT89S51單片機(jī)為檢測控制中心的電熱鍋PID數(shù)字控制算法,3LED靜態(tài)顯示。該設(shè)計結(jié)構(gòu)越限二硬件電路設(shè)計從功能模塊上來分有:主機(jī)電路、電路、鍵主機(jī)選用ATMEL51系列單片機(jī)AT89S51來AT89S51時鐘可達(dá)12MHz,運(yùn)算速度快,控制功能128字節(jié)RAM,4KB的flashROM不需要外擴(kuò)展器,可使系統(tǒng)整體結(jié)I/0就本系統(tǒng)來說,需要實(shí)時水溫數(shù)據(jù),然后經(jīng)過A/D分送去顯示;另一部分與設(shè)定值進(jìn)行比較,PID算電路主要由AD59001D0101;而對于AD轉(zhuǎn)換器,40-90度,AD區(qū)分度要求,則AD(90-40)/0.1=500個數(shù)字量,10位以上的轉(zhuǎn)換器。為此,12位AD574AAD590,AD590具有較高精度和重復(fù)性(重復(fù)性優(yōu)于0.1℃,0.10.1℃測量精度.)超低溫漂移高精度運(yùn)算放大器0P07將溫度一電壓信號進(jìn)行放大,A/D進(jìn)行轉(zhuǎn)換,以提高溫度電路的可靠性模擬電路硬件部分2。圖 需要進(jìn)行處理這采光件L21在制部分行電,外用器實(shí)弱電的電源。片機(jī) 出平為0,耦件通,使極形有偏而通通流的壓經(jīng)過電電以射反偏,有V右電壓加雙可硅制端從可導(dǎo)通交通路形成電爐;之片輸平為0,耦元件能通,極不形效而止,控硅控端壓乎零,控止截交通路,電停工作此,有限溫低下時發(fā)二管;上時鳴叫制行分件路下:圖 ,3中按鍵NN,34,51按鍵AN3與P3.2相連,采用外部中斷方式,并且優(yōu)先級定為最高;AN5AN4P1.7P1.6相連,采用軟件查詢的方式;AN1則為硬件復(fù)位鍵,與RC1按鍵按下(D1亮)——3LED靜態(tài)顯示方式,顯示內(nèi)容有資源,P1.4P3.1(TXD)74LS1643位靜態(tài)顯示。數(shù)字電路硬件部分見圖:圖4 三系統(tǒng)軟件設(shè)計D;0為55,集經(jīng)過AD;10,D, 主要由A/D轉(zhuǎn)換子程序、中斷處理子程序、鍵盤處T0成A/D轉(zhuǎn)換、數(shù)字濾波、判斷是否越限、較,PID算法子程序并輸出控制信號等功能。2.3T1T1定時中斷嵌套在T中斷之中,優(yōu)先級高于T中斷,PID算法子程序提供,T1中斷響應(yīng)的運(yùn)算控制模塊涉及標(biāo)度轉(zhuǎn)換、PID算法、以及該算Am=90;Ao=40;Nm=FEH;7。PIDD數(shù)字控制DD),而,D8。圖 圖 9中,26CUi(k)k次采樣溫度值,Ur為設(shè)定值。e(kεPD算法e(k)<εPID9溫度控制曲線圖四源程序五結(jié)果分析論述基于單片機(jī)AT89S51的設(shè)計方案設(shè)計中運(yùn)用PID算法更新T1的定時常數(shù), 從而實(shí)現(xiàn)對溫度的連續(xù)控制。設(shè)計結(jié)果由圖7和圖9,的D;提,主提了片機(jī)電及件括制法計,,PIDPID控制段C程
2#大中小于2009-5-2319:13 #include機(jī) #i授struct_pidintpv;/*integerthatcontainsthe 人 float float float短 float int int為 友 struct_pid前 intprocess_point, floatp_gain,i_gain,d_gain,DESCRIPTIONThisfunctioninitializesthepointersinthe_pidstructuretotheprocessvariableandthesetpoint.and*spareintegerpointers.voidpid_init(struct_pid*warm,intprocess_point,intset_point){struct_pidpid=pid->pv=process_point;pid->sp=set_point;}DESCRIPTIONSetstheproportionalgain(p_gain),integralgain(i_gain),derivitivegain(d_gain),andthedeadband(dead_band)ofapidcontrolstructurevoidpid_tune(struct_pid*pid,floatp_gain,floati_gain,floatd_gain,intdead_band){pid->pgain=p_gain;pid->igain=i_gain;pid->dgain=pid->deadband=pid->integral=integral_val;}DESCRIPTIONSetanewvaluefortheintegraltermofthepidequation.Thisisusefulforsettingtheinitialofpidcontrolleratstartvoidpid_setinteg(struct_pid{pid->integral=new_integ;pid->last_error=0;}DESCRIPTIONBumplesstransferalgorithim.Whensuddenlychangingaftercanwillsmoothoutthatbump.Theprocessvalueinbetheupdatedjustbeforethisfunctionvoidpid_bumpless(struct_pid{pid->last_error=(pid->sp)-(pid-}DESCRIPTIONPerformsPIDcalculationsfor_pidstructure*a.Thisfunctionusesthepositionalformofthepidequation,andincorporatesanintegrationisused,sothisfunctionmustberepeatedonaconsistenttimebasisforaccurateRETURNVALUEThenewoutputvaluefortheUSAGE#includefloatpid_calc(struct_pid{intfloatpterm,dterm,result,err=(pid->sp)-(pid->pv);if(abs(err)>pid->deadband){ferror=(float)err;/*dointegertofloatconversiononlyonce*/pterm=pid->pga
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年人社部的勞動合同(三篇)
- 2025年九年級英語下冊教學(xué)工作總結(jié)范例(二篇)
- 2025年中外來料加工、來件裝配合同樣本(2篇)
- 2025年代理權(quán)轉(zhuǎn)讓的合同(2篇)
- 2025年企業(yè)產(chǎn)品購銷合同參考模板(三篇)
- 2025年九年級英語培優(yōu)輔差總結(jié)樣本(二篇)
- 人工智能居間服務(wù)合同范本
- 親子餐廳裝修施工合同樣本
- 植生混凝土技術(shù)施工方案
- 木材加工居間合作協(xié)議
- 端午做香囊課件
- 外觀判定標(biāo)準(zhǔn)
- 江西上饒市2025屆數(shù)學(xué)高二上期末檢測試題含解析
- 腦卒中后吞咽障礙患者進(jìn)食護(hù)理團(tuán)體標(biāo)準(zhǔn)
- 墨香里的年味兒(2023年遼寧沈陽中考語文試卷記敘文閱讀題及答案)
- 2024-2030年市政工程行業(yè)發(fā)展分析及投資戰(zhàn)略研究報告
- 濟(jì)寧醫(yī)學(xué)院成人高等教育期末考試《無機(jī)化學(xué)》復(fù)習(xí)題
- 工行人工智能風(fēng)控
- 新概念英語第二冊考評試卷含答案(第73-80課)
- 中醫(yī)腕踝針技術(shù)
- 2023風(fēng)電機(jī)組預(yù)應(yīng)力混凝土塔筒與基礎(chǔ)結(jié)構(gòu)設(shè)計標(biāo)準(zhǔn)
評論
0/150
提交評論