直流马达伺服控制.doc_第1页
直流马达伺服控制.doc_第2页
直流马达伺服控制.doc_第3页
直流马达伺服控制.doc_第4页
直流马达伺服控制.doc_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

直流馬達伺服控制組員姓名:陳家銘、陳閩、虞霖融、陳聖文、黃茗凱、林文杰、呂沛衡德霖技術學院機械工程系夜二專095B指導老師:林柳絮 老師摘 要 現今各人電腦的配備因快速演進、性能提升、價格下降,促使了PC Based控制的興起.PC Based系統具有大量快速資料處理的能力,擁有強大的網路功能,及具易操控的人機介面等特性,使的PC Based已成為工業控制的主流趨勢.而控制的理論發展至今已經相當多年,在工業控制上以比例積分微分(PID)控制方法應用最為廣泛,主要原因是PID控制應算式相當簡單,容易實現,在調整所需的參數後,便能得到所期待之良好的控制效果,本次專題即是利用個人電腦為基礎介面(PC Based)設計一個控制器當作控制介面,透過並列傳輸的方式,來控制直流伺服馬達,使馬達的運轉更快達到穩定的效果,並完成定位控制。405一、前言21世紀是一個資訊化的時代,電腦成為我們生活中一項不可或缺的重要產品。由於科技的發達,現在許多的生活用品都是利用電腦來控制,如洗衣機、冷氣、汽車等產品。而在工業界,電腦的運用也十分的廣泛,大部分的機台,也都利用電腦來控制其運作,如此一來可以節省一部份的人力成本來從事更重要投資。所以學習利用電腦的介面來從事控制的動作便成為一門重要的學問。本專題即是以個人電腦為基礎介面設計一個控制器,來控制直流伺服馬達的運轉,並探討(P)、(PI)、(PD)、(PID)等控制器於實際控制應用的優缺點。控制器一般來說可以分成兩大類,一類是經由邏輯運算後作出控制動作的控制器,如可程式控制器(PLC)。另一種則是定量式的控制,利用感測器量得類比訊號,經過數位式或類比式的控制器,送出類比的驅動訊號,而這一類的控制器大多是以傳統的控制理論來設計控制器。以往的類比或數位式控制器大多是專屬的封閉系統,所以其改良的速度不如開放泛用的個人電腦快速。現今個人電腦的配備因快速演進、性能提升、價格下降,促使了PC Based控制1的興起。除了傳統工業控制與資料擷取的基本功能之外,PC Based系統具有大量且快速資料處理的能力,擁有強大的網路功能,豐富的軟硬體支援及具易操控的人機介面等特性,使得PC Based以成為工業控制的主流趨勢。PC Based控制的優點,除了擁有強大而進步神速的CPU運算能力之外,在於同時具備有大量的記憶體,可以儲存大量的資料,且擅長資料處理及資訊整合,再加上網際網路的豐富資源及便利性,使得PC Based控制在近些年來受到工業界的重用。本專題即是利用PC Based當作控制介面,透過並列I/O介面,將實用的P型、PL型、PD型、及PID型控制方法來控制直流伺服馬達。上述之控制理論發展至今已經相當多年,在工業控制上已PID應用最為廣泛,主要原因是PID控制運算是相當簡單,容易實現,在調整所需得參數後,便能得到所期待之良好控制效果。整個實驗架構分為硬體與軟體兩部分。硬體方面:硬體動作方面,在PC內以VB語言編寫PID控制器,再以並列埠介面傳輸的方式經由D/A電路將電腦所送出的數位訊號轉換成類比電壓信號,再將電壓輸出到驅動器(Driver)中,再由驅動電路放大電壓信號來推動Dc Servo Motor,而Dc Servo Motor所轉動的角度,再經由感測器(Sensor)在此為電位計轉換輸出的類比電壓信號,傳回A/D電路作類比數位轉換,轉換成數位信號輸入到PC,再從PC上再觀察所控制的結果。 軟體方面:在軟體程式方面,以(VB)當作PC與伺服馬達之間人機介面。 本專題的研究重點在於PID控制理論於PC Based 控制上的實現,並應用於直流伺服器馬達定位控制上,探討P、PI、PD、PID控制器對整個系統控制能力的影響。二、相關原理2.1 Visual Basic介紹:在傳統上,電腦的使用,都是由使用者輸入文字指令及資料到電腦中,經由電腦處理過後,再將文字或數字結果印出或顯示在螢幕上,人與電腦之間的往來主要都是靠文字,使用者必須記住指令,否則無法來使用電腦。而近來電腦使用的趨勢,是利用使用者圖形介面,簡稱為GUI(Graphical User Interface)12。使用者利用螢幕上的圖形和滑鼠,就可以很容易的下指令給電腦,去執行所需的工作。利用GUI的應用軟體,會比較容易學習及使用,而且使用者再也不必記住一些繁雜的指令,因而使得電腦的使用變得更普及,整個社會的生產力也可以因而提高。 Visual Basic 是由美國微軟公司(Microsoft)所開發出來的一套以物件導向為主的程式語言。物件導向式的設計是近些年來新興的程式設計理念,此種理念是將程式碼和資料組成自主的物件,在一個程式內製作的物件,可以很容易的用在另外一個應用程式內,因而可以節省程式開發的時間。而這種先進的程式設計觀念,也正是目前大多數程式語言所遵循的法則。在傳統的軟體發展過程中,設計者總是在分析、設計到測試中反覆地加強程式的功能,使得程式的除錯及維護更加容易,便依舊無法有效的避免設計上的不夠周延,也因此有了物件導向的觀念產生。在一般物件導向的程式語言中,如C+,物件是由程式碼跟資料所組成,屬於抽象的概念。在VB內,物件是真正看的到的,可以規定物件的大小、形狀,例如按鈕及文書方塊等,因此vb使得物件導向的程式設計向前邁進了一大步。自從Window作業系統盛行之後,許多程式發展均以在Window平臺下操作,具有親和人機介面為目標,而欲完成此項程式發展,許多套裝軟體也因運而生,較著名約有BordlandC+Builder、VisualBasic(VB)、VISUAL FokPro等,而VB則是使用人口最多的一種軟體。 由於VB程式語言在本論文中是用來當作PC Based控制器的人機介面,所以在此對於人機介面做個介紹。2.1.1 Visual Basic 人機介面: 人們為了與機器有溝通的管道,所以有了人機介面,來解決人與機器之間的溝通問題。為何多數的人機介面都擁有視覺化(Visual的設計呢?那是因為藉由圖形影像的幫助,可以使人類更容易去提高記憶力。在醫學的研究中也可以清楚的發現,人類在圖形的紀憶上,會比在文字的記憶上更加容易。由此可見,人對圖形有較高的紀憶力,而且不同人種的感受上也會具有相同的共通性,不分國籍,不論識不識字,都可以根據圖形的形象來意識其表達的意義。因此,人機介面的視覺化設計就是採用如此的特點,讓操作者可以不分國界輕易的透過此介面正確的蒐集資訊及操作機器。然而視覺化的人機介面設計發展至今,一直朝向圖形介面的研發,因為唯有圖形視覺化的人機介面運用,才可以跳脫國界與語言的障礙,增加使用者的方便性。就我們最常用的個人電腦來說,其實作業系統也算是一種人機介面。早期的作業系統完全為文字模式,例如:DOS,如此的命令是在文字機式下執行,使用者必須記憶命令格式才可達成任務。然而現今的視窗作業系統,例如微軟的Windows,只要依據圖形操作程式與步驟,完全不需要記億命令指令,即可輕易地完成指定工作。2.1.2 VB介面指令介紹:VB 基本撰寫規則:(1)註解的使用:加入單引號(),或於該行前加入(REM)該行即為註解。(2)雙數觀念:一般均為做變數型態宣告,可直接於程式開頭宣告變數型態,或於變數使用時加入變數符號即宣告完成。其他規則如下: 一般數字,以及布林代數:l或0,真(True)或假(False),Visual Basic中定義(True=-l)或假(False=0),是(Yes=l)或否(No=0) 數字前不加任何東西為十進位,如&H為十六進位,如&0為八進位,顏色參數表示為&HBBGGRR,BB、GG、RR表示藍色、綠色、紅色顏色值,以八位元表示,故範圍以十六進位表示為0&HFF。 宣告:Dim是在程序中宣告一個存放於堆疊區的變數,Static是需告一個靜態變數,可供下次程序使用 常用基本運算:加法(+),減法(-),乘法(*),除法(/), 整數除法(),次方(),負值(-),餘數(Mod),字串相加(&)。 常見邏輯運算:And、Not、Or、Xor、Eqv、Imp(3)常用運算指令(範圍內表示可省略) lf條件式 Then 程式碼一 Elself 條件式1 Then 程式碼1 Else 程式碼2 End If 說明:如果(條件式)成立則執行(程式碼一),或是如果(條件式1)成立,則執行(程式碼l),不然則執行(程式碼2)。 Select Case 測試變數 Case 變數值l 程式碼l Case 變數值2 程式碼2 Case Else 其他程式碼 EndSelect 說明:如果(測試變數)符合(變數值1),則執行(程式碼1),符合(變數值2),則執行(程式碼2),若皆不符合則執行(其他程式碼)。(4)常用迴路指令(範圍內表示可省略,範圍內表示擇一選用) Do While|Until條件 程式碼 Loop 說明:While先測試(條件)成立時,則執行(程式碼)回路,直到(條件)不成立為止。 Until先測試(條件)不成立時,則執行(程式碼)回路,直到(條件)成立為止。 Do 程式碼 Loop While|Until條件 說明:While先執行(程式碼)回路,再測試(條件),當成立時繼續執行回路,直到(條件)不成立為止。 Until先執行(程式碼)回路,再測試(條件),當不成立時繼續執行回路,直到(條件)成立為止。 For計數變數=開始值 to 結束值Step 間距值 程式碼 Next計數變數 說明:執行(程式碼)回路,共計執行(拮束值)-(開始值)/(間距 值)次。(5)副程式使用 副程式為一堆常用程式的組合,使用時以呼叫方式進行,執行完畢並不回傳任何數值。 宣告方式 Private|Public|FriendStaticSub副程式名稱(引數) 副程式內容End Sub 說明:Private表示此副程式為一區域副程式,只能在此表單中 使用 Public表示此副程式為一全域副程式,可於任一表單中使 用,多寫於模組之中。 引數為: OptionalByval|ByRefParamArray變數名稱AS 型 態=defaultvalue 說明:Byval表示參數傳遞直接以數值傳遞。 ByRef表示參數傳遞直接以變數位址傳遞的使用方式 Call副程式名稱(引數)(6)函數 函數為常用運算式的組合,使用時直接於程式中使用,執行完畢回傳運算結果。 宣告方式 Private|Public|FriendStaticFuntion 函數名稱 (引數) 函數內容End Function 說明:Private表示此函數為一區域函數,只能在此表單中使用。 Public表示此函數為一全域函數,可於任一表單中使用,多寫於模組之中。引數為:OptionalByVal|ByRefParamArray變數名稱As型態=defaultvalue說明:ByVal表示參數傳遞直接以數值傳遞。 ByRef表示參數傳遞直接以變數位址傳遞使用方式傳回值=函數名稱2.2各種控制馬達之定位控制性能的比較:在電路為開迴路系統後,由於電位計所對應的馬達角度對仍是不變的,因此在SERVO端的輸入電壓值範圍為03,當輸入電壓值越大時直流伺服馬達的轉速越快,其中加負電壓馬達以逆鐘方向旋轉,加正電壓馬達以順鐘方向旋轉。而當我們將伺服馬達模組設為開路迴路時,就是要利用PC Based以週邊硬體電路來做有效的PID控制。於附錄表1-1有詳盡的介紹。2.3硬體電路說明: 此處將說明PC、A/D、D/A電路及受控制裝置之間的互動關係在PC內以VB語言編寫PID控制器程式,再以25pin D型街頭連接Printer Port經由D/A電路轉換成類比訊號(Analog Signal)為一電壓,再將電壓輸出到驅動器(Driver)中,再由驅動電路放大電壓來推動直流伺服馬達(DC Servo Motor),而根據DC Servo Motor所轉動的角度,再經由感測器(Sensor)在此為電位計轉換輸出類比電壓信號,傳回A/D電路做類比數位轉換,轉換成數位信號(Digital Signal)輸入到PC,再從PC上去觀察所控制的結果波形。整體電路架構包含了A/D、D/A模組電路元件的結合完成最後的硬體電路架構其中:1. PC Based: 以VB做為人機控制介面。2. D/A模組電路: 數位信號轉換成類比訊號的電路。3. A/D模組電路: 類比信號轉換成數位訊號的電路。A/D電路是將類比訊號轉換成數位訊號的電路。此A/D電路是用來由回授輸入的類比電壓轉至電腦內所需處理的數位信號。三、硬體設備3.1 8051晶片: 8051 是由 INTEL 公司所設計的單晶片 ,一般是以 MSC-51 來做一個總稱,不過在業界習慣上仍是稱為8051,而它的結構是由 8048 的延伸 , 也就是說單晶片中的老大哥之一 ,由於它的發展工具很容易取得,參考用書隨處可得因此它也被廣泛的使用,學習單晶片仍是以 8051 做基礎及起點 , 近日年來因為被廣泛的運用 , 基本的功能似乎不夠滿足需要 . 因此各 IC 大廠紛紛出現所謂 Second Source 的 8051以滿足業界的需求 , 不過 8051 的基本精神仍是不變 . 雖然 8051 已經是老大哥了 , 學會如何使用它之後 , 面對其他的晶片便會即刻的上手 . 下圖4-1就是本次試驗的8051實驗機板.圖3-1 8051實習機板以下列出 MSC-51單晶片的基本功能 :1.為控制應用所設計的 8 位元 CPU .2.具有布林代數的運算指令 .3.有32條(4個Port)雙向且每條都可以被單獨定址的 I/O .4.內部有128Byte可供儲存資料記憶體RAM (8052 : 256 Bytes) .5.內部有兩個16位元Timer/Counter (8052 有 3 個) .6.有全多工傳輸信號 UART (串列埠) .7.5個中斷源,有兩層優先權順序之中斷結構 .8.內部有4K位元組的程式記憶體 .9.內部有時脈振盪器線路 .10.程式記憶體可擴充至64K位元組 .11.資料記憶體可擴充至64K位元組 .而本次的專題是選用益眾 迷你8051實習板.其優點有:*四種記憶體選擇模式,可外接ROM最大達64K,RAM最大達32K。 *可作LED、七節顯示器實習及蜂鳴器發聲實習。圖4-2即是 8051 的接腳圖 , 其 VCC 與 GND 是第40支腳與第20支腳 . 圖3-2 8051 的接腳圖3.2 A/D卡: 簡單的說A/D卡的主要功能就是將類比訊號轉成數位訊號的卡片,在專題中電位計轉換輸出類比電壓信號,傳回A/D電路做類比數位轉換,轉換成數位信號(Digital Signal)輸入到PC .在圖4-3 為 A/D卡(於圖的右側) 。3.3 趨動電路板: 由於電源供應器所輸入到馬達的電流太小了,因為在傳輸的過程中電流有消耗掉,所以會有誤差的產生,藉由趨動電路板可將電流放大,將誤差減至最低,如圖4-4所示。圖3-3 A/D卡(於圖的右側)圖3-4 趨動電路板(於圖右下方)3.4 直流伺服馬達組: 您在圖4-5中會看到2個馬達,左邊的馬達為主馬達,右邊的為從動馬達,當電流輸入主馬達,則從動馬達會被帶動,中間則用塑膠套固定。 圖3-5 馬達組(左邊為主馬達,右邊為從動馬達).3.5 三用電表: 用以測定電流.如圖4-6所示。圖3-6 三用電表3.6 PC: 個人電腦,以Visual Basic來撰寫程式.3.7 電源供應器: 將電流輸出,由趨動電路板將電流放大.四、實驗步驟上2圖為實驗整體的圖片,我們先將電腦的Visual Basic所設計好的指令執行,還有打開電源供應器,透過趨動電路版將電流放大,然後傳到主馬達 ,8051收到電腦的訊號後,將傳輸至馬達,主馬達就會轉動,重動馬達因此會被帶動,這時電流就會透過A/D卡傳回至電腦中,我們就可透過電腦來觀察馬達所輸出的電流情形,將數據加以分析。五、實驗結果與討論5.1實驗結果:(1) 使用自控的方式來實驗時,所得到的輸出與輸入的電壓值有差距,故無法做準確的數據分析。(2)使用手動的方式,只能用來增加與減少電壓,而無法用來做數據分析,故手動方式只能用來控制馬達的快與慢。5.2 討論對馬達而言,當馬達轉動時,一個是正轉,另一個是反轉且兩馬達軸無對準聯接部位,未能將兩軸穩固,在轉動時有時會發生空轉現象.此時顯示的數據會有明顯的差距。 如何將馬達完全對準且穩固,此時的馬達如果未對準的話,則馬達的轉速數據會相當不準確,加上A/D卡傳輸效率快,PC接收效率慢,導致PC所顯示的數據不同且差異大,如果把電壓的範圍調至0.1V-1V,當小於0.1V要增壓,大於1V時要減

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论