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