所需元件
這篇指南需要使用到下列軟件:
- LabVIEW 2009 或后續(xù)版本
- LabVIEW Real-Time Module 2009或后續(xù)版本
- NI-RIO 3.2.0或后續(xù)版本
- LabVIEW NI SoftMotion Module 2009或后續(xù)版本
這篇指南還需要使用下列硬件:
- CompactRIO 控制器和可提供Scan Interface(掃描接口)模式的機(jī)箱或NI 9144分布式機(jī)箱
- 兩個(gè) NI 9512 單軸步進(jìn)式驅(qū)動(dòng)接口
- 控制器電源
- 單獨(dú)的模塊電源
- 以太網(wǎng)連接和線纜
即使您沒有指定的硬件,仍可以遵循這篇文章中的“LabVIEW NI SoftMotion Module指南”一節(jié),進(jìn)行離線的配置以學(xué)習(xí)在LabVIEW中使用該模塊的方法。
LabVIEW NI SoftMotion Module概覽
通過LabVIEW NI SoftMotion Module,您可以借助于LabVIEW Real-Time Module使用功能塊編程范例和RIO Scan Interface構(gòu)建確定性的運(yùn)動(dòng)控制應(yīng)用。RIO Scan Interface讓用戶可以從LabVIEW Real-Time Module中直接訪問C系列模塊。
這篇文檔包含了NI 951x C系列驅(qū)動(dòng)接口和RIO Scan Interface應(yīng)用開發(fā)方面的內(nèi)容。需要了解關(guān)于在LabVIEW FPGA Module中使用NI 951x模塊的信息,請(qǐng)查閱ni.com/manuals網(wǎng)站上的《NI 951x C系列模塊和LabVIEW FPGA入門指導(dǎo)》。
需要使用NI SoftMotion功能塊進(jìn)行本指南中所說的雙軸運(yùn)行,可以在開環(huán)狀態(tài)下使用NI 9512步進(jìn)式驅(qū)動(dòng)接口 —— 而不需要額外的反饋設(shè)備或其它硬件連接。
這篇指南中的配置參數(shù),也許對(duì)實(shí)際的運(yùn)動(dòng)系統(tǒng)并不合適。為了演示的需要,我們對(duì)硬件連接進(jìn)行了最小化。
設(shè)置硬件
完成下列步驟,為本指南中的應(yīng)用設(shè)置硬件。
1. 如果您不是使用集成的控制器和背板,那么需要在現(xiàn)場(chǎng)可編程門陣列(FPGA)背板上安裝CompactRIO實(shí)時(shí)控制器。查閱控制器操作指南,獲得安裝控制器的信息。
2. 在機(jī)箱的1和2插槽中,安裝NI 9512步進(jìn)式驅(qū)動(dòng)接口模塊。
3. 將模塊連接到電源上。查閱模塊操作指南,以選擇合適的電源。
4. 將控制器連接到電源和擁有相同子網(wǎng)的以太網(wǎng)絡(luò)中,以作為開發(fā)用的計(jì)算機(jī)。查閱控制器操作指南,獲得關(guān)于將控制器連接到電源和以太網(wǎng)絡(luò)的信息。
5. 將模塊連接到驅(qū)動(dòng)器和其它I/O上,如果條件允許的話請(qǐng)使用NI 9512-to-P7000 Stepper Drives Connectivity Bundle(NI 9512至P7000步進(jìn)式驅(qū)動(dòng)連接包)、NI 951x Cable and Terminal Block Bundle(NI 951x線纜和接線終端),或者使用自定義線纜用于直接連接。
在控制器上安裝和配置軟件
完成下列步驟,在控制器上安裝軟件并進(jìn)行配置。
1. 在開發(fā)計(jì)算機(jī)上,啟動(dòng)NI Measurement & Automation Explorer (MAX,NI測(cè)量與自動(dòng)化導(dǎo)航器)配置工具。
2. 在配置窗格中的遠(yuǎn)程系統(tǒng)下選擇控制器。如果沒有看到控制器,那么您可能需要禁用開發(fā)計(jì)算機(jī)上的防火墻。
3. 檢查識(shí)別中的序列號(hào)是否與設(shè)備上的序列號(hào)相符。
4. 如果您不想格式化控制器上的磁盤(那樣會(huì)刪除所有已經(jīng)安裝的軟件和文件),那么給控制器通電,并跳到步驟13。
5. 將控制器上的安全模式開關(guān)調(diào)到On的位置上。
6.給控制器通電。如果控制器已經(jīng)通電了,那么按控制器上的Reset按鈕,重新啟動(dòng)。
7.右鍵點(diǎn)擊配置窗格中遠(yuǎn)程系統(tǒng)下的控制器,選擇格式化磁盤。在出現(xiàn)的對(duì)話框里點(diǎn)擊Yes。
8. 在MAX完成磁盤格式化之后,將安全模式開關(guān)調(diào)到Off的位置上,并按控制器上的Reset按鈕,重新啟動(dòng)。
9. 選擇自動(dòng)獲取IP地址單選按鈕分配IP地址;或者選擇使用以下IP地址單選按鈕,在IP地址欄中指定靜態(tài)IP地址。
10.在名稱域中為系統(tǒng)輸入描述性的名稱。
11. 點(diǎn)擊網(wǎng)絡(luò)設(shè)置選項(xiàng)卡上的應(yīng)用,讓MAX重新啟動(dòng)系統(tǒng)。
12. 當(dāng)新系統(tǒng)名稱出現(xiàn)在遠(yuǎn)程系統(tǒng)下時(shí),在列表中展開控制器條目,右擊軟件,并選擇添加/刪除軟件。
13. 選擇推薦的軟件組合,其包含了NI-RIO 3.2.0或后續(xù)版本,且?guī)в蠳I Scan Engine支持和下列附加功能:
• LabVIEW NI SoftMotion Module
• 對(duì)LabVIEW NI SoftMotion Module軟件的NI Scan Engine支持
• NI-Motion 驅(qū)動(dòng)軟件
14. 點(diǎn)擊下一步,在控制器上安裝選擇的軟件。如果需要了解關(guān)于推薦軟件組合的信息,請(qǐng)點(diǎn)擊幫助。
15. 在MAX中完成控制器上的軟件安裝后,關(guān)閉MAX。
在掃描接口模式下創(chuàng)建工程
掃描接口模式允許用戶從LabVIEW Real-Time中,直接訪問C系列模塊。這些模塊出現(xiàn)在項(xiàng)目瀏覽器窗口中機(jī)箱條目下的掃描接口模式中。與多數(shù)C系列模塊不同,NI 951x接口不是直接在項(xiàng)目瀏覽器窗口中配置的,該模塊不支持直接可用的I/O變量。
在開發(fā)計(jì)算機(jī)上,使用LabVIEW項(xiàng)目管理VI、目標(biāo)和I/O模塊。完成下列步驟,來創(chuàng)建一個(gè)LabVIEW項(xiàng)目。
1. 啟動(dòng)LabVIEW。
2. 在啟動(dòng)窗口中點(diǎn)擊 項(xiàng)目鏈接,顯示項(xiàng)目瀏覽器窗口。也可以選擇文件»新建項(xiàng)目,顯示項(xiàng)目瀏覽器窗口。
3. 選擇幫助,并確認(rèn)顯示即時(shí)幫助被選中。在整個(gè)指南中,您可以查閱上下文幫助,來獲得方框圖上條目的信息。
4. 右擊項(xiàng)目瀏覽器窗口中的頂層工程項(xiàng)目,從快捷菜單中選擇新建»終端和設(shè)備,顯示添加終端和設(shè)備對(duì)話框。
5. 確認(rèn)已有終端或設(shè)備單選按鈕已被選中。
如果您沒有安裝硬件,可以選擇新終端或設(shè)備單選按鈕,顯示出一系列在沒有實(shí)物情況下即可創(chuàng)建的目標(biāo)和設(shè)備。在這篇指南里,可以執(zhí)行相似的離線配置步驟,學(xué)習(xí)使用CompactRIO和LabVIEW。
6. 展開Real-Time CompactRIO。
7. 選擇添加到工程中的CompactRIO控制器,并點(diǎn)擊OK。
8. 如果您已經(jīng)安裝了LabVIEW FPGA,將會(huì)出現(xiàn)選擇編程模式對(duì)話框。選擇Scan Interface,使系統(tǒng)處于掃描接口模式。
使用CompactRIO 屬性對(duì)話框,改變已有工程中的編程模式。在項(xiàng)目瀏覽器窗口中的CompactRIO機(jī)箱上點(diǎn)擊右鍵,從快捷菜單上選擇屬性,顯示該對(duì)話框。
9. 如果出現(xiàn)查找C系列模塊?對(duì)話框,請(qǐng)點(diǎn)擊查找。
10. 點(diǎn)擊繼續(xù)。LabVIEW會(huì)將控制器、機(jī)箱和所有模塊添加到工程中。
11. 在LabVIEW完成硬件搜索后,選擇文件»保存項(xiàng)目,并將工程保存為951x_Tutorial.lvproj。
在完成了這些步驟之后,您的LabVIEW項(xiàng)目應(yīng)該與圖1類似。
圖1. 項(xiàng)目瀏覽器窗口,掃描接口模式
在LabVIEW項(xiàng)目中增加NI SoftMotion資源
現(xiàn)在來創(chuàng)建捆綁到C系列模塊的NI SoftMotion資源。在VI中使用運(yùn)動(dòng)I/O資源來代替I/O變量。查閱LabVIEW Help中的NI SoftMotion Module一節(jié),了解更多關(guān)于運(yùn)動(dòng)I/O資源和NI SoftMotion的信息。
在項(xiàng)目中增加軸
在項(xiàng)目中,NI SoftMotion軸被捆綁到專門的C系列模塊中,而且允許對(duì)模塊上的I/O進(jìn)行配置。要以掃描接口模式來配置并使用NI 951x模塊,您必須在RT目標(biāo)中增加軸,并使用與VI中的軸所相關(guān)的運(yùn)動(dòng)I/O資源。
完成下述步驟,在項(xiàng)目中增加一個(gè)NI SoftMotion軸:
1. 在項(xiàng)目瀏覽器窗中右擊目標(biāo),并在快捷菜單中選擇新建»NI SoftMotion Axis,打開軸管理器對(duì)話框,如圖2所示。
2. 雙擊添加軸,使兩個(gè)NI 9512模塊都關(guān)聯(lián)到NI SoftMotion軸。軸自動(dòng)捆綁到一個(gè)可用模塊中。你可以雙擊軸的名稱對(duì)其重新命名,賦予其一個(gè)描述性的名字,但是兩個(gè)不同的軸不可以使用同一個(gè)名字。
圖2.軸管理器對(duì)話框
3. 單擊修改綁定打開資源綁定對(duì)話框。如果需要的話,更改與該軸相關(guān)聯(lián)的硬件。
4. 單擊OK關(guān)閉軸管理器對(duì)話框。將所有軸都添加到項(xiàng)目瀏覽器窗口中。同一個(gè)C系列模塊,最多只能關(guān)聯(lián)一個(gè)軸。
在項(xiàng)目中增加坐標(biāo)
NI SoftMotion軸可以組成坐標(biāo)空間。坐標(biāo)空間就是軸的邏輯性多維組合。坐標(biāo)空間跟軸類似,也有可以作為資源輸入的關(guān)聯(lián)I/O資源。
完成以下步驟,在項(xiàng)目中增加坐標(biāo)空間:
1. 在項(xiàng)目瀏覽器窗口中右擊目標(biāo),并從快捷菜單中選擇新建»NI SoftMotion 坐標(biāo)空間,打開Configure Coordinate Space對(duì)話框。
2. 從Available Axes欄中選擇Axis 1和Axis 2,并使用箭頭標(biāo)志將它們移至Coordinate Axes欄。
圖3. 配置坐標(biāo)空間對(duì)話框
當(dāng)使用坐標(biāo)資源的時(shí)候,目標(biāo)位置和其它坐標(biāo)信息都包含在一個(gè)一維矩陣中,其中軸的信息是按照采用該對(duì)話框增加軸的順序進(jìn)行排列的。
3. 單擊OK關(guān)閉Configure Coordinate Space對(duì)話框。
至此,你的工程中已經(jīng)包含了應(yīng)用程序所需的軸和坐標(biāo)空間。你的LabVIEW項(xiàng)目應(yīng)該與圖4中類似。
圖4.采用運(yùn)動(dòng)資源所完成的項(xiàng)目
配置步進(jìn)式驅(qū)動(dòng)接口模塊的軸
在本部分中,采用軸配置對(duì)話框,對(duì)與NI 9512 C系列模塊相關(guān)聯(lián)的軸進(jìn)行配置。該對(duì)話框中包含了步進(jìn)式驅(qū)動(dòng)命令信號(hào)的配置選項(xiàng)、反饋設(shè)備、運(yùn)動(dòng)和數(shù)字I/O、軌跡以及軸的設(shè)置。圖5中顯示了NI 9512 C系列模塊的軸配置對(duì)話框。無法配置的部分以灰色顯示。
圖5. NI 9512模塊的軸配置對(duì)話框
完成下述步驟,對(duì)軸進(jìn)行配置:
1. 右擊項(xiàng)目瀏覽器窗口中的軸,并從快捷菜單中選擇屬性,打開軸配置對(duì)話框。
2. 在Axis Setup頁面中,確認(rèn)將循環(huán)模式設(shè)置為開環(huán)。配置為開環(huán)模式的軸會(huì)生成步進(jìn)式輸出,但無需電動(dòng)機(jī)的反饋信息來確認(rèn)位置。
3. 同樣在Axis Setup頁面中,確認(rèn)Axis Enabled和Enable Drive on Transition to Active Mode復(fù)選框包含有復(fù)選標(biāo)志。這樣配置后,在運(yùn)行VI的時(shí)候?qū)⒆詣?dòng)激活軸。
要避免自動(dòng)激活軸,需禁用這些選項(xiàng)。
4. 如果模塊中并不包含有物理信號(hào)連接,那么為了保證系統(tǒng)正常運(yùn)行,必須禁用這些輸入信號(hào)。要禁用限制信號(hào)和引導(dǎo)信號(hào)(home翻譯為引導(dǎo)合適嗎?),轉(zhuǎn)至Motion I/O頁面,在Forward Limit、Reverse Limit和Home部分中,從Enable復(fù)選框中刪除這些復(fù)選標(biāo)志。
5. 根據(jù)系統(tǒng)需求,配置所有額外I/O。
6. 單擊OK關(guān)閉軸配置對(duì)話框。
7. 重復(fù)步驟1到步驟6,配置軸2。
注意:請(qǐng)確保在部署項(xiàng)目之前,已經(jīng)連接好所有的硬件,并接通了電源。項(xiàng)目的部署將NI 掃描引擎切換為Active(活動(dòng))模式,并使軸和驅(qū)動(dòng)有效(如果已經(jīng)連接好軸和驅(qū)動(dòng)的話),這樣你就可以立即啟動(dòng)運(yùn)動(dòng)。參考LabVIEW Help中的《在RT目標(biāo)上部署并運(yùn)行VI》一章節(jié),了解更多關(guān)于配置和問題解決技巧方面的知識(shí)。
8. 右擊項(xiàng)目瀏覽器窗口中的控制器項(xiàng)目,并從快捷菜單中選擇部署全部,將軸、坐標(biāo)和軸設(shè)置部署成實(shí)時(shí)目標(biāo)。
使用交互式測(cè)試面板測(cè)試系統(tǒng)
使用Interactive Test Panel(交互式測(cè)試面板)來測(cè)試并調(diào)試您的運(yùn)動(dòng)系統(tǒng)和所選軸上的配置設(shè)置。借助于交互式測(cè)試面板,你可以執(zhí)行簡(jiǎn)單的直線運(yùn)動(dòng)、監(jiān)測(cè)運(yùn)動(dòng)和I/O狀態(tài)信息、改變運(yùn)動(dòng)限制、獲取系統(tǒng)中的錯(cuò)誤和故障信息并查看運(yùn)動(dòng)的位移或者速度曲線。如果系統(tǒng)中連接有一個(gè)反饋設(shè)備的話,你還可以獲取反饋的位置以及位置錯(cuò)誤信息。
在配置好軸后,完成以下步驟,采用軸配置對(duì)話框測(cè)試所做設(shè)置。
1. 右擊項(xiàng)目瀏覽器窗口中的軸,并從快捷菜單中選擇交互測(cè)試面板。
2. 使用選項(xiàng)卡設(shè)置期望位置、運(yùn)動(dòng)模式和運(yùn)動(dòng)限制。參考LabVIEW幫助中的NI SoftMotion模塊部分,詳細(xì)了解該對(duì)話框中的條目。
3. 在對(duì)話框的底部單擊開始按鈕,根據(jù)配置好的選項(xiàng)啟動(dòng)運(yùn)動(dòng)。
4. 使用狀態(tài)和曲線選項(xiàng)卡,在運(yùn)動(dòng)進(jìn)行中監(jiān)測(cè)其狀態(tài)。
以掃描接口模式創(chuàng)建一個(gè)VI
在本部分中,借助于增添到工程中的模塊的運(yùn)動(dòng)I/O資源,創(chuàng)建一個(gè)VI。參考LabVIEW幫助中的Real-Time Module(實(shí)時(shí)模塊)一節(jié),獲得關(guān)于掃描接口模式和NI Scan Engine(NI掃描引擎)的詳細(xì)信息。
配置定時(shí)循環(huán)
將定時(shí)循環(huán)同步到NI掃描引擎,可以使得時(shí)間敏感型的運(yùn)動(dòng)函數(shù)模塊能夠以指定的掃描速度運(yùn)行。定時(shí)循環(huán)內(nèi)部的任何代碼都保證了每個(gè)掃描周期只執(zhí)行一次。必須最小化定時(shí)循環(huán)中的內(nèi)存分配,以避免在系統(tǒng)中引入不確定的時(shí)間延遲。
如果你的代碼不需要按照掃描速率運(yùn)行,那么你可以使用帶有等待下一毫秒整數(shù)倍功能的while循環(huán)來控制循環(huán)速率。
完成以下步驟,配置定時(shí)循環(huán):
1. 在項(xiàng)目瀏覽器窗口中右擊控制器項(xiàng)目,并從快捷菜單中選擇新建»VI,打開一個(gè)空白VI。
2. 在VI的程序框圖中放置一個(gè)定時(shí)循環(huán)。
3. 雙擊定時(shí)循環(huán)的輸入節(jié)點(diǎn),打開配置定時(shí)循環(huán)對(duì)話框。
4. 在循環(huán)定時(shí)源中,將源類型設(shè)為同步至掃描引擎。你可以單擊幫助按鈕,獲得關(guān)于如何同步至NI掃描引擎的信息。
5. 在循環(huán)定時(shí)參數(shù)中,將周期設(shè)為5個(gè)掃描周期。該步驟可選,但是可以允許定時(shí)循環(huán)以一個(gè)較低的速率同步至NI掃描 引擎。配置定時(shí)循環(huán)對(duì)話框應(yīng)該與圖7中類似。
圖7. 配置定時(shí)循環(huán)
6. 單擊OK。
創(chuàng)建運(yùn)動(dòng)配置文件
本示例采用NI SoftMotion Line and Read function blocks(線和讀功能塊)來創(chuàng)建一個(gè)簡(jiǎn)單的運(yùn)動(dòng)配置文件,并監(jiān)測(cè)運(yùn)動(dòng)位置信息。
完成以下步驟,設(shè)置運(yùn)動(dòng):
1. 在定時(shí)循環(huán)內(nèi)部放置一個(gè)Line功能塊。
2. 右擊execute(執(zhí)行)控件,并從快捷菜單中選擇創(chuàng)建»輸入控件,在前端面板中為該輸入增加控件。
3. 重復(fù)步驟2,在前端面板中,分別為position(位置)、velocity(速度)、acceleration(加速度)和acceleration jerk(加加速度)這幾個(gè)輸入增加控件。
4. 將deceleration(減速度)輸入連線至acceleration(加速度)輸入,將deceleration jerk(減減速度)輸入連接至acceleration jerk(加加速度)輸入。在有些應(yīng)用中,減速度值可能必須與加速度值不同,但本應(yīng)用中二者相同。
5. 從LabVIEW 項(xiàng)目中將坐標(biāo)空間1資源拖至定時(shí)循環(huán)外部的方框圖中,并將其連線至功能塊上的資源輸入。
6. 在定時(shí)循環(huán)內(nèi)部放置另一個(gè)Line功能塊。
7. 將Line功能塊的錯(cuò)誤接線端和資源接線端連接在一起。
8. 將第一個(gè)Line功能塊的完成輸出連線至第二個(gè)Line功能塊的執(zhí)行輸入。
9. 將第二個(gè)Line功能塊的velocity(速度)、acceleration(加速度)、deceleration(減速度)、acceleration jerk(加加速度)和deceleration jerk(減減速度)輸入連接到步驟3中所創(chuàng)建的控件上。這將使得第二個(gè)功能塊的運(yùn)動(dòng)參數(shù)值和第一個(gè)功能塊相同。
10. 右擊位置輸入,并從快捷菜單中選擇創(chuàng)建»輸入控件,向前端面板中增加第二個(gè)位置信息的控件。
11. 向方框圖中增加一個(gè)合并錯(cuò)誤VI,并將Read功能塊和第二個(gè)Line功能塊的錯(cuò)誤輸出連線到合并錯(cuò)誤 VI。
12. 右擊合并錯(cuò)誤 VI的錯(cuò)誤輸出輸出,并從快捷菜單中選擇創(chuàng)建»顯示控件,向前端面板中增加一個(gè)顯示控件。
13. 將錯(cuò)誤輸出連線到定時(shí)循環(huán)的邊沿。
14. 在為錯(cuò)誤輸出所創(chuàng)建的循環(huán)通道上右擊,并從快捷菜單中選擇替換為移位寄存器。這會(huì)將錯(cuò)誤信息傳遞給下一個(gè)循環(huán)迭代。
15. 將錯(cuò)誤輸出連線到定時(shí)循環(huán)另一側(cè)的移位寄存器上。
16. 右擊移位寄存器,并從快捷菜單中選擇創(chuàng)建»常量,初始化定時(shí)循環(huán)外部的錯(cuò)誤簇。因?yàn)樽罱K的硬件會(huì)使用LabVIEW實(shí)時(shí)模塊,所以要在定時(shí)循環(huán)外部初始化所有功能塊陣列(array)和簇(cluster),以避免系統(tǒng)抖動(dòng)。在定時(shí)循環(huán)內(nèi)部,在那兩個(gè)Line功能塊底下放置一個(gè)Read功能塊。
一般是在主機(jī)上(而非在確定性定時(shí)循環(huán)中) ,通過讀取目標(biāo)發(fā)布的數(shù)據(jù)來讀取并繪制位置信息。為了簡(jiǎn)化,本例中包含了數(shù)據(jù)讀取部分。
17. 將資源和錯(cuò)誤輸出連接到第一個(gè)Line功能塊的資源和錯(cuò)誤輸入上。
18. 為位置[]輸入創(chuàng)建一個(gè)常數(shù),并將該矩陣的前兩個(gè)元素設(shè)為0。將位置[]常數(shù)移出定時(shí)循環(huán)。這樣初始化陣列可以無需為功能塊分配內(nèi)存。
19. 右擊定時(shí)循環(huán)的條件接線端,并從快捷菜單中選擇創(chuàng)建»輸入控件,向前端面板中增加一個(gè)停止按鈕。這將允許你在任何時(shí)候停止運(yùn)行VI。
完成上述步驟后,你的方框圖應(yīng)該與下圖類似:
圖8. 程序框圖
切換到前面板。
23. 在 位置[]數(shù)組中,將數(shù)組的前兩個(gè)元素設(shè)為5000。這將指定一個(gè)x y坐標(biāo)(5000, 5000)。
24. 在 位置[] 2數(shù)組中,將矩陣的前兩個(gè)元素設(shè)為0。這將x y軸移回至(0, 0)。
25. 暫時(shí)保持速度、加速度和加加速度的默認(rèn)值。
26. 在前面板中增加一個(gè)波形圖。
27. 切換到程序框圖,將Read功能塊的位置[]輸出接線端連接到波形圖顯示控件上。完成以上步驟后,您的前面板應(yīng)該與圖9類似。
圖9. 前端面板
28. 保存VI。
29. 保存項(xiàng)目。
發(fā)布、測(cè)試并使用VI
完成以下步驟,發(fā)布、測(cè)試并使用VI。
1. 運(yùn)行VI。LabVIEW將該VI以及該VI所使用的所有模塊和I/O變量部署至控制器中。
2. 點(diǎn)擊執(zhí)行輸入控件,啟動(dòng)任務(wù)。
3. 在前面板中,確認(rèn)位置圖在更新。
4. 單擊停止按鈕,停止VI。
5. 修改任意輸入?yún)?shù),然后運(yùn)行VI,再次點(diǎn)擊執(zhí)行控件,看看不同參數(shù)的結(jié)果如何。
連接至伺服式和步進(jìn)式驅(qū)動(dòng)
針對(duì)CompactRIO 的NI 951x C系列驅(qū)動(dòng)接口可以直接連接到數(shù)以百計(jì)的步進(jìn)式和伺服式驅(qū)動(dòng)/電機(jī)。這些運(yùn)動(dòng)模塊提供了單軸的伺服式或步進(jìn)式驅(qū)動(dòng)接口信號(hào)。另外,它們還提供了一組完整的運(yùn)動(dòng)I/O,包括原點(diǎn)開關(guān)和限位開關(guān)的輸入、位置反饋信號(hào)的正交增量式編碼輸入,以及數(shù)字輸入線和數(shù)字輸出線。NI 951x驅(qū)動(dòng)接口包含有一個(gè)處理器,運(yùn)行樣條插值函數(shù)和NI專利的步長(zhǎng)生成算法或控制環(huán)。
下面來看看如何連接至NI P7000系列步進(jìn)式驅(qū)動(dòng)。要了解如何連接到第三方的P-command步進(jìn)式或伺服式驅(qū)動(dòng),請(qǐng)參考安裝在LabVIEW NI SoftMotion Module 中的NI SoftMotion幫助文件。
連接到P7000系列步進(jìn)式驅(qū)動(dòng)
本部分介紹了如何采用NI 9512-to-P7000 Stepper Drives Connectivity Bundle(NI 9512-to-P7000步進(jìn)式驅(qū)動(dòng)連接包),將NI 9512步進(jìn)式驅(qū)動(dòng)接口連接到P7000系列步進(jìn)式驅(qū)動(dòng)。該產(chǎn)品中有一根線纜,直接將NI 9512 D-Sub連接到P7000系列步進(jìn)式驅(qū)動(dòng);以及一個(gè)37管腳的接線塊和線纜,將NI 9512 MDR連接頭連接到其它I/O上。
完成以下步驟,將NI 9512驅(qū)動(dòng)接口連接到P70530直流驅(qū)動(dòng)或者P70360交流驅(qū)動(dòng)和其它I/O。圖10中是一幅簡(jiǎn)化的連接圖。
1. 根據(jù)機(jī)箱文檔說明,在機(jī)箱中安裝模塊。
2. 采用NI 9512-to-P7000線纜,將D-sub連接頭模塊連接到P7000系列驅(qū)動(dòng)上的Command I/O連接頭上。該線纜為步進(jìn)式輸出、驅(qū)動(dòng)使能輸出和驅(qū)動(dòng)錯(cuò)誤信號(hào)提供連接。
3. 將電源連接到NI 9512-to-P7000上的直接連接線纜+24 V輸入。
4. 采用接線盒線纜,將MDR連接頭模塊連接到37管腳的接線塊上。
5. 將硬件設(shè)備上的其它I/O信號(hào)連接到37管腳接線塊或者自定義線纜上。參考圖11了解接線盒的引腳。
a.將接線塊上的Forward Limit(前向限位)、Reverse Limit(反向限位)和Home(原點(diǎn)) 輸入連接到限位和原點(diǎn)傳感器上。
b.如果你使用編碼器來反饋位置信息,則請(qǐng)將編碼器的輸入連接到編碼器上。
c.采用所提供的接線端,連接所有額外I/O。
6. 將驅(qū)動(dòng)電源連接到P7000驅(qū)動(dòng)上。
圖10. NI 9512-to-P7000系列驅(qū)動(dòng)連接圖
注意:如果只需要將MDR連接頭連接到接線盒上,則接線盒上的所有D-Sub信號(hào)都是無連接(no connects,NC)。圖11中顯示了只連接MDR連接頭時(shí)的37管腳接線盒的引腳。
圖11. NI 9512 37管腳接線塊只連接MDR時(shí)的管腳分配
7. 在控制器中安裝軟件,創(chuàng)建一個(gè)LabVIEW項(xiàng)目,并添加NI SoftMotion軸。
8. 在項(xiàng)目瀏覽器窗口中右擊軸,并從快捷菜單中選擇屬性,打開軸配置對(duì)話框。
9. 針對(duì)P7000驅(qū)動(dòng),在軸配置對(duì)話框中改變下述項(xiàng)目的默認(rèn)軸設(shè)置:
a. 右擊軸,并從快捷菜單中選擇屬性,顯示軸配置對(duì)話框。
b. 在步進(jìn)電機(jī)頁面中,將輸出方式設(shè)置為單端。
c. 在運(yùn)動(dòng)I/O頁面的驅(qū)動(dòng)信號(hào)標(biāo)簽頁中,將驅(qū)動(dòng)使能信號(hào)的輸出方式設(shè)置為源輸出。
d. 在數(shù)字I/O頁面中,將驅(qū)動(dòng)器錯(cuò)誤/報(bào)警映射到DI 1,并將輸入方式設(shè)置為源輸入。
10. 在項(xiàng)目瀏覽器窗口中單擊控制器項(xiàng)目,并選擇部署全部來部署軸信息。
連接到伺服式驅(qū)動(dòng)器
伺服式軸的配置
伺服式軸只能以閉環(huán)模式運(yùn)行,所以必需有一個(gè)反饋設(shè)備。如果你使用NI 9514或者NI 9516驅(qū)動(dòng)接口模塊,那么你必須另外對(duì)反饋設(shè)備、伺服控制環(huán)和伺服驅(qū)動(dòng)的驅(qū)動(dòng)命令輸出進(jìn)行配置。圖6中顯示了NI 9514和NI 9516 C系列模塊的軸配置對(duì)話框部分。無法配置的部分以灰色顯示。
圖6. NI 9514和NI 9516模塊的軸配置對(duì)話框
使用增益調(diào)節(jié)測(cè)試面板
使用Gain Tuning Test Panel(增益調(diào)節(jié)測(cè)試面板)來調(diào)節(jié)控制環(huán)的設(shè)置,并計(jì)算伺服軸的相對(duì)穩(wěn)定性。參考NI SoftMotion LabVIEW幫助中的“使用增益調(diào)節(jié)面板”部分,了解關(guān)于增益調(diào)節(jié)面板和伺服式系統(tǒng)調(diào)節(jié)指令方面的詳細(xì)信息。
右擊項(xiàng)目瀏覽器窗口中的軸,并從快捷菜單中選擇交互式測(cè)試面板,訪問增益調(diào)節(jié)面板。
您所學(xué)到的東西
本指南中,分析了使用LabVIEW NI SoftMotion和NI 951x C系列模塊來開發(fā)運(yùn)動(dòng)應(yīng)用中的幾個(gè)概念,如下:
- NI 951x模塊與大多數(shù)C系列模塊的不同之處在于,當(dāng)你使用掃描接口模式的時(shí)候,不能直接在項(xiàng)目瀏覽器窗口中對(duì)它們進(jìn)行配置,而且模塊中不能直接獲得I/O變量。
- 你必須使用NI SoftMotion向RT目標(biāo)中增加軸,并將它們與NI 951x模塊相關(guān)聯(lián),以期以掃描接口模式配置并使用它們。然后,你可以在VI中使用與這些軸相關(guān)聯(lián)的運(yùn)動(dòng)I/O資源。
- NI SoftMotion軸使用Axis Configuration對(duì)話框進(jìn)行配置。
- NI SoftMotion功能塊允許你使用功能塊編程方式來創(chuàng)建確定性運(yùn)動(dòng)控制應(yīng)用。
- NI SoftMotion功能塊為高級(jí)狀態(tài)監(jiān)測(cè)提供了狀態(tài)輸出。