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

正文內(nèi)容

基于單片機(jī)的直流電機(jī)轉(zhuǎn)速pid控制系統(tǒng)設(shè)計(jì)(完整版)

  

【正文】 由外部提供電源,范圍 3.O~5.5 V。、直流電機(jī)PID控制原理方框圖 電路連接圖第二章 硬件設(shè)計(jì)與實(shí)現(xiàn)直流電機(jī)PID控制電路的核心是兩塊89C51,用兩塊89C51作控制是為了電機(jī)控制和溫度檢測(cè)互不干擾,其中一塊控制電機(jī),另一塊實(shí)現(xiàn)溫度檢測(cè)。行線輸出是低電平,一旦有鍵按下,則輸入線就會(huì)被拉低,這樣,通過(guò)讀入輸入線的狀態(tài)就可得知是否有鍵按下了。除了進(jìn)入系統(tǒng)的正常初始化之外,當(dāng)單片機(jī)系統(tǒng)在運(yùn)行出錯(cuò)或操作錯(cuò)誤使系統(tǒng)處于思索狀態(tài)時(shí),也可按復(fù)位鍵重新啟動(dòng)。在接電瞬間,RESET端的電位與VCC相同,隨著充電電流的減少,RESET的電位逐漸下降。而在芯片內(nèi)部,XTAL1和XTAL2之間跨接晶體振蕩器和微調(diào)電容,從而構(gòu)成一個(gè)穩(wěn)定的自激振蕩器。sbit p36=P3^6。 //PID計(jì)算參數(shù)signed char T=20,Kp=30,Td=8,Ti=100,q0,q1,q2。}/**********************************************************************************/顯示子程序用來(lái)在數(shù)碼管中顯示電機(jī)的設(shè)定轉(zhuǎn)速或計(jì)算轉(zhuǎn)速以及實(shí)際轉(zhuǎn)速/**********************************************************************************///顯示子程序void display(uint a,uint b){ char i。i6。 TH0=0x06。 if(g==11) m=0。 shi=sv1%10。 temp=P1。 break。 case 4: if(!flag) yishu(3)。 case 8: if(!flag) yishu(7)。 break。 default: break。 P1=0xf0。0xf0。 ek_2=ek_1。 p34=0。 TL1=0XFC。// ES=1。sv=0。 } else if(ek=0) { p34=1。 } } 溫度檢測(cè)部分程序includeinclude define uchar unsigned char define uint unsigned intsbit DATA = P1^1。//定時(shí)器中斷次數(shù)uchar data buf[4]={0,0,0,0}。sbit bell=P1^0。int n。 DATA = 1。}ReadOneChar(void) //讀一個(gè)字節(jié){ uchar i=0。 delay(8)。 delay(10)。 Init_DS18B20()。//高位 t=b。 buf[2]=dd/100。j++) { P2=0xff。 //片選LCD1 P0=0x40。 P0=0x00。 //片選LCD4 delay(100)。//顯示百位 buf2[2]=temp2/100%10。 //顯示小數(shù)點(diǎn) delay(300)。 P2=0xfb。 P2=0xff。 for(n=0。 } } } if(k3!=1) { TR0=1。Red=1。 if(temp=550) {temp=1100。}}logo()//開(kāi)機(jī)的Logo { P0=0x40。 delay(50)。}}/**********************************************************************************/主函數(shù)/**********************************************************************************/void main(){ TCON=0x05。 ET0=1。} Red=0。/**********************************************************************************/ void time0(void) interrupt 1 using 1 //每隔10ms執(zhí)行一次此子程序 { TH0=0X56。i0=0。主要是按鍵不好使,要么按下沒(méi)反應(yīng),要么按下太久,系統(tǒng)把一次按鍵動(dòng)作當(dāng)成了幾次。輸出波形正常后再測(cè)試電機(jī)轉(zhuǎn)速,電機(jī)轉(zhuǎn)速仍然不正常。后來(lái)只在定時(shí)器中保留PWM波形調(diào)制部分將一些按鍵掃描之類(lèi)的函數(shù)都拿到主函數(shù)中,在定時(shí)器中設(shè)立標(biāo)志位。 運(yùn)行結(jié)果 手動(dòng)設(shè)定轉(zhuǎn)速的運(yùn)行情況如下 設(shè)定為根據(jù)溫度自動(dòng)運(yùn)行情況如下 根據(jù)溫度自動(dòng)運(yùn)行 第六章 課程設(shè)計(jì)體會(huì)經(jīng)過(guò)一周時(shí)間的學(xué)習(xí)實(shí)驗(yàn),我已經(jīng)對(duì)很熟悉了,在做課程設(shè)計(jì)的過(guò)程中,我感到自己學(xué)到的知識(shí)十分有限,所以查閱了大量書(shū)籍,通過(guò)這次書(shū)記的學(xué)習(xí),我的知識(shí)增長(zhǎng)了很多。修改PID參數(shù)后問(wèn)題沒(méi)有得到很好解決,后來(lái)才發(fā)是因?yàn)楝F(xiàn)變量的類(lèi)型給定義錯(cuò)了。 在調(diào)制PWM波形的時(shí)候發(fā)現(xiàn)電機(jī)的轉(zhuǎn)速并不隨輸出的控制信號(hào)的改變而變化。i0++。 temp=ss。 ss=ReadTemperature()。 TR1=1。 SCON=0X40。 //關(guān)閉顯示}void Show(){ if(temp=0) {HLight=1。 delay(50)。} else { alarmL=temp。 //關(guān)定時(shí)器 temp+=10。 } if(k4!=1) { delay(20)。n++) Show()。 P2=0Xfe。 delay(300)。 // 初始燈為滅的 P0=0x00。//顯示個(gè)位 for(j=0。 }}//顯示正值子函數(shù)void display(){ buf[1]=temp/1000。 //片選LCD3 P0=table[buf[3]]。 P2=0xff。 P2=0xfd。 buf[0]=dd%10。 t=t|a。 // 跳過(guò)讀序號(hào)列號(hào)的操作 WriteOneChar(0x44)。 dat=1。}WriteOneChar(unsigned char dat) //寫(xiě)一個(gè)字節(jié){ uchar i=0。 for (i=8。 //稍做延時(shí) DATA = 0。void key_to2()。sbit LLight=P1^3。int alarmH=500。//共陰極字型碼int temp,temp2。 display(sv,miaoshu)。 while(1) { keyscan()。 SCON=0x50。 //開(kāi)始定時(shí) ET0=1。 IT1=1。 uk_1=uk。 } }/**********************************************************************************/進(jìn)行pid的計(jì)算,用來(lái)在后面的程序中進(jìn)行電機(jī)的閉環(huán)控制/**********************************************************************************
點(diǎn)擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1