摘 要:建立機(jī)器人行駛控制系統(tǒng)的數(shù)學(xué)模型,由此獲得系統(tǒng)的Simulink 模型(仿真模型),進(jìn)行仿真分析,然后使用VR工具箱建立了一個(gè)相關(guān)的虛擬場(chǎng)景,并通過(guò)該工具箱的Simulink接口將機(jī)器人行駛控制系統(tǒng) Simulink模型與該虛擬世界建立關(guān)聯(lián),從而利用Simulink模型產(chǎn)生的信號(hào)數(shù)據(jù)控制和操縱虛擬世界中機(jī)器人的運(yùn)動(dòng)。
關(guān)鍵詞:Simulink;VR工具箱;機(jī)器人;行駛控制系統(tǒng)
1 引 言
1.1 機(jī)器人導(dǎo)航技術(shù)及虛擬現(xiàn)實(shí)
國(guó)內(nèi)外專家在移動(dòng)機(jī)器人控制方面已做了大量的研究工作,與70 年代的機(jī)器人相比,現(xiàn)在的機(jī)器人研究有兩個(gè)特點(diǎn):一是對(duì)機(jī)器人智能的定位有了更加符合實(shí)際的標(biāo)準(zhǔn),也就是不要求機(jī)器人具有像人類一樣的高智能,而只是要求機(jī)器人在某種程度上具有自主處理問(wèn)題的能力;另一個(gè)特點(diǎn)是許多新技術(shù)及控制方法被引入到機(jī)器人研究中,給研究工作帶來(lái)突破性進(jìn)展。
將VR 技術(shù)應(yīng)用到移動(dòng)機(jī)器人導(dǎo)航研究中是一種可行的方法:隨著系統(tǒng)的日益復(fù)雜和運(yùn)算量的日益增加,對(duì)計(jì)算設(shè)備能力的要求也日益提高,而多數(shù)輕便靈活型的機(jī)器人難以攜帶大量的計(jì)算設(shè)備,因此,將計(jì)算機(jī)和機(jī)器人分開,機(jī)器人把觀察到的視覺信號(hào)和傳感器信號(hào)按照制定的標(biāo)準(zhǔn)合成,然后傳送到遠(yuǎn)方計(jì)算機(jī)上,由功能強(qiáng)大的遠(yuǎn)方計(jì)算機(jī)進(jìn)行分解和處理,并發(fā)出控制信號(hào)給機(jī)器人的傳動(dòng)機(jī)構(gòu),以控制機(jī)器人行為,或者由機(jī)器人完成一些行走、避障類的低層操作,而高層操作則由遠(yuǎn)方高性能機(jī)器、或人工在虛擬環(huán)境中遙控完成。
本文的仿真對(duì)象是一臺(tái)半自主式移動(dòng)機(jī)器人,其運(yùn)動(dòng)和各種服務(wù)功能的實(shí)現(xiàn),可以由后方的操作者利用虛擬現(xiàn)實(shí)技術(shù)操縱控制,所有命令均由操縱面板上的按鈕和操縱桿控制發(fā)出。
1.2 Simulink及VR工具箱
Simulink 是一個(gè)用來(lái)對(duì)動(dòng)態(tài)系統(tǒng)進(jìn)行建模、仿真和分析的軟件包,它和MATLAB的無(wú)縫結(jié)合使得用戶可以利用MATLAB豐富的資源,建立仿真模型,監(jiān)控仿真過(guò)程,分析仿真結(jié)果。新出現(xiàn)的基于MATLAB的VR工具箱允許MATLAB/Simulink使用虛擬現(xiàn)實(shí)的圖形技術(shù),使得用戶能直接將仿真結(jié)果以虛擬現(xiàn)實(shí)的形式顯示出來(lái)。可以說(shuō),對(duì)虛擬現(xiàn)實(shí)技術(shù)的支持使得MATLAB/Simulink在系統(tǒng)仿真領(lǐng)域的應(yīng)用上了一個(gè)新的臺(tái)階[1]。
1.3 機(jī)器人行駛控制系統(tǒng)的工作原理
(1)機(jī)器人的速度設(shè)置通過(guò)改變遙控操作面板上操縱桿的位置來(lái)實(shí)現(xiàn),即操縱桿的不同位置對(duì)應(yīng)著不同的速度。
(2)測(cè)量機(jī)器人的當(dāng)前速度,并求取它與指定速度的差值。
(3)由系統(tǒng)差值信號(hào)驅(qū)動(dòng)機(jī)器人產(chǎn)生相應(yīng)的牽引力,并由此牽引力改變機(jī)器人的速度直到其速度穩(wěn)定在指定速度為止。
本文首先建立并運(yùn)行了機(jī)器人行駛控制系統(tǒng)的數(shù)學(xué)模型及仿真模型;然后使用VR工具箱實(shí)現(xiàn)了機(jī)器人行駛控制系統(tǒng)的Simulink模型與虛擬世界的關(guān)聯(lián),從而利用Simulink模型產(chǎn)生的信號(hào)數(shù)據(jù)控制和操縱虛擬世界中機(jī)器人的運(yùn)動(dòng)。
2 建立機(jī)器人行駛控制系統(tǒng)的Simulink模型并進(jìn)行仿真分析
2.1 機(jī)器人行駛控制系統(tǒng)的物理模型與數(shù)學(xué)描述
1)速度操縱桿的位置變換器
位置變換器是機(jī)器人行駛控制系統(tǒng)的輸入部分,其目的是將操作面板上操縱桿的位置轉(zhuǎn)換為相應(yīng)的速度,由于該機(jī)器人的速度變化范圍是0-6 km/h,故二者之間的數(shù)學(xué)關(guān)系可設(shè)為:
v=6x, x∈[0,1]
其中x為速度操縱桿的位置,v為與之對(duì)應(yīng)的速度。
2)離散行駛控制器
行駛控制器是整個(gè)行駛控制系統(tǒng)的核心部分。簡(jiǎn)單來(lái)說(shuō),其功能是根據(jù)機(jī)器人當(dāng)前速度與指定速度的差值,產(chǎn)生相應(yīng)的牽引力。行駛控制器為一典型的PID控制器,其數(shù)學(xué)描述為:
積分環(huán)節(jié):x(n)=x(n-1)+u(n)
微分環(huán)節(jié):d(n)=u(n)-u(n-1)
系統(tǒng)輸出:y(n)=Pu(n)+Ix(n)+Dd(n)
其中u(n)為系統(tǒng)輸入,相當(dāng)于機(jī)器人當(dāng)前速度與指定速度的差值。 y (n)為系統(tǒng)輸出,相當(dāng)于機(jī)器人牽引力,x(n)為系統(tǒng)中的狀態(tài)。P、I與D為PID控制器的比例、積分與微分控制參數(shù),其取值分別設(shè)為P=3, I=0.005, D=0.6.
3)機(jī)器人動(dòng)力機(jī)構(gòu)
機(jī)器人動(dòng)力機(jī)構(gòu)是行駛控制系統(tǒng)的執(zhí)行機(jī)構(gòu)。其功能是在牽引力的作用下改變機(jī)器人速度,使其達(dá)到指定速度。牽引力與速度之間的關(guān)系為
F=ma+bv
其中a為機(jī)器人的加速度,v為速度:a=dv/dt,F(xiàn)為機(jī)器人的牽引力,m=50 kg為機(jī)器人的質(zhì)量,b為阻力因子設(shè)為1.
2.2 建立機(jī)器人行駛控制系統(tǒng)的仿真模型
按照機(jī)器人行駛控制系統(tǒng)的物理模型與數(shù)學(xué)描述建立系統(tǒng)仿真模型。在建立系統(tǒng)模型之前,首先給出建立模型所需的主要系統(tǒng)模塊:
(1)Math模塊庫(kù)中的Slider Gain滑動(dòng)增益模塊:對(duì)輸入信號(hào)x的范圍進(jìn)行限制。
(2)Discrete模塊庫(kù)中的Unit Delay單位延遲模塊:用來(lái)實(shí)現(xiàn)行駛控制器(即PID控制器)。
(3)Continuous模塊庫(kù)中的Integrator積分器模塊:用來(lái)實(shí)現(xiàn)機(jī)器人動(dòng)力機(jī)構(gòu)。
(4)Subsystems模塊庫(kù)中的Subsystem子系統(tǒng)模塊:用來(lái)對(duì)系統(tǒng)不同的部分進(jìn)行封裝。
然后建立系統(tǒng)模型,并將位置變換器、行駛控制器、機(jī)器人動(dòng)力機(jī)構(gòu)封裝到不同的子系統(tǒng)之中,如圖1所示。





