技術(shù)頻道

      基于MPC07運動控制卡的步進電機控制系統(tǒng)研究

      0 引言

      隨著機電一體化的不斷發(fā)展,現(xiàn)代工業(yè)中運動控制系統(tǒng)也隨之更新?lián)Q代,從PLC、單片機、運動控制卡到專業(yè)的運動控制單元,控制方法越來越先進,控制策略越來越多,并不斷誕生出一代復雜而柔性的設備和機器。
      MPC07運動控制卡是基于PC機PCI總線的步進電機或數(shù)字式伺服電機的上位控制單元,它與PC機構(gòu)成主從式控制結(jié)構(gòu), PC機負責人機交互界面的管理和控制系統(tǒng)的實時監(jiān)控等方面的工作,MPC07卡完成運動控制的各種細節(jié),譬如每個軸的運動依靠輸出脈沖和方向信號、在運動過程中能夠自動升降速的處理、以及實現(xiàn)回原點起保護作用的限位開關信號等。每塊MPC07卡可控制4軸步進電機或數(shù)字式伺服電機,并支持多卡共用以實現(xiàn)多于4個運動軸的控制。該卡是基于FPGA設計,能夠提供各種運動控制功能。
      用戶可根據(jù)控制系統(tǒng)的要求編制人機界面,并調(diào)用MPC07運動函數(shù)庫中的指令函數(shù),就可以開發(fā)出滿足要求而且成本低廉的多軸運動控制系統(tǒng)。

      1 MPC07運動控制卡的原理

      MPC07配備了功能強大、內(nèi)容豐富的Windows驅(qū)動程序、DLL函數(shù)庫。MPC07在插補算法和運動函數(shù)的執(zhí)行效率方面采用了更有效的方法,提高了插補精度、插補速度和實時性。MPC07運動函數(shù)庫用于二次開發(fā),用戶用VisualBasic或VC + +支持Windows標準32位動態(tài)鏈接庫(DLL)調(diào)用的開發(fā)工具編制所需的用戶界面程序,并把它與MPC07運動庫鏈接起來,就可以開發(fā)出自己的多軸運動控制系統(tǒng),例如:數(shù)控系統(tǒng)、檢測設備、自動生產(chǎn)線等。MPC07的運動函數(shù)庫能夠完成與運動控制有關的復雜細節(jié):升降速計算、行程控制、多軸插補等,這樣就可以大大縮短控制系統(tǒng)的開發(fā)周期。
      MPC07控制卡的運動控制功能主要取決于運動函數(shù)庫。運動函數(shù)庫為單軸及多軸的步進或伺服控制提供了許多運動函數(shù):單軸運動、多軸獨立運動、多軸插補運動等等。
      另外,為了配合運動控制系統(tǒng)的開發(fā),還提供了間隙補償功能。圖1為MPC07控制卡在三軸步進控制系統(tǒng)中的應用。

      2 運動控制系統(tǒng)工作過程

      利用MPC07的動態(tài)鏈接庫(DLL ) ,開發(fā)者可以很快開發(fā)出Windows平臺下的運動控制系統(tǒng)。MPC07動態(tài)鏈接庫是標準的Windows 32位動態(tài)鏈接庫,選用的開發(fā)工具應支持Windows標準的32位DLL調(diào)用。
      首先進行程序初始化,設置運動參數(shù)以及板卡參數(shù),運動參數(shù)有各種運動速度、加/減速、升降速類型等,板卡參數(shù)有卡的數(shù)量、各卡上的軸數(shù)等。如果硬件設置錯誤,軟件在運行時發(fā)生錯誤,則調(diào)用失敗,需重新設置。
      步進電機的直線運動:獨立運動和插補運動。
      獨立運動指各控制軸的運動之間沒有聯(lián)動關系,可以是單軸運動,也可以是多軸同時按各自的速度運動。點位運動、連續(xù)運動和回原點運動都屬于獨立運動。
      插補運動是指兩軸或三軸按照一定的算法進行聯(lián)動,被控軸同時啟動,并同時到達目標位置。插補運動以矢量速度運行,矢量速度分為常矢量速度和梯形矢量速度。多軸插補運動(圖2)只有線性運動,它們的運動速度由矢量速度決定,各軸的速度為矢量速度在各軸上的分量。


      下面一段代碼是使兩軸以常速度作直線插補:
      set_vector conspeed (2000) 設置矢量常速度為2000個脈沖;
      con2line2 (1, 2000, 2, 2500) 軸l移動2000個脈沖,軸2移動2500個脈沖。
      下面一段代碼是使兩軸以梯形速度作直線插補:
      set_vector p rofile (500, 2000, l000)設置矢量梯形速度:低速為500個脈沖,高速為2000個脈沖,加速度為1000個脈沖;
      fast_line2 (1, 2000, 2, 4000)軸I移動2000個脈沖,軸2移動4000個脈沖。

      3 程序設計

      下面利用VB編制圖1三軸電機的運動,運動參數(shù)包括軸號、初速度、最高速度、加速度和移動距離等,使得三軸能夠連續(xù)運動、回原點,并能夠讀取當前軸號、位置和速度。圖3為用VB編制的三軸運動功能框圖。


      部分程序如下:
      Op tion Exp licit
      Dim AxesNum As Long軸號
      Dim lowspeed AsDouble初速度
      Dim highspeed AsDouble最高速度
      Dim Accel AsDouble加速度
      Dim DisAs Long移動距離
      ′*
      ********************************************
      該函數(shù)對板卡進行設置,可在窗體加載時調(diào)用:
      Private Function SetBoard ( ) As Integer
      Dim Rtn As Integer
      Rtn = auto_set( ) ′對板卡進行自動設置
      If Rtn < = 0 Then ′若自動設置錯誤則返回0
      SetBoard = - 1
      Exit Function
      End If
      Rtn = init_board
      If Rtn < 0 Then
      SetBoard = - 2
      Exit Function
      End If
      SetBoard = 0
      End Function
      ′*
      ********************************************
      ′讀取用戶設置的運動參數(shù):
      Private Sub GetParam ( )
      AxesNum =Val( txtAxesNum. Text)
      lowspeed =Val( txtLowSpeed. Text)
      highspeed =Val( txtHighSpeed. Text) ′
      Accel =Val( txtAccel. Text)
      Dis =Val ( txtDis. Text) ′
      set_maxspeed AxesNum, highspeed
      set_conspeed AxesNum, lowspeed ′設置常速運動參數(shù)
      set_p rofile AxesNum, lowspeed, highspeed, Accel ′設置梯形速度運動參數(shù)
      End Sub
      讀取并顯示狀態(tài)(當前的位置和速度)
      Private Sub timGetdata_Timer( )
      Dim posAs Long
      Dim speed AsDouble
      get_abs_posAxesNum, pos ′讀取位置
      labPos. Cap tion = pos ′顯示位置
      speed = get_rate (AxesNum) ′讀取速度
      labSpeed. Cap tion = speed ′顯示速度
      End Sub

      4 結(jié)束語

      介紹了MPC07運動控制卡的工作原理及其應用,在VB環(huán)境下三軸步進電機的運動,當然,運動控制卡的運動函數(shù)庫還能夠完成與運動控制有關的復雜細節(jié),比如升降速直線插補,梯形速度直線插補等,這樣就能夠?qū)崿F(xiàn)更完善的運動控制系統(tǒng)。

      文章版權(quán)歸西部工控xbgk所有,未經(jīng)許可不得轉(zhuǎn)載。

      主站蜘蛛池模板: 人妻精品无码一区二区三区| 日本精品少妇一区二区三区| 在线观看精品视频一区二区三区 | 国产高清一区二区三区| 在线视频一区二区三区| 一区二区三区免费视频网站| 国内精品一区二区三区东京| 精品久久一区二区| 风流老熟女一区二区三区| 人妻体体内射精一区二区| 综合久久一区二区三区| 人妻无码一区二区视频| 国产一区二区好的精华液| 亚洲美女一区二区三区| 一区二区三区观看免费中文视频在线播放 | 无码精品前田一区二区| 毛片一区二区三区无码| 日本一区二区在线播放| 久久福利一区二区| 无码精品国产一区二区三区免费| 亚洲欧美国产国产一区二区三区| 国产一区二区三区免费观看在线| 国产在线观看一区二区三区| 国产小仙女视频一区二区三区| 亚洲AV无码一区二区二三区软件 | 成人国产一区二区三区| 国产日韩精品一区二区在线观看| 极品尤物一区二区三区| 亚洲愉拍一区二区三区| 精品亚洲av无码一区二区柚蜜| 成人中文字幕一区二区三区| 在线播放国产一区二区三区| 精品一区二区三区无码免费视频 | 波多野结衣一区二区免费视频| 免费高清在线影片一区| 无码人妻精品一区二 | 精品黑人一区二区三区| 亚洲天堂一区在线| 中文字幕一区二区三区人妻少妇| 亚洲综合av一区二区三区| 午夜性色一区二区三区不卡视频|