引言
隨著科學技術和制造技術的不斷發展進步,數字控制的雕刻機漸漸成為雕刻行業的專用工具。數控雕刻機從加工原理上講是一種鉆銑組合加工,是一種典型的機電一體化產品,在模具雕刻、廣告制作、裝潢等行業有著廣泛的市場應用。
目前市場上的數控雕刻機控制器硬件平臺所用的微處理器主要包括:以8位單片機為內核,這類產品的價格低廉,設計比較簡單,但是有功能單一、性能差、效率低、存儲容量小、獨立工作能力較弱、實用性能不強、定位精度不高、人機交互復雜、操作不方便等缺陷;以DSP為內核,這類雕刻機具有較強的性能及效率,實時性較強,成本適中,但是功能還是比較少,同樣缺少獨立工作能力,無法滿足人機交互界面、外圍電路接口、網絡等方面的要求。
本文提出了利用32位ARM9處理器與FPGA相結合來取代上述單片機與工控機的聯機控制,以Windows CE.net操作系統為平臺,由ARM完成速度控制, FPGA完成軌跡控制。在軌跡控制中結合了步進電機的轉矩-頻率特性,使電機的軌跡精確而且平穩。整個控制系統一體化完成從原始數據讀取到最終控制信號的輸出,徹底擺脫了對工控機的依賴;通過控制鍵盤設置不同的脈沖當量及電機運行參數,可與適用于各種場合的雕刻機床相配合使用,控制精度高、通用性強。
控制系統設計
一個嵌入式系統必定是由嵌入式硬件和嵌入式軟件組成;嵌入式硬件主要包括嵌入式處理器、外設控制器、接口電路等;嵌入式軟件主要包括啟動程序、嵌入式操作系統、應用軟件等。嵌入式處理器是嵌入式系統的硬件核心;嵌入式操作系統是嵌入式軟件的核心。
硬件系統
硬件系統主要由以下三個部分組成:
(1)處理器(ARM9):作為控制器的處理器,在ARM上移植了Windows CE.net操作系統,人機互動方面要完成對LCD顯示的控制和讀取控制鍵盤的控制命令;在雕刻方面要完成對原始數據的讀取(通過USB接口)、預處理、分析和計算,并將計算結果傳遞給FPGA,與FPGA協同完成對步進電機的控制。
(2)FPGA:對接收到ARM發出的數據進行插補運算,并根據插補結果計算出控制步進電機的脈沖數目和延時,最終完成對步進電機的控制實現三軸聯動的雕刻。
(3)人機交互界面:人機交互界面主要包括了鍵盤和LCD。幾乎所有關于雕刻的信息都實時的顯示在LCD上;機床的脈沖當量以及雕刻最大速度和加速度等參數則是通過鍵盤設定的,同時在雕刻中鍵盤還可以根據需要輸入特殊指令。
硬件系統總體框架如圖1所示。整個硬件核心為基于ARM920T的三星S3C2440處理器,搭配有64MB SDRAM作為系統的內存,128MB FLASH作為系統的外存,相當于硬盤,以便在斷電后保存各種系統程序以及調試下載電路。外圍輔助設備包括USB接口:大部分加工文件保存在U盤中,需要讀取時從U盤調入,以節省FLASH存儲空間;觸摸式LCD:用來提供系統的顯示以及操作;網絡接口:用來提供網絡服務,方便遠程更新程序;控制鍵盤:用來提供加工時所需的操作,包括點控、起停和加減速等。與上位機通信通過串口或者USB接口,可實現在線調試或者在上位機中顯示實時信息。FPGA與ARM以及過橋板相連,從ARM中獲取數據并轉換成控制信號,經過橋板放大電路放大,發送到步進電機的控制電路中。
圖1 硬件系統總體框架
軟件系統
系統的軟件選用了嵌入式實時多任務操作系統Windows CE.net。根據雕刻機控制系統的需求,系統任務模塊可以分為:人機界面模塊,USB接口模塊和雕刻控制模塊。其中人機界面模塊包括LCD顯示和鍵盤指令的讀??;通過USB接口模塊讀取原始設計數據;雕刻控制模塊對讀取的數據分析計算后完成速度控制和軌跡控制。軟件結構圖如圖2所示。
控制系統中,ARM通過對設計數據的分析和計算完成速度控制,FPGA通過插補運算完成軌跡控制??刂葡到y應用程序流程圖如圖3所示。
圖2 系統軟件結構圖
圖3 控制系統應用程序流程圖
(1)讀取數據,找出可在速度不出現突變的情況下可雕刻的最小單位的線條數,稱之為判“S”。分別計算“S”中各軸的位移總量,定義“Sx”,“Sy”和“Sz”分別為x,y和z軸的位移總量。
(2)根據操作設置的雕刻最大速度和加速度,計算出該段位移中各軸的速度分量和加速度分量。
(3)判斷當前數據處于哪種速度段,根據不同的情況計算各段位移的加速、勻速、減速段的脈沖數和各速度段的初始頻率等這些數據,并把數據發送給FPGA。
(4)FPGA根據接收到的數據進行插補運算,最終控制步進電機的轉速,實現三軸聯動。
雕刻機連續軌跡控制
在數控加工中,運動控制器通過插補算法來控制刀具相對于工件以一定的速度,按照給定的路徑運動切屑出零件輪廓。插補技術是數控系統的核心技術,它主要解決控制刀具與工件運動軌跡的問題。本系統的插補運算是在以ARM9為核心的嵌入式處理器中完成的。
以二維基本直線條的插補運算為例,首先根據脈沖當量,分別計算出XY軸各自的總待發送脈沖數mx和my。設定XY中脈沖數較多者為基礎軸并將其作為參考軸,目的在于選取一個穩定的參考軸,以方便各脈沖發送的計算。實際運算時(以X軸為基礎軸),根據加工速度以及脈沖當量,計算出基礎軸發送脈沖的頻率f,在每一個時間間隔內,均發送一個基礎軸脈沖并累加發送次數m。
當時,則在
式1
時,發送一次短軸脈沖。當時,則需要在 ([ ]為取整運算)后,延時后發送一次短軸脈沖。在式1中,倍數n亦可以看作是短軸的計數器,則當m=mx,即n=my時,插補運算完畢。該數字積分法脈沖發送示意圖如圖4所示:
在圖4(a)中,線段XY兩軸比例為2:1,如果刻畫動點按照既定路徑運動,則XY兩軸運動速度比為2:1。依據步進電機的控制規律,控制兩軸的脈沖頻率比同為2:1,且兩軸脈沖發送數量比為2:1。根據上面的數字積分插補算法,首先計算出X軸的脈沖發送頻率,在每一個時間間隔內,均發送一個基礎軸脈沖,并且每隔2個基礎軸脈沖即發送一個短軸脈沖,從而使短軸脈沖的頻率為0.5,當基礎軸發送完畢時,短軸脈沖亦發送完畢,數量與計算得出的相符。當兩軸比例為3:2時,如圖4(b)所示,則在每1.5個基礎軸脈沖發送后發送一個短軸脈沖,有效的保證了脈沖發送比例,從而保證了刻畫線段的精度。
圓弧插補時,首先依據圓弧允許半徑誤差er計算出擬合弦長:
(r為圓弧半徑) 式2
再根據擬合弦長l計算出對應的圓心角:
式3
圖4 插補算法脈沖發送示意圖
通過弦長對應的圓心角將原圓弧重新劃分為多條擬合直線,然后通過直線插補的方式完成圓弧刻畫。
該運算方式不再依賴每一次計數器的累加運算,而是依據速度矢量合成原理,通過控制各軸脈沖的發送比例,使合成點按照加工軌跡的方向運動,達到加工目的,避免了重復性的積分累加運算,可以一次性將所有脈沖數據運算完畢,只要按照一定的頻率發送即可。
插補算法的程序流程圖如圖5所示:
圖5 數字積分法插補流程圖
首先判斷是否有外部中斷信息輸入,包括系統需求中的機械信號,如機床原點、工件加工原點、換刀、主軸調速和斷電保護等輸入/輸出信號等,以及操作人員輸入的暫停、停止加工、人為加、減速控制等信息。中斷程序響應時需要保護好程序已經運算出的相關關鍵信息,包括讀取的加工段落數據信息以及已經加工的段落位置信息。
其次依據脈沖當量的定義:相對于每一脈沖信號的機床運動部件的位移量,得各個加工軸脈沖總數為:
(其中l為每一軸的長度分量)
式4
并選出具有最大加工脈沖數的軸作為基礎軸。電機控制器還需要脈沖的方向信息,脈沖方向由事先約定好的方向規定來確定,可通過讀入的數據文件判斷。插補計算初始化階段設置各計數參量初始值,如圖5數字積分法插補流程圖中所示,COUNT存儲基礎軸與短軸之間的比例值,其數值為:基礎軸脈沖數/短軸脈沖數;LONG為基礎軸的累加統計變量,基礎軸每發送一個脈沖,其值加1;SHORT為短軸的累加統計變量,初始化階段將COUNT的值賦予SHORT。每次插補運算以基礎軸發送一個脈沖開始,并累加LONG中的值;然后判定LONG的值與SHORT值的整數部分,當兩者相等時,表示此時將發送一個短軸脈沖,不等時則繼續發送一個基礎軸脈沖。發送短軸脈沖時,由于短軸的脈沖是跟隨基礎軸發送,所以計算其繼基礎軸發送后,所需的延時發送時間,其延時數值為1/f(SHORT-LONG),并將COUNT的值累加到SHORT中,新的SHORT值作為下一次發送短軸脈沖的判斷基準。每次計算各個發送軸后,都將產生一組固定的信息:脈沖發送標志位,脈沖延時時間和脈沖方向標志位,這些信息將被進一步加工生成發送到FPGA中的控制脈沖信息。
結果分析
將ARM作為主運算處理器時,其上不僅要運行插補程序,進行實時的加工信息讀入、速度控制預算以及脈沖發送的計算,同時還要運行后臺操作系統,并處理用戶輸入信息,如果再在其上設定延時程序并控制脈沖發送,則ARM的運算負擔將變得過重。因此,采用FPGA協處理運算方案,輔助ARM進行脈沖的延時發送。
設FPGA的頻率為
,則其進行一次基數累加計算時間為
,電機的當前執行速度為Vs,脈沖當量為,則當前的發送脈沖的頻率為:
式5
則此時每個脈沖的間隔換算為FPGA的累加次數則為:
式6
在加減速階段,采用指數方式,其中基礎軸每一段的頻率變化為事先計算好的,即式6中的fs為特定值,而對于短軸來說,其延時發送頻率值可由計算時使用到的公式1/f(SHORT-LONG)求得,即每一步脈沖的頻率用式6即可確定。ARM在計算每一次脈沖的發送時,需要將脈沖的延時計數次數一并計算,然后與脈沖發送的方向一起送到FPGA中。步進電機控制器對控制脈沖的持續時間有一定要求,設其需求的脈沖持續時間為TP,則FPGA中,脈沖的持續時間計數:
式7
FPGA通過送來的脈沖方向以及脈沖計數次數,即可以計數延時的方式,將此脈沖按照理論的計算頻率發送至步進電機控制器,完成對電機控制器的控制脈沖發送。發送的控制波形圖如圖6所示:
圖6 各軸脈沖發送波形圖
由圖6可以看出,該插補算法不僅發送脈沖均勻且成比例發送,短軸可依據自己的頻率變化規律對電機進行控制。
結語
根據雕刻機的實際需求和步進電機的轉矩-頻率特性,開發出了基于嵌入式的數控雕刻機控制系統。該系統硬件上以ARM與FPGA為核心,軟件上以Windows CE.net操作系統為平臺,結合步進電機的固有特性和插補程序,使得雕刻機三軸聯動完成各種雕刻文件。實踐表明,該控制器可以脫離工控機的支持,獨立完成對原始設計數據的分析和計算,并最終通過插補算法控制電機完成雕刻,在雕刻過程中可以精確的做到速度控制和軌跡控制。
評論
查看更多