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