嵌入式技術迅速發展,已經被廣泛地應用於(yu) 各行各業(ye) 。將嵌入式技術和數控技術結合起來產(chan) 生了很多理論和應用成果。但是,隨著機床加工零件複雜程度越來越大,建立嵌入式數控係統一致的體(ti) 係架構越來越迫切。沒有體(ti) 係結構提供通用的方法指導,將各式各樣的軟硬件模塊集成到數控係統中將是非常繁重且容易出錯的工作。嵌入式數控係統體(ti) 係結構就是要為(wei) 各個(ge) 模塊提供集成規則和接口規範,通過這些集成規則和接口規範,不同的開發者能夠構建出通用的模塊。利用通用的模塊和通用的集成規則,可以構建不同的嵌入式數控係統,由數控係統集成到工控站,由工控站再到工控網絡乃至更複雜的係統。嵌入式數控體(ti) 係結構能夠提高係統的靈活性、可靠性、安全性和開放性。美國國家技術標準化組織(NIST)就致力於(yu) 為(wei) 各種機械控製係統建立一種參考體(ti) 係結構[1]。本文研究了嵌入式數控係統的硬件體(ti) 係結構和軟件體(ti) 係結構,並結合所做工作,介紹了這種體(ti) 係結構的一種實例。
嵌入式數控係統硬件體(ti) 係結構
嵌入式數控係統硬件體(ti) 係結構如圖1所示。

圖1 嵌入式數控係統硬件體(ti) 係結構
嵌入式數控係統必須包含一個(ge) 可編程計算部件,也可以包含多個(ge) ,構成多CPU係統。嵌入式處理器或控製器種類很多,比較常用的有ARM、嵌入式X86、MCU等,處理器是整個(ge) 係統運算和控製中心,它的架構越來越趨向於(yu) 采用RISC指令集Harvard架構。可編程計算部件,若幹年前還是單指處理器或微控製器,而現在卻增加了如FPGA等其它可編程計算資源。
數控係統要和操作人員交互,必須有一個(ge) 顯示硬件,可以是CRT顯示器,但是一般嵌入式處理器中集成LCD控製器,它提供與(yu) DSTN(Dual-Layer Super Twist Nematic,雙掃描扭曲向列液晶屏)或TFT(Thin Film Transistor,薄膜晶體(ti) 管液晶屏)顯示器的接口,通過這個(ge) 接口可以直接驅動液晶顯示屏。
隨著USB移動存儲(chu) 設備使用的推廣,平台通過USB主控製器實現對USB設備的支持和控製。處理器中也可能集成了USB客戶端控製器,方便實現USB客戶端接口,一般通過這個(ge) 接口進行上位機與(yu) 平台間的應用軟件調試。
串口用來實現上下位機通信,在有些伺服驅動裝置中也提供串口連接,因此,也可以通過串口與(yu) 驅動連接。
外部存儲(chu) 器總線接口支持各種外部存儲(chu) 器:SDRAM、RAM和閃存儲(chu) 器,內(nei) 存一般選用SDRAM,閃存是一類非易失性存儲(chu) 器,在電源關(guan) 閉後仍能保持片內(nei) 信息,這裏用來存儲(chu) 數控係統程序及配製數據。
進給軸接口是數控係統和進給伺服係統的橋梁。就現階段經常使用的伺服控製係統而言,進給控製接口一般有串行式接口、脈衝(chong) 式接口、模擬式接口等等。
主軸控製接口連接數控係統與(yu) 主軸驅動單元,它包含兩(liang) 個(ge) 部分:主軸速度控製輸出和主軸編碼器輸入。
在數控係統內(nei) 集成的PLC屬於(yu) 內(nei) 置式,它有設計靈活、結構緊湊、針對性強等特點,主要完成主軸轉速的S代碼、刀具功能的T代碼以及控製主軸正反轉與(yu) 啟停、主軸換檔、冷卻液開關(guan) 、卡盤鬆緊等M代碼。
傳(chuan) 感器接口用來檢測機床位置信息,實現各種控製算法的計算輸入。
現代製造工程的發展要求數控係統間應該能夠通過網絡互連,傳(chuan) 遞命令和數據信息,並行完成數控任務。因此加入以太網模塊,以便在需要時實現數控係統的聯網。
上述各功能模塊通過標準總線連接,實行統一的總線接口規範。該體(ti) 係結構中有些功能模塊不是每一個(ge) 嵌入式數控係統都必須的,可根據具體(ti) 要求裁減。
嵌入式數控係統軟件體(ti) 係結構
嵌入式數控係統軟件體(ti) 係結構如圖2所示:

圖2 嵌入式數控係統軟件體(ti) 係結構
嵌入式數控係統軟件體(ti) 係結構分為(wei) 係統平台和應用軟件兩(liang) 大部分。上層應用軟件分數控應用程序接口(NCAPI)和操作界麵組件兩(liang) 個(ge) 層次,以分別實現對機床廠和用戶這兩(liang) 個(ge) 層次的開放。
底層模塊除了PLC之外的部分是不對外開放的,非係統開發者可以通過NCAPI使用底層的功能。底層模塊完成插補任務(粗插補,微直線段精插補,單段, 跳段, 並行程序段處理);PLC任務(報警處理,MST處理,急停和複位處理,虛擬軸驅動程序,刀具壽命管理,突發事件處理);位置控製任務(齒隙補償(chang) , 螺距補償(chang) ,極限位置控製,位置輸出);伺服任務(控製伺服輸出、輸入)以及公用數據區管理(係統中所有資源的控製信息管理)。因此必須具有多任務的處理能力,即;任務建立;撤消;調度;喚醒;阻塞;掛起;激活;延時的處理能力;創建信號量;釋放信號量;取信號量值的能力。
上層軟件負責零件程序的編輯、解釋,參數的設置,PLC的狀態顯示,MDI及故障顯示、加工軌跡、加工程序行的顯示等,通過共享內(nei) 存、FIFO和中斷與(yu) 底層模塊進數據交換。上層軟件模塊包括:解釋器模塊,MDI運行模塊,程序編輯模塊,自動加工模塊,參數編輯模塊,PLC顯示模塊,故障診斷模塊等等。
數控應用軟件開發接口(NCAPI)是為(wei) 針對不同的機床和不同的要求而提供的通用接口函數,在此之上可以方便地開發出具體(ti) 的數控係統,如華中I型銑床數控係統,世紀星車床數控係統等。NCAPI與(yu) 原華中I型提供的API接口保持一致。統一的API保證係統的可移植性和模塊的互換性;係統開發集成環境中的配置功能可以通過配置不同的軟件模塊實現係統性能的伸縮性,係統性能的伸縮性則通過更換係統硬件得以保證。
應用實例
按照上述嵌入式體(ti) 係結構的層次劃分,本文開發了基於(yu) 嵌入式PC和LINUX操作係統的嵌入式數控係統。
CPU采用嵌入式PC單元,通過PC104總線嵌入到數控主板中。在數控主板上,繼承了開關(guan) 量接口電路,MCP、MDI鍵盤接口電路,進給軸接口電路以及主軸接口電路。各接口電路由核心器件FPGA芯片集中控製。為(wei) 滿足CNC裝置對開放性的要求,數控主板采用雙FPGA設計。一個(ge) FPGA芯片負責控製開關(guan) 量接口電路,MCP、MDI鍵盤接口電路,主軸接口電路,串行口伺服驅動裝置接口電路;另一個(ge) FPGA芯片負責控製脈衝(chong) 量伺服驅動裝置或步進電機驅動裝置接口電路,模擬量伺服驅動裝置接口電路。兩(liang) 個(ge) FPGA芯片通過PC/104總線嵌入式PC機控製。利用FPGA芯片的靈活性,在不改變硬件電路的情況下,通過改變FPGA芯片的固件,以及兩(liang) 個(ge) FPGA芯片靈活搭配,可以構造出不同配置的數控裝置。
操作係統是通過改造Linux內(nei) 核使其成為(wei) 實時操作係統。具體(ti) 方法是:在Linux操作係統中嵌入一個(ge) 硬件抽象層,接管所有中斷和對硬件的操作。由於(yu) Linux采用整體(ti) 式的模塊化結構,數控係統任務中需要實時響應的任務做成數控實時模塊,嵌入到Linux內(nei) 核中,這些任務包括:伺服監控、PLC、位置控製等周期任務和插補這個(ge) 非周期任務,刀補、譯碼和網絡基本功能打包成數控應用程序接口。#p#分頁標題#e#
在實時Linux軟件平台的基礎上,應用軟件平台包含的離散點I/O控製API、傳(chuan) 感器API、位置控製器API等接口為(wei) 通用API接口。應用程序層包含的過程控製、人機界麵及係統集成與(yu) 配置支撐環境三部分隻需要用實時Linux操作係統相關(guan) 係統API替換相應的模塊通信接口即可,上層應用模塊可以不做修改。同時,應用軟件平台具備良好的開放性,用戶可自定義(yi) API來擴充係統功能支持,本文在應用平台層自定義(yi) 了一個(ge) 數控圖形庫API,用來支持數控係統的圖形顯示功能。
結語
本文提出的這種開放的嵌入式數控係統體(ti) 係結構,在硬件上,標準的總線屏蔽了各功能部件差異,不同功能的數控硬件通過標準的信號規範來定義(yi) 。在軟件上,嵌入式實時操作係統為(wei) 數控應用軟件提供了係統接口,屏蔽硬件細節,提供實時、可靠、多任務的運行環境。軟件體(ti) 係結構總體(ti) 上分層,使得體(ti) 係結構清晰明了;層內(nei) 按功能模塊化,盡量減少模塊耦合,使得軟件複用性很好,有利於(yu) 數控係統功能裁減和係統維護。既保證了硬件平台的開放性和穩定性,也使得軟件移植和設計更加方便。
轉載請注明出處。







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



















關注我們

