文獻標識碼: A
文章編號: 0258-7998(2012)05-0056-03
目前廣泛使用的數控運動控制器的功能和性能已趨于完善,例如固高控制器、PMAC控制器等。但這些控制器大多還是屬于封閉式結構,系統難以進行擴展和移植。同時,用戶也不能根據實際需求自由地配置輸入輸出接口或改變系統內部模塊結構,系統的通信方式也比較單一,難以實現網絡化[1-2]。
Cypress公司的PSoC(Programmable System on Chip)可編程片上系統將32 bit微控制器、可編程模擬資源、可編程數字陣列集成在一個芯片上,可以自由配置模擬、數字、通信等功能,并且可以在線編程。模擬資源和數字陣列可以通過PSoC Creator編程軟件進行方便的增減和修改,有70個可自由配置的I/O口,可方便地配置為多種類型的模擬/數字輸入或輸出接口,用來對數據和信號進行實時采集和控制,是一個開放式的結構,具有良好的并行性和可擴展性。另外還支持包括USB、I2C、SPI、等多種通信接口,具有完善的可移植性[3]。鑒于數控運動控制器的發展現狀以及PSoC芯片的諸多優勢,本文將以PSoC芯片CY8C5588(一款第五代PSoC芯片)為基礎,構建一套數控運動控制器,用來控制三軸雕刻機的工作。
1 系統整體架構
以目前已經完成的三軸聯動的雕刻機控制器為例,系統的整體結構如圖1所示,包括計算機、以PSoC為核心的控制器、驅動電路和雕刻機。
上位機程序采用C#語言編寫,采用網絡編程的套接字技術,作用是供用戶輸入或從文件導入指令,并將其傳輸給PSoC進行解析和計算,控制雕刻機按照所預想的方式運行。PSoC控制器主要實現了與上位機的通信、指令的解析插補、電機的運動控制。驅動電路對PSoC輸出的信號進行反相和放大,信號輸出給雕刻機的電控箱,控制雕刻機運轉。
2 系統硬件設計
在可編程片上系統PSoC中所使用的端口和元件示意圖如圖2所示,共采用了4個PWM模塊,3個Counter(計數器),一個SPI,一個UART以及若干輸入輸出接口。 SPI模塊和UART模塊用來實現與上位機的通信。PWM_0、PWM_1、PWM_2和PWM_3分別用作主軸和三個運動軸輸出脈沖發生器,用來控制主軸的轉速和三個運動軸的運動速度。Counter_1、Counter_2和Counter_3則分別對三個運動軸的輸出脈沖進行計數,實現運動軸位移的控制。數字輸出端口輸出三個軸的使能、方向信號和整個系統的急停信號。輸出電平的高低通過軟件編程控制。在這些信號控制三個運動軸工作的同時,系統可以進行計算、插補、狀態查詢、指令傳輸等任何其他的工作,整個系統具有良好的并行性。另外,這些信號可以根據需要隨時進行修改,使得運動軸改變運動速度或方向,系統具有良好的實時性。
同時,PSoC芯片支持DMA(直接內存訪問)技術,由DMA控制器完成。DMA是一種存儲器之間以及存儲器與外部設備之間進行數據傳輸的方法。在DMA中,由硬件設備接管了總線進行數據傳輸工作,節省了主程序調用API函數所占用的CPU時間,提高了系統的并行性,可以縮短插補周期,大大改善了控制器的性能。雕刻機運動軸的運動軌跡控制通過軟件控制以上各個硬件部分協作完成,可以實現直線插補、圓弧插補以及Nurbs插補。
3 系統軟件設計
3.1 插補方案
3.1.1 直線插補
對于一條直線,首先將其在X、Y、Z三個軸上進行投影,根據要求的進給速度和進給量分別設置三個軸的PWM元件參數和對應的計數器,并對三個軸的使能信號和方向信號進行配置。在插補過程中,速度的實時改變也是通過軟件修改PWM元件參數來實現。
3.1.2 圓弧插補
圓弧插補的基本思想是在滿足運動精度的前提下,用微直線段代替圓弧線進行進給,即使用直線來逼近圓弧。本文采用的圓弧插補算法為改進的二階近似DDA插補算法,使用圓的內接弦來逼近圓弧。算法如下(以第一象限為標準)[4]:
3.2 速度控制方案
對于一個實際的電機,啟停時的速度變化需要有加速和減速的過程,在雕刻機的運行中,進給方向改變時同樣需要一個減速再加速的過程,以緩解對電機的沖擊力,延長雕刻機的使用壽命。加減速的主要方式有梯形加減速和S型加減速兩種,如圖4所示。
在梯形加減速中,速度的變化是均勻的;在S型加減速中,加速度也是變化的,從0逐漸變大再減小為0。S型加減速對系統具有更小的沖擊性,但是運算的復雜度更高,時間開銷更大。本文采用了自適應的速度控制方案,對于運動軌跡上拐角比較大且插補速度比較高的點使用S型加減速,對于比較平緩的插補和軌跡交接則使用梯形加減速。另外,系統還引入速度前瞻控制方案,在插補一段軌跡時,根據下一段軌跡的長度和方向來決定進給速度的趨勢。綜合兩段軌跡的長短和夾角,確定減速方案(減速點、加速度和末速度)。
4 實驗結果以及系統性能分析
4.1 雕刻結果展示
本文使用了一臺功率為300 W、型號為TS-2518b的三軸電動雕刻機,圖5左是直線加圓弧插補雕刻結果。這是一組5條直線加四段圓弧(一個象限是一段,四段是一個完整的圓?。┑暮唵螆D案,直線插補、圓弧插補和速度控制方案均使用了前文提到的方式。Nurbs曲線插補雕刻結果如圖5右,這是一條完整的有10個控制頂點的二次Nurbs曲線。
該控制器可實現直線、圓弧、Nurbs曲線插補,梯形、S型加減速控制,并通過使用速度前瞻控制方案提高了系統的穩定性??刂破骺梢钥刂茖嶋H雕刻機進行二維圖形的雕刻。上位機程序可以進行急停,驅動電路板上有可以對三個軸電機和主軸電機進行使能和禁用的開關,具有較完善的安全保護措施。用戶存儲區最多可存儲100~200條指令,輸出脈沖頻率最大可達3 MHz,控制周期最大為40?滋s/軸,系統性能已接近部分專業數控運動控制器。
該控制器可以通過PSoC Creator軟件進行方便地功能、接口的增減和修改,并且具有USB、I2C、SPI、UART、CAN、無線、以太網接口等多種通信方式,便于與其他設備進行通信。系統可以通過無線通信擴展為多個控制器和多個控制對象的網絡化控制。該系統符合開放式數控系統的要求,是現代電子技術與現代制造業發展趨勢的良好結合。
參考文獻
[1] 張燕,陳華.固高運動控制卡在LabWindows/CVI環境中的應用[J].工業控制計算機,2011(6).
[2] 戴朝永.基于ARM+PMAC結構的數控系統設計[J].機電產品開發與創新,2010(1).
[3] Cypress.PSoC5 family datasheet[Z].Cypress Inc,2010.
[4] Zhang Jun,Wang Xu.Method to design multi axis motion controller using extended DDA circuit[C].IITA International Conference on Control, Automation and Systems Engineering,2009:120-123.
[5] 孫海洋.NURBS曲線刀具路徑實時插補技術研究[D].長沙:國防科學技術大學,2008:18-20.