下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、/* * * pid 相關(guān)函數(shù)* */ /pid 默認(rèn)參數(shù)#define kdefaultpid_k 5/默認(rèn)的增益為5 倍#define kdefaultpid_t 5/默認(rèn)控制周期為5 秒#define kdefaultpid_ti 25/默認(rèn)積分時(shí)間為25 秒#define kdefaultpid_td 5/默認(rèn)的微分時(shí)間為5 秒#define kdefaultset (float)g_vf/100.0 /默認(rèn)風(fēng)速/定義 pid 參數(shù)結(jié)構(gòu)體typedef struct float t;/ 采樣周期float kp;/ 比例系數(shù)float ti;/ 積分時(shí)間float td;/ 微分時(shí)間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;/ 默認(rèn) pd 設(shè)置值p_pid-kp = kdefaultpid_k;/比例系數(shù)p_pid-ti = kdefaultpid_ti;/積分時(shí)間p_pid-td = kdefaultpid_td;/微分時(shí)間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); /* /范圍保護(hù)if(pid_ctrl.output 100) pid_ctrl.output = 100; */ /輸出 51 單片機(jī)按鍵控制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(); /聲明一個(gè)鍵盤輸入函數(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 定義為定時(shí)器 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) /檢測(cè)按鍵 1 是否按下,是就執(zhí)行下面的代碼,否就跳過去 if(pwm!=0 xff)/ 如果 pwm 不等于 0 xff,pwm 就加 1 pwm+; delay(10); / while(!key1); /不能加? if(key2=0) /檢測(cè)按鍵 2 是否按下, 是就執(zhí)行下面的代碼,沒就跳過去 if(pwm!=0 x01) /判斷 pwm 是否為 1,否就減 1,是就不減了,過界 pwm-; delay(10); / wh
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度ICP證年檢咨詢與代理服務(wù)合同3篇
- 二零二五版木工家具定制加工合同3篇
- 2025年家庭清理合同
- 藍(lán)色簡(jiǎn)約風(fēng)云南麗江旅游
- 房地產(chǎn)市場(chǎng)與金融機(jī)構(gòu)的合作模式
- 2025年度個(gè)人對(duì)公司股權(quán)投資借款合同范本模板4篇
- 2025年西南能礦建設(shè)工程有限公司招聘筆試參考題庫(kù)含答案解析
- 2025年貴州天津泰達(dá)環(huán)保有限公司招聘筆試參考題庫(kù)含答案解析
- 2025年貴州融通融資擔(dān)保有限公司招聘筆試參考題庫(kù)含答案解析
- 二零二五民法典合同編修訂版解讀合同4篇
- 江蘇省蘇州市2024-2025學(xué)年高三上學(xué)期1月期末生物試題(有答案)
- 銷售與銷售目標(biāo)管理制度
- 人教版(2025新版)七年級(jí)下冊(cè)英語(yǔ):寒假課內(nèi)預(yù)習(xí)重點(diǎn)知識(shí)默寫練習(xí)
- 2024年食品行業(yè)員工勞動(dòng)合同標(biāo)準(zhǔn)文本
- 2025年第一次工地開工會(huì)議主要議程開工大吉模板
- 全屋整裝售后保修合同模板
- 高中生物學(xué)科學(xué)推理能力測(cè)試
- GB/T 44423-2024近紅外腦功能康復(fù)評(píng)估設(shè)備通用要求
- 2024-2030年中國(guó)減肥行業(yè)市場(chǎng)發(fā)展分析及發(fā)展趨勢(shì)與投資研究報(bào)告
- 運(yùn)動(dòng)技能學(xué)習(xí)
- 單側(cè)雙通道內(nèi)鏡下腰椎間盤摘除術(shù)手術(shù)護(hù)理配合1
評(píng)論
0/150
提交評(píng)論