基于VC++的運動控制卡軟件系統(tǒng)設計_第1頁
基于VC++的運動控制卡軟件系統(tǒng)設計_第2頁
基于VC++的運動控制卡軟件系統(tǒng)設計_第3頁
基于VC++的運動控制卡軟件系統(tǒng)設計_第4頁
基于VC++的運動控制卡軟件系統(tǒng)設計_第5頁
已閱讀5頁,還剩6頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、基于VC+勺運動控制卡軟件系統(tǒng)設計在自動控制領域,基于PC和運動控制卡的伺服系統(tǒng)正演繹著一場工業(yè)自動化的革命。目前,常用的多軸控制系統(tǒng)主要分為3大塊:基于PLC的多軸定位控制系統(tǒng),基于PC_based的多軸控制系統(tǒng)和基于總線的多軸控制系統(tǒng)。由于PC機在各種工業(yè)現(xiàn)場的廣泛運動,先進控制理論和DS限術實現(xiàn)手段的并行發(fā)展,各種工業(yè)設備的研制和改造中急需一個運動控制模塊的硬件平臺,以及為了滿足新型數(shù)控系統(tǒng)的標準化、柔性化、開放性等要求,使得基于PC和運動控制卡的伺服系統(tǒng)備受青睞。本文主要是利用VC+6.0提供的MFCS用程序開發(fā)平臺探索研究平面2-DOF四分之過驅動并聯(lián)機構的運動控制系統(tǒng)的軟件開發(fā)。平

2、面2-DO切分之過驅動并聯(lián)機構的控制系統(tǒng)組成并聯(lián)機構的本體如圖1,該機構由4個分支鏈組成,每條支鏈的一段與驅動電動機相連,而另一端相交于同一點。該并聯(lián)機構的操作末端有2個自由度(即X方向和Y方向的平動),驅動輸入數(shù)目為4,從而組成過驅動并聯(lián)機構。圖1機構本體控制系統(tǒng)的硬件主要有4部分組成:PCM,四軸運動控制卡,伺服驅動器和直流電動機。系統(tǒng)選用的是普通PCL,周高公司的GT-400-SV-PCI運動控制卡,瑞士Maxo公司的四象限直流伺服驅動器及直流永磁電動機。伺服驅動器型號為4-Q-DCADS50/5與驅動器適配直流電動機型號為MaxonRE-35運動控制系統(tǒng)的構成如圖2所示。上位才S制單元

3、由PO和運動控制卡一起組成,板卡插在PCL主板上的PCI插槽內。PO主要負責信息流和數(shù)據流的管理,以及從運動控制卡讀取位置數(shù)據,并經過計算后將控制指令發(fā)給運動控制卡。驅動器控制模式采用編碼器速度控制,驅動器接受到運動控制卡發(fā)出的模擬電壓,通過內部的PWM路控制直流電動機RE-35勺運轉,并接受直流電動機RE-35Jjq編碼器反饋信號調整對電動機的控制,如此構成一個半閉環(huán)的直流伺服控制系統(tǒng)。圖2運動控制系統(tǒng)組成1.1 GT-400-SV控制卡介紹固高公司生產的GTC列運動控制卡GT-400-SV-PCI可以同步控制4個軸,實現(xiàn)多軸協(xié)調運動。其核心由ADSP218數(shù)字信號處理器和FPGA&

4、成,能實現(xiàn)高性能的控制計算??刂瓶ㄍ瑫r提供了C®言函數(shù)庫和WindowsF的動態(tài)鏈接庫,可實現(xiàn)復雜的控制功能。主要功能如下:PCI總線,即插即用;(2)可編程伺服采樣周期,4軸最小插補周期為200us,單軸點位運動最小控制周期為25us;4路16位分辨率模擬電壓輸出信號或脈沖輸出信號模擬量輸出范圍:-10V-+10V,每路課獨立控制,互不影響;4路四倍頻增量編碼器輸入,作為各軸反饋信號輸入,最高頻率8MHz(5)四軸協(xié)調運動;(6)每軸2路限位開關信號、一路原點信號及一路驅動報警信號輸入;(7)每軸1路驅動使能信號、1路驅動復位信號輸出;(8)運動方式:單軸點位運動、直線插補、圓弧插

5、補、速度控制模式、電子齒輪模式;(9)PID(比例-積分-微分)數(shù)字濾波器,帶速度和加速度前饋,帶積分限值、偏差補償和低通濾波器;(10)支持DOSWindowsNT/2000/X由操作系統(tǒng),提供底層庫函數(shù),可用DOSVCVB?進行軟件開發(fā)??刂瓶ńY構及端子板的接口如圖3所示。GT-400-SV1卜捏制接u屏雌原小刖相接UtaUN13CM2CN14端子板扁平就ONIOC屈4CM。CM1CZI1eiN6CN7屏敝線1_端子板電源接口4林專川輸入輸州接口圖3控制R結構及與端子根接口圖1.2直流永磁電動機PW臃動基本原理圖4為利用開關管實現(xiàn)直流電動機PWM速控制的原理圖和輸入輸出電壓波形。當開關MO

6、SFEET柵極輸入高電平時,開關管導通,直流電動機電樞繞組兩端有電壓Us。T1時間后,柵極輸入變?yōu)榈碗娖剑_關管截止,電動機電樞兩端電壓為零。T2時間后,柵極輸入重新變?yōu)楦唠娖?,開關管重復前面的動作過程。這樣,對應著輸入的點評高低,直流伺服電動機電樞繞組兩端的電壓波形如圖4b所示。占空比a表示了在一個周期T里,開關管導通的時間與周期的比值。a的變化范圍為0<a<1。由此式可知,當電源電壓Us不變的情況下,電樞繞組兩端的電壓平均值Uo取決于占空比a勺大小,改變a的值就可以改變端電壓的平均值,從而達到調速的目的。2基于GT-400-SV-PCI卡的軟件設計GT-400-SV空制卡具有良

7、好的開放性,用戶可以再DOSVCVBDelphi環(huán)境下進行軟件開發(fā)。文中是在Windows200原統(tǒng)下利用VisualC+6.0的MF©面向對象方式進行編程??刂瓶ㄔ赪indows開發(fā)的底層動態(tài)庫包括頭文件GT400.h,GT400.lib和GT400.dll。在VC+環(huán)境中使用時,選擇ProjectSettingLink,在Object/Librarymodules中輸入GT400.lib,然后就可以在程序中調用動態(tài)鏈接庫中的函數(shù)。Windows程序內部運行原理因為VisualC+6.0是Windows發(fā)語言,所以用VisualC+6.0開發(fā)程序之前首先需要弄清楚Window?序內

8、部運行機制。在Window界境下的軟件開發(fā)是完全不同于DO機的,它是一種事件驅動方式的程序設計模式,主要是基于消息的。當用戶需要完成某種功能時,會調用操作系統(tǒng)的某種支持,然后操作系統(tǒng)將用戶的需要包裝成消息并投遞到消息隊列當中,最后應用程序從消息隊列中取走消息并進行響應。程序設計運動控制卡接受PCL上發(fā)出的操作命令和運動控制系統(tǒng)反饋回的信息,并據其進行實時的運動操作,直接控制伺服驅動器??刂瓶刂浦绷麟妱訖C的過程可分為:打開控制卡并初始化,設置運動參數(shù),執(zhí)行運動程序,關閉卡??刂葡到y(tǒng)流程圖如圖5所示。2.2.1圖5控制程序流程圖卡的初始化1??ǖ某跏蓟瘧诔绦蜷_始時就執(zhí)行,主要用到的控制函數(shù)見表

9、名稱GT_Open()GT_Reset()GT_SetSmplTmOGT_LmtSns()GT_EncSns()GT_CloseLp()GT_CtrlMode()表1函數(shù)名稱及功能功能打開運動控制器設備復位運動控制器設置控制周期設置限位開關的有效電平設置編碼器的記數(shù)方向設置為閉環(huán)控制設置輸出模擬量/脈沖量以上參數(shù)應根據具體的硬件平臺來設置,一般只在程序初始化時設置一次,以后不應再設置。另外,控制周期的設定GT_SetSmplTm(doubleTimer),參數(shù)Timer的單位是us。因為運動控制卡要在控制周期內完成必要的控制計算,控制周期不能太小,因此設定的范圍為48-1966.08us。運動

10、控制卡默認的控制周期為200us,這個控制周期對于普通的用戶能夠安全可靠地工作。一般情況下,在程序中不應改變控制周期值,否則會出現(xiàn)不可預期的后果。運動控制模塊該運動控制卡可以實現(xiàn)單軸及多軸協(xié)調運動。對于單軸所執(zhí)行的運動操作有絕對運動、連續(xù)點動、急停緩停、回零等;對于多軸協(xié)調運動有直線插補和圓弧插補。單軸運動控制主要用來調試直流電動機運動性能。采用梯形曲線運動模式,設置速度、加速度、目標位置3個參數(shù),通過設置合適的PIDP控制參數(shù),使電動機運動達到系統(tǒng)設計要求。4軸協(xié)調運動采用直線插補法,正確的設置坐標映射,合成速度、加速度,再加軌跡設置命令及目標位置,即可實現(xiàn)四軸協(xié)調運動。運動控制卡通過坐標映

11、射函數(shù)GT_MapAxis(shortAxis_Num,double*map_count)將控制軸由單軸運動控制模式轉換為坐標系運動控制模式。同時運動控制卡開辟了底層運動數(shù)據緩沖區(qū),在坐標系運動控制模式下,可以實現(xiàn)多段軌跡快速、穩(wěn)定的連續(xù)運動。這些運動操作都是相互獨立的,在控制面板中每個操作按鍵對應一個獨立的事件運動狀態(tài)顯示模塊通過調用GT_GetAltPos(long*Apos)和GT_GetPrfPnt(double*Pnt)分別獲得當前軸的實際位置和坐標系各軸的坐標位置,參數(shù)*Apos返回實際位置,雙精度參數(shù)*Pnt指向一個長度為4的數(shù)組。然后轉換成各電動機的實際角度,并在控制面板上顯示

12、。2編程開發(fā)實例現(xiàn)以單軸調試與4軸協(xié)調運動實現(xiàn)直線和圓軌跡為例具體介紹開發(fā)過程:打開VisualC+6.0,利用MFCAppWizardexe創(chuàng)建一個基于對話框的Robot2008工程,將GT400.h,GT400.lib添加進工程,編程時要在頭文件里包含頭文件GT400.h。在對話框中添加按鈕和編輯框等操作見圖6。IJ-Jk:匚/弓:,sr制o有吃口工-也什n工需耆廠JF丁口叫牛上',-上=Yml:HI3M.!;T-=JIVd=-WJ1±1IX-i'jxv.iiV*!;、1J-2-Ejn*-rttiT3I口口/口CUTDWKF:咐15UJIIffljpnHPBCTa

13、oarSjKI-nriabc圖6設置對附框單軸控制模塊,先在OnInitDialog()中添加如下代碼,進行初始化工作:GT_Open();GT_Reset();GT_LmtsOff();GT_AlarmOff();GT_CtrlMode(0);GT_CloseLp();在CRobot2008Dlg中添加成員變量m_Kp,m_Ki,m_Kd,m_Pos,m_Vel,m_Acc并作原型說明。然后在“單軸運動”按鈕添加BN_CLICKED消息響應的函數(shù)OnButtonSrtMov(),并在函數(shù)中添加如下代碼:GT_Axis();GT_AxisOn();GT_ZeroPos();GT_PrflT()

14、;GT_SetKp(m_Kp);GT_SetKi(m_Ki);GT_SetKd(m_Kd);GT_SetPos(m_Pos);GT_SetVel(m_Vel);GT_SetAcc(m_Acc);GT_Update();最后在“單軸停止”按鈕BN_CLICKED響應函數(shù)OnButtonStop()中添加代碼:GT_AxisOff();GT_Close();四軸協(xié)調運動的初始化與單軸情況基本相同,但要加入坐標映射函數(shù)GT_MapAxis(shortAxis_Num,double*map_count)。doublecnt15=1,0,0,0,0;doublecnt25=0,1,0,0,0;doublecnt35=0,0,1,0,0;doublecnt45=0,0,0,1,0;GT_MapAxis(1,cnt1);GT_MapAxis(2,cnt2)GT_MapAxis(3,cnt3);GT_MapAxis(4,cnt4);GT_MvXYZA(0,0,0,0,1,0.01);前文已提到,運動顯示模塊經編譯無誤后

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論