2 係統軟件設計
傳(chuan) 統數控係統的使用流程是先由用戶編輯G代碼或其它格式的加工文件,數控係統根據該文件中代碼的意義(yi) ,控製刀具做出相應的動作。所以在軟件方麵,係統需要提供文本編輯功能、對加工文件的編譯功能、電機驅動功能等。為(wei) 了使用戶驗證加工程序的正誤,係統還要提供仿真功能,將走刀過程展現給用戶。
為(wei) 了實現網絡功能,本係統還移植了嵌入式瀏覽器Konqueror/Embedded, 這是一款自由軟件。由於(yu) 瀏覽器可以訪問HTTP、FTP、SMTP、NNTP等多種不同協議的服務,故安裝瀏覽器可謂一舉(ju) 多得,移植過程參考文獻。軟件結構如圖3所示。

2.1 操作係統平台的搭建
2.2 伺服電機和步進電機驅動程序
伺服電機需要的信號是PWM 波形控製信號,因此伺服電機驅動程序主要是實現脈寬調製。這個(ge) 脈寬調製是利用一個(ge) 定時器,並根據由SPWM 算法得到的延遲時間,控製一個(ge) 通用I /O端口高低電平持續時間得到的。係統產(chan) 生的PWM 波形如下圖4所示。

而在三個(ge) 步進電機的設備驅動程序中,向步進電機發送連續信號定義(yi) 為(wei) 寫(xie) 操作; 從(cong) 8253中讀數據定義(yi) 為(wei) 讀操作; 由鍵盤控製各電機動作作為(wei) 自定義(yi) 操作。
2.3 G代碼編譯
G代碼是國際通用的機床加工代碼,其編譯的思想是: 首先將G代碼文件讀入流中,逐行分析其意義(yi) ,並且帶有查錯功能。當遇到子程序跳轉時記錄文件指示出其位置和循環次數時,子程序返回後從(cong) 記錄位置繼續執行;遇到主軸旋轉時,在編譯文件中寫(xie) 入旋轉標誌和PWM 的脈寬; 遇到插補命令時寫(xie) 入脈衝(chong) 標誌和每步的三坐標脈衝(chong) 信號諸如此類。最後生成記錄整套加工步驟的二進製文件。編譯流程如圖5所示。

2.4 插補算法與(yu) 刀補算法
數控銑床控製係統使用逐點比較法實現直線和圓弧插補算法。以刀的當前位置為(wei) 起點,以G代碼給定位置為(wei) 終點,在其間的直線或圓弧上插入擬合點,根據這些點產(chan) 生一係列三坐標脈衝(chong) 信號。逐點比較法的缺陷是圓弧插補隻能走x 或y 方向的正交線,而缺失了最應該在圓弧插補中出現的由x、y 方向合成的±45/135°斜線,係統根據圓弧相對於(yu) x 或y 軸的傾(qing) 向性,使插補過程中在圓弧的±45 /135°附近盡量使用斜線,使得插補精度更高、步數更少。圖6 是由M atlab仿真得到的改進算法和傳(chuan) 統算法的比較,如果定義(yi) 理想曲線和擬和曲線的誤差為(wei) 兩(liang) 曲線相夾的麵積(圖中灰色部分) , 可看出改進算法的誤差較小。

編寫(xie) 加工程序時,一般隻考慮刀具中心沿零件輪廓切削,而忽略刀具半徑對加工的影響,在實際加工時需要在刀具中心與(yu) 刀具切削點之間進行位置偏置,補償(chang) 上述影響。這種變換過程即為(wei) 刀具補償(chang) 。係統采用的是帶有過度連接的C刀具補償(chang) 算法,該算法比較複雜,與(yu) 許多因素有關(guan) ,為(wei) 此定義(yi) 了一個(ge) 結構作為(wei) 刀補函數的參數,該函數更改插補始末位置、增加過渡曲線實現刀補功能。參數結構如下,

3 結論
以ARM9微處理器為(wei) 硬件平台,免費的Linux操作係統為(wei) 軟件平台,開發了嵌入式數控銑床,實現了對步進電機和伺服電機的控製。 在對製作的電路板和編程的係統程序實驗的基礎上表明,與(yu) 傳(chuan) 統數控係統相比,嵌入式數控係統發揮了其耗能少、成本低、體(ti) 積小等優(you) 勢。


轉載請注明出處。







相關文章
熱門資訊
精彩導讀



















關注我們

