關于基于DSP與BIOS內核的運動控制器軟件技術創新的論文
0 引 言
作為數控系統核心控制部件的運動控制器,市場上有基于單片機、基于ARM為主控處理+FPGA/CPLD作為輔控處理、基于DSP為主控處理+FPGA/CPLD作為輔控處理等多種硬件平臺的解決方案。在不同的硬件平臺上,軟件系統調度方案可以采用μC/OS?Ⅱ,BIOS,RT?Linux,VxWorks等多種實時操作系統內核,因而衍生出各種軟件系統的架構方案。采用TI公司TMS320C6713系列DSP芯片為主控芯片+FPGA作為輔控芯片的硬件平臺的解決方案,其數據吞吐量和高速浮點運算上具有一般單片機不可比擬的優勢。而采用TI公司的DSP芯片和CCS的開發平臺,可以使用配套的非開放源代碼的BIOS實時內核,在中小型數控系統應用開發上,其更加專業,相比采用ARM硬件平臺而使用的開放性源代碼的實時操作系統內核,采用DSP硬件平臺與BIOS內核的運動控制器穩定性更好,能夠節約實時操作系統移植和測試時間,縮短開發周期,因而其是一種合理有效的解決方案。
為了能夠在該平臺上進行有效的模塊化數控功能組件的開發、維護和移植,本文提出了一種標準化的軟件分層與接口架構方案。該方案可作為一種設計模式,滿足不同用戶的基本功能與二次開發需求。
1 系統整體方案
1.1 運動控制器硬件實現平臺
本文采用的運動控制器的硬件系統框圖如圖1所示。其中,TMS320C6713系列DSP具有浮點運算器,能快速高效地完成工件加工軌跡插補計算。其集成外部擴展擴的EDMA和EMIF總線具有數據吞吐量大的特點。該DSP主頻為225 MHz,對應的指令周期為4.4 ns,相應的運算速度可達1 800 MIPS/1 350 MFLOPS,適用于中小型數控系統主控制器的需求。
ACTEL公司的A3P400系類FPGA是一種高密度,等效40萬門器件,其可配置的I/O可以兼容多種類型的數字電平。另外ACTEL公司提供的Libero集成開發工具,能提供數字PLL、高速FIFO等多種通用型軟核模塊,能夠節約開開發時間與成本,是作為運動控制器外部通信總線接口的一種可靠高效的'硬件方案。
圖1 運動控制器硬件結構圖
1.2 系統軟件層次劃分
本文軟件系統采用三層結構劃分,其層次結構如圖2所示。
圖2 軟件架構層次圖
。1) 用戶應用接口層?筛鶕唧w的用戶需求開發各種功能的數控應用模塊,并將各功能模塊作為組件通過接口嵌入到系統軟件中來。本文所開發的基礎用戶組件塊及其功能將在下一節詳細描述。
(2) BIOS內核層。采用TI公司的CCS3.3提供的BIOS內核以及其各種內核組件,可有效縮短內核移植和測試時間。CCS3.3提供圖形化界面接口,如圖3所示。其可對內核各個組件進行配置和應用。它的內核通過編譯后將在文件鏈接時植入程序,生成最后可執行文件。
。3) 硬件驅動層。用于管理運動控制器板卡上與DSP相連的各個硬件設備的驅動,并為內核與用戶應用層提供硬件訪問接口。板卡硬件包括:FIFO通信緩沖器、CNC脈沖發生器、UART總線控制器、SERCOS總線控制器等。外部模擬數字硬件設備采用FPGA或專用IC實現。
圖3 BIOS內核圖形化配置界面
2 用戶應用軟件任務劃分
用戶應用軟件組件模塊可分為基礎組件和擴展組件;A組件提供數控系統基本的加工、維護、調試、監控等各種接口控制功能。擴展組件根據特定的用戶需求可選擇性裁剪安裝,一般擴展組件包括軟PLC編程接口,SERCOS總線、脈沖、TCP/IP、UART等各種通信協議數據包解析與格式轉換等功能。BIOS內核是一款多任務實時內核,可以在系統多個用戶基礎任務之間進行調度。本文所描述系統基本用戶組件任務劃分見圖4。
圖4 運動控制器硬件結構圖
2.1 HMI任務
HMI通信數據包幀格式如表1所示。HIM任務處理流程如圖5所示。
(1) 通信數據包格式。通信數據包格式固定,但功能信息結構格式不固定。不同的信息,如調試信息、G代碼腳本信息的內容等采用不同的信息格式,這樣用戶在增加新的功能組件時,只要自己編寫新的信息格式和編碼與解析方式,就能利用原有的通信協議進行開發,使得系統代碼能夠移植和重新利用。
表1 HMI數據包幀格式
圖5 HIM任務處理流程圖
(2) 數據包生成器。從已處理完的HMI信息隊列中按照不同約定信息格式讀取信息,并按照數據包的格式為其添加幀頭、物理地址、校驗碼等,生成一組數據幀,并將該數據幀通過EMIF總線寫入FPGA中的UART發送FIFO,待其轉換為對應數字電平發送給上位機。
(3) 數據包解析器。通過EMIF總線從在FPGA中實現的UART總線接收FIFO中讀取一個數據幀,并按照約定的用戶應用的解析方式解析成對應的信息,并將信息加載到HMI接收信息隊列,等待數據處理與交換任務啟動進行處理。
2.2 用戶數據處理與交換任務
用戶數據處理與交換任務流程如圖6所示。
本系統提供G代碼腳本解釋器、調試維護命令殼、系統錯誤診斷器三個基礎組件。用戶可根據特定需求植入新的組件,并編寫對應組件接口信息編碼與解析方式。
(1) G代碼腳本解釋器
數控G代碼解釋的方案很多。部分廠商采用在上位機解析成配置信息碼,并發送給運動控制器的方案。但此方案會增加數據通信量,使得通信時延增加。本系統采用的方案是:上位機以字符串格式將數控G代碼腳本信息打包發送給運動控制器,運動控制器對字符串進行重新組合,并通過識別組合碼配置數控參數控制塊。該方案可以減少通信負擔,減小通信延時,但是將增大DSP的運算處理量。因為DSP運算速度明顯要塊于通信傳輸速率,所以該方案是一種合理的折中方案。
圖6 用戶數據處理與交換任務流程圖
。2) 調試維護命令殼
該功能用于系統開發階段和系統維護階段。系統集成該功能夠之后,根據開發人員提供的維護指令手冊,在上位機輸入維護指令,返回運動控制器相應的關鍵系統數據結構的運行狀態碼,能幫助維護人員快速地判斷系統運行中的故障,并為數控機床每個加工軸提供電機測試接口。
(3) 系統錯誤診斷器
負責管理和存儲數控系統需要監控運行的重要模塊信息,一旦重要模塊運行發生故障,則把錯誤編碼保存在系統錯誤診斷器中,并在任務運行時將錯誤碼發送給上位機。
2.3 運動控制任務
運動控制任務是運動控 制器最核心的部分,也是BIOS內核所管理的任務中優先級最高的一個任務。不同廠商的控制器有不同的實現方案。為了能夠清晰理解與移植本文所述系統的運動控制程序,圖7給出了運動控制的行為與數據流框圖。
根據圖7所描述的運動控制行為,編寫的運動控制任務程序的流程圖如圖8所示。
圖7 運動控制的行為與數據流圖
圖8 運動控制任務流程圖
(1) 加工軌跡計算。加工軌跡計算控制器,綜合數控配置參數與實時的反饋數據,通過各種數值計算方法,進行各種數控插補計算,得到最終的加工數據,可以通過脈沖編碼格式或者SERCOS通信總線,發送給控制CNC的每個軸的伺服電機驅動器,控制電機的旋轉與進給。
。2) 電機驅動管理。實時地管理監控CNC每個軸的電機驅動器。讀取驅動器的工作狀態,將需要上位機進行實時監控的數控實時運行數據寫入CNC接收信息隊列,并通過數據交換控制任務,發送到上位機用于監控。當有電機驅動器運行出現異常時,可以及時進行保護停止,并發送運行故障編碼。
3 軟件方案的驗證性測試
在本實驗室研發的嵌入式數控系統測試平臺如圖9所示。其中,HMI板通過JTAG接口與調試主機1相連,運動控制板通過JTAG接口與調試主機2相連。HMI板與運動控制板通過RS 422總線連接,并在采用UART協議進行通信。
由于電機運行軌跡與效果無法很好通過圖片展示,并且本實驗目的主要是驗證整個軟件系統架構的可行性,并修補程序BUG。因而建議采用硬件模擬運行加Matlab仿真的驗證方法。
圖9 運動控制測試平臺
采用圓弧插補測試的方法,在上位機通過G代碼腳本格式導入測試指令腳本,運動控制器讀取數據包,解析出測試腳本信息后,進行處理和運算,得出的運算數據保存后,導入Matlab仿真軟件,生成運行軌跡圖,以便模擬仿真電機的實際運行軌跡。表2為CNC測試腳本的加工軌跡數據。
表2 測試加工軌跡數據
圖10為經過系統運行得到的加工軌跡與原始測試數據的軌跡對照。
圖中點線:測試腳本數據擬合曲線;實線:DSP計算的加工數據擬合曲線。從方案驗證性測試實驗得到的模擬數據擬合圖像和原始腳本測試數據對比,可以驗證該軟件架構方案和基礎用戶組件能在實驗室的CNC系統平臺上穩定可靠地運行,因而驗證了該軟件架構方案的可行性。
圖10 加工軌跡測試與模擬軌跡
4 結 語
本文基于TI公司的C6713系列DSP+FPGA作為硬件實現方案的運動控制器平臺,提出一種可移植性軟件架構方案。通過三層軟件結構模型的描述和基礎性用戶組件與接口的任務劃分,為用戶的功能的二次開發與軟件代碼的維護提供的一個基礎性平臺。并通過加工腳本測試驗證了方案的可行性與穩定性。
參考文獻
王濤,王太勇,許愛芬,等.嵌入式實時操作系統在數控系統設計中的應用.計算機工程,2008,34(4):250?268.
孫禾鳳.基于DSP/BIOS的運動控制器軟件開發.南京:南京航空航天大學,2008.
吳紅軍,皮佑國.基于DSP和FPGA的運動控制器的設計與實現.組合機床與自動化加工技術,2011(2):75?82.
Texas Instruments Incorporated. TMS320C6713B floating?point digital signal processor SPRS294B . USA: Texas Instruments Incorporated, 2006.
毛軍紅,李黎川,吳序堂.機床數控軟件化結構體系.機械工程學報,2006,36(7):48?51.
蔣明柯,皮佑國.數控系統中RS 485串行通信協議的設計.組合機床與自動化加工技術,2013(5):23?26.
凱賽達.計算機數控技術應用:加工中心和切削中心.北京:清華大學出版社,2006.
范德和,皮佑國.基于DSP和FPGA的運動控制器高速串行通信設計.組合機床與自動化加工技術,2011(9):58?62.
【基于DSP與BIOS內核的運動控制器軟件技術創新的論文】相關文章:
基于DSP與BIOS內核的運動控制器軟件技術創新論文11-02
基于DSP整流器設計論文04-18
基于模型的軟件測試技術探析論文05-03
基于知識本體的職業教學軟件發展論文07-05
基于單片機的液位模糊控制器設計論文04-21
基于DSP+FPGA的嵌入式圖像處理系統的發展的論文02-11
基于CMMI的軟件開發模型應用研究論文04-16