用LabVIEW軟件編寫USB1020運動控制卡的定位控制程序,在本軟件設(shè)計中需要用到的相關(guān)驅(qū)動函數(shù)有:
該函數(shù)用于創(chuàng)建USB設(shè)備對象,并返回其設(shè)備對象句柄。若執(zhí)行成功,則返回對象句柄,否則返回錯誤代碼。
該函數(shù)的功能是初始化指定軸定長或連續(xù)驅(qū)動,需要設(shè)置的參數(shù)有hDevice設(shè)備對象句柄、pDL公共參數(shù)結(jié)構(gòu)體指針、pLC直線和S曲線參數(shù)結(jié)構(gòu)體指針。若執(zhí)行成功,返回TRUE,否則返回FALSE。
該函數(shù)的功能是啟動單軸直線S曲線驅(qū)動,需要設(shè)置的參數(shù)有hDevice設(shè)備對象句柄、AxisNum軸號。若成功,返回TRUE,否則返回FALSE。
該函數(shù)的功能是釋放設(shè)備對象所占用的系統(tǒng)資源及設(shè)備對象自身。需要設(shè)置的參數(shù)有hDevice設(shè)備對象句柄。若成功,則返回TRUE,否則返回FALSE。
該結(jié)構(gòu)體的作用是用于設(shè)置伺服電機運動的倍率、初始速度、驅(qū)動速度、加減速度和加減速度變化率等參數(shù)。
該參數(shù)結(jié)構(gòu)體主要用于設(shè)置伺服電機進行直線和S曲線運動的相關(guān)參數(shù),例如軸號、定長或連續(xù)驅(qū)動配置等。了解了上述USB1020控制卡的驅(qū)動函數(shù)之后,就可以著手配置每個運動軸的控制驅(qū)動程序了??紤]到定位運動控制程序需要與后面的數(shù)據(jù)采集程序結(jié)合起來,且檢測平臺每次測量的點數(shù)較多,會使整個定位控制與數(shù)據(jù)采集系統(tǒng)的程序冗雜,因此宜把對四個運動控制軸的運動參數(shù)配置編寫成子程序,以方便整個系統(tǒng)控制程序?qū)Χㄎ豢刂瞥绦虻恼{(diào)用。
在對可移動L型皮托管傳感器的移動控制上,并不要求控制四個伺服電機的X、Y、Z、R軸同步運動,也沒有嚴格的順序控制關(guān)系,而且USB1020運動控制卡可以實現(xiàn)對四個伺服電機的獨立運動控制,因此編寫X、Y、Z、U四軸的定位控制程序時采用LabVIEW軟件的順序控制結(jié)構(gòu)來編寫X、Y、Z、R軸的控制程序。由于程序篇幅的限制,圖5-7給出了X軸的LabVIEW控制程序,Y、Z、R軸的控制程序與此相類似。
從上圖的X軸定位控制程序可以看出,需要對HANDLE CreateDevice函數(shù)、BOOLInitLVDV(HANDLE hDevice PUSB1020_PARA_DataListpDL,PUSB1020_PARA_LCDatapLC)函數(shù)、BOOLStarLVDV(HANDLE hDeviceLONG AxisNum)函數(shù)、BOOLReleaseDevice(HANDLE hDevice)函數(shù)都要設(shè)置它們的軸編號為0,表示控制的是X軸,同理對Y軸編號、Z軸編號、R軸編號分別為設(shè)置為1、2、3。在公用參數(shù)結(jié)構(gòu)體、直線和S曲線參數(shù)結(jié)構(gòu)體里設(shè)置X軸伺服電機的運動控制參數(shù)。
從圖5-7可知,相關(guān)的運動參數(shù)包括初始速度、驅(qū)動速度、加速度、減速度、加速度變化率、減速度變化率、驅(qū)動方式(定長驅(qū)動還是連續(xù)驅(qū)動)、減速方式(自動減速還是手動減速)、脈沖方式(CW/CCW方式還是CP/DIR方式)、驅(qū)動脈沖的方向(正方向還是負方向)、邏輯信號輸出的邏輯電平(設(shè)置為0時表示低電平為正方向,設(shè)置為1時表示高電平為正方向)、運動方式(直線運動還是曲線運動)、運動方向(正方向還是反方向)、定量輸出脈沖數(shù)等。
在本定位控制程序設(shè)置中,只需要對X軸來進行定位控制,因此可以根據(jù)實際運動的需要,把初始速度和驅(qū)動速度設(shè)置為相同值。加速度、減速度、加速度變化率、減速度變化率不做要求,采用默認值。運動方式選擇定長驅(qū)動,參數(shù)為0;減速方式采用默認值0,為自動減速;脈沖方式選擇CW/CCW方式,參數(shù)值設(shè)置為0,表示獨立2脈沖輸出方式。驅(qū)動脈沖的方向采用默認參數(shù)值0,表示正方向。定量脈沖輸出數(shù)是最為重要的參數(shù),用于控制伺服電機的位移。定量脈沖數(shù)由伺服電機需要走的位移值與整個檢測平臺的一個脈沖當量的比值來決定。同理,其他軸的運動控制參數(shù)也是根據(jù)實際的運動控制要求來進行相關(guān)的設(shè)置。
上述運動控制子程序作為一個可供整個系統(tǒng)程序調(diào)用的子程序,提供了每個軸的運動控制參數(shù)的輸入端口,包括伺服電機運動的速度、方向和位移。運動控制程序的輸入端口如圖5-8所示。圖5-9為生成的運動控制子程序圖標。http://gimelec.cn