基于繪圖板程序的家政機(jī)器人室內(nèi)定位系統(tǒng)實(shí)現(xiàn)
掃描二維碼
隨時(shí)隨地手機(jī)看文章
摘 要: 針對(duì)目前家政服務(wù)機(jī)器人在可視化定位上的不足,提出一種將房屋布局圖加載到上位機(jī)繪圖板程序中,通過在上位機(jī)上繪制路線,實(shí)時(shí)控制家政服務(wù)機(jī)器人位置的方案。在該系統(tǒng)中,上位機(jī)按照RS-232協(xié)議傳輸路線信息到無線模塊并發(fā)送,機(jī)器人端采用Altera公司的SoPC技術(shù),使用Nios II軟核作為核心處理器讀取無線模塊接收到的信息,并控制機(jī)器人按指定路線在室內(nèi)行駛。系統(tǒng)具有很好的實(shí)用性。
關(guān)鍵詞: FPGA;Nios II;室內(nèi)定位
隨著經(jīng)濟(jì)發(fā)展的高速化,人們的生活節(jié)奏也越來越快,家政機(jī)器人DR(Domestic Robot),因能夠代替人完成家政服務(wù)工作而受到了更多都市市民的青睞。目前,低端DR以單一的輸入功能如清潔功能等重復(fù)性作業(yè)為主,缺乏與用戶的交互;高端DR雖然功能完善,但是價(jià)格昂貴,不易為普遍用戶接受。本文設(shè)計(jì)的系統(tǒng)是通過上位機(jī)的路線繪制程序與用戶進(jìn)行交互,以低成本便捷的方式實(shí)現(xiàn)對(duì)DR的室內(nèi)定位控制(Indoor Positioning Control),具有很好的實(shí)用性。
1 系統(tǒng)結(jié)構(gòu)
系統(tǒng)整體構(gòu)架分為上位機(jī)信息發(fā)送系統(tǒng)和機(jī)器人子系統(tǒng)兩個(gè)部分。上位機(jī)端采用VB編寫的繪制路線程序作為可視控制平臺(tái),實(shí)現(xiàn)房屋布局圖載入、行進(jìn)路線繪制、坐標(biāo)提取、路線信息計(jì)算與無線傳輸?shù)裙δ?。機(jī)器人處理子系統(tǒng)采用FPGA芯片作為核心處理器,結(jié)合SoPC技術(shù)和Verilog硬件描述語言以完成對(duì)FPGA芯片的配置、Nios II軟核實(shí)現(xiàn)路線信息的無線接收、提取路線信息。使用Verilog硬件描述語言搭建電機(jī)和舵機(jī)的PWM控制模塊,控制電機(jī)與舵機(jī)配合,完成路線的行駛。其系統(tǒng)框圖如圖1所示。
2.1.2 串口無線模塊
PC機(jī)路線繪制程序?qū)⑿畔⒋虬ㄟ^串口傳輸?shù)綗o線模塊CC1100-232后發(fā)送出去。CC1100是TI公司的高性能無線通信芯片,采用串口工作方式,可以工作在433 MHz/868 MHz/915 MHz公用頻段,串口速率為1.2 Kb/s~38.4 Kb/s。在無線傳感器、家庭自動(dòng)化、機(jī)器人控制等領(lǐng)域有著廣泛的應(yīng)用。
2.2 機(jī)器人子系統(tǒng)
機(jī)器人子系統(tǒng)的功能是實(shí)現(xiàn)路線信息的接收與執(zhí)行,由FPGA處理器、CC1100-232無線模塊、機(jī)器人模型組成。
2.2.1 機(jī)器人模型
微元路線的準(zhǔn)確實(shí)現(xiàn)需要機(jī)器人根據(jù)路線信息準(zhǔn)確地行走,機(jī)器人模型設(shè)計(jì)的關(guān)鍵在于行進(jìn)部分的設(shè)計(jì),本系統(tǒng)的機(jī)器人行進(jìn)部分由兩個(gè)從動(dòng)輪、一個(gè)帶碼盤的驅(qū)動(dòng)輪、光電對(duì)管TCRT5000和電機(jī)模組組成。驅(qū)動(dòng)輪的電機(jī)模組分為130電機(jī)和5010舵機(jī)兩部分,電機(jī)與舵機(jī)安裝于驅(qū)動(dòng)輪上,電機(jī)帶動(dòng)驅(qū)動(dòng)輪轉(zhuǎn)動(dòng),舵機(jī)帶動(dòng)驅(qū)動(dòng)輪旋轉(zhuǎn)。PWM波可以控制電機(jī)、舵機(jī)轉(zhuǎn)動(dòng),調(diào)節(jié)PWM波的占空比可以改變電機(jī)轉(zhuǎn)速和舵機(jī)的轉(zhuǎn)動(dòng)角度。在驅(qū)動(dòng)輪上帶有碼盤和光電對(duì)管TCRT5000,兩者結(jié)合可以準(zhǔn)確地記錄驅(qū)動(dòng)輪轉(zhuǎn)動(dòng)了多少碼格。
機(jī)器人的行進(jìn)方式有兩種:(1)舵機(jī)偏轉(zhuǎn)為0°時(shí),電機(jī)作用驅(qū)動(dòng)輪,機(jī)器人直線行駛;(2)舵機(jī)偏轉(zhuǎn)90°時(shí),電機(jī)作用驅(qū)動(dòng)輪,機(jī)器人繞幾何中心點(diǎn)轉(zhuǎn)動(dòng),如圖4所示。
每次微元的路線機(jī)器人的執(zhí)行方式都是舵機(jī)擺至90°,電機(jī)驅(qū)動(dòng)輪行進(jìn)使機(jī)器人繞中心點(diǎn)轉(zhuǎn)動(dòng)相應(yīng)轉(zhuǎn)角,然后舵機(jī)擺正,電機(jī)驅(qū)動(dòng)機(jī)器人行走微元路線相應(yīng)的距離。
2.2.2 FPGA控制模塊
系統(tǒng)采用Altera Cyclone III EP3C16 FPGA芯片,Verilog硬件描述語言完成復(fù)雜的數(shù)字系統(tǒng)設(shè)計(jì)。Altera公司的SoPC技術(shù)可自定義IP核配置NIOS軟核,可定制性高[1]。通過軟硬件協(xié)同設(shè)計(jì)使整個(gè)系統(tǒng)的FPGA實(shí)現(xiàn)更加靈活與高效。