毛片一区二区三区,国产免费网,亚洲精品美女久久久久,国产精品成久久久久三级

基于DSP與BIOS內(nèi)核的運(yùn)動控制器軟件技術(shù)創(chuàng)新論文

時間:2021-06-24 17:37:11 論文 我要投稿

基于DSP與BIOS內(nèi)核的運(yùn)動控制器軟件技術(shù)創(chuàng)新論文

  0 引 言

基于DSP與BIOS內(nèi)核的運(yùn)動控制器軟件技術(shù)創(chuàng)新論文

  作為數(shù)控系統(tǒng)核心控制部件的運(yùn)動控制器,市場上有基于單片機(jī)、基于ARM為主控處理+FPGA/CPLD作為輔控處理、基于DSP為主控處理+FPGA/CPLD作為輔控處理等多種硬件平臺的解決方案。在不同的硬件平臺上,軟件系統(tǒng)調(diào)度方案可以采用μC/OS?Ⅱ,BIOS,RT?Linux,VxWorks等多種實時操作系統(tǒng)內(nèi)核,因而衍生出各種軟件系統(tǒng)的架構(gòu)方案[1]。采用TI公司TMS320C6713系列DSP芯片為主控芯片+FPGA作為輔控芯片的硬件平臺的解決方案,其數(shù)據(jù)吞吐量和高速浮點運(yùn)算上具有一般單片機(jī)不可比擬的優(yōu)勢。而采用TI公司的DSP芯片和CCS的開發(fā)平臺,可以使用配套的非開放源代碼的BIOS實時內(nèi)核,在中小型數(shù)控系統(tǒng)應(yīng)用開發(fā)上,其更加專業(yè),相比采用ARM硬件平臺而使用的開放性源代碼的實時操作系統(tǒng)內(nèi)核,采用DSP硬件平臺與BIOS內(nèi)核的運(yùn)動控制器穩(wěn)定性更好,能夠節(jié)約實時操作系統(tǒng)移植和測試時間,縮短開發(fā)周期,因而其是一種合理有效的解決方案[2]。

  為了能夠在該平臺上進(jìn)行有效的模塊化數(shù)控功能組件的開發(fā)、維護(hù)和移植,本文提出了一種標(biāo)準(zhǔn)化的軟件分層與接口架構(gòu)方案。該方案可作為一種設(shè)計模式,滿足不同用戶的基本功能與二次開發(fā)需求。

  1 系統(tǒng)整體方案

  1.1 運(yùn)動控制器硬件實現(xiàn)平臺

  本文采用的運(yùn)動控制器的硬件系統(tǒng)[3]框圖如圖1所示。其中,TMS320C6713系列DSP具有浮點運(yùn)算器,能快速高效地完成工件加工軌跡插補(bǔ)計算。其集成外部擴(kuò)展擴(kuò)的EDMA和EMIF總線具有數(shù)據(jù)吞吐量大的特點。該DSP主頻為225 MHz,對應(yīng)的指令周期為4.4 ns,相應(yīng)的運(yùn)算速度可達(dá)1 800 MIPS/1 350 MFLOPS,適用于中小型數(shù)控系統(tǒng)主控制器的需求[4]。

  ACTEL公司的A3P400系類FPGA是一種高密度,等效40萬門器件,其可配置的I/O可以兼容多種類型的數(shù)字電平。另外ACTEL公司提供的Libero集成開發(fā)工具,能提供數(shù)字PLL、高速FIFO等多種通用型軟核模塊,能夠節(jié)約開開發(fā)時間與成本,是作為運(yùn)動控制器外部通信總線接口的一種可靠高效的硬件方案。

  圖1 運(yùn)動控制器硬件結(jié)構(gòu)圖

  1.2 系統(tǒng)軟件層次劃分

  本文軟件系統(tǒng)采用三層結(jié)構(gòu)劃分[1],其層次結(jié)構(gòu)如圖2所示。

  圖2 軟件架構(gòu)層次圖

  (1) 用戶應(yīng)用接口層?筛鶕(jù)具體的用戶需求開發(fā)各種功能的'數(shù)控應(yīng)用模塊,并將各功能模塊作為組件通過接口嵌入到系統(tǒng)軟件中來。本文所開發(fā)的基礎(chǔ)用戶組件塊及其功能將在下一節(jié)詳細(xì)描述。

  (2) BIOS內(nèi)核層。采用TI公司的CCS3.3提供的BIOS內(nèi)核以及其各種內(nèi)核組件,可有效縮短內(nèi)核移植和測試時間。CCS3.3提供圖形化界面接口,如圖3所示。其可對內(nèi)核各個組件進(jìn)行配置和應(yīng)用。它的內(nèi)核通過編譯后將在文件鏈接時植入程序,生成最后可執(zhí)行文件。  (3) 硬件驅(qū)動層。用于管理運(yùn)動控制器板卡上與DSP相連的各個硬件設(shè)備的驅(qū)動,并為內(nèi)核與用戶應(yīng)用層提供硬件訪問接口。板卡硬件包括:FIFO通信緩沖器、CNC脈沖發(fā)生器、UART總線控制器、SERCOS總線控制器等。外部模擬數(shù)字硬件設(shè)備采用FPGA或?qū)S肐C實現(xiàn)。

  圖3 BIOS內(nèi)核圖形化配置界面

  2 用戶應(yīng)用軟件任務(wù)劃分

  用戶應(yīng)用軟件組件模塊可分為基礎(chǔ)組件和擴(kuò)展組件[5]。基礎(chǔ)組件提供數(shù)控系統(tǒng)基本的加工、維護(hù)、調(diào)試、監(jiān)控等各種接口控制功能。擴(kuò)展組件根據(jù)特定的用戶需求可選擇性裁剪安裝,一般擴(kuò)展組件包括軟PLC編程接口,SERCOS總線、脈沖、TCP/IP、UART等各種通信協(xié)議數(shù)據(jù)包解析與格式轉(zhuǎn)換等功能。BIOS內(nèi)核是一款多任務(wù)實時內(nèi)核,可以在系統(tǒng)多個用戶基礎(chǔ)任務(wù)之間進(jìn)行調(diào)度。本文所描述系統(tǒng)基本用戶組件任務(wù)劃分見圖4。

  圖4 運(yùn)動控制器硬件結(jié)構(gòu)圖

  2.1 HMI任務(wù)

  HMI通信數(shù)據(jù)包幀格式如表1所示。HIM任務(wù)處理流程如圖5所示。

  (1) 通信數(shù)據(jù)包格式。通信數(shù)據(jù)包格式固定,但功能信息結(jié)構(gòu)格式不固定[6]。不同的信息,如調(diào)試信息、G代碼腳本信息的內(nèi)容等采用不同的信息格式,這樣用戶在增加新的功能組件時,只要自己編寫新的信息格式和編碼與解析方式,就能利用原有的通信協(xié)議進(jìn)行開發(fā),使得系統(tǒng)代碼能夠移植和重新利用。

  表1 HMI數(shù)據(jù)包幀格式

  圖5 HIM任務(wù)處理流程圖

  (2) 數(shù)據(jù)包生成器。從已處理完的HMI信息隊列中按照不同約定信息格式讀取信息,并按照數(shù)據(jù)包的格式為其添加幀頭、物理地址、校驗碼等,生成一組數(shù)據(jù)幀,并將該數(shù)據(jù)幀通過EMIF總線寫入FPGA中的UART發(fā)送FIFO,待其轉(zhuǎn)換為對應(yīng)數(shù)字電平發(fā)送給上位機(jī)。

  (3) 數(shù)據(jù)包解析器。通過EMIF總線從在FPGA中實現(xiàn)的UART總線接收FIFO中讀取一個數(shù)據(jù)幀,并按照約定的用戶應(yīng)用的解析方式解析成對應(yīng)的信息,并將信息加載到HMI接收信息隊列,等待數(shù)據(jù)處理與交換任務(wù)啟動進(jìn)行處理。

  2.2 用戶數(shù)據(jù)處理與交換任務(wù)

  用戶數(shù)據(jù)處理與交換任務(wù)流程如圖6所示。

  本系統(tǒng)提供G代碼腳本解釋器、調(diào)試維護(hù)命令殼、系統(tǒng)錯誤診斷器三個基礎(chǔ)組件。用戶可根據(jù)特定需求植入新的組件,并編寫對應(yīng)組件接口信息編碼與解析方式。

  (1) G代碼腳本解釋器[7]

  數(shù)控G代碼解釋的方案很多。部分廠商采用在上位機(jī)解析成配置信息碼,并發(fā)送給運(yùn)動控制器的方案。但此方案會增加數(shù)據(jù)通信量,使得通信時延增加。本系統(tǒng)采用的方案是:上位機(jī)以字符串格式將數(shù)控G代碼腳本信息打包發(fā)送給運(yùn)動控制器,運(yùn)動控制器對字符串進(jìn)行重新組合,并通過識別組合碼配置數(shù)控參數(shù)控制塊。該方案可以減少通信負(fù)擔(dān),減小通信延時,但是將增大DSP的運(yùn)算處理量。因為DSP運(yùn)算速度明顯要塊于通信傳輸速率,所以該方案是一種合理的折中方案。

  圖6 用戶數(shù)據(jù)處理與交換任務(wù)流程圖

  (2) 調(diào)試維護(hù)命令殼

  該功能用于系統(tǒng)開發(fā)階段和系統(tǒng)維護(hù)階段。系統(tǒng)集成該功能夠之后,根據(jù)開發(fā)人員提供的維護(hù)指令手冊,在上位機(jī)輸入維護(hù)指令,返回運(yùn)動控制器相應(yīng)的關(guān)鍵系統(tǒng)數(shù)據(jù)結(jié)構(gòu)的運(yùn)行狀態(tài)碼,能幫助維護(hù)人員快速地判斷系統(tǒng)運(yùn)行中的故障,并為數(shù)控機(jī)床每個加工軸提供電機(jī)測試接口。

  (3) 系統(tǒng)錯誤診斷器

  負(fù)責(zé)管理和存儲數(shù)控系統(tǒng)需要監(jiān)控運(yùn)行的重要模塊信息,一旦重要模塊運(yùn)行發(fā)生故障,則把錯誤編碼保存在系統(tǒng)錯誤診斷器中,并在任務(wù)運(yùn)行時將錯誤碼發(fā)送給上位機(jī)。

  2.3 運(yùn)動控制任務(wù)

  運(yùn)動控制任務(wù)是運(yùn)動控制器最核心的部分,也是BIOS內(nèi)核所管理的任務(wù)中優(yōu)先級最高的一個任務(wù)。不同廠商的控制器有不同的實現(xiàn)方案。為了能夠清晰理解與移植本文所述系統(tǒng)的運(yùn)動控制程序,圖7給出了運(yùn)動控制的行為與數(shù)據(jù)流框圖。

  根據(jù)圖7所描述的運(yùn)動控制行為,編寫的運(yùn)動控制任務(wù)程序的流程圖如圖8所示。

  圖7 運(yùn)動控制的行為與數(shù)據(jù)流圖

  圖8 運(yùn)動控制任務(wù)流程圖

  (1) 加工軌跡計算。加工軌跡計算控制器,綜合數(shù)控配置參數(shù)與實時的反饋數(shù)據(jù),通過各種數(shù)值計算方法,進(jìn)行各種數(shù)控插補(bǔ)計算,得到最終的加工數(shù)據(jù),可以通過脈沖編碼格式或者SERCOS通信總線,發(fā)送給控制CNC的每個軸的伺服電機(jī)驅(qū)動器,控制電機(jī)的旋轉(zhuǎn)與進(jìn)給。

  (2) 電機(jī)驅(qū)動管理。實時地管理監(jiān)控CNC每個軸的電機(jī)驅(qū)動器。讀取驅(qū)動器的工作狀態(tài),將需要上位機(jī)進(jìn)行實時監(jiān)控的數(shù)控實時運(yùn)行數(shù)據(jù)寫入CNC接收信息隊列,并通過數(shù)據(jù)交換控制任務(wù),發(fā)送到上位機(jī)用于監(jiān)控。當(dāng)有電機(jī)驅(qū)動器運(yùn)行出現(xiàn)異常時,可以及時進(jìn)行保護(hù)停止,并發(fā)送運(yùn)行故障編碼。

  3 軟件方案的驗證性測試

  在本實驗室研發(fā)的嵌入式數(shù)控系統(tǒng)測試平臺如圖9所示。其中,HMI板通過JTAG接口與調(diào)試主機(jī)1相連,運(yùn)動控制板通過JTAG接口與調(diào)試主機(jī)2相連。HMI板與運(yùn)動控制板通過RS 422總線連接,并在采用UART協(xié)議進(jìn)行通信[6,8]。

  由于電機(jī)運(yùn)行軌跡與效果無法很好通過圖片展示,并且本實驗?zāi)康闹饕球炞C整個軟件系統(tǒng)架構(gòu)的可行性,并修補(bǔ)程序BUG。因而建議采用硬件模擬運(yùn)行加Matlab仿真的驗證方法。

  圖9 運(yùn)動控制測試平臺

  采用圓弧插補(bǔ)測試的方法,在上位機(jī)通過G代碼腳本格式導(dǎo)入測試指令腳本,運(yùn)動控制器讀取數(shù)據(jù)包,解析出測試腳本信息后,進(jìn)行處理和運(yùn)算,得出的運(yùn)算數(shù)據(jù)保存后,導(dǎo)入Matlab仿真軟件,生成運(yùn)行軌跡圖,以便模擬仿真電機(jī)的實際運(yùn)行軌跡。表2為CNC測試腳本的加工軌跡數(shù)據(jù)。

  表2 測試加工軌跡數(shù)據(jù)

  圖10為經(jīng)過系統(tǒng)運(yùn)行得到的加工軌跡與原始測試數(shù)據(jù)的軌跡對照。

  圖中點線:測試腳本數(shù)據(jù)擬合曲線;實線:DSP計算的加工數(shù)據(jù)擬合曲線。從方案驗證性測試實驗得到的模擬數(shù)據(jù)擬合圖像和原始腳本測試數(shù)據(jù)對比,可以驗證該軟件架構(gòu)方案和基礎(chǔ)用戶組件能在實驗室的CNC系統(tǒng)平臺上穩(wěn)定可靠地運(yùn)行,因而驗證了該軟件架構(gòu)方案的可行性。

  圖10 加工軌跡測試與模擬軌跡

  4 結(jié) 語

  本文基于TI公司的C6713系列DSP+FPGA作為硬件實現(xiàn)方案的運(yùn)動控制器平臺,提出一種可移植性軟件架構(gòu)方案。通過三層軟件結(jié)構(gòu)模型的描述和基礎(chǔ)性用戶組件與接口的任務(wù)劃分,為用戶的功能的二次開發(fā)與軟件代碼的維護(hù)提供的一個基礎(chǔ)性平臺。并通過加工腳本測試驗證了方案的可行性與穩(wěn)定性。

  參考文獻(xiàn)

  [1] 王濤,王太勇,許愛芬,等.嵌入式實時操作系統(tǒng)在數(shù)控系統(tǒng)設(shè)計中的應(yīng)用[J].計算機(jī)工程,2008,34(4):250?268.

  [2] 孫禾鳳.基于DSP/BIOS的運(yùn)動控制器軟件開發(fā)[D].南京:南京航空航天大學(xué),2008.

  [3] 吳紅軍,皮佑國.基于DSP和FPGA的運(yùn)動控制器的設(shè)計與實現(xiàn)[J].組合機(jī)床與自動化加工技術(shù),2011(2):75?82.

  [4] Texas Instruments Incorporated. TMS320C6713B floating?point digital signal processor SPRS294B [R]. USA: Texas Instruments Incorporated, 2006.

  [5] 毛軍紅,李黎川,吳序堂.機(jī)床數(shù)控軟件化結(jié)構(gòu)體系[J].機(jī)械工程學(xué)報,2006,36(7):48?51.

  [6] 蔣明柯,皮佑國.數(shù)控系統(tǒng)中RS 485串行通信協(xié)議的設(shè)計[J].組合機(jī)床與自動化加工技術(shù),2013(5):23?26.

  [7] [美]凱賽達(dá).計算機(jī)數(shù)控技術(shù)應(yīng)用:加工中心和切削中心[M].北京:清華大學(xué)出版社,2006.

  [8] 范德和,皮佑國.基于DSP和FPGA的運(yùn)動控制器高速串行通信設(shè)計[J].組合機(jī)床與自動化加工技術(shù),2011(9):58?62.

  [9] 張彥軍,李京蔓,等.基于FPGA的數(shù)字量變換器測試系統(tǒng)設(shè)計[J].計算機(jī)測量與控制,2013,21(1):71?77.

【基于DSP與BIOS內(nèi)核的運(yùn)動控制器軟件技術(shù)創(chuàng)新論文】相關(guān)文章:

關(guān)于基于DSP與BIOS內(nèi)核的運(yùn)動控制器軟件技術(shù)創(chuàng)新的論文11-02

基于DSP整流器設(shè)計論文04-18

基于DSP的矢量控制交流驅(qū)動系統(tǒng)設(shè)計及仿真論文04-17

基于模型的軟件測試技術(shù)探析論文05-03

基于知識本體的職業(yè)教學(xué)軟件發(fā)展論文07-05

基于單片機(jī)的液位模糊控制器設(shè)計論文04-21

基于DSP+FPGA的嵌入式圖像處理系統(tǒng)的發(fā)展的論文02-11

基于Maven的輕量級Java軟件開發(fā)研究論文04-15

基于Android平臺軟件開發(fā)技術(shù)研究論文04-17