PC機(jī)程序采用圖形化編程語(yǔ)言LabVIEW編寫(xiě),LabV I EW提供5個(gè)串口通信節(jié)點(diǎn),分別實(shí)現(xiàn)串口初始設(shè)置、串口寫(xiě)、串口讀、檢測(cè)串口輸入緩存中的字節(jié)數(shù)、串口中斷。在PC機(jī)和無(wú)線采集模塊串行通信前,首先要配置好串口,即串口初始化,使計(jì)算機(jī)串口的各參數(shù)設(shè)置與無(wú)線收發(fā)模塊的串口參數(shù)一致。
(1)VISA Configure Serial Port.vi:利用該節(jié)點(diǎn)可以設(shè)置串口波特率、數(shù)據(jù)位、停止位、奇偶校驗(yàn)、緩存大小以及流量控制等參數(shù)。
(2)VISA Write:完成輸入有計(jì)算機(jī)發(fā)往數(shù)據(jù)采集板的采集、停止、前后左右運(yùn)行、左自旋,右自旋,6擋速度、自動(dòng)巡航等一系列命令。
(3)VISA Read:用于從串口緩存中讀出指定長(zhǎng)度的數(shù)據(jù)。
(4)VISA Close:關(guān)閉一個(gè)已經(jīng)打開(kāi)的串口,從而釋放LabVIEW對(duì)這個(gè)串口資源的占用。
(5)Simple Error Handler.VI:簡(jiǎn)易錯(cuò)誤處理器,顯示錯(cuò)誤輸入并處理。
LabVIEW中提供鍵盤(pán)、鼠標(biāo)、操作手柄信息采集的函數(shù)庫(kù)Input Device Control,通過(guò)Acquire Input Data.vi可以獲取鍵盤(pán)、鼠標(biāo)和操作手柄的當(dāng)前狀態(tài)。
操作人員通過(guò)鍵盤(pán)、鼠標(biāo)、操作手柄等方式輸入的運(yùn)行指令轉(zhuǎn)換為移動(dòng)機(jī)器人的運(yùn)行指令。在利用Acquire Input Data.vi獲取手柄原始輸入信息后,用Unbundle By Name函數(shù)提取所需軸和按鍵的數(shù)值,用Bundle、Cluster To Array、Boolean Array To Number等函數(shù)將輸入信息轉(zhuǎn)換為指令解析程序所需數(shù)值類(lèi)型。在輪式移動(dòng)模式中Y axis數(shù)值控制機(jī)器人運(yùn)行速度,X axis rotation軸數(shù)值控制機(jī)器人轉(zhuǎn)向;在腿式或復(fù)合模式運(yùn)行狀態(tài)下,可通過(guò)數(shù)字鍵輸入改變機(jī)器人的運(yùn)行模式。
當(dāng)程序開(kāi)始運(yùn)行后先打開(kāi)接收數(shù)據(jù)按鈕,然后打開(kāi)串口,就可以顯示出采集來(lái)的數(shù)據(jù)。同時(shí)可以從運(yùn)行的界面看到數(shù)據(jù)的歷史曲線,圖表曲線右端為當(dāng)前加速度,即可以從曲線上看出又可以從數(shù)字控件中看到確切的數(shù)據(jù)。運(yùn)行時(shí)的界面如圖5所示。當(dāng)點(diǎn)擊各節(jié)點(diǎn)按鈕時(shí)可分別查看其加速度度變化情況。
利用以上方法在Labview平臺(tái)上建立移動(dòng)三輪機(jī)器人小車(chē)的人機(jī)交互系統(tǒng),通過(guò)此系統(tǒng)操作人員可方便直觀的觀測(cè)到機(jī)器人的運(yùn)動(dòng)信息,并通過(guò)界面實(shí)現(xiàn)對(duì)機(jī)器人的控制操作。圖5為機(jī)器人小車(chē)發(fā)生碰撞時(shí)顯示在Labview圖表上的加速度曲線。

圖5 小車(chē)碰撞時(shí)的加速度曲線










共0條 [查看全部] 網(wǎng)友評(píng)論