移動(dòng)機(jī)器人控制系統(tǒng)設(shè)計(jì)與仿真
掃描二維碼
隨時(shí)隨地手機(jī)看文章
移動(dòng)機(jī)器人控制系統(tǒng)設(shè)計(jì)與仿真
隨著科學(xué)技術(shù)的蓬勃發(fā)展,機(jī)器人技術(shù)不斷滲透到工業(yè)、農(nóng)業(yè)、軍事、醫(yī)學(xué)等領(lǐng)域,同時(shí)這些領(lǐng)域?qū)τ谧詣?dòng)化和智能化的技術(shù)需求日趨增長(zhǎng),而移動(dòng)機(jī)器人技術(shù)則成為當(dāng)前智能機(jī)器人研究的熱點(diǎn)之一。由于移動(dòng)機(jī)器人的路徑規(guī)劃、自定位、導(dǎo)航等算法以及視覺(jué)技術(shù)的研究都需要平臺(tái)來(lái)進(jìn)行成果驗(yàn)證,所以移動(dòng)機(jī)器人平臺(tái)已成為熱點(diǎn)研究中最基礎(chǔ)的環(huán)節(jié)。目前,市場(chǎng)上已有一些應(yīng)用于科研的移動(dòng)機(jī)器人平臺(tái),例如ActivMedia公司的Pioneer,WillowGarage公司的PR2等。
1、機(jī)器人控制系統(tǒng)結(jié)構(gòu)功能
移動(dòng)式機(jī)器人的執(zhí)行機(jī)構(gòu)是機(jī)器人的運(yùn)動(dòng)控制系統(tǒng),它對(duì)機(jī)器人的平穩(wěn)運(yùn)行起著至關(guān)重要的作用,同時(shí)它也是一個(gè)結(jié)構(gòu)簡(jiǎn)單的控制器。如圖1所示為本文設(shè)計(jì)的移動(dòng)機(jī)器人的運(yùn)動(dòng)控制系統(tǒng)框圖。移動(dòng)式機(jī)器人運(yùn)動(dòng)控制系統(tǒng)主要包括四大部分:I/O設(shè)備、PC機(jī)控制軟件及硬件、執(zhí)行機(jī)構(gòu)驅(qū)動(dòng)器和各類傳感器等。
圖1移動(dòng)機(jī)器人運(yùn)動(dòng)控制系統(tǒng)框圖
1.1移動(dòng)式機(jī)器人的控制系統(tǒng)
移動(dòng)式機(jī)器人的控制系統(tǒng)的作用是生成控制信息,控制機(jī)器人的執(zhí)行機(jī)構(gòu)進(jìn)行運(yùn)動(dòng)。跟蹤設(shè)定軌跡是設(shè)計(jì)移動(dòng)機(jī)器人的一項(xiàng)重要任務(wù),其工作過(guò)程根據(jù)設(shè)定好的路線轉(zhuǎn)為運(yùn)動(dòng)控制信號(hào)傳輸給機(jī)器人,移動(dòng)機(jī)器人根據(jù)控制器信號(hào)完成相應(yīng)的動(dòng)作,最終達(dá)到設(shè)定的目標(biāo)位置。在機(jī)器人的運(yùn)動(dòng)控制過(guò)程中需輸入給機(jī)器人的信息包含伺服電機(jī)編碼器轉(zhuǎn)換出來(lái)的機(jī)器人移動(dòng)位置和速度的信息,超聲波傳感器檢測(cè)出來(lái)的障礙物位置的信息,以及單目視覺(jué)攝像機(jī)、全景攝像機(jī)所采集到的視頻信息。
1.2移動(dòng)式機(jī)器人的驅(qū)動(dòng)機(jī)構(gòu)
移動(dòng)式機(jī)器人底座上裝有四個(gè)伺服電機(jī),以此作為機(jī)器人的運(yùn)動(dòng)執(zhí)行機(jī)構(gòu)。每個(gè)電機(jī)都裝有一個(gè)編碼器,通過(guò)采集編碼器A和B相的正交編碼脈沖信號(hào),可以實(shí)現(xiàn)電機(jī)的閉環(huán)調(diào)速和完成機(jī)器人的定位。移動(dòng)式機(jī)器人身上安裝的中央處理器則主要用于負(fù)責(zé)傳感器模塊的控制和管理、定位信息的采集,以及與PC機(jī)的通信等,本文所設(shè)計(jì)控制系統(tǒng)采用了嵌入式大容量單片機(jī)控制器。
1.3移動(dòng)式機(jī)器人的信息處理
輸入信息包含視覺(jué)信號(hào)和距離測(cè)量。視覺(jué)信號(hào)由單目視覺(jué)攝像機(jī)和全景視覺(jué)攝像機(jī)提供。距離測(cè)量由超聲波和激光測(cè)距完成。機(jī)器人程序開發(fā)人員應(yīng)事先根據(jù)運(yùn)行環(huán)境建立良好的運(yùn)行環(huán)境地圖,在機(jī)器人的移動(dòng)過(guò)程中實(shí)時(shí)讀取位置信息,在中央控制器中根據(jù)程序設(shè)計(jì)的控制算法進(jìn)行運(yùn)算,將輸出信號(hào)發(fā)生給伺服電機(jī)控制器到驅(qū)動(dòng)電機(jī),從而控制移動(dòng)機(jī)器人的移動(dòng)。
機(jī)器人以中央處理器和上位機(jī)作為神經(jīng)中樞,接收來(lái)自超聲波和激光模塊檢測(cè)的障礙物信息,單目和全景攝像機(jī)提供視覺(jué)信息。根據(jù)上位機(jī)設(shè)定的參數(shù)和一些其他功能,通過(guò)控制器處理輸出給電機(jī)控制機(jī)器人執(zhí)行機(jī)構(gòu)完成相應(yīng)動(dòng)作。
1.4基于環(huán)境模型的規(guī)劃方法
該方法首先需要建立一個(gè)關(guān)于機(jī)器人運(yùn)動(dòng)環(huán)境的環(huán)境模型。在很多時(shí)候由于移動(dòng)機(jī)器人的工作環(huán)境具有不確定性(包括非結(jié)構(gòu)性、動(dòng)態(tài)性等),使得移動(dòng)機(jī)器人無(wú)法建立全局環(huán)境模型,而只能根據(jù)傳感器信息實(shí)時(shí)地建立局部環(huán)境模型,因此局部模型的實(shí)時(shí)性、可靠性成為影響移動(dòng)機(jī)器人是否可以安全、連續(xù)、平穩(wěn)運(yùn)動(dòng)的關(guān)鍵。環(huán)境建模的方法基本上可以分為兩類:網(wǎng)絡(luò)/圖建模方法、基于網(wǎng)格的建模方法。前者主要包括自由空間法、頂點(diǎn)圖像法、廣義錐法等,利用它們?cè)谶M(jìn)行路徑規(guī)劃時(shí)可得到比較精確的解,但所耗費(fèi)的計(jì)算量相當(dāng)大,不適合于實(shí)際的應(yīng)用。而后者在實(shí)現(xiàn)上要簡(jiǎn)單許多,所以應(yīng)用比較廣泛,其典型代表就是四叉樹建模法及其擴(kuò)展算法(如基于位置碼四叉樹建模法、Framed-quadtrees建模法等)。
基于環(huán)境模型的規(guī)劃方法根據(jù)掌握環(huán)境信息的完整程度可以細(xì)分為環(huán)境信息完全已知的全局路徑規(guī)劃和環(huán)境信息完全未知或部分未知的局部路徑規(guī)劃。由于環(huán)境模型是已知的,全局路徑規(guī)劃的設(shè)計(jì)標(biāo)準(zhǔn)是盡量使規(guī)劃的效果達(dá)到最優(yōu)。在此領(lǐng)域已經(jīng)有了許多成熟的方法,包括可視圖法、切線圖法、Voronoi圖法、拓?fù)浞?、懲罰函數(shù)法、柵格法等。先前方法多采用基于圖論的思想,將目標(biāo)、機(jī)器人及其工作空間用一個(gè)連接圖表示,如此一來(lái),路徑規(guī)劃問(wèn)題就轉(zhuǎn)化為在圖上尋找一條從起始節(jié)點(diǎn)到目標(biāo)節(jié)點(diǎn)的路線。懲罰函數(shù)法將路徑規(guī)劃這個(gè)有約束的問(wèn)題(受到障礙物的限制)轉(zhuǎn)化為一個(gè)無(wú)約束最優(yōu)化問(wèn)題,再求解就可得出解答。柵格法用網(wǎng)格描述機(jī)器人的工作環(huán)境,根據(jù)柵格的可信度值可確定出障礙物的分布,此時(shí)通過(guò)避障規(guī)劃就可得到無(wú)碰路徑。
2、控制系統(tǒng)硬件設(shè)計(jì)
移動(dòng)式機(jī)器人的運(yùn)動(dòng)控制系統(tǒng)硬件設(shè)計(jì)主要包括三部分:主控板設(shè)計(jì)、驅(qū)動(dòng)機(jī)構(gòu)設(shè)計(jì)和傳感器單元。
2.1主控板設(shè)計(jì)
主控板的主要作用是完成控制器與模塊接口之間的數(shù)據(jù)管理、傳輸和控制功能。因移動(dòng)式機(jī)器人上不同種類的傳感器模塊接口可能不相同,如:雙目攝像機(jī)為RS232接口;全景視覺(jué)攝像機(jī)為USB接口。主控板可完成與PC機(jī)的通信,驅(qū)動(dòng)機(jī)構(gòu)的的控制信號(hào)由上位機(jī)經(jīng)主控板發(fā)送給電機(jī)控制器。主控板可采集電機(jī)編碼器的正交編碼脈沖信號(hào)經(jīng)過(guò)處理作為作位置信號(hào)。主控板也對(duì)距離測(cè)量模塊接口進(jìn)行管理,傳感器接收信號(hào)的采集處理和發(fā)射信號(hào)的產(chǎn)生以及超聲波傳感器運(yùn)行時(shí)間的設(shè)置都是由主控板來(lái)完成的。
2.2驅(qū)動(dòng)機(jī)構(gòu)
移動(dòng)式機(jī)器人采用四輪運(yùn)動(dòng)模式,四個(gè)輪分別由通過(guò)電機(jī)驅(qū)動(dòng)。每個(gè)電機(jī)都是由各自的電機(jī)控制器單獨(dú)進(jìn)行驅(qū)動(dòng),保證了電機(jī)閉環(huán)調(diào)速的獨(dú)立性、實(shí)時(shí)性、穩(wěn)定性和準(zhǔn)確性。每個(gè)電機(jī)單元模塊都由控制器和電機(jī)組成。電機(jī)控制器模塊的控制芯片接收上位機(jī)的控制指令,經(jīng)處理器計(jì)算后將運(yùn)行速度和方向輸出給執(zhí)行電機(jī),控制器能夠輸出控制電機(jī)電壓,同時(shí)通過(guò)編碼器實(shí)時(shí)檢測(cè)電機(jī)的運(yùn)行速度,對(duì)電機(jī)測(cè)量速度和設(shè)定速度差值進(jìn)行比較運(yùn)算,輸出電機(jī)的控制電壓,從而完成電機(jī)的閉環(huán)調(diào)速。
2.3傳感器單元
超聲波傳感器用于測(cè)量附近障礙物與機(jī)器人的實(shí)際距離,傳感器所需的40KHz方波源信號(hào)由中央控制器產(chǎn)生,經(jīng)放大器轉(zhuǎn)換后輸出給超聲波傳感器信號(hào),當(dāng)超聲波信號(hào)在傳播過(guò)程中遇到障礙物會(huì)反射回來(lái),超聲波接收器接收到超聲波信號(hào)后經(jīng)轉(zhuǎn)化器轉(zhuǎn)換成小幅值的電信號(hào),然后在經(jīng)放大和濾波后傳輸給中央控制器,由中央控制器換算成位置信號(hào)。由于超聲波傳感器發(fā)出的信號(hào)隨的距離的增加而衰弱,因此接收器接收的信號(hào)也極其微弱,一般都為毫伏級(jí)的,并有干擾噪聲,所以需對(duì)傳感器接收到的信號(hào)進(jìn)行放大和濾波處理。從超聲波控制芯片發(fā)出信號(hào)開始到接收器接收到信號(hào)后之間的時(shí)差即就是波傳輸時(shí)間,通過(guò)傳輸時(shí)間和速度就可計(jì)算出距離。如圖2所示為超聲波測(cè)距硬件結(jié)構(gòu)圖。
圖2超聲波測(cè)距單元硬件結(jié)構(gòu)圖
3、仿真模型
本文利用MATLAB/SimMechanics仿真平臺(tái)對(duì)移動(dòng)式機(jī)器人的運(yùn)動(dòng)控制進(jìn)行仿真研究,構(gòu)造了基于仿真平臺(tái)SimMechanics的運(yùn)動(dòng)學(xué)仿真模型和基于MATLAB函數(shù)的運(yùn)動(dòng)學(xué)仿真模型。并設(shè)計(jì)了一個(gè)智能小車仿真平臺(tái)來(lái)模仿移動(dòng)式機(jī)器人,本文根據(jù)控制系統(tǒng)的性能參數(shù)要求確定了PID控制器的各項(xiàng)參數(shù),并且采用傳感器技術(shù)實(shí)時(shí)了智能小車在運(yùn)行過(guò)程中的實(shí)時(shí)狀態(tài)。
假設(shè)智能小車所處的環(huán)境在一個(gè)二維坐標(biāo)系中的坐標(biāo)為(X,Y),小車的運(yùn)行方向與X軸之間的夾角用θ表示,因此就可用向量[X,Y,θ]表示智能小車的位置姿態(tài),小車的運(yùn)動(dòng)方程可用下式表示:
式中,v為小車前進(jìn)速度,b為小車左右輪之間的橫向距離,vL為小車左輪的速度,ω為小車的轉(zhuǎn)向速度,vR為小車右輪的速度,Tf為車輪摩擦?xí)r產(chǎn)生的反抗性恒轉(zhuǎn)矩負(fù)載。假設(shè)i為傳動(dòng)機(jī)構(gòu)的減速比,η為傳動(dòng)機(jī)械效率,則電機(jī)軸上負(fù)載轉(zhuǎn)矩的等效轉(zhuǎn)矩可表示為:
T=Tf/iη
為使智能小車測(cè)控更加直觀本文采用了虛擬仿真技術(shù),SimMechanics的優(yōu)化設(shè)計(jì)模塊使運(yùn)動(dòng)控制系統(tǒng)的參數(shù)調(diào)整更加方便,虛擬仿真技術(shù)與SimMechanics相結(jié)合可實(shí)現(xiàn)交互性操作,并能實(shí)時(shí)顯現(xiàn)出智能小車的運(yùn)動(dòng)狀態(tài)。
4、控制器參數(shù)優(yōu)化
因普通的PID控制器性能的好壞實(shí)際上能取決于比例,積分和微分參數(shù)的整定,若設(shè)定的參數(shù)越符合該控制系統(tǒng),則控制效果就越好,否則相反。本文設(shè)計(jì)的仿真控制系統(tǒng)通過(guò)調(diào)整比例、積分和微分三項(xiàng)控制參數(shù),使小車能夠更加快速、準(zhǔn)確的沿設(shè)定路徑前進(jìn)到達(dá)目的地。圖3中基于SimMechanics平臺(tái)建立的小車運(yùn)動(dòng)學(xué)仿真模型,本模型中具有圖形界面的控制器優(yōu)化設(shè)計(jì)功能和仿真的功能,可根據(jù)上位機(jī)設(shè)定的參數(shù)對(duì)電機(jī)控制器中的參數(shù)進(jìn)行優(yōu)化計(jì)算。PID控制器輸出的信號(hào)經(jīng)電機(jī)控制器后去控制執(zhí)行電機(jī)。
圖3SimMechanics平臺(tái)的運(yùn)動(dòng)學(xué)仿真模型
根據(jù)所建立的SimMechanics運(yùn)動(dòng)學(xué)仿真模型,在仿真軟件環(huán)境中設(shè)置仿真的分析類型,就可以實(shí)現(xiàn)移動(dòng)式機(jī)器人的運(yùn)動(dòng)學(xué)仿真分析。通過(guò)安裝的編碼器可以測(cè)得移動(dòng)機(jī)器人的末端軌跡如圖4所示。
圖4機(jī)器人的末端運(yùn)動(dòng)軌跡
5、結(jié)論
本文設(shè)計(jì)了可獨(dú)立完成電機(jī)的閉環(huán)調(diào)速的移動(dòng)機(jī)器人控制系統(tǒng)。由上位機(jī)直接發(fā)送指令給機(jī)器人控制器控制運(yùn)動(dòng),無(wú)需再參與閉環(huán)調(diào)速的運(yùn)算中。使用MATLAB/SimMechanics仿真平臺(tái)實(shí)現(xiàn)了移動(dòng)式機(jī)器人的運(yùn)動(dòng)學(xué)仿真,通過(guò)移動(dòng)式機(jī)器人上的編碼器記錄的機(jī)器人移動(dòng)的位移,通過(guò)控制器將位置信號(hào)轉(zhuǎn)換為機(jī)器人當(dāng)前的位置姿態(tài),從而實(shí)現(xiàn)對(duì)機(jī)器人路徑的跟蹤控制。