LabVIEW控制Arduino實現(xiàn)舵機聯(lián)控(基礎(chǔ)篇—9)
本篇博文將通過LabVIEW和Arduino Uno控制板實現(xiàn)對單個和多個舵機轉(zhuǎn)動角度的控制。
1
控制單個舵機
1.1、實驗?zāi)康?/p>
利用LIAT函數(shù)庫通過LabVIEW和Arduino Uno控制板實現(xiàn)對單個舵機轉(zhuǎn)動角度的控制。
1.2、實驗環(huán)境
將9g舵機的電源線分別接至Arduino Uno控制板上的5V和GND引腳上,信號線接至數(shù)字引腳D2上,如下圖所示:
1.3、程序設(shè)計
本例修改自LabVIEW lnterface for Arduino函數(shù)庫中的示例,位于函數(shù)選板“函數(shù)”→"Arduino"→"Example" "Servo Example",修改后的LabVIEW前面板如下圖所示:
程序框圖如下圖所示:
LabVIEW程序首先通過設(shè)置的串口號與Arduino Uno控制板建立連接,然后調(diào)用Servo函數(shù)庫中的Set Number of Servo和Configure Servo函數(shù)節(jié)點以設(shè)置舵機的數(shù)目為1和舵機的連接引腳,接著進入While循環(huán)并不斷調(diào)用Servo Write Angle和Servo Read Angle函數(shù)節(jié)點先向舵機寫入轉(zhuǎn)動的角度值,并讀取舵機當(dāng)前的角度值。最后,斷開與Arduino Uno控制板的連接。
1.4、實驗演示
點擊運行按鈕,LabVIEW程序開始執(zhí)行,通過調(diào)節(jié)設(shè)置角度的旋鈕,可以看到舵機隨著角度的改變而轉(zhuǎn)動,同時,當(dāng)前角度值也隨著舵機的轉(zhuǎn)動而實時改變。
2
控制多個舵機
2.1、實驗?zāi)康?/p>
利用LIAT函數(shù)庫通過LabVIEW和Arduino Uno控制板實現(xiàn)對多個舵機轉(zhuǎn)動角度的控制。
2.2、實驗環(huán)境
實驗環(huán)境和控制單個舵機方法類似,將兩個9g舵機的電源線分別接至Arduino Uno控制板上的5V和GND引腳上,信號線分別接至數(shù)字引腳D2和D3上。
2.3、程序設(shè)計
本例修改自LabVIEW Ilnterface for Arduino函數(shù)庫中的示例,位于函數(shù)選板“函數(shù)”→"Arduino"→"Example"→"Servo Example",修改后的LabVIEW前面板如下圖所示:
程序框圖如下圖所示:
LabVIEW程序首先通過設(shè)置的串口號與Arduino Uno控制板建立連接,然后調(diào)用Servo函數(shù)庫中的Set Number of Servo和Configure Servo函數(shù)節(jié)點以設(shè)置舵機的數(shù)目為2和每個舵機所連接的引腳,接著進入While循環(huán)并不斷調(diào)用Servo Write Angle和Servo Read Angle函數(shù)節(jié)點向指定舵機寫入轉(zhuǎn)動的角度值,并讀取出指定舵機當(dāng)前的角度值。最后,斷開與Arduino Uno控制板的連接。
2.4、實驗演示
點擊運行按鈕,LabVIEW程序開始執(zhí)行,通過舵機1和舵機2的調(diào)節(jié)設(shè)置角度旋鈕,可以看到舵機1和舵機2隨著角度的改變而轉(zhuǎn)動,同時,舵機1和舵機2的當(dāng)前角度值也隨著舵機1和舵機2的轉(zhuǎn)動而實時改變。
*博客內(nèi)容為網(wǎng)友個人發(fā)布,僅代表博主個人觀點,如有侵權(quán)請聯(lián)系工作人員刪除。