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