freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

畢業(yè)設(shè)計(jì)-常用pid改進(jìn)的編程實(shí)現(xiàn)與仿真研究-資料下載頁(yè)

2024-12-01 00:26本頁(yè)面

【導(dǎo)讀】是進(jìn)一步與計(jì)算機(jī)的強(qiáng)大運(yùn)算能力,儲(chǔ)存能力和邏輯判斷能力結(jié)合起來(lái),克服在實(shí)際應(yīng)用中的一些PID控制缺陷。本文羅列了常見(jiàn)的四種PID改。死區(qū)的數(shù)字PID算法,這些控制算法的優(yōu)點(diǎn)是可以減小系統(tǒng)的超調(diào)量,能產(chǎn)生的控制量來(lái)回振蕩現(xiàn)象。在了解PID改進(jìn)算法規(guī)律數(shù)字化的基礎(chǔ)。真界面,具有一定的人機(jī)交互界面。同時(shí)并以一個(gè)具有一定純滯后的典。型熱工被控對(duì)象為例,在上述仿真環(huán)境下,驗(yàn)證各種改進(jìn)算法的效果,并繪制輸出后的仿真曲線。

  

【正文】 ), 3841 [18] 王新亞 .基于 MEA— BP 神經(jīng)網(wǎng)絡(luò)的主汽溫控制系統(tǒng)的研究 [J] . 山西焦煤科技 ,2021,( 3): 1315 [19] 王華春 .基于模糊神經(jīng)網(wǎng)絡(luò)的主汽溫控制系統(tǒng)的研究 [D].華北電力大學(xué), 2021, [20] , controlles:recent tuning methods and design to specification[C].IEEE Proceeedings control theory and application 2021, 149(l):46一 53. [21] 易繼鍇 , 侯媛彬 . 智能控制技 術(shù) [M]. 北京工業(yè)大學(xué)出版社 , 1999: 126— 127 [22] 張建民 . 智能控制原理及應(yīng)用 [M]. 北京: 冶金工業(yè)出版社 , 2021: 136137 [23]劉金琨 . 智能控制 [M]. 北京: 電子工業(yè)出版社 , : 185187 [24]王耀南 .智能控制系統(tǒng) [M].長(zhǎng)沙:湖南大學(xué)出版社, 1996 華北電力大學(xué)本科畢業(yè)設(shè)計(jì)(論文) 28 [25]吉智 ,詹國(guó)兵 ,扈書(shū)光 ,林蒙丹 .模糊 PID 控制器在開(kāi)關(guān)電源充電機(jī)控制系統(tǒng)中的應(yīng)用研究 [A].全國(guó)先進(jìn)制造技術(shù)高層論壇暨制造業(yè)自動(dòng)化、信息化技術(shù)研討會(huì)論文集[C]。2021 年華北電力大學(xué)本科畢業(yè)設(shè)計(jì)(論文) 29 附 錄 附錄 1 PID 算法 C++編程 : include include include include int main() { PID p。 float a[100],y[100],rin,x=0,z=0,b,um,us,death。 int i。 char c。 cout選擇一種 PID計(jì)算方法 :\n\nendl。 cout 常規(guī) PID 的控制算法 \n\nendl。 cout \n\nendl。 cout \n\nendl。 cout \n\nendl。 cout PID 算法 \n\nendl。 cout\n\nendl。 cout請(qǐng)選擇 :\nendl。 cinc。 switch(c) { ////////////////////// 常規(guī) PID 計(jì) 算 方 法//////////////////////////////////// case39。139。:{ y[0]=0。 rin=sensor()。 for(i=0。i100。i++) { 華北電力大學(xué)本科畢業(yè)設(shè)計(jì)(論文) 30 a[i]=(,rin,x,z)。 y[i+1]=()*y[i]+()*a[i]。 printf( 加入控制對(duì)象經(jīng)過(guò) PID 反 饋 調(diào) 節(jié) 后 的 輸出 %f\n,y[i])。 } break。}。 ///////////////////////// 積分分離算法////////////////////////////////// case39。239。:{ cout輸入需要設(shè)定的偏差 Beta 值 :endl。 cinb。 y[0]=0。 rin=sensor()。 for(i=0。i100。i++) { a[i]=(,rin,b)。 y[i+1]=()*y[i]+()*a[i]。 if(y[i]2*sensor()) y[i]=*sensor()。 printf( 加入控制對(duì)象經(jīng)過(guò) PID 反 饋 調(diào) 節(jié) 后 的 輸出 %f\n,y[i])。} break。}。 //////////////////////////////// 抗 積 分 飽 和 算 法///////////////////////////// case39。339。:{ cout輸入需要設(shè)定的系統(tǒng)輸出的上限幅值 :(如 2)endl。 cinum。 cout輸入需要設(shè)定的系統(tǒng)輸出的下限幅值 :(如 1)endl。 cinus。 y[0]=0。 rin=sensor()。 for(i=0。i100。i++) { a[i]=(,rin,um,us)。 華北電力大學(xué)本科畢業(yè)設(shè)計(jì)(論文) 31 y[i+1]=()*y[i]+()*a[i]。 printf( 加入控制對(duì)象經(jīng)過(guò) PID 反 饋 調(diào) 節(jié) 后 的 輸出 %f\n,y[i])。 } break。}。 ///////////////////////////// 微分項(xiàng)的改進(jìn)/////////////////////////////// case39。439。:{ y[0]=0。 rin=sensor()。 for(i=0。i100。i++) { a[i]=(,rin,x,z)。 y[i+1]=()*y[i]+()*a[i]。 printf( 加入控制對(duì)象經(jīng)過(guò) PID 反 饋 調(diào) 節(jié) 后 的 輸出 %f\n,y[i])。 } break。}。 ///////////////////////// 帶 死 區(qū) 的 數(shù) 字 PID 算法////////////////////////////// case39。539。:{ cout輸入需要設(shè)定的死區(qū)范圍值 (取絕對(duì)值 ):endl。 cindeath。 y[0]=0。 rin=sensor()。 for(i=0。i100。i++) { a[i]=(,rin,x,z,death)。 y[i+1]=()*y[i]+()*a[i]。 if(y[i]2*sensor()) y[i]=fabs()*sensor()。 printf( 加入控制對(duì)象經(jīng)過(guò) PID 反 饋 調(diào) 節(jié) 后 的 輸出 %f\n,y[i])。 華北電力大學(xué)本科畢業(yè)設(shè)計(jì)(論文) 32 } break。}。 /////////////////////////////// 退出///////////////////////////////////// case39。639。:exit(1)。 } FILE *f。 f=fopen(,w)。 for(i=0。i100。i++) { fprintf(f,%f ,y[i])。 } fclose(f)。 STARTUPINFO si = {sizeof(si)}。 PROCESS_INFORMATION pi。 = STARTF_USESHOWWINDOW。 = TRUE。 CreateProcess ( NULL, , //調(diào)用繪圖程序生成圖形 NULL, NULL, FALSE, CREATE_NEW_CONSOLE, NULL, NULL, amp。si, amp。pi)。 } Pid : // : PID 計(jì)算過(guò)程 . include 華北電力大學(xué)本科畢業(yè)設(shè)計(jì)(論文) 33 PID::PID() { initial()。 } PID::~PID() { } void PID::initial() { Kp =55。 /*比例增益 55*/ T =。 /*采樣周期 */ Ti =。 /*積分時(shí)間 */ Td =。 /*微分時(shí)間 */ Tf =。 /*慣性時(shí)間 */ caculate()。 } void PID::caculate() { C1 =(Tf/(T+Tf))。 /* 增 量 型 PID 運(yùn) 算 系 數(shù) 有C1,C2,C3,C4*/ C2 =(Kp*T*(1+T/Ti+Td/T)/(T+Tf))。 C3 =(0Kp*T*(1+2*Td/T)/(T+Tf))。 C4 =(Kp*Td/(T+Tf))。 C22=(Kp*T*(1+Td/T)/(T+Tf))。 //C22 為第二種方法積分分離方法中 ,PD 算法的系數(shù) C23=(Kp*T*(1+Td/T)/(T+Tf))。 //C23 為第三種方法抗積分飽和中 Ki=0 則(1/Ti)=0 時(shí) } //******************* 實(shí)際微分 PID 的 控 制 算 法****************************// float PID::PIDContr(float New, float Sp,float u,float du) 華北電力大學(xué)本科畢業(yè)設(shè)計(jì)(論文) 34 { static float e[3]={,}。 e[2]=e[1]。 /*數(shù)據(jù)更新 */ e[1]=e[0]。 e[0]=SpNew。 du=C1*du+C2*e[0]+C3*e[1]+C4*e[2]。 /*PID 運(yùn)算 */ u=u+du。 return u。 } ///////////////////////////// 積 分 分 離 算 法 改 進(jìn) 計(jì) 算 過(guò) 程//////////////////////////// float PID::PIDjffl(float New, float Sp,float u,float du,float Beta) { static float e[3]={,}。 // Beta 為具體施工過(guò)程中的設(shè)定值 ,此處假設(shè)為 50 e[2]=e[1]。 //數(shù)據(jù)更新 e[1]=e[0]。 e[0]=SpNew。 if(e[0]=Beta) {du=C1*du+C2*e[0]+C3*e[1]+C4*e[2]。 //PID 運(yùn)算條件為 偏差小于等于Beta u=u+du。 } if(e[0]Beta) //當(dāng)偏差大于 beta 時(shí) ,采用 PD 計(jì)算 ,則Ti為無(wú)窮大 { du=C1*du+C22*e[0]+C3*e[1]+C4*e[2]。 u=u+du。 } 。 return u。 } ////////////////////////////// 抗積分飽和算法/////////////////////////////// 華北電力大學(xué)本科畢業(yè)設(shè)計(jì)(論文) 35 float PID::PIDkjfbh(float New, float Sp,float u,float du,float umin,float umax) { static float e[3]={,}。 e[2]=e[1]。 //數(shù)據(jù)更新 // e[1]=e[0]。 e[0]=SpNew。 du=C1*du+C2*e[0]+C3*e[1]+C4*e[2]。 //PID 運(yùn)算 // u=u+du。 if(e[0]0amp。amp。u=umax) {du=C1*du+C23*e[0]+C3*e[1]+C4*e[2]。 u=u+du。} if(e[0]0amp。amp。u=umin) {du=C1*du+C23*e[0]+C3*e[1]+C4*e[2]。 u=u+du。} return u。 } ///////////////////////////// 微分項(xiàng)的該進(jìn)////////////////////////////////// float PID::PIDwfxgj(float New, float Sp,float u,float du) { static float e[3]={,}。 e[2]=e[1]。 /*數(shù)據(jù)更新 */ e[1]=e[0]。 e[0]=SpNew。 du=C1*du+C2*e[0]+C3*e[1]+C4*e[2]。 /*PID 運(yùn)算 */ u=u+du。 return u。 } ///////////////////////// 帶 死 區(qū) 的 數(shù) 字 PID 算法/////////////////////////////// 華北電力大學(xué)本科畢業(yè)設(shè)計(jì)(論文) 36 float PID::PIDdsqsz(float New, float Sp,float u,float du,float d) { static float e[3]={,},p=,b=。 //b 為死區(qū)區(qū)間 ,設(shè)為 e[2]=e[1]。 /*數(shù)據(jù)更新 */ e[1]=e[0]。 e[0]=SpNew。 if(fabs(e[0])b) p=e[0]。 if(fabs(e[0]
點(diǎn)擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1