課程設(shè)計--直流伺服電機數(shù)字調(diào)速控制系統(tǒng)_第1頁
已閱讀1頁,還剩18頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、<p>  計算機控制課程設(shè)計報告</p><p>  題 目:直流伺服電機數(shù)字調(diào)速控制系統(tǒng)</p><p>  院 (系):電子工程與自動化學院 </p><p>  專 業(yè): 自動化 </p><p>  學生姓名: </p>

2、<p>  學 號: </p><p>  指導教師: </p><p>  2010年 9 月 18 日</p><p><b>  一、引言4</b></p><p><b>  二、設(shè)計任務4<

3、;/b></p><p><b>  2.1設(shè)計題目4</b></p><p><b>  2.2設(shè)計要求4</b></p><p><b>  三、設(shè)計原理4</b></p><p>  3.1步進電機簡介4</p><p>  3.2

4、24C08簡介6</p><p>  3.3LM393 簡介-------------------------------------------------------------------------------------------------------------7</p><p>  3.4 ULM2003 簡介-----------------------------

5、-----------------------------------------------------------------------------7</p><p>  四、系統(tǒng)方案設(shè)計與比較-------------------------------------------------------------------------------------------------------8<

6、/p><p>  五、主要模塊設(shè)計-------------------------------------------------------------------------------------------------------------8</p><p>  5.1整體電路設(shè)計及參數(shù)選擇----------------------------------------------

7、-----------------------------------------------8</p><p>  5.2驅(qū)動電路---------------------------------------------------------------------------------------------8</p><p>  六、系統(tǒng)調(diào)試與分析---------------

8、------------------------------------------------------------------------------------12</p><p><b>  一.摘要</b></p><p>  直流伺服電動機具有優(yōu)良的調(diào)速特性和良好的啟動性能和調(diào)速特性,調(diào)速平滑、方便,調(diào)速范圍廣;過載能力大,能承受頻繁的沖擊負載,可實現(xiàn)頻

9、繁的無級快速起動、制動和反轉(zhuǎn);并且可以輸出正弦信號,供測速使用,能夠滿足生產(chǎn)過程自動化系統(tǒng)各種不同的特殊運行要求,啟動轉(zhuǎn)矩大,最大轉(zhuǎn)矩大,能在寬廣的范圍內(nèi)平滑、經(jīng)濟地調(diào)速,轉(zhuǎn)速控制容易,調(diào)速后效率很高。與交流調(diào)速相比,直流電機結(jié)構(gòu)復雜,生產(chǎn)成本高,維護工作量大。電動機調(diào)速系統(tǒng)采用微機實現(xiàn)數(shù)字化控制,是電氣傳動發(fā)展的主要方向之一。采用微機控制后,整個調(diào)速系統(tǒng)實現(xiàn)全數(shù)字化,結(jié)構(gòu)簡單,可靠性高,操作維護方便,電動機穩(wěn)態(tài)運轉(zhuǎn)時轉(zhuǎn)速精度可達到較高

10、水平,靜動態(tài)各項指標均能較好地滿足工業(yè)生產(chǎn)中高性能電氣傳動的要求。由于單片機性能優(yōu)越,具有較佳的性能價格比,所以單片機在工業(yè)過程及設(shè)備控制中得到日益廣泛的應用。</p><p>  PWM 調(diào)速系統(tǒng)與可控整流式調(diào)速系統(tǒng)相比有下列優(yōu)點:由于PWM 調(diào)速系統(tǒng)的開關(guān)頻率較高,僅靠電樞電感的濾波作用就可獲得平穩(wěn)的直流電流,低速特性好;同樣,由于開關(guān)頻率高,快速響應特性好,動態(tài)抗干擾能力強,可以獲得很寬的頻帶;開關(guān)器件只工

11、作在開關(guān)狀態(tài),主電路損耗小,裝置效率高。PWM 調(diào)速系統(tǒng)很早已出現(xiàn),但是因為缺乏高速開關(guān)元件而未能在生產(chǎn)實際中推廣應用。在近年來,由于大功率開關(guān)器件的制造成功和成本的不斷下降, PWM調(diào)速系統(tǒng)又受到重視。</p><p>  關(guān)鍵字:伺服電機,單片機,PWM,調(diào)速</p><p><b>  二、設(shè)計任務</b></p><p>  1、 設(shè)計

12、題目:直流伺服電機數(shù)字調(diào)速控制系統(tǒng)。</p><p><b>  2、 課設(shè)內(nèi)容:</b></p><p> ?、?通過鍵盤設(shè)置電機轉(zhuǎn)速(給定值),通過控制程序使直流電機達到給定轉(zhuǎn)速;</p><p> ?、谥绷魉欧姍C反饋的正弦信號經(jīng)過處理來檢測電機轉(zhuǎn)動的頻率;</p><p>  ③ 通過PID調(diào)節(jié),來輸出校正后的P

13、WM脈沖;</p><p><b>  三、設(shè)計原理</b></p><p>  1. 直流伺服電機簡介</p><p>  直流伺服電機,它包括定子、轉(zhuǎn)子鐵芯、電機轉(zhuǎn)軸、伺服電機繞組換向器、伺服電機繞組、測速電機繞組、測速電機換向器,所述的轉(zhuǎn)子鐵芯由矽鋼沖片疊壓固定在電機轉(zhuǎn)軸上構(gòu)成, </p><p>  直流伺服電機

14、的種類 </p><p>  小慣量直流電機——印刷電路板的自動鉆孔機 </p><p>  中慣量直流電機(寬調(diào)速直流電機)——數(shù)控機床的進給系統(tǒng) </p><p>  大慣量直流電機——數(shù)控機床的主軸電機 </p><p>  特種形式的低慣量直流電機 </p><p>  直流伺服電機的基本特性 </p&g

15、t;<p>  1、機械特性 在輸入的電樞電壓Ua保持不變時,電機的轉(zhuǎn)速n隨電磁轉(zhuǎn)矩M變化而變化的規(guī)律,稱直流電機的機械特性。 </p><p>  2、調(diào)節(jié)特性 直流電機在一定的電磁轉(zhuǎn)矩M(或負載轉(zhuǎn)矩)下電機的穩(wěn)態(tài)轉(zhuǎn)速n隨電樞的控制電壓Ua變化而變化的規(guī)律,被稱為直流電機的調(diào)節(jié)特性。 </p><p>  3.3、動態(tài)特性 從原來的穩(wěn)定狀態(tài)到新的穩(wěn)定狀態(tài),存在一個過渡過程,

16、這就是直流電機的動態(tài)特性。</p><p>  2. 電壓比較器LM339簡介</p><p>  LM339集成塊內(nèi)部裝有四個獨立的電壓比較器,該電壓比較器的特點是:1)失調(diào)電壓小,典型值為2mV;2)電源電壓范圍寬,單電源為2-36V,雙電源電壓為±1V-±18V;3)對比較信號源的內(nèi)阻限制較寬;4)共模范圍很大,為0~(Ucc-1.5V)Vo;5)差動輸入電壓范圍

17、較大,大到可以等于電源電壓;6)輸出端電位可靈活方便地選用。LCD顯示模塊3.顯示模塊1602芯片介紹</p><p>  1602液晶模塊內(nèi)部的字符發(fā)生存儲器(CGROM)已經(jīng)存儲了160個不同的點陣字符圖形,這些字符有:阿拉伯數(shù)字、英文字母的大小寫、常用的符號、和日文假名等,每一個字符都有一個固定的代碼,比如大寫的英文字母“A”的代碼是01000001B(41H),顯示時模塊把地址41H中的點陣字符圖形顯示出

18、來,我們就能看到字母“A”。因為1602識別的是ASCII碼,試驗可以用ASCII碼直接賦值,在單片機編程中還可以用字符型常量或變量賦值,如'A’。1602采用標準的16腳接口,其中:</p><p>  第1腳:VSS為電源地</p><p>  第2腳:VDD接5V電源正極</p><p>  第3腳:V0為液晶顯示器對比度調(diào)整端,接正電源時對比度最弱,

19、接地電源時對比度最高(對比度過高時會產(chǎn)生“鬼影”,使用時可以通過一個10K的電位器調(diào)整對比度)。</p><p>  第4腳:RS為寄存器選擇,高電平1時選擇數(shù)據(jù)寄存器、低電平0時選擇指令寄存器。</p><p>  第5腳:RW為讀寫信號線,高電平(1)時進行讀操作,低電平(0)時進行寫操作。</p><p>  第6腳:E(或EN)端為使能(enable)端。&

20、lt;/p><p>  第7~14腳:D0~D7為8位雙向數(shù)據(jù)端。</p><p>  第15~16腳:空腳或背燈電源。15腳背光正極,16腳背光負極。</p><p><b>  LCD顯示電路</b></p><p><b>  4.PWM控制原理</b></p><p> 

21、 PWM(Pulse Width Modulation)控制——脈沖寬度調(diào)制技術(shù),通過對一系列脈沖的寬度進行調(diào)制,來等效地獲得所需要波形(含形狀和幅值)。 控制電機的時候,電源并非連續(xù)地向電機供電,而是在一個特定的頻率下以方波脈沖的形式提供電能。不同占空比的方波信號能對電機起到調(diào)速作用,這是因為電機實際上是一個大電感,它有阻礙輸入電流和電壓突變的能力,因此脈沖輸入信號被平均分配到作用時間上,這樣,改變在始能端PE2 和PD5 上輸入方

22、波的占空比就能改變加在電機兩端的電壓大小,從而改變了轉(zhuǎn)速。此電路中用微處理機來實現(xiàn)脈寬調(diào)制,通常的方法有兩種:(1)用軟件方式來實現(xiàn),即通過執(zhí)行軟件延時循環(huán)程序交替改變端口某個二進制位輸出邏輯狀態(tài)來產(chǎn)生脈寬調(diào)制信號,設(shè)置不同的延時時間得到不同的占空比。(2)硬件實驗自動產(chǎn)生PWM 信號,不占用CPU 處理的時間。這就要用到ATMEGA8515L 的在PWM 模式下的計數(shù)器1,具體內(nèi)容可參考相關(guān)書籍。</p>&l

23、t;p>  四、系統(tǒng)方案設(shè)計與比較</p><p> ?。ㄒ唬┓桨敢唬篜WM波調(diào)速</p><p>  采用由達林頓管組成的H型PWM電路。用單片機控制達林頓管使之工作在占空比可調(diào)的開關(guān)狀態(tài),精確調(diào)整電動機轉(zhuǎn)速。這種電路由于工作在管子的飽和截止模式下,效率非常高;H型電路保證了可以簡單地實現(xiàn)轉(zhuǎn)速和方向的控制;電子開關(guān)的速度很快,穩(wěn)定性也極佳,是一種廣泛采用的PWM調(diào)速技術(shù)。我們采用

24、了定頻調(diào)寬方式,因為采用這種方式,電動機在運轉(zhuǎn)時比較穩(wěn)定;并且在采用單片機產(chǎn)生PWM脈沖的軟件實現(xiàn)上比較方便。且對于直流電機,采用軟件延時所產(chǎn)生的定時誤差在允許范圍。</p><p><b>  PWM波調(diào)速電路</b></p><p><b>  其結(jié)構(gòu)圖如圖所示:</b></p><p><b>  電機調(diào)速

25、系統(tǒng)框圖</b></p><p> ?。ǘ┓桨付壕чl管調(diào)速</p><p>  采用閘流管或汞弧整流器的離子拖動系統(tǒng)是最早應用靜止式變流裝置供電的直流電動機調(diào)速系統(tǒng)。1957年,晶閘管(俗稱“可控硅”)問世,到了60年代,已生產(chǎn)出成套的晶閘管整流裝置,并應用于直流電動機調(diào)速系統(tǒng),即晶閘管可控整流器供電的直流調(diào)速系統(tǒng)(V-M系統(tǒng))。如圖1-3,VT是晶閘管可控整流器,通過調(diào)節(jié)

26、觸發(fā)裝置GT的控制電壓來移動觸發(fā)脈沖的相位,即可改變整流電壓,從而實現(xiàn)平滑調(diào)速。晶閘管整流裝置不僅在經(jīng)濟性和可靠性上都有很大提高,而且在技術(shù)性能上也顯示出較大的優(yōu)越性;晶閘管可控整流器的功率放大倍數(shù)在以上,其門極電流可以直接用晶體管來控制,不再像直流發(fā)電機那樣需要較大功率的放大器。在控制作用的快速性上,變流機組是秒級,而晶閘管整流器是毫秒級,這將大大提高系統(tǒng)的動態(tài)性能。因此,在60年代到70年代,晶閘管可控整流器供電的直流調(diào)速系統(tǒng)(V-

27、M系統(tǒng))代替旋轉(zhuǎn)變流機組直流電動機調(diào)速系統(tǒng)(G-M系統(tǒng)),得到了廣泛的應用。但是由于晶閘管的單向?qū)щ娦?,它不允許電流反向,給系統(tǒng)的可逆運行造成困難;晶閘管對過電壓、過電流和過高的與都十分敏感,若超過允許值會在很短的時間內(nèi)損壞器件。另外,由諧波與無功功率引起電網(wǎng)電壓</p><p>  圖3 晶閘管可控整流器供電的直流調(diào)速系統(tǒng)(V-M系統(tǒng))</p><p>  兼于方案一調(diào)速特性優(yōu)良、調(diào)整

28、平滑、調(diào)速范圍廣、過載能力大,因此本設(shè)計采用方案一。</p><p><b>  五、主要模塊的設(shè)計</b></p><p>  1.PWM波軟件軟件設(shè)計</p><p><b>  程序流程圖:</b></p><p><b>  2.測速軟件設(shè)計</b></p>

29、<p><b>  六.系統(tǒng)功能調(diào)試</b></p><p><b> ?。ㄒ唬┱{(diào)試軟件介紹</b></p><p>  KeilC51軟件提供豐富的庫函數(shù)和功能強大的集成開發(fā)調(diào)試工具,全Windows界面。另外重要的一點,只要看一下編譯后生成的匯編代碼,就能體會到KeilC51生成的目標代碼效率非常之高,多數(shù)語句生成的匯編代碼很緊

30、湊,容易理解。在開發(fā)大型軟件時更能體現(xiàn)高級語言的優(yōu)勢。KEIL C51編譯器由uVision2集成開發(fā)環(huán)境與編輯器和調(diào)試器以及C51編譯器組成。其中uVision2集成開發(fā)環(huán)境中的工程(project)是由源文件、開發(fā)工具選項以及編程說明三部分組成的;編輯器和調(diào)試器包括源代碼編輯器、斷點設(shè)置、調(diào)試函數(shù)語言、變量和存儲器。</p><p>  Proteus軟件是一種低投資的電子設(shè)計自動化軟件,提供可仿真數(shù)字和模擬

31、、交流和直流等數(shù)千種元器件和多達30多個元件庫。Proteus軟件提供多種現(xiàn)實存在的虛擬儀器儀表。此外,Proteus還提供圖形顯示功能,可以將線路上變化的信號,以圖形的方式實時地顯示出來。這些虛擬儀器儀表具有理想的參數(shù)指標,例如極高的輸入阻抗、極低的輸出阻抗,盡可能減少儀器對測量結(jié)果的影響,Proteus軟件提供豐富的測試信號用于電路的測試。這些測試信號包括模擬信號和數(shù)字信號。提供Schematic Drawing、SPICE仿真與P

32、CB設(shè)計功能,同時可以仿真單片機和周邊設(shè)備,可以仿真51系列、AVR、PIC等常用的MCU,并提供周邊設(shè)備的仿真,例如373、led、示波器等。Proteus提供了大量的元件庫,有RAM、ROM、鍵盤、馬達、LED、LCD、AD/DA、部分SPI器件、部分IIC器件,編譯方面支持Keil和MPLAB等編譯器。一臺計算機、一套電子仿真軟件,在加上一本虛擬實驗教程,就可相當于一個設(shè)備先進的實驗室。以虛代實、以軟代硬,就建立一個完善的虛擬實驗

33、室。在計算機上學習電工基礎(chǔ),模擬電路、數(shù)字電路、</p><p> ?。ǘ┲绷麟姍C的調(diào)速功能仿真</p><p>  說明:調(diào)試頻率計工作的時候使用信號發(fā)生器模擬電機速度,平率能夠測量后就把線全接起來調(diào)試整體的程序。</p><p><b>  七.小結(jié)</b></p><p>  通過本次課程設(shè)計,對伺服電機的運用有

34、了進一步的了解,數(shù)字控制跟模擬控制有很大的不同,需要測試的數(shù)據(jù)及輸出的只能是數(shù)字量,這樣就要求在外圍電路上加上一些外圍電路了。在電路板的制作過程中遇到了一些問題,經(jīng)過老師的指點,我們最后把電路改好了。程序調(diào)節(jié)上比較麻煩,不過通過prutus仿真軟件調(diào)節(jié)起來就方便了許多,在硬件和軟件的調(diào)試過程中學到了很多東西,同時也對微機控制的一些原理和方法有了更深的了解。</p><p><b>  八.附件</

35、b></p><p><b>  最小系統(tǒng)原理圖:</b></p><p>  電壓比較器于電機h橋驅(qū)動電路原理圖:</p><p><b>  最小系統(tǒng)PCB:</b></p><p><b>  程序:</b></p><p>  #inclu

36、de <reg51.h></p><p>  #define uchar unsigned char</p><p>  #define uint unsigned int</p><p>  #define LCD P0</p><p>  #define tim 500</p><p>  int e

37、0=0,e1=0,e2=0,out,outt,s;</p><p>  uchar code str1[]={"set:___ "};</p><p>  uchar code str2[]={"y:___HZ"};</p><p>  uchar code str3[]={"P:10 I:1 D:1"};

38、</p><p>  uchar ddisplay[4]={0,0,0,0};</p><p>  uchar sheding[3]={0,0,0};</p><p>  uchar C_PID[4]={1,0,1,1};</p><p>  uchar temp[4],temps[4];</p><p>  ucha

39、r dispcount=0,ZKB1;</p><p>  uint tcount=0,TT0cct=0;</p><p>  uchar kp,ki,kd;</p><p>  sbit P2_3=P2^3;</p><p>  sbit P2_4=P2^4; </p><p>  sbit P2_5=P2^5; &

40、lt;/p><p>  sbit P2_6=P2^6;</p><p>  sbit P2_7=P2^7; </p><p>  sbit RS=P2^0;</p><p>  sbit RW=P2^1;</p><p>  sbit EN=P2^2;</p><p>  sbit P10=P1^0

41、;</p><p>  sbit P11=P1^1;</p><p>  sbit P12=P3^2;</p><p>  sbit P13=P1^3;</p><p>  sbit P14=P1^4;</p><p>  sbit P15=P1^5;</p><p>  sbit P16=P1

42、^6;</p><p>  bit ff,keyk,keyflag=0;</p><p>  int y,y0,yy=0,r,rr=10,u,du,uu,para,zhkbi=0;</p><p>  void delay1us(int k);</p><p>  void wr_com(uchar com);</p><

43、;p>  void wr_dat(uchar dat);</p><p>  void lcd_init();</p><p>  void disp1();</p><p>  void key();</p><p>  void display(uchar *p);</p><p>  void init_p

44、lay1();</p><p>  void cepinlv();</p><p>  void pwm_kongzhi(int uu);</p><p>  void PID();</p><p>  void delay1ms(uint ms)</p><p>  {uint i,j;</p>&l

45、t;p>  for(i=0;i<ms;i++)</p><p>  for(j=0;j<100;j++);</p><p><b>  }</b></p><p>  /*************************lcd1602程序**************************/</p><p&

46、gt;  void wr_com(uchar com)//寫指令//</p><p>  { delay1ms(1);</p><p><b>  RS=0;</b></p><p><b>  RW=0;</b></p><p><b>  EN=0;</b></p&

47、gt;<p><b>  P0=com;</b></p><p>  delay1ms(1);</p><p><b>  EN=1;</b></p><p>  delay1ms(1);</p><p><b>  EN=0;</b></p>&l

48、t;p><b>  }</b></p><p>  void wr_dat(uchar dat)//寫數(shù)據(jù)//</p><p>  { delay1ms(1);;</p><p><b>  RS=1;</b></p><p><b>  RW=0;</b></p

49、><p><b>  EN=0;</b></p><p><b>  P0=dat;</b></p><p>  delay1ms(1);</p><p><b>  EN=1;</b></p><p>  delay1ms(1);</p>&

50、lt;p><b>  EN=0;</b></p><p><b>  }</b></p><p>  void lcd_init()//初始化設(shè)置//</p><p>  {delay1ms(15);</p><p>  wr_com(0x38);delay1ms(5);</p>

51、<p>  wr_com(0x08);delay1ms(5);</p><p>  wr_com(0x01);delay1ms(5);</p><p>  wr_com(0x06);delay1ms(5);</p><p>  wr_com(0x0c);delay1ms(5);</p><p><b>  }</b

52、></p><p>  void disp1()</p><p><b>  { </b></p><p>  wr_com(0X83);</p><p>  wr_dat(sheding[2]+0x30);</p><p>  wr_dat(sheding[1]+0x30);</p

53、><p>  wr_dat(sheding[0]+0x30);</p><p>  wr_com(0x8a);</p><p>  wr_dat(ddisplay[3]+0x30);</p><p>  wr_dat(ddisplay[2]+0x30);</p><p>  wr_dat(ddisplay[1]+0x30)

54、;</p><p>  wr_dat(ddisplay[0]+0x30);</p><p>  wr_dat('H');</p><p>  wr_dat('Z');</p><p>  wr_com(0xc2);</p><p>  wr_dat(C_PID[0]+0x30);<

55、/p><p>  wr_dat(C_PID[1]+0x30);</p><p>  wr_com(0xc7);</p><p>  wr_dat(C_PID[2]+0x30);</p><p>  wr_com(0xcb);</p><p>  wr_dat(C_PID[3]+0x30);</p><p

56、><b>  }</b></p><p>  void key()</p><p>  {P1=0Xff;</p><p>  if(P13==0)</p><p>  {delay1ms(25);</p><p>  if (P13==0)keyflag=~keyflag;</p

57、><p><b>  }</b></p><p>  if(P10==0)</p><p>  {delay1ms(15);</p><p>  if (P10==0)</p><p><b>  {</b></p><p>  if(keyflag=

58、=0)</p><p><b>  {</b></p><p>  sheding[0]++;</p><p>  if (sheding[0]>9)</p><p>  {sheding[0]=0;} </p><p><b>  }</b></p&g

59、t;<p><b>  else</b></p><p><b>  {</b></p><p>  C_PID[1]++;</p><p>  if(C_PID[1]>9){C_PID[1]=0;C_PID[0]++;}</p><p><b>  }</b&g

60、t;</p><p><b>  disp1();</b></p><p><b>  }</b></p><p><b>  }</b></p><p>  if(P11==0)</p><p>  {delay1ms(15);</p>

61、<p>  if (P11==0)</p><p><b>  {</b></p><p>  if(keyflag==0)</p><p><b>  {</b></p><p>  sheding[1]++;</p><p>  if (sheding[1]

62、>9)</p><p>  {sheding[1]=0;}</p><p><b>  }</b></p><p><b>  else</b></p><p><b>  {</b></p><p>  C_PID[2]++;</p>

63、<p>  if(C_PID[2]>9){C_PID[2]=0;}</p><p><b>  }</b></p><p><b>  disp1();</b></p><p><b>  }</b></p><p><b>  }</b&g

64、t;</p><p>  if(P12==0)</p><p>  {delay1ms(20);</p><p>  if (P12==0)</p><p><b>  {</b></p><p>  if(keyflag==0)</p><p><b>  

65、{</b></p><p>  sheding[2]++;</p><p>  if (sheding[2]>9)</p><p>  {sheding[2]=0;}</p><p><b>  }</b></p><p><b>  else</b><

66、;/p><p><b>  {</b></p><p>  C_PID[3]++;</p><p>  if(C_PID[3]>9){C_PID[3]=0;}</p><p><b>  }</b></p><p><b>  disp1();</b>

67、</p><p>  while(P12==0);</p><p><b>  }</b></p><p><b>  }</b></p><p>  r=sheding[2]*100+sheding[1]*10+sheding[0];</p><p>  kp=C_PID[

68、0]*10+C_PID[1];</p><p>  ki=C_PID[2];</p><p>  kd=C_PID[3];}</p><p>  void display(uchar *p)//顯示//</p><p><b>  {</b></p><p>  while(*p!='\0

69、')</p><p><b>  {</b></p><p>  wr_dat(*p);</p><p><b>  p++;</b></p><p>  delay1ms(1);</p><p><b>  }</b></p>&

70、lt;p><b>  }</b></p><p>  void init_play1()//初始化顯示</p><p>  { lcd_init();</p><p>  wr_com(0x80);</p><p>  display(str1);</p><p>  display(str

71、2);</p><p>  wr_com(0xc0);</p><p>  display(str3);}</p><p>  void cepinlv()</p><p>  { uchar i=0;</p><p><b>  if(ff==1)</b></p><

72、p><b>  {</b></p><p><b>  ff=0;</b></p><p>  yy=TT0cct;</p><p><b>  y0=yy;</b></p><p>  temp[0]=yy%10;</p><p>  temp

73、[1]=yy/10%10;</p><p>  temp[2]=yy/100%10;</p><p>  temp[3]=yy/1000;</p><p>  for(i=0;i<4;i++)</p><p>  {ddisplay[i]=temp[i];}</p><p><b>  tcou

74、nt=0;</b></p><p><b>  TT0cct=0;</b></p><p><b>  EX1=1;</b></p><p><b>  TR1=1;</b></p><p><b>  }</b></p><

75、;p><b>  }</b></p><p>  void PID()</p><p><b>  {</b></p><p>  e0=r-y0; </p><p>  u=e0*ki+(e0-e1)*kp+(e0-2*e1+e2)*kd;//增量型</p><p>

76、;  if(u>=180) u=180;</p><p>  if(u<=-180 )u=-180;</p><p><b>  uu=u+180;</b></p><p><b>  e2=e1;</b></p><p><b>  e1=e0;</b></

77、p><p><b>  }</b></p><p>  void main(void)</p><p>  { init_play1();//初始化顯示</p><p>  TMOD=0X11;//00010001b T0定時方式1,T1定時方式1</p><p>  TH0=(65536-tim

78、)/256;</p><p>  TL0=(65536-tim)%256;</p><p>  TH1=(65536-50000)/256;</p><p>  TL1=(65536-50000)%256;</p><p>  TCON=0X54;//0101 0100 外部T1負邊緣觸發(fā)</p><p>  IE=0

79、X8E;//1000 1110B開放外部中斷1</p><p><b>  TR0=1;</b></p><p><b>  P2_5=1;</b></p><p><b>  while(1)</b></p><p><b>  { key();</b>

80、</p><p><b>  disp1();</b></p><p><b>  }</b></p><p><b>  }</b></p><p>  void int1_jishu(void) interrupt 2 //using 0</p><p&

81、gt;  {TT0cct++;}</p><p>  void timet0(void) interrupt 1 //using 1 // pwm輸出</p><p><b>  { </b></p><p>  static uchar click=0;

82、 //中斷次數(shù)計數(shù)器變量</p><p><b>  ++click;</b></p><p><b>  ZKB1=uu;</b></p><p>  if(click>=200) // 采樣時間的調(diào)整</p><p><b>  {click=0;

83、</b></p><p>  cepinlv();</p><p><b>  PID();</b></p><p><b>  }</b></p><p>  if (click<ZKB1) //當小于占空比值時輸出低電

84、平,高于時是高電平,從而實現(xiàn)占空比的調(diào)整</p><p><b>  P2_3=1;</b></p><p><b>  else</b></p><p><b>  P2_3=0;</b></p><p>  TH0=(65536-tim)/256;</p>&

85、lt;p>  TL0=(65536-tim)%256;</p><p><b>  } </b></p><p>  void t1_dingshi(void) interrupt 3 //using 2</p><p>  {tcount++;</p><p>  P2_4=~P2_4;</p>

86、<p>  if(tcount==20)</p><p>  {tcount=0;</p><p><b>  TR1=0;</b></p><p><b>  EX1=0;</b></p><p><b>  ff=1;</b></p><p

溫馨提示

  • 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. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論