基于嵌入式硬件的總線式數(shù)控機(jī)床動態(tài)性能測試工具研究
引言
數(shù)控機(jī)床正逐漸向總線化方向發(fā)展,總線式數(shù)控系統(tǒng)具有可靠性高、可遠(yuǎn)距離傳輸、安裝維護(hù)成本低等優(yōu)點(diǎn)??偩€式數(shù)控系統(tǒng)的控制器與從站之間采用實(shí)時以太網(wǎng)連接,實(shí)時以太網(wǎng)因其低成本、高通信效率等優(yōu)點(diǎn),近年來被越來越多地使用。國內(nèi)已有機(jī)床廠商推出基于實(shí)時以太網(wǎng)技術(shù)的機(jī)床產(chǎn)品,比如華中數(shù)控、廣州數(shù)控、大連科德等。
EtherCAT和MetroLink-m是兩種相對使用較為廣泛的工業(yè)實(shí)時以太網(wǎng)總線。EtherCAT是德國倍福研發(fā)的一種實(shí)時工業(yè)以太網(wǎng)技術(shù),具有高速和高帶寬、高效率的特點(diǎn)。EtherCAT支持多種設(shè)備連接拓?fù)浣Y(jié)構(gòu),拓?fù)浣Y(jié)構(gòu)中的從站設(shè)備通過標(biāo)準(zhǔn)以太網(wǎng)線和主站連接。通信時主站下發(fā)報文給第一個從站,從站直接處理接收的報文,并從報文中提取或插入相關(guān)的用戶數(shù)據(jù),然后將報文傳輸?shù)较乱慌_從站設(shè)備,最后一個EtherCAT從站發(fā)回經(jīng)過完全處理的報文,由第一個從站作為相應(yīng)報文將其發(fā)送給主站。MetroLink-m是日本安川電機(jī)開發(fā)的運(yùn)動控制現(xiàn)場總線協(xié)議,其通信速率高達(dá)100Mb/s,能夠?qū)崿F(xiàn)各種控制信息(位置、速度、力矩、Ⅰ/O等)的實(shí)時通信,其主站實(shí)現(xiàn)方式為安川專用芯片JL101A。
基于實(shí)時以太網(wǎng)的總線式數(shù)控系統(tǒng)與伺服驅(qū)動器之間通過實(shí)時以太網(wǎng)連接,總線上每個通信周期都傳輸著目標(biāo)位置/速度并反饋電機(jī)編碼器位置,因此驅(qū)動器所使用的總線種類需要與數(shù)控系統(tǒng)一致。由于種種原因,一臺數(shù)控機(jī)床所采用的數(shù)控系統(tǒng)供應(yīng)商與伺服驅(qū)動器廠商可能不一致,當(dāng)機(jī)床動態(tài)性能不理想時,無法區(qū)分是數(shù)控系統(tǒng)運(yùn)動控制上的原因,還是伺服驅(qū)動電機(jī)系統(tǒng)響應(yīng)性的原因。為了排除數(shù)控系統(tǒng)運(yùn)動控制算法、前瞻插補(bǔ)算法等的影響,將耦合問題解耦,需要專門的機(jī)床性能測試工具,有學(xué)者基于LabVⅠEW研發(fā)了機(jī)床動態(tài)性能測試工具。
為了實(shí)現(xiàn)低成本全自主可控的軟硬件方案,本文研發(fā)了一款基于嵌入式硬件的支持EtherCAT總線和MetroLink-Ⅲ總線的機(jī)床動態(tài)性能測試工具。
1嵌入式硬件方案設(shè)計
本文研究的總線式數(shù)控機(jī)床動態(tài)性能測試工具需滿足機(jī)床動態(tài)性能測試的相關(guān)需求,其他需求包含工業(yè)實(shí)時總線的支持、觸摸屏的連接、存儲卡等外設(shè)的使用。在滿足以上要求的基礎(chǔ)上,硬件方案的整體配置清單如表1所示。
在硬件方案設(shè)計中,需滿足測試工具的外設(shè)需求,常用外設(shè)包含觸摸式顯示屏、TF存儲卡、EtherCAT總線從站、MetroLink-Ⅲ總線從站、鍵盤等,調(diào)試用外設(shè)包含串口調(diào)試工具、oTG調(diào)試工具、鼠標(biāo)等。
硬件整體設(shè)計框架如圖1所示。
在工業(yè)總線通信模塊的硬件設(shè)計上,由于需要同時支持EtherCAT和MetroLink-m兩種總線,因此選用并口進(jìn)行連接,采用分別片選的方式切換總線類型,如圖2所示。
本文所研究測試工具基于使用便利性和經(jīng)濟(jì)性考慮,選取了10.1英寸TFTLCD顯示屏,分辨率為1280×800像素,262Kco1ors)RGB-6bit)。如圖3所示,顯示屏組建與主控電路板采用單路8位LVDS接口連接,顯示屏背光采用+12V供電,3.3V顯示供電,可通過PwM調(diào)節(jié)背光亮度。Ethernet通信模塊、USB擴(kuò)展模塊、TF卡存儲擴(kuò)展模塊、串口模塊、復(fù)位模塊、急停輸出模塊、電源模塊等也進(jìn)行了專門的設(shè)計,因不在本文主要研究范圍內(nèi),此處不再贅述。
本文硬件方案能夠有效支撐可觸摸操作的總線式機(jī)床性能測試工具的研制。
2總線式數(shù)控機(jī)床動態(tài)性能測試工具系統(tǒng)軟件設(shè)計
本文研究的總線式數(shù)控機(jī)床動態(tài)性能測試工具可同時滿足EtherCAT和MetroLink-Ⅲ兩種總線協(xié)議,因EtherCAT使用廣泛,且無須專用主站芯片,研發(fā)難度更大,因此軟件系統(tǒng)設(shè)計基于EtherCAT總線介紹。
2.1測試工具系統(tǒng)軟件架構(gòu)設(shè)計
EtherCAT總線軟件架構(gòu)如圖4所示,本文所研究的軟件架構(gòu)基于用戶空間、內(nèi)核空間和硬件基礎(chǔ)進(jìn)行分層,主要組成模塊包含測試工具界面模塊、實(shí)時任務(wù)應(yīng)用模塊、非實(shí)時任務(wù)應(yīng)用模塊。通過EtherCAT主站模塊對系統(tǒng)進(jìn)行操作,實(shí)時任務(wù)通過實(shí)時任務(wù)應(yīng)用模塊進(jìn)行周期性處理,非實(shí)時應(yīng)用調(diào)用Linux內(nèi)核。實(shí)時任務(wù)處理IgH狀態(tài)機(jī)任務(wù),并進(jìn)行總線數(shù)據(jù)的處理,底層通過網(wǎng)卡驅(qū)動和伺服驅(qū)動器實(shí)現(xiàn)總線的傳輸。
圖4總線式數(shù)控機(jī)床動態(tài)性能測試工具軟件架構(gòu)
為了支持滿足測試工具的需求,軟件體系需要能夠執(zhí)行實(shí)時任務(wù),能夠作為主站進(jìn)行EtherCAT總線的首發(fā),能夠基于協(xié)議進(jìn)行驅(qū)動器的配置,還要滿足部分圖形化任務(wù)的需求。因此,軟件體系中需要選用相應(yīng)軟件模塊和解決方案以滿足相應(yīng)需求,本文選取了xenomai實(shí)時模塊和EtherLab推出的IgHEtherCAT主站方案。IgHEtherCAT主站方案選用CANopenoverEtherCAT(COE)協(xié)議,COE中設(shè)備描述文件以xml文件的形式進(jìn)行保存,因此本文所研究的軟件架構(gòu)中包含libxml2庫用于處理xml格式文件。為了支撐界面應(yīng)用,選取Qt庫和Qwt庫作為圖形化設(shè)計工具。
EtherCAT總線的周期性通信需要確保在周期內(nèi)完成,通信周期由FPGA給出的周期性中斷決定,本軟件需要在下一個中斷到來之前完成前一個周期的任務(wù)。而軟件中,坐標(biāo)顯示等為準(zhǔn)實(shí)時任務(wù),其對實(shí)時性的要求不需要達(dá)到總線周期的時間量級,但也需要確保一定的刷新頻率。其他一些任務(wù),比如鼠標(biāo)事件的響應(yīng)、界面的操作等均為非實(shí)時任務(wù),不需要占用實(shí)時任務(wù)的資源。因此,在這個綱領(lǐng)下,本文所研究軟件需將各任務(wù)分為實(shí)時任務(wù)、準(zhǔn)實(shí)時線程和其他非實(shí)時任務(wù)三個層次。為了簡化程序架構(gòu),盡量減少實(shí)時任務(wù)負(fù)擔(dān)及實(shí)時任務(wù)間的沖突,本軟件最好僅采用一個實(shí)時任務(wù)。在Qt開發(fā)框架下,主界面占據(jù)了操作的主線程,因此實(shí)時任務(wù)可以設(shè)計為通過線程管理Qthread進(jìn)行開啟。在本程序開啟時,只運(yùn)行主界面的非實(shí)時任務(wù),當(dāng)連接總線時,會開啟準(zhǔn)實(shí)時線程,準(zhǔn)實(shí)時線程中包含坐標(biāo)顯示和實(shí)時任務(wù)的開關(guān)控制。
2.2測試工具用戶空間的軟件界面設(shè)計
測試工具采用觸摸屏進(jìn)行操作,也可以外接鼠標(biāo)、鍵盤進(jìn)行操作。測試工具的主界面如圖5所示。
主界面左側(cè)為子頁面選擇區(qū),子頁面包括狀態(tài)子頁面、參數(shù)配置子頁面、設(shè)備測試子頁面、示波器子頁面、錯誤排查子頁面等。
程序啟動后率先進(jìn)入狀態(tài)子頁面,本文所研究測試工具由于要面對各種不同類型機(jī)床,因此對編碼器/光柵分辨率、螺距都可以進(jìn)行自由配置。也可以選擇周期性速度同步指令(COE中CSV模式)或周期性位置同步指令(COE中CsP模式)作為控制模式,通信周期0.5~4ms可調(diào)。為了保證機(jī)床調(diào)試的安全,可設(shè)置軟限位,系統(tǒng)會對位置/速度指令進(jìn)行判斷,超出限位時停止動作??稍O(shè)置直線運(yùn)動的最大加速度和最大捷度(加加速度),在后續(xù)的運(yùn)動測試中,會根據(jù)設(shè)置的最大加速度和最大捷度限制進(jìn)行運(yùn)動規(guī)劃。本文所研究軟件為便于機(jī)床測試,可各個軸單獨(dú)使能,且具備手輪模式和連續(xù)運(yùn)動模式,進(jìn)給速度均可調(diào)節(jié)。
圖6所示為參數(shù)配置子頁面,可以通過COE對象字典對驅(qū)動器參數(shù)進(jìn)行讀寫,對象字典是CANopen協(xié)議中最重要的部分。
本文所研究的機(jī)床動態(tài)性能測試工具包含單軸測試、雙軸同步測試和雙軸畫圓測試三種模式,插補(bǔ)方法均選用單位弧長增量插補(bǔ)法。單軸測試主要對機(jī)床的單軸動態(tài)響應(yīng)做測試,速度規(guī)劃按照梯形加減速進(jìn)行,單軸測試結(jié)果可體現(xiàn)跟隨誤差、速度波動、最大速度超調(diào)量、加速度超調(diào)量等信息,便于使用者對機(jī)床性能進(jìn)行判斷或?qū)λ欧?qū)動速度環(huán)、電流環(huán)參數(shù)進(jìn)行調(diào)整,以完成調(diào)優(yōu)。雙軸同步測試是考察交叉軸同步運(yùn)動的場景,測試結(jié)果主要體現(xiàn)被測兩軸響應(yīng)速度的配合度,其誤差值可以理解為兩軸同步插補(bǔ)時兩軸響應(yīng)所帶來的誤差。雙軸畫圓測試主要體現(xiàn)雙軸進(jìn)行圓弧插補(bǔ)時的輪廓誤差以及圓弧過象限時的背隙誤差。
由于三種測試目標(biāo)與運(yùn)動形式不同,因此其參數(shù)也不相同,具體參數(shù)設(shè)置如圖7所示,速度規(guī)劃的加速度、捷度限制在圖5所示的狀態(tài)子頁面中配置。
3實(shí)驗(yàn)驗(yàn)證
本節(jié)采用本文所研究的總線式數(shù)控機(jī)床動態(tài)性能測試工具對雙軸交叉運(yùn)動平臺進(jìn)行了測試,運(yùn)動平臺具備兩個運(yùn)動軸,均采用20位編碼器,即單圈分辨率為1048576,絲杠螺距為16mm。采用本文所研制的測試工具分別進(jìn)行了三種測試。
圖8所示為該工作臺X單軸測試結(jié)果,移動距離為10mm,進(jìn)給速度為1000mm/min,最大加速度0.5g。如圖所示,跟隨誤差隨加速過程逐漸變大,在勻速運(yùn)動后跟隨誤差趨于穩(wěn)定,在減速階段跟隨誤差逐漸減小。實(shí)際速度曲線略滯后于指令速度曲線,并在加速結(jié)束后有一定量的超調(diào)。
圖9為工作臺雙軸同步測試結(jié)果的圖形化展示,雙軸同步測試距離為10mm,進(jìn)給速度為1000mm/min,其運(yùn)動為兩個軸同步先往正向移動10mm,再移動回起點(diǎn)。本次實(shí)驗(yàn)兩軸的最大誤差為2.44μm,兩軸間的誤差正負(fù)值較均勻,說明兩軸同步性較好。
圖9雙軸同步測試結(jié)果
圖10為工作臺雙軸畫圓測試結(jié)果的圖形化展示,圓弧半徑為10mm,進(jìn)給速度為1000mm/min,畫圓運(yùn)動會進(jìn)行兩圈,第一圈會進(jìn)行加速因此其結(jié)果不做保存,第二圈畫圓運(yùn)動的編碼器位置反饋結(jié)果如圖10所示。為了顯示上的直觀,誤差在徑向上進(jìn)行了放大顯示,由圖可以看出在過象限,即一根軸換向時會產(chǎn)生尖角,基于編碼器反饋的結(jié)果計算本次測試的最大圓弧跟隨誤差為5.18μm。
4結(jié)語
本文介紹了基于嵌入式硬件的總線式數(shù)控機(jī)床動態(tài)性能測試工具的軟硬件架構(gòu),為滿足機(jī)床幾種典型動態(tài)性能測試,進(jìn)行了硬件設(shè)計與軟件設(shè)計,并利用界面應(yīng)用形成完整的控制系統(tǒng)。在集合了直線插補(bǔ)、圓弧插補(bǔ)、可變參數(shù)的速度規(guī)劃等功能后,該系統(tǒng)可實(shí)現(xiàn)機(jī)床的單軸測試、雙軸同步測試和雙軸畫圓測試,以圖形化加分析結(jié)果的方式對機(jī)床動態(tài)性能測試的結(jié)果進(jìn)行顯示。同時也可以通過EtherCAT總線郵箱通信,以對象字典方式對驅(qū)動器三環(huán)參數(shù)進(jìn)行調(diào)整,對機(jī)床的動態(tài)性能進(jìn)行調(diào)優(yōu)。
本文所研究的測試工具在軟硬件架構(gòu)上可以支撐多軸聯(lián)動加工數(shù)控系統(tǒng)的開發(fā),以本文研究為基礎(chǔ)添加G代碼解釋器、軟PLC等功能模塊,即可實(shí)現(xiàn)數(shù)控系統(tǒng)的基礎(chǔ)功能,可大幅度降低數(shù)控系統(tǒng)成本。