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

正文內(nèi)容

基于at89c51單片機(jī)的步進(jìn)電機(jī)控制系統(tǒng)畢業(yè)論文(存儲(chǔ)版)

  

【正文】 增加硬件的成本,但軟件簡(jiǎn)單,速度快,少占用CPU的時(shí)間,提高了系統(tǒng)的響應(yīng)速度,軟件方法的優(yōu)點(diǎn)是節(jié)省硬件,降低系統(tǒng)的成本,且更改靈活,有利于系統(tǒng)的小型化,其主要的缺點(diǎn)是占用CPU時(shí)間較多,降低系統(tǒng)的響應(yīng)速度。 外部復(fù)位電路上電復(fù)位:接通電源的瞬間,電容C上的電壓很小,RST引腳為高電平。它是以單片機(jī)為核心的控制電路,可以實(shí)現(xiàn)步進(jìn)電機(jī)根據(jù)設(shè)定的步數(shù)進(jìn)行自動(dòng)加減速控制,使控制系統(tǒng)以最短的時(shí)間走完所規(guī)定的步數(shù)而又不發(fā)生失步的現(xiàn)象。便于調(diào)試、連接、移植、修改。本系統(tǒng)的軟件采用C語(yǔ)言編寫,在此本文主要介紹軟件的各個(gè)模塊功能與軟件流程。 變速控制中轉(zhuǎn)速與步長(zhǎng)之間的關(guān)系 主程序設(shè)計(jì) 主程序工作過(guò)程(1)系統(tǒng)初始化。(4)定時(shí)器T0啟動(dòng)。 定時(shí)器T0中斷程序流程圖。 (2)并行接法:使用并行接法時(shí)要對(duì)每個(gè)數(shù)碼管用I/O口單獨(dú)輸入數(shù)據(jù),占用資源較多。顯示程序只需要將數(shù)組中的內(nèi)容一個(gè)個(gè)送入SBUF 寄存器中,就可以實(shí)現(xiàn)步數(shù)的顯示。1/150 80 mA400 pps500 pps 步進(jìn)電機(jī)轉(zhuǎn)速與頻率的關(guān)系步進(jìn)電機(jī)是機(jī)電控制中一種常用的執(zhí)行機(jī)構(gòu),它的用途是將電脈沖轉(zhuǎn)化為角位移,通俗地說(shuō):當(dāng)步進(jìn)驅(qū)動(dòng)器接收到一個(gè)脈沖信號(hào),它就驅(qū)動(dòng)步進(jìn)電機(jī)按設(shè)定的方向轉(zhuǎn)動(dòng)一個(gè)固定的角度(步進(jìn)角)。 本章小結(jié)本章首先介紹了軟件設(shè)計(jì)原則,其次介紹了主程序、T0中斷程序、調(diào)速程序、顯示程序等程序的設(shè)計(jì)。根據(jù)系統(tǒng)的要求確定控制系統(tǒng)的總體設(shè)計(jì)方案。參考文獻(xiàn)1. [J],電子技術(shù)(上海),2009,(4),8283.2. [M],北京:中國(guó)電力出版社,1998,140152.3. [M],北京:機(jī)械工業(yè)出版社,2007,294297.4. 劉寶廷,[M],哈爾濱:哈爾濱工業(yè)大學(xué)出版社,1997.5. 潘新民,[M],北京:電子工業(yè)出版社,2006,128139.6. 王玉林,[J],電機(jī)與控制應(yīng)用,2006,33(1),5357.7. 閆劍虹,[J],空間電子技術(shù),2009,6(2),124127.8. 王建,張玉峰,[J],工礦自動(dòng)化,2006,(6),6566.9. [J]制造業(yè)自動(dòng)化,2009,31(3),112115.10. 杭柏林,[J],2006,(2),2225.11. [J],自動(dòng)化技術(shù)與應(yīng)用,2009,28(9),8689.12. ,西安:西安電子科技大學(xué)出版社[M],2007.13. [M],濟(jì)南:山東科學(xué)技術(shù)出版社,2002,107108.14. [M],北京:電子工業(yè)出版社,2009.15. -51系列單片機(jī)實(shí)用接口技術(shù)[M].北京航空航天大學(xué)出版社,1993,1253.16. 楊宏,[J],現(xiàn)代電子技術(shù),2010,(5),104109.17. [M],北京:人民郵電出版社,2006,543546.18. [M],北京:機(jī)械工業(yè)出版社,2007.附錄附錄A 系統(tǒng)程序(C)include //unsigned char code table[]={0x3f,0x06,0x5b,0x4f, //段碼 0x66,0x6d,0x7d,0x07, 0x7f,0x6f,0x77,0x7c, 0x39,0x5e,0x79,0x71}。 //正轉(zhuǎn)指示燈sbit led2=P2^1。 //記錄數(shù)字按鍵的次數(shù)unsigned char count,count1。j++) for (i=0。 //判斷數(shù)據(jù)是否發(fā)送完TI=0。 IE=0x82。 //正轉(zhuǎn)指示燈 led3=1。 } }/**************************判斷按鍵是否松開************************/void keyloosen(void){ unsigned char temp。 P1=0xfe。 if(temp!=0xf0) { temp=P1。 break。 temp=P1。 temp=tempamp。 case 0x70: //7 key=7。 temp=tempamp。0xf0。 case 0x70: //停止按鍵 key=11。 temp=P1。 temp=tempamp。 //反轉(zhuǎn)指示燈亮 zf=1。 }}/*****************************調(diào)速函數(shù)*****************************///功能:根據(jù)輸入的步數(shù)是否大于100,再確定是否需要進(jìn)行調(diào)速,若步數(shù)大//于100,則加速,當(dāng)步數(shù)小于100后就減速;當(dāng)輸入步數(shù)小于100,則以最低//設(shè)定的最低速度運(yùn)行void changespeed(void){ if((dispbuf[3]==0)amp。 } else dispbuf[2]=dispbuf[2]1。 //調(diào)用初始化函數(shù) while(1) { keyscan()。 //滅啟動(dòng)指示燈 } }}/***********************定時(shí)器T0啟動(dòng)中斷函數(shù)**********************/void t0(void) interrupt 1 { speedtemp=speedflag25。 //調(diào)用步數(shù)減一函數(shù) stop()。 if(count==2) //一個(gè)周期走一步 { count=0。 //定時(shí)器T0停止計(jì)數(shù) led3=1。 //停止標(biāo)志位 keycount=0。 if(dispbuf[2]==0) { if(dispbuf[3]!=0) dispbuf[2]=9。 //判斷按鍵是否松開 } }/**************************調(diào)速范圍控制函數(shù)************************/// 功能:調(diào)速范圍控制在2599 r/min,防止步進(jìn)電機(jī)因速度太高發(fā)生失步void speedrange(void) { if(speedflag=25) speedflag=25。 case 0xd0: //反轉(zhuǎn)按鍵 led1=0。0xf0。 //調(diào)用數(shù)字按鍵處理函數(shù) } keyloosen()。 state=1。 if(temp!=0xf0) { temp=P1。 //判斷按鍵是否松開 } P1=0xfb。 case 0xb0: //6 key=6。0xf0。 //調(diào)用數(shù)字按鍵處理函數(shù) } keyloosen()。 break。 temp=tempamp。0xf0。 display()。 zf=0。 dispbuf[2]=0。i++) //發(fā)送4位數(shù)據(jù) { SBUF=table[dispbuf[i]]。 for (j=0。 //顯示緩沖區(qū)unsigned char key。 //脈沖信號(hào)輸出sbit zf=P0^1。論文雖然完成了系統(tǒng)的設(shè)計(jì),但由于開發(fā)經(jīng)驗(yàn)不足,系統(tǒng)一定存在不妥之處,尤其是步進(jìn)電機(jī)的應(yīng)用方面有待進(jìn)一步的研究和探討。查閱相關(guān)資料。=20個(gè)脈沖,設(shè)轉(zhuǎn)速為N,則每分鐘需要的脈沖個(gè)數(shù)為20N個(gè)脈沖,每個(gè)脈沖的周期為 (單步時(shí)間)【18】: T=1/20N(min)=60/20N(s)=601000000/20N(us)=3000000/N(us)定時(shí)器T0的定時(shí)時(shí)間為:T1=T/2T0的計(jì)數(shù)初值:Tx=65536foscT1/12 =6553612T1/12 =65536T/2 =655361500000/N由上式可以算出每個(gè)轉(zhuǎn)速對(duì)應(yīng)T0的計(jì)數(shù)初值,例如轉(zhuǎn)速為25 r/min時(shí)對(duì)應(yīng)的T0的計(jì)數(shù)初值為Tx=655361500000/25=5536;轉(zhuǎn)速為99 r/min時(shí)對(duì)應(yīng)的T0計(jì)數(shù)初值為Tx=655361500000/99=50384;其它轉(zhuǎn)速對(duì)應(yīng)T0的計(jì)數(shù)初值如附錄B所示。 按鍵的功能與相應(yīng)鍵碼的定義鍵號(hào)功能鍵碼000EEH110DEH220BEH337EH440EDH550DDH660BDH777DH880EBH990DBH10啟動(dòng)0BBH11停止7BH12正轉(zhuǎn)0E7H13反轉(zhuǎn)0D7H14復(fù)位0B7H15未定義77H按鍵功能說(shuō)明:本程序的數(shù)字按鍵用于設(shè)定步進(jìn)電機(jī)的運(yùn)行步數(shù);啟動(dòng)停止按鍵用于控制步進(jìn)電機(jī)的啟動(dòng)與停止;正反轉(zhuǎn)按鍵用于控制步進(jìn)電機(jī)的正反轉(zhuǎn);復(fù)位按鍵用于當(dāng)輸入?yún)?shù)有誤時(shí),可通過(guò)復(fù)位按鍵重新輸入?yún)?shù)。這樣在執(zhí)行寫SBUF寄存器操作后,通過(guò)查詢TI標(biāo)志來(lái)確定發(fā)送過(guò)程是否完成,當(dāng)發(fā)送完成后需要將TI清零,以便輸出新的串行數(shù)據(jù)【17】。通過(guò)Proteus軟件的仿真,所編寫的程序達(dá)到了預(yù)期的效果,仿真實(shí)現(xiàn)了程序的調(diào)試過(guò)程。 主程序工作流程圖。(3)系統(tǒng)啟動(dòng)。當(dāng)步數(shù)為0時(shí),步進(jìn)電機(jī)停止運(yùn)行。(6)實(shí)現(xiàn)全面軟件抗干擾設(shè)計(jì)。應(yīng)用系統(tǒng)種類繁多,應(yīng)用軟件各不相同,但是一個(gè)優(yōu)秀的應(yīng)用系統(tǒng)應(yīng)具有下列特點(diǎn)【15】:(1)軟件結(jié)構(gòu)清楚、簡(jiǎn)潔、流程合理。松開復(fù)位按鍵后,電容C充電,RST引腳電位下降,使CPU脫離復(fù)位狀態(tài)。 數(shù)碼管顯示電路 外部復(fù)位電路設(shè)計(jì)MCS51系列單片機(jī)采用高電平復(fù)位方式,為保證CPU內(nèi)部各單元電路可靠復(fù)位,RST引腳的復(fù)位脈沖高電平維持時(shí)間必須大于2個(gè)機(jī)器周期(即24個(gè)振蕩周期)。 環(huán)形脈沖分配器電路這種方法適用于控制任意類型的步進(jìn)電機(jī)。用74LS164的clk端作為環(huán)形脈沖分配器的CP脈沖信號(hào)輸入端,加減計(jì)數(shù)控制端作為正反轉(zhuǎn)控制信號(hào)輸入端。因此,AT89C51系列單片機(jī)以其優(yōu)越的性能在控制系統(tǒng)設(shè)計(jì)中得到了廣泛的應(yīng)用,由于其內(nèi)部功能完善,可以大大減少擴(kuò)展系統(tǒng)外圍電路,而且性能穩(wěn)定,因此在本控制系統(tǒng)的設(shè)計(jì)中,選用了AT89C51單片機(jī)作為中央控制單元。 系統(tǒng)硬件框圖 主要元件的選擇 單片機(jī)的選擇隨著微電子工藝水平的提高,近十年來(lái)單片微型計(jì)算機(jī)有了飛速的發(fā)展。但必須注意,由軟件實(shí)現(xiàn)的硬件功能,其響應(yīng)時(shí)間要比直接用硬件的長(zhǎng),而且占用CPU時(shí)間。的步進(jìn)電機(jī),從供料站到加工站的距離為470mm,需要總的脈沖個(gè)數(shù)為1709個(gè)【11】。因此步進(jìn)電機(jī)的運(yùn)動(dòng)控制在自動(dòng)生產(chǎn)線中得到了廣泛的應(yīng)用。這種方法的優(yōu)點(diǎn)是減少占用CPU的時(shí)間,提高控制系統(tǒng)的效率和實(shí)時(shí)處理能力。例如,在三相步進(jìn)電機(jī)中,啟動(dòng)或停止時(shí),用三相六拍,改用三相三拍的的分配方式,在快到達(dá)終點(diǎn)時(shí),再次采用三相六拍的控制方式,以達(dá)到減速的目的。由于步進(jìn)電機(jī)的速度正比于脈沖頻率,控制步進(jìn)電機(jī)的速度實(shí)際上就是控制脈沖頻率。對(duì)于中等或比較長(zhǎng)的運(yùn)行距離,步進(jìn)電機(jī)加速后應(yīng)該有一個(gè)恒速的過(guò)程。由此可見(jiàn),一個(gè)靜止的步進(jìn)電機(jī)不可能一下子穩(wěn)定到較高的工作頻率,必須在啟動(dòng)的瞬間采取加速的措施。反之當(dāng)A為0時(shí)經(jīng)反相后,使發(fā)光二極管發(fā)光,光敏三極管導(dǎo)通,從而使達(dá)林頓管截止,A相繞組不通電,控制B、C、D相亦然。由于旋轉(zhuǎn)電動(dòng)勢(shì)基本上與電動(dòng)機(jī)轉(zhuǎn)速成正比,轉(zhuǎn)速越高,電動(dòng)勢(shì)越大,繞組電流越小,從而使電動(dòng)機(jī)輸出轉(zhuǎn)矩也隨著轉(zhuǎn)速升高而下降。對(duì)于功率較大的步進(jìn)電機(jī),由于繞組所需要的電流較大、電壓高、反電動(dòng)勢(shì)也大,因此需要用大功率的的晶體管驅(qū)動(dòng)。當(dāng)步進(jìn)電機(jī)截止時(shí),若通過(guò)二極管的初始電流為額定電流In,即In=U/R則晶體管集—射極間的壓降為Uce=U+RsIn=U(1+Rs/R)這樣為使UceUcer則 RsR(Ucer/U-1) 二極管—電阻續(xù)流回路 負(fù)載曲線由以上分析可知續(xù)流電路的特點(diǎn)如下:(1) 斷電相的磁場(chǎng)能量總是消耗在回路的電阻上,其中包括電動(dòng)機(jī)繞組自身的電阻。所以驅(qū)動(dòng)電路除了對(duì)步進(jìn)電機(jī)繞組提供導(dǎo)通回路外,還必須提供一個(gè)繞組斷電時(shí)的續(xù)流回路,其作用是既要保證電流的泄放的速度,同時(shí)又要抑制電感電勢(shì),保護(hù)晶體管不受感應(yīng)電動(dòng)勢(shì)峰值的沖擊。當(dāng)步進(jìn)電機(jī)下一相導(dǎo)通時(shí),斷電相繞組中的衰減電流對(duì)步進(jìn)電機(jī)起制動(dòng)作用。當(dāng)為高電平時(shí)做減法計(jì)數(shù),為反轉(zhuǎn)狀態(tài)。由于勵(lì)磁狀態(tài)是按運(yùn)行拍數(shù)循環(huán)的,所以存儲(chǔ)器輸出的狀態(tài)也必須按拍數(shù)循環(huán)出現(xiàn),這就要求計(jì)數(shù)器是可逆計(jì)數(shù)器,同時(shí)計(jì)數(shù)長(zhǎng)度是運(yùn)行循環(huán)拍數(shù)的整數(shù)倍。 含有EPROM 環(huán)形脈沖分配器用EPROM設(shè)計(jì)環(huán)形脈沖分配器,具有如下的特點(diǎn):線路簡(jiǎn)單。如果全部用硬件來(lái)搭成,結(jié)構(gòu)是相當(dāng)復(fù)雜的,不能滿足步進(jìn)電機(jī)驅(qū)動(dòng)系統(tǒng)的需要,為此提出一種用EPROM搭建的環(huán)形分配器,以滿足不同的要求。環(huán)形分配器的主要功能是把單片機(jī)發(fā)出的脈沖信號(hào)按一定的規(guī)律分
點(diǎn)擊復(fù)制文檔內(nèi)容
數(shù)學(xué)相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1