




下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、/* * * pid 相關(guān)函數(shù)* */ /pid 默認參數(shù)#define kdefaultpid_k 5/默認的增益為5 倍#define kdefaultpid_t 5/默認控制周期為5 秒#define kdefaultpid_ti 25/默認積分時間為25 秒#define kdefaultpid_td 5/默認的微分時間為5 秒#define kdefaultset (float)g_vf/100.0 /默認風速/定義 pid 參數(shù)結(jié)構(gòu)體typedef struct float t;/ 采樣周期float kp;/ 比例系數(shù)float ti;/ 積分時間float td;/ 微分時間f
2、loat set;/設(shè)定值float input3;/ 輸入緩存float output;/ 輸出pid_stru; /step1 定義 pid 控制參數(shù)pid_stru pid_ctrl; /函數(shù)名:增量式pid 參數(shù)初始化/參數(shù): pid_stru 指針/返回值: void void pid_init(pid_stru * p_pid) p_pid-set = kdefaultset;/ 默認 pd 設(shè)置值p_pid-kp = kdefaultpid_k;/比例系數(shù)p_pid-ti = kdefaultpid_ti;/積分時間p_pid-td = kdefaultpid_td;/微分時間p
3、_pid-t = kdefaultpid_t;/控制周期 /函數(shù)名:增量式pid 控制/參數(shù): pid_stru 指針/返回值: void void pid_getvalue(pid_stru * p_pid) uint8 i; static uint8 counter = 0; float err3; / 定義誤差數(shù)組if(controflag=0) counter = 0; p_pid-input2 = p_pid-input1; p_pid-input1 = p_pid-input0; p_pid-input0 = g_diode_v; for(i=0;iset - p_pid-inpu
4、ti; if(counter = 2) /pid的初值 p_pid-output = p_pid-kp*(err0+p_pid-t*(err0+err1)/p_pid-ti+p_pid-td*(err0-err1)/p_pid-t); else if(counter 2) / 增量 pid p_pid-output += p_pid-kp*(1+p_pid-t/p_pid-ti+p_pid-td/p_pid-t)*err0;/a p_pid-output -= p_pid-kp*(1+2*p_pid-td/p_pid-t)*err1;/b p_pid-output += p_pid-kp*p_
5、pid-td*err2/p_pid-t;/c else counter +; /pid 控制主流程void ctrlprocess(void) /pid 控制pid_getvalue(&pid_ctrl); /* /范圍保護if(pid_ctrl.output 100) pid_ctrl.output = 100; */ /輸出 51 單片機按鍵控制pwm 占空比, duty:72.41%-99.13% ,fre=1.08khz ,vol:400mv-5.12v 問題p0 口輸出全部有pwm 輸出且相同,#include #define uchar unsigned char #def
6、ine uint unsigned int sbit key1=p32; sbit key2=p33; uchar pwm; void keyscan(); /聲明一個鍵盤輸入函數(shù)void delay(uchar z); void main() pwm=0 x7f; /給 pwm 賦初值tmod=0 x21; th0=0 xfc; /裝載初值 0 xfc66 tl0=0 x66; th1=pwm; /把 pwm 定義為定時器 t1 的高位tl1=0; ea=1; /開亂七八糟的et0=1; et1=1; tr0=1; while(1) /判斷是否有按鍵按下 keyscan(); void ti
7、me0() interrupt 1 /中斷函數(shù) th0=0 xfc; tl0=0 x66; th1=pwm; / tl1=0; /不能加 ?tr1=1; p0=0 x00; void time1() interrupt 3 /中斷函數(shù) tr1=0; p0=0 xff; /結(jié)束輸出 void keyscan() if(key1=0) /檢測按鍵 1 是否按下,是就執(zhí)行下面的代碼,否就跳過去 if(pwm!=0 xff)/ 如果 pwm 不等于 0 xff,pwm 就加 1 pwm+; delay(10); / while(!key1); /不能加? if(key2=0) /檢測按鍵 2 是否按下, 是就執(zhí)行下面的代碼,沒就跳過去 if(pwm!=0 x01) /判斷 pwm 是否為 1,否就減 1,是就不減了,過界 pwm-; delay(10); / wh
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度家居建材店品牌代理合作協(xié)議
- 1 大青樹下的小學 教學設(shè)計 -2024-2025學年語文三年級上冊統(tǒng)編版
- 2025年物流車輛抵押貸款合同范本
- 2025年度網(wǎng)絡(luò)安全服務(wù)合同補充條款
- 2024-2025學年川教版(2024)信息科技 七年級上冊:第一單元 第1節(jié) 《走進互聯(lián)世界》教學設(shè)計
- 中國貂皮帽條項目投資可行性研究報告
- 關(guān)于購買學生宿舍生活柜的報告
- 2025年幼兒園外帶食品使用安全責任免除協(xié)議
- 中國高帶寬多業(yè)務(wù)復用器項目投資可行性研究報告
- 2025年度電子化政府采購公開招標文件編制與市場推廣協(xié)議
- 2024年物聯(lián)網(wǎng)安裝調(diào)試員(初級工)職業(yè)資格鑒定考試題庫(含答案)
- 《設(shè)備科安全培訓》課件
- 延長石油招聘筆試題庫
- 糖尿病與飲酒
- 【公開課】同一直線上二力的合成+課件+2024-2025學年+人教版(2024)初中物理八年級下冊+
- 建筑安全施工勞動保護考核試卷
- 烹飪工藝與營養(yǎng)基礎(chǔ)知識單選題100道及答案解析
- DB52T 1036-2015 建材產(chǎn)品中廢渣摻加量的測定方法
- 磁力聚星星選達人認證考試-初階
- 《心態(tài)管理》課件
- 裝修垃圾清運方案
評論
0/150
提交評論