




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、精選優(yōu)質文檔-傾情為你奉上目錄1一、 課設任務.2 1.1設計內容.2 1.2具體要求.2 1.3程序調試建議 .2二、 系統(tǒng)方案.3三、 硬件設計.3 3.1數(shù)碼管顯示和行列式鍵盤電路.4 3.2數(shù)模變換電路.5 3.3直流電機驅動電路.6 3.4片選譯碼電路7 3.5 RAM電路.7四、 軟件設計8五、 調試及結果.19六、 心得體會.19七、 參考文獻.20八、 附錄.20直流電機閉環(huán)調速控制系統(tǒng)設計報告一、課設任務11設計內容:以實驗室實驗裝置為設計對象,從中選擇出合適的部分,構成一個直流電機恒轉速控制系統(tǒng),具有如下功能:1、可以通過按鍵設定直流電機轉速(轉 / 分鐘,r/min);2
2、、可以實時顯示電機轉速,同時顯示設定值(各用三位顯示);3、運行過程中改變負載可以維持設定的轉速穩(wěn)定后保持不變。(穩(wěn)態(tài)誤差小于等于設定值的5%)4、開始時只顯示設定值,采集值顯示為0,按運行鍵后顯示實時采集值與設定值,左邊三位是設定值,右邊三位是實時值;5、設置停止運行鍵,控制直流電機停止運行;6、其它擴展發(fā)揮功能。1.2 具體要求:1、根據(jù)功能要求從實驗裝置上選擇合適電路構成系統(tǒng),用protel軟件畫出原理圖與控制系統(tǒng)結構圖,分析系統(tǒng)工作過程;2、根據(jù)實驗裝置具體情況確定接線方法,從而確定各端口的口地址(D/A、鍵盤、顯示等);3、采用PID算法作為恒轉速控制算法,對PID算法加以分析說明;
3、4、按照系統(tǒng)工作過程要求編制程序,畫出流程圖與編寫具體程序;5、調試運行,記錄運行結果;6、書寫課程設計報告,符合學院有關課程報告的要求。1.3 程序調試建議:1、先通過簡單程序驗證硬件工作正常(D/A輸出,帶負載能力,顯示器正常等等);不正常時及時與實驗室老師聯(lián)系更換器件。2、 調試測速顯示子程序;3、調試參數(shù)設置程序;4、調試控制算法程序;5、調試綜合程序二、系統(tǒng)方案直流電動機具有良好的起、制動性能,宜于大范圍內平滑調速,在許多需要調速或快速正反向的電力拖動領域得到了廣泛的應用。采用PID調節(jié)的轉速單環(huán)直流調速系統(tǒng)可以在保證穩(wěn)定的前提下實現(xiàn)轉速無靜差。系統(tǒng)進行信號采集進行D/A轉換,使單片
4、機送出脈沖來控制觸發(fā)器,控制電路輸出,驅動電動機工作,再由檢測電路帶回實際轉速給單片機,讓單片機根據(jù)實際轉速和給定的轉速進行比較,放大及PID運算等操作,從而控制整流電路角的大小,進而改變電機電樞電壓的大小,達到調節(jié)電動機轉速的目的。三、硬件設計3.1 數(shù)碼管顯示和行列式鍵盤電路數(shù)碼管顯示和行列式鍵盤電路圖3.2數(shù)模變換電路數(shù)模變換電路圖3.3直流電機驅動電路:直流電機驅動電路圖3.4片選譯碼電路:片選譯碼電路圖3.5 RAM電路:RAM電路圖四、軟件設計 MCS-518031ROM2662DAC0832模數(shù)轉換LED顯示PID調速鍵盤設定速度LED顯示判斷按鍵執(zhí)行跳轉圖1 結構框圖開始顯示初
5、始化有鍵按下?是運行設定結束If 09IF DIF Eflag=1?PID控制否顯示否是LOOP主程序流程圖開始定義變量 掃描模式置初值掃描模式送輸入口取顯示數(shù)據(jù)查表轉換成段碼調用延時子程序掃描模式左移一位循環(huán)是否結束返回YN顯示程序流程圖程序:/*課程設計PID直流電機調速*#include <reg51.h>/*地址定義*xdata unsigned char IN _at_ 0x8001; / 鍵盤讀入口xdata unsigned char OUTBIT _at_ 0x8002; / 位控制口xdata unsigned char OUTSEG _at_ 0x8004; /
6、 段控制口xdata unsigned char CS0832 _at_ 0x9000; / DA地址約定/*變量定義* unsigned int VOUT=0 ; / DA輸出緩存變量 unsigned int FDC=0,FREF=0,DFDC=0,uctrl=0; / 轉速檢測值FDC,給定值FREF unsigned int PVAL=10,PIVAL=1,IVAL=0; unsigned int ERROR;/*緩沖區(qū)及其長度定義*#define LEDLen 6/數(shù)碼管數(shù)量unsigned char LEDBufLEDLen; / 顯示緩沖/* 八段管顯示碼*code unsign
7、ed char LEDMAP = 0x3f, 0x06, 0x5b, 0x4f, 0x66, 0x6d, 0x7d, 0x07,0x7f, 0x6f, 0x77, 0x7c, 0x39, 0x5e, 0x79, 0x71;/* 鍵碼定義*code unsigned char KeyTable = 0x16, 0x15, 0x14, 0xff,0x13, 0x12, 0x11, 0x10,0x0d, 0x0c, 0x0b, 0x0a,0x0e, 0x03, 0x06, 0x09,0x0f, 0x02, 0x05, 0x08,0x00, 0x01, 0x04, 0x07;/*延時程序*void D
8、elay(unsigned char CNT) unsigned char i; while (CNT- !=0) for (i=100; i !=0; i-);/*動態(tài)顯示程序*void DisplayLED() unsigned char i; unsigned char Pos; unsigned char LED; Pos = 0x20; / 從左邊開始顯示 for (i = 0; i < LEDLen; i+) OUTBIT = 0; / 關所有八段管 LED = LEDBufi; OUTSEG = LED; OUTBIT = Pos; / 顯示一位八段管 Delay(1);
9、Pos >>= 1; / 顯示下一位 /*鍵閉合程序*unsigned char TestKey() OUTBIT = 0; / 輸出線置為0 return (IN & 0x0f); / 讀入鍵狀態(tài)(高四位不用)/*得鍵值程序*unsigned char GetKey() unsigned char Pos; unsigned char i; unsigned char k; i = 6; Pos = 0x20; do OUTBIT = Pos; Pos >>= 1; k = IN & 0x0f; while (-i != 0) && (
10、k = 0); if (k != 0) i *= 4; if (k & 2) i += 1; else if (k & 4) i += 2; else if (k & 8) i += 3; OUTBIT = 1; do Delay(10); while (TestKey(); / 等鍵釋放 return(KeyTablei); / 取出鍵碼 else return(0xff);/*速度設定程序*void speedset() unsigned char i=0,j=0,k=0,s,KEY,m; unsigned char b=0,c=0; LEDBuf0 = LEDMA
11、P0; LEDBuf1 = LEDMAP0; LEDBuf2 =LEDMAP0; LEDBuf3 = LEDMAP0; LEDBuf4 = LEDMAP0; LEDBuf5 = LEDMAP0; while(k!=10) /A鍵為確認鍵; /* m=0; LEDBufi=0x00; /關閉相應位; while(m!=10)DisplayLED();m+; /延時; m=0; LEDBufj = LEDMAPKEY; /重新放回設定值; LEDBufi=LEDBufi+3; /實現(xiàn)閃爍原來的值; while(m!=20)DisplayLED();m+; /延時; m=0; DisplayLED(
12、);*/ if( TestKey() ) s= GetKey(); k= s & 0x0f; if(k>=0)&&(k<=9) /速度設定,0-9有效; KEY=k; LEDBufi = LEDMAPKEY;/高三位保存設定值; LEDBufi+3 =LEDBufi;/保存原值; if(i=0) b= (KEY%10)*10; if(i=1) c= (KEY%10);FREF= b+c; j=i; i+; if(i=2)i=0; /第二位設定好,返回第一位; DisplayLED(); /*定時器子程序,自動重裝模式定時200us*#define T200u
13、s (256-100) / 200us時間常數(shù)(6M)unsigned int C200us; / 200us記數(shù)單元/*定時器和外部中斷初始化*void InitT() TMOD=2;/自動重裝模式 TH0 = T200us;/定時200us TL0 = T200us; ET0=1;/開定時器中斷 IT0=1;/外部中斷下降沿觸發(fā) EX0=1;/開外部中斷 TR0=1;/開定時器0 EA=1;/開總中斷/* 定時器0中斷子程序,計時*void T0Int() interrupt 1C200us+;/外部中斷測速子程序int TDC=0; /電機轉動周期寄存器void ExtInt0() in
14、terrupt 0TDC=C200us;/ 參數(shù)傳遞C200us = 0;/定時器計數(shù)變量清零FDC=5000/TDC;DFDC=FDC*60;/實際周期換算/*轉速閉環(huán)調節(jié)程序*void PIDTiaoSu() if(FREF>FDC) ERROR=FREF-FDC; IVAL=IVAL+ERROR/8; if(IVAL>=0Xf5) IVAL=0Xf5; uctrl=PVAL*ERROR+PIVAL*IVAL; VOUT=uctrl; if(VOUT>0xf0) VOUT=0xf0; if(VOUT<0x80) VOUT=0x80; if(FREF<FDC)
15、ERROR=FDC-FREF; IVAL=IVAL-ERROR; if(IVAL>=0XF5) IVAL=0XF5; uctrl=-PVAL*ERROR+PIVAL*IVAL; VOUT=uctrl; if(VOUT>0xf0) VOUT=0xf0; if(VOUT<0x8f) VOUT=0x80; LEDBuf2 = LEDMAPDFDC/1000;/實際轉速千位; LEDBuf3 = LEDMAPDFDC%1000/100;/實際轉速 百位; LEDBuf4 = LEDMAPDFDC%100/10 ;/實際轉速 十位; LEDBuf5 = LEDMAPDFDC%10; /
16、實際轉速 個位; DisplayLED(); /*主程序* void main() unsigned char KEY,i,s; for(i=0;i<=5;i+) LEDBufi = LEDMAP0;/初始值顯示0; while(1) DisplayLED(); if(TestKey() s=getkey() ; KEY= s & 0x0f; if(KEY=13) / D鍵運行 ; InitT(); CS0832=0X80; Delay(5); while(KEY!=14) /運行時按E停止鍵; s=getkey() ; KEY= s & 0x0f; DisplayLED
17、(); CS0832=VOUT; PIDTiaoSu(); while(KEY=14) /E鍵停止 ; for(i=2;i<=5;i+) LEDBufi = LEDMAP0; CS0832=0; s=getkey() ; KEY= s & 0x0f; if(KEY=12) speedset(); /停止后設定速度; DisplayLED(); if(KEY=12) speedset(); /C鍵設置速度值; 五、調試及結果正確連接硬件電路,打開偉福編譯程序,將編寫好的程序調出,設置偉福實驗裝置,點擊編譯、運行。按下設置鍵C,數(shù)碼管顯示,然后按鍵盤上的數(shù)字,設置電機速度,如按下32
18、,顯示結果,點擊A鍵確定,點擊啟動鍵D,電機運轉,后四位顯示電機實際轉速,顯示結果(理論值應是1920,允許有5%的誤差)。E鍵停止運行。如果想在設置其他值,點擊C,設置新的轉速,如果想讓電機停轉,點擊停止鍵E,并且重新設置電機轉速。運行過程中,如設置新的轉速30,運行結果為。但是在程序的編寫過程中,由于設置了電機啟動電壓的上下限,故實際測得的電機轉速有一定的范圍值,為(2245)r/s。超過這個范圍,實際測得的電機轉速誤差很大。六、心得體會通過這次期兩個星期的課程設計,發(fā)現(xiàn)了自己的很多不足,自己知識的很多漏洞,看到了自己的實踐經驗還比較缺乏,理論聯(lián)系實際的能力還急需提高。這次的課設我感覺收獲很大,雖然遇到了很多困難,但還是被我們一一解決了,它不單是要求你單純地完成一個題目,而是要求你對所學的知識都要弄懂,并且能將其
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度解除勞動合同經濟補償及社會保險銜接協(xié)議
- 二零二五年度能源互聯(lián)網合同管理制度及智能調度流程
- 二零二五年度鐵路運輸安全責任協(xié)議書
- 2025年度汽車維修店汽車美容裝潢業(yè)務轉讓合同
- 2025年度美甲店轉讓合同含店鋪裝修升級及開業(yè)慶典策劃
- 《睡谷的傳說》THE LEGEND OF SLEEPY HOLLOW小說英文原版電子版
- 2025年杭州駕校考試貨運從業(yè)資格證考試題庫
- 2025年新余道路運輸從業(yè)資格證考試內容是什么
- 感謝領導發(fā)言稿
- 2025年宣城道路運輸從業(yè)人員資格考試內容有哪些
- 剪刀式登高車安全技術交底
- 新疆2022年中考數(shù)學試卷(含答案)
- 2024年監(jiān)理考試-公路工程監(jiān)理工程師考試近5年真題附答案
- 2024-2030年中國小黃姜行業(yè)盈利模式與投資策略分析報告
- 職業(yè)技術學院攝影攝像技術專業(yè)人才培養(yǎng)方案
- 生產廠房消防施工合同范本
- 心房顫動診斷和治療中國指南(2023) 解讀
- 初中語文八年級上冊19《蘇州園林》公開課一等獎創(chuàng)新教學設計
- 2024年山東省泰安市中考英語真題(解析版)
- 常見急危重癥的快速識別要點與處理技巧課件
- 耳鼻咽喉科中級職稱(主治醫(yī)師)考試重點
評論
0/150
提交評論