在設(shè)計(jì)測(cè)試平臺(tái)的定位程序時(shí),為了減少程序的耦合,提高程序運(yùn)行的效率,需要考慮采用模塊化思想,將定位程序分解成單獨(dú)的子程序,各模塊之間可以互相調(diào)用。基于以上的想法,把控制每個(gè)軸的程序設(shè)計(jì)成一個(gè)獨(dú)立的子程序,且設(shè)置必要的輸入、輸出參數(shù)的接口,方便對(duì)每個(gè)伺服軸的控制。
下圖5-21是任意伺服軸的定位控制程序的LabVIEW前面板,它提供了對(duì)伺服軸進(jìn)行控制的輸入、輸出參數(shù)的接口,可以通過(guò)前面板來(lái)設(shè)置電機(jī)的倍率(倍率的范圍:1—500,用于增大或減小伺服電機(jī)的速度和加速度)、軸號(hào)(賦值十六進(jìn)制數(shù)0表示X軸、賦值十六進(jìn)制數(shù)1表示Y軸、賦值十六進(jìn)制數(shù)2表示Z軸、賦值十六進(jìn)制數(shù)F表示所有軸)、伺服電機(jī)的運(yùn)動(dòng)方向(0表示控制伺服電機(jī)的反向運(yùn)轉(zhuǎn)1表示伺服電機(jī)的正向運(yùn)轉(zhuǎn))、速度脈沖數(shù)(參數(shù)范圍是在默認(rèn)倍率為1時(shí)為1—8K,可用倍率來(lái)調(diào)整放大倍數(shù),當(dāng)倍率取值500時(shí),速度脈沖數(shù)可達(dá)4MHz值)、定位脈沖數(shù)(賦值范圍為0—268435455,用于在定長(zhǎng)驅(qū)動(dòng)模式下設(shè)置伺服電機(jī)一次走過(guò)的脈沖數(shù))。
圖5-22是該定位控制子程序的LabVIEW后面板,主要由控制伺服電機(jī)工作的幾個(gè)函數(shù)構(gòu)成。其工作原理是:通過(guò)CreateDevice函數(shù)產(chǎn)生一個(gè)控制伺服電機(jī)的設(shè)備句柄,以賦給后續(xù)相關(guān)進(jìn)行伺服電機(jī)驅(qū)動(dòng)控制的參數(shù);通過(guò)InitLVDV函數(shù)來(lái)初始化伺服電機(jī)的驅(qū)動(dòng)控制參數(shù),例如軸號(hào)、倍率、伺服電機(jī)運(yùn)動(dòng)方向、速度、位移等;通過(guò)SetINPOSEnable函數(shù)和SetALARMEnable函數(shù)的設(shè)置可分別使能接收伺服電機(jī)的定位完成信號(hào)和伺服報(bào)警信號(hào);通過(guò)StarLVDV函數(shù)來(lái)啟動(dòng)伺服電機(jī);當(dāng)伺服電機(jī)走完定長(zhǎng)脈沖數(shù)后,通過(guò)ReleaseDevice函數(shù)來(lái)釋放對(duì)伺服電機(jī)設(shè)備的控制驅(qū)動(dòng)。
http://www.lndbzl.com