技術(shù)頻道

娓娓工業(yè)
您現(xiàn)在的位置: 中國(guó)傳動(dòng)網(wǎng) > 技術(shù)頻道 > 技術(shù)百科 > LabVIEW怎么做復(fù)雜的多軸運(yùn)控系統(tǒng)?手把手教你設(shè)計(jì)思路實(shí)現(xiàn)

LabVIEW怎么做復(fù)雜的多軸運(yùn)控系統(tǒng)?手把手教你設(shè)計(jì)思路實(shí)現(xiàn)

時(shí)間:2020-08-17 14:11:21來(lái)源:

導(dǎo)語(yǔ):?LabVIEW是美國(guó)NI公司開(kāi)發(fā)的一種圖形化編程語(yǔ)言,其功能強(qiáng)大,具有編程直觀、簡(jiǎn)便、快捷的特點(diǎn),正受到越來(lái)越多編程人士的青睞,尤其是非軟件專業(yè)人員。本文采用“PC+運(yùn)動(dòng)控制卡”的設(shè)計(jì)方案,設(shè)計(jì)了基于LabVIEW的多軸運(yùn)動(dòng)控制系統(tǒng),并提出了通過(guò)LabVIEW與外部代碼進(jìn)行連接的ActiveX技術(shù),調(diào)用運(yùn)動(dòng)控制卡所提供的函數(shù),開(kāi)發(fā)了實(shí)時(shí)多軸運(yùn)動(dòng)控制系統(tǒng)軟件,滿足了實(shí)際工作的需求。

  運(yùn)動(dòng)控制技術(shù)在國(guó)民經(jīng)濟(jì)和國(guó)防建設(shè)中所起的作用及其應(yīng)用的范圍越來(lái)越大。在工業(yè)生產(chǎn)中,運(yùn)動(dòng)控制系統(tǒng)既用于提高產(chǎn)品質(zhì)量,也用于提高產(chǎn)品的產(chǎn)量。運(yùn)動(dòng)控制技術(shù)正在不斷地深入到各個(gè)領(lǐng)域并迅速地向前推進(jìn),其應(yīng)用范圍已經(jīng)涵蓋了幾乎所有的工業(yè)領(lǐng)域。隨著近年來(lái)工業(yè)的發(fā)展,對(duì)各種機(jī)械性能和產(chǎn)品質(zhì)量要求的逐漸提高,針對(duì)一臺(tái)電機(jī)的控制已經(jīng)不能完成一些復(fù)雜軌跡的生成,這就需要人們協(xié)調(diào)控制多臺(tái)電機(jī),由此產(chǎn)生了多軸運(yùn)動(dòng)控制系統(tǒng)。

  LabVIEW是美國(guó)NI公司開(kāi)發(fā)的一種圖形化編程語(yǔ)言,其功能強(qiáng)大,具有編程直觀、簡(jiǎn)便、快捷的特點(diǎn),正受到越來(lái)越多編程人士的青睞,尤其是非軟件專業(yè)人員。本文采用“PC+運(yùn)動(dòng)控制卡”的設(shè)計(jì)方案,設(shè)計(jì)了基于LabVIEW的多軸運(yùn)動(dòng)控制系統(tǒng),并提出了通過(guò)LabVIEW與外部代碼進(jìn)行連接的ActiveX技術(shù),調(diào)用運(yùn)動(dòng)控制卡所提供的函數(shù),開(kāi)發(fā)了實(shí)時(shí)多軸運(yùn)動(dòng)控制系統(tǒng)軟件,滿足了實(shí)際工作的需求。

  01

  系統(tǒng)硬件的設(shè)計(jì)

  本文釆用“PC+運(yùn)動(dòng)控制卡”模式對(duì)多軸運(yùn)動(dòng)控制系統(tǒng)進(jìn)行設(shè)計(jì)。這樣構(gòu)造的多軸運(yùn)動(dòng)控制系統(tǒng)只需根據(jù)對(duì)被控制對(duì)象的控制要求,在Windows環(huán)境下設(shè)計(jì)符合用戶操作的人機(jī)界面和功能程序,就可達(dá)到多軸運(yùn)動(dòng)控制的目的。整個(gè)多軸運(yùn)動(dòng)控制系統(tǒng)的硬件由PC機(jī)、運(yùn)動(dòng)控制卡、電動(dòng)機(jī)、驅(qū)動(dòng)器、執(zhí)行機(jī)構(gòu)等部分組成,PC機(jī)和運(yùn)動(dòng)控制卡通過(guò)PCI總線進(jìn)行通信,且在PC機(jī)上利用LabVIEW軟件開(kāi)發(fā)平臺(tái)進(jìn)行上層控制軟件的設(shè)計(jì)開(kāi)發(fā),其系統(tǒng)結(jié)構(gòu)與原理示意如圖1。

  此多軸運(yùn)動(dòng)控制系統(tǒng)是典型的上、下位機(jī)結(jié)構(gòu),便于對(duì)多軸運(yùn)動(dòng)控制的協(xié)調(diào)和管理提高控制的實(shí)時(shí)性PC機(jī)作為上位機(jī),可完成對(duì)多軸運(yùn)動(dòng)的位置、加速度、速度等參數(shù)進(jìn)行設(shè)定,完成對(duì)人機(jī)界面管理、信息顯示和預(yù)處理等非實(shí)時(shí)處理任務(wù)。運(yùn)動(dòng)控制卡為下位機(jī),接收來(lái)自PC機(jī)的控制信號(hào)并進(jìn)行實(shí)時(shí)處理,實(shí)現(xiàn)運(yùn)動(dòng)控制算法,并根據(jù)作業(yè)的要求和傳感器件的信號(hào)進(jìn)行必要的邏輯微數(shù)學(xué)運(yùn)算,為各電機(jī)提供正確的控制信號(hào)以完成所要求的多軸運(yùn)動(dòng),且可向PC機(jī)實(shí)時(shí)返回當(dāng)前運(yùn)動(dòng)的位置、速度等參數(shù),以便在PC機(jī)上可經(jīng)過(guò)軟件編程實(shí)現(xiàn)運(yùn)動(dòng)軌跡圖像的顯示。

  圖片1

  此多軸運(yùn)動(dòng)控制系統(tǒng)以專用的運(yùn)動(dòng)控制卡為獨(dú)立的標(biāo)準(zhǔn)部件,運(yùn)動(dòng)控制卡采用的是美國(guó)Parkerhan-nifin公司生產(chǎn)的最新系列運(yùn)動(dòng)控制卡ACR1505,與同類產(chǎn)品相比其具有較高的性能,尤其在控制精度速度和易操作性方面表現(xiàn)優(yōu)異,多用于較高性能的運(yùn)動(dòng)控制。它采用32字節(jié)浮點(diǎn)DSP,具有120MFOPS的處理能力,有4個(gè)30MHz編碼器的輸入,使用PCI總線和上位機(jī)通信能夠?qū)λ妮S伺服或步進(jìn)電機(jī)進(jìn)行控制。電機(jī)和驅(qū)動(dòng)器均采用上海鳴志公司生產(chǎn)的高性能產(chǎn)品。傳感器采用增量式脈沖編碼器,用于閉環(huán)伺服系統(tǒng)的位置檢測(cè)這樣可以明顯縮短設(shè)計(jì)和開(kāi)發(fā)周期提高系統(tǒng)的性能。

  將運(yùn)動(dòng)控制卡以插卡形式嵌入PC機(jī),即構(gòu)成“PC+運(yùn)動(dòng)控制卡”模式多軸運(yùn)動(dòng)控制系統(tǒng)。這樣將PC的信息處理能力和開(kāi)放式的特點(diǎn)與運(yùn)動(dòng)控制卡的運(yùn)動(dòng)軌跡控制能力有機(jī)結(jié)合在一起,使得該多軸運(yùn)動(dòng)控制系統(tǒng)具有信息處理能力強(qiáng)、開(kāi)放程度高、運(yùn)動(dòng)軌跡控制準(zhǔn)確、通用性好的特點(diǎn)。

  02

  系統(tǒng)軟件的開(kāi)發(fā)

  在系統(tǒng)的控制軟件方面,通過(guò)在PC機(jī)上用LabVIEW軟件來(lái)設(shè)計(jì)開(kāi)發(fā)了多軸運(yùn)動(dòng)控制系統(tǒng)的控制界面和控制程序。在系統(tǒng)控制界面中輸入多軸運(yùn)動(dòng)的目標(biāo)位置加速度、速度等運(yùn)動(dòng)控制參數(shù),ACR1505運(yùn)動(dòng)控制卡就會(huì)根據(jù)此信息控制電機(jī)的運(yùn)動(dòng),完成對(duì)運(yùn)動(dòng)軌跡的規(guī)劃和對(duì)實(shí)時(shí)運(yùn)動(dòng)位置坐標(biāo)的讀取。

  本文采用LabVIEW作為上位PC機(jī)軟件系統(tǒng)的開(kāi)發(fā)平臺(tái),編程方便,人機(jī)交互界面直觀友好,摒棄了傳統(tǒng)開(kāi)發(fā)工具的復(fù)雜性,在提供強(qiáng)大功能的同時(shí)保證了系統(tǒng)靈活性。LabVIEW提供了ActiveX外部程序接口能力,通過(guò)ActiveX能夠方便地調(diào)用運(yùn)動(dòng)控制卡中的程序、控件等。通過(guò)ActiveX自動(dòng)化LabVIEW既可以作為客戶端,也可以作為服務(wù)器作為客戶端,LabVIEW可以調(diào)用ActiveX自動(dòng)化服務(wù)器中的ActiveX對(duì)象,獲得其屬性和方法,用戶可以應(yīng)用這些屬性和方法進(jìn)行編程。本文就是在LabVIEW平臺(tái)上通過(guò)ActiveX技術(shù)調(diào)用運(yùn)動(dòng)控制卡所提供的ActiveX自動(dòng)化服務(wù)器程序中的ActiveX對(duì)象,進(jìn)行進(jìn)一步的編程處理,從而實(shí)現(xiàn)對(duì)多軸運(yùn)動(dòng)的位置速度、加速度等的控制以及插補(bǔ)等運(yùn)動(dòng)控制算法的實(shí)現(xiàn),完成對(duì)多軸運(yùn)動(dòng)控制系統(tǒng)的控制功能的快速開(kāi)發(fā),大大縮短了開(kāi)發(fā)周期。

  運(yùn)動(dòng)控制卡ACR1505提供一個(gè)名為“Co-mACRsrvr”的ActiveX自動(dòng)化服務(wù)器,這個(gè)ActiveX自動(dòng)化服務(wù)器包含了4個(gè)可供調(diào)用的ActiveX對(duì)象,分別為status(狀態(tài))、control(控制)、terminal(終端)和utility(效用),這些ActiveX對(duì)象提供了對(duì)運(yùn)動(dòng)控制卡操作的多種屬性和方法。例如status提供了可以獲取運(yùn)動(dòng)控制狀態(tài)信息和相關(guān)數(shù)據(jù)的屬性和方法;control提供了可以實(shí)現(xiàn)對(duì)運(yùn)動(dòng)控制參數(shù)如速度、位置等數(shù)據(jù)進(jìn)行設(shè)置等用于控制功能實(shí)現(xiàn)的屬性和方法。LabVIEW可以通過(guò)調(diào)用這些ActiveX對(duì)象,并對(duì)它的屬性和方法進(jìn)行訪問(wèn),實(shí)現(xiàn)對(duì)運(yùn)動(dòng)控制卡的多種控制和操作功能。其主要實(shí)現(xiàn)過(guò)程如圖2所示。

  圖片2

  03

  控制程序的實(shí)現(xiàn)

  要實(shí)現(xiàn)多軸運(yùn)動(dòng)控制程序,就要通過(guò)ActiveX自動(dòng)化,將LabVIEW作為自動(dòng)化客戶端,將運(yùn)動(dòng)控制卡提供的函數(shù)作為自動(dòng)化服務(wù)器,實(shí)現(xiàn)LabVIEW對(duì)運(yùn)動(dòng)控制卡提供的ActiveX對(duì)象的調(diào)用,并訪問(wèn)它的屬性和方法。LabVIEW中提供了豐富的有關(guān)ActiveX操作的函數(shù),這些函數(shù)位于其程序框圖的功能模板上的Connectvity--ActiveX面板上。其中主要函數(shù)有:AutomationOpen用于打開(kāi)ActiveX對(duì)象,獲得對(duì)象的Reference;PropertyNode用于讀取或設(shè)置ActiveX對(duì)象的屬性;InvokeNode用于調(diào)用ActiveX對(duì)象提供的方法。

  LabVIEW作為自動(dòng)化客戶端操作ActiveX對(duì)象,首先要將運(yùn)動(dòng)控制卡提供的軟件包中名為ComACRSrvt。tlb的文件拷貝到LabVIEW軟件的文件目錄下。然后將AutomationOpen函數(shù)放置到LabVIEW程序框圖中,打開(kāi)對(duì)ActiveX自動(dòng)化功能的引用,并在此函數(shù)左上角的AutomationRefnum端子處創(chuàng)建一個(gè)與其相連的AutomationRefnum控件,由此控件進(jìn)行ActiveX對(duì)象的選擇和調(diào)用。將一個(gè)或多個(gè)方法(或?qū)傩?節(jié)點(diǎn)函數(shù)InvokeNode(或PropertyNodes)放置到程序框圖中,并將AutomationOpen函數(shù)右端的AutomationRefnum輸出與方法(或?qū)傩?節(jié)點(diǎn)的Referenceinput端連接就可以完成對(duì)該對(duì)象的方法(或?qū)傩?的訪問(wèn)了。訪向一個(gè)ActiveX對(duì)象的多個(gè)屬性和方法,要將各節(jié)點(diǎn)順次首尾連接。

  本文設(shè)計(jì)出一個(gè)能完成多軸運(yùn)動(dòng)功能的程序。此程序分兩個(gè)部分,分別為運(yùn)動(dòng)控制部分和運(yùn)動(dòng)顯示部分。其中完成兩軸運(yùn)動(dòng)控制的程序前面板如圖3所示。

  圖片3

  運(yùn)動(dòng)控制部分程序通過(guò)對(duì)control對(duì)象中的屬性和方法的訪問(wèn)編程,并通過(guò)前面板對(duì)多軸運(yùn)動(dòng)的速度、加速度運(yùn)動(dòng)目標(biāo)位置和運(yùn)動(dòng)模式的設(shè)置,完成對(duì)多軸運(yùn)動(dòng)的控制。通過(guò)運(yùn)動(dòng)模式選擇按鈕可對(duì)多軸運(yùn)動(dòng)控制系統(tǒng)的運(yùn)動(dòng)模式進(jìn)行選擇,可實(shí)現(xiàn)絕對(duì)運(yùn)動(dòng)和相對(duì)運(yùn)動(dòng)兩種運(yùn)動(dòng)模式。絕對(duì)運(yùn)動(dòng)是將輸人的目標(biāo)位置參數(shù)作為新運(yùn)動(dòng)的絕對(duì)運(yùn)動(dòng)距離;相對(duì)運(yùn)動(dòng)是將此參數(shù)值作為新運(yùn)動(dòng)相對(duì)當(dāng)前位置的運(yùn)動(dòng)距離。運(yùn)動(dòng)顯示部分通過(guò)調(diào)用status對(duì)象中的屬性和方法進(jìn)行編程,實(shí)現(xiàn)對(duì)多軸運(yùn)動(dòng)的實(shí)時(shí)位置坐標(biāo)讀取和運(yùn)動(dòng)軌跡顯示功能。此外本程序還增加了通信連接測(cè)試和錯(cuò)誤報(bào)告顯示的功能,可通過(guò)連接測(cè)試指示燈的亮滅來(lái)顯示相應(yīng)的ActiveX對(duì)象是否被LabVIEW程序正確調(diào)用。若控制過(guò)程中出現(xiàn)錯(cuò)誤,可在錯(cuò)誤報(bào)告欄中查看錯(cuò)誤報(bào)告,以便作出相應(yīng)處理。下面將對(duì)這兩部分程序進(jìn)行進(jìn)一步說(shuō)明:

  圖片4

  運(yùn)動(dòng)控制部分的程序框圖如圖4所示。其中fMoveACC、fMoveVE、bMoveAbsolute屬性分別用來(lái)設(shè)置運(yùn)動(dòng)的加速度、速度和模式。connect方法用來(lái)設(shè)置控制卡與PC機(jī)的通信方式,將其設(shè)定為PCI總線方式。Move方法用來(lái)對(duì)運(yùn)動(dòng)位置和參加運(yùn)動(dòng)的軸數(shù)進(jìn)行設(shè)置。

  圖片5

  運(yùn)動(dòng)顯示部分的程序框圖如圖5所示。其中主要通過(guò)status對(duì)象的GetACRCustom方法對(duì)控制卡返回的運(yùn)動(dòng)位置坐標(biāo)等參數(shù)進(jìn)行讀取。設(shè)定對(duì)位置坐標(biāo)每10ms記錄一下此多軸運(yùn)動(dòng)控制系統(tǒng)當(dāng)前的運(yùn)動(dòng)位置坐標(biāo),并生成運(yùn)動(dòng)軌跡圖。

  本文采用“PC+運(yùn)動(dòng)控制卡”的多軸運(yùn)動(dòng)控制系統(tǒng)方案設(shè)計(jì)了基于LabVIEW的多軸運(yùn)動(dòng)控制系統(tǒng),并在LabVIEW軟件平臺(tái)上對(duì)多軸運(yùn)動(dòng)控制系統(tǒng)的控制程序進(jìn)行了開(kāi)發(fā)。目前,很多運(yùn)動(dòng)控制程序的開(kāi)發(fā)多采用VB、VC++等軟件編寫,有時(shí)編寫界面就占了程序編寫工作的很大一部分,不利于效率的提高。本文利用LabVIEW界面易操作性以及LabVIEW可以調(diào)用ActiveX等功能,實(shí)現(xiàn)了在LabVIEW軟件平臺(tái)下系統(tǒng)運(yùn)動(dòng)控制程序的快速開(kāi)發(fā)。這種方法能夠避免繁瑣的界面編程,縮短周期,提高效率。此系統(tǒng)已經(jīng)在水浸C掃描成像超聲無(wú)損檢測(cè)運(yùn)動(dòng)系統(tǒng)中得到應(yīng)用,經(jīng)試驗(yàn)測(cè)定,此系統(tǒng)的定位精度為±0.065mm/300mm,重復(fù)精度為±0.05mm,分辨率為0.01mm,具有較高的控制精度和性能。

  隨著自動(dòng)化技術(shù)的飛速發(fā)展,機(jī)器視覺(jué)檢測(cè)和控制系統(tǒng)已被廣泛應(yīng)用在工況監(jiān)視、產(chǎn)品檢驗(yàn)和自動(dòng)控制等領(lǐng)域,以提高生產(chǎn)效率和生產(chǎn)自動(dòng)化程度。其中最重要體現(xiàn)就是工業(yè)自動(dòng)化流水線的多軸控制,如何實(shí)現(xiàn)整條流水線的監(jiān)視、自動(dòng)控制,具體的循環(huán)設(shè)計(jì)思路是怎樣實(shí)現(xiàn)的,特別是遇到20、50軸甚至更多軸時(shí),如何使用通用軟件做好LabVIEW聯(lián)動(dòng)控制,統(tǒng)一系統(tǒng)軟件管理。

聲明:本文為轉(zhuǎn)載類文章,如涉及版權(quán)問(wèn)題,請(qǐng)及時(shí)聯(lián)系我們刪除(QQ: 2737591964),不便之處,敬請(qǐng)諒解!

標(biāo)簽:

點(diǎn)贊

分享到:

上一篇:人機(jī)界面HMI的故障解決方法

下一篇:英威騰全數(shù)字化電源產(chǎn)品在河...

中國(guó)傳動(dòng)網(wǎng)版權(quán)與免責(zé)聲明:凡本網(wǎng)注明[來(lái)源:中國(guó)傳動(dòng)網(wǎng)]的所有文字、圖片、音視和視頻文件,版權(quán)均為中國(guó)傳動(dòng)網(wǎng)(www.treenowplaneincome.com)獨(dú)家所有。如需轉(zhuǎn)載請(qǐng)與0755-82949061聯(lián)系。任何媒體、網(wǎng)站或個(gè)人轉(zhuǎn)載使用時(shí)須注明來(lái)源“中國(guó)傳動(dòng)網(wǎng)”,違反者本網(wǎng)將追究其法律責(zé)任。

本網(wǎng)轉(zhuǎn)載并注明其他來(lái)源的稿件,均來(lái)自互聯(lián)網(wǎng)或業(yè)內(nèi)投稿人士,版權(quán)屬于原版權(quán)人。轉(zhuǎn)載請(qǐng)保留稿件來(lái)源及作者,禁止擅自篡改,違者自負(fù)版權(quán)法律責(zé)任。

網(wǎng)站簡(jiǎn)介|會(huì)員服務(wù)|聯(lián)系方式|幫助信息|版權(quán)信息|網(wǎng)站地圖|友情鏈接|法律支持|意見(jiàn)反饋|sitemap

中國(guó)傳動(dòng)網(wǎng)-工業(yè)自動(dòng)化與智能制造的全媒體“互聯(lián)網(wǎng)+”創(chuàng)新服務(wù)平臺(tái)

網(wǎng)站客服服務(wù)咨詢采購(gòu)咨詢媒體合作

Chuandong.com Copyright ?2005 - 2024 ,All Rights Reserved 版權(quán)所有 粵ICP備 14004826號(hào) | 營(yíng)業(yè)執(zhí)照證書(shū) | 不良信息舉報(bào)中心 | 粵公網(wǎng)安備 44030402000946號(hào)