摘 要: 基于差速轉(zhuǎn)向原理,設(shè)計(jì)了一套輪式移動(dòng)機(jī)器人的運(yùn)動(dòng)控制系統(tǒng)。首先選擇小車的模型(運(yùn)動(dòng)模型), 進(jìn)行運(yùn)動(dòng)學(xué)和力學(xué)分析,得出左右兩側(cè)車輪的速度約束,然后設(shè)計(jì)機(jī)器人的運(yùn)動(dòng)控制模塊和無(wú)線遙控模塊。運(yùn)動(dòng)控制模塊可分為控制電路和驅(qū)動(dòng)電路兩大模塊,控制電路以DSP作為核心控制部件,捕獲編碼器的信息并產(chǎn)生PWM信號(hào);驅(qū)動(dòng)電路以直流電機(jī)H橋集成芯片為驅(qū)動(dòng)部件,接收來(lái)自DSP的控制信號(hào)。無(wú)線遙控模塊選用AVR單片機(jī)作為控制核心,實(shí)現(xiàn)A/D轉(zhuǎn)換和指令發(fā)送等功能。實(shí)驗(yàn)證明,該系統(tǒng)不僅能實(shí)現(xiàn)較長(zhǎng)距離的無(wú)線控制,傳輸可靠,而且速度控制準(zhǔn)確,車體運(yùn)動(dòng)靈活。
關(guān)鍵詞: 差速轉(zhuǎn)向; AVR單片機(jī); DSP; 無(wú)線控制
中圖分類號(hào): TN4?34; TP2 文獻(xiàn)標(biāo)識(shí)碼: A 文章編號(hào): 1004?373X(2016)02?0022?06
Research and design of motion control system of wheeled mobile robot
YANG Junju, LIN Rui, WANG Zhenhua, SUN Lining
(Robotics and Microsystems Research Center, Soochow University, Suzhou 215000, China)
Abstract: A motion control system of differential steering wheeled mobile robot was designed on the basis of the differential steering principle in this paper. A trolley model (motion model) is selected firstly to conduct kinematics and mechanical analysis, and obtain the speed constraint of the wheels on both sides. Then the motion control module and wireless remote control module of the robot are designed respectively. The motion control module can be divided into two parts: the control circuit module with DSP as its core which can obtain the encoder information and generate PWM signal, and the drive circuit module with H?bridge driving chip which can receive control signal from DSP. The AVR microcontroller is taken as its control core of the wireless remote control module to realize the functions of A/D conversion and instruction issue. Experimental results show that the system can not only realize long distance wireless control reliably, but also have accuracy speed control and flexible body movement.
Keywords: differential steering; AVR SCM; DSP; wireless control
差速轉(zhuǎn)向常用于移動(dòng)機(jī)器人中,現(xiàn)如今因?yàn)楹芏噍喪綑C(jī)器人在外形尺寸上有嚴(yán)格的要求,而差速轉(zhuǎn)向由于結(jié)構(gòu)緊湊,重量輕,不需要專門的轉(zhuǎn)向機(jī)構(gòu),而且可實(shí)現(xiàn)較小半徑甚至零半徑的轉(zhuǎn)向,所以近年來(lái)差速轉(zhuǎn)向越來(lái)越多地運(yùn)用于各式移動(dòng)機(jī)器人中。
1 小車運(yùn)動(dòng)模型的建立
輪式機(jī)器人的差速轉(zhuǎn)向模型一般可分為3種,圖1(a)為后驅(qū)動(dòng)輪獨(dú)立驅(qū)動(dòng),前輪為萬(wàn)向輪。這種結(jié)構(gòu)特點(diǎn)是結(jié)構(gòu)簡(jiǎn)單、旋轉(zhuǎn)半徑理論上可為零,但這種結(jié)構(gòu)在轉(zhuǎn)動(dòng)過(guò)程中形成的速度瞬心位于兩驅(qū)動(dòng)輪軸心連線上,所以即使機(jī)器人旋轉(zhuǎn)半徑為零,旋轉(zhuǎn)中心也與車體幾何中心不一致。圖1(b)是在圖1(a)結(jié)構(gòu)的基礎(chǔ)上在車體后面加了一個(gè)萬(wàn)向輪。圖1(c)與圖1(b)、圖1(a)的區(qū)別之處在于,相對(duì)于3輪和4輪結(jié)構(gòu),6輪結(jié)構(gòu)具有更大的承載能力和穩(wěn)定性。但是不管是圖1(b)還是圖1(c)所示的結(jié)構(gòu),為了避免驅(qū)動(dòng)輪在某些位置懸空,都需要加裝懸掛機(jī)構(gòu),這就使結(jié)構(gòu)復(fù)雜化以及制造成本升高。為此本文選用圖2所示的差速模型。該模型的前輪和后輪都設(shè)計(jì)成驅(qū)動(dòng)輪,能產(chǎn)生很大的驅(qū)動(dòng)力,轉(zhuǎn)彎靈活,在一定條件下可實(shí)現(xiàn)原地旋轉(zhuǎn),相對(duì)于有萬(wàn)向輪的結(jié)構(gòu)來(lái)說(shuō)具有較好的直行能力,定位精度高。
為了控制機(jī)器人的轉(zhuǎn)向,需要對(duì)機(jī)器人進(jìn)行運(yùn)動(dòng)學(xué)分析,得出左右驅(qū)動(dòng)輪的轉(zhuǎn)速,便于DSP控制器的控制。由于該機(jī)構(gòu)不可避免的會(huì)使機(jī)器人發(fā)生滑移,為了使機(jī)器人能夠原地旋轉(zhuǎn),需要對(duì)機(jī)器人進(jìn)行力學(xué)分析,設(shè)計(jì)出合適尺寸和質(zhì)量的輪式機(jī)器人。
圖1 輪式車輛差速轉(zhuǎn)向模型
圖2 四輪驅(qū)動(dòng)小車差速轉(zhuǎn)向模型
1.1 小車運(yùn)動(dòng)學(xué)分析
參考阿克曼(Ackerman)轉(zhuǎn)向幾何學(xué)原理,即在汽車轉(zhuǎn)向時(shí)4個(gè)輪胎都近似圍繞一個(gè)中心點(diǎn)旋轉(zhuǎn)以保證汽車的行駛穩(wěn)定性。把汽車的形心作為質(zhì)心,并且忽略路面情況變化等的影響,可得出四輪驅(qū)動(dòng)差速轉(zhuǎn)向小車的運(yùn)動(dòng)學(xué)模型如圖3所示。
圖3 四輪驅(qū)動(dòng)小車運(yùn)動(dòng)學(xué)模型
圖3中,[α1]和[α2]分別為前左輪和后左輪,前右輪和后右輪的轉(zhuǎn)角;[2L]為左右輪距離;[2K]為前后輪軸距;[v]和[ω]分別為車子質(zhì)心的線速度和角速度,[V1],[V2],[V3],[V4]分別為各個(gè)輪中心的實(shí)際運(yùn)動(dòng)方向。
由圖3可以得出各速度和轉(zhuǎn)角的關(guān)系:
[V1=ω?R1=ω?Ksinα1V2=ω?R2=ω?Ksinα2V3=V1=ω?Ksinα1V4=V2=ω?Ksinα2]
[V1y=V1cosα1=ωKtanα1=ω(R-L)V2y=V2cosα2=ωKtanα2=ω(R+L)V3y=V3cosα1=ωKtanα1=ω(R-L)V4y=V4cosα2=ωKtanα2=ω(R+L)]
式中:[R=vω。]
則電機(jī)的角速度為:
[ωn=Vnyir, n=1,2,3,4] (1)
式中:[i]為減速器的減速比;[r]為車輪的半徑。
1.2 小車動(dòng)力學(xué)分析
由于小車沒(méi)有轉(zhuǎn)向機(jī)構(gòu),小車轉(zhuǎn)向時(shí)會(huì)和地面發(fā)生滑移。以原地旋轉(zhuǎn)為例,若不計(jì)空氣阻力,小車受到地面的力可分為靜摩擦力,滾動(dòng)摩擦力和滑動(dòng)摩擦力,各力的方向如圖4所示。其中,靜摩擦力為[F],提供小車旋轉(zhuǎn)的動(dòng)力,滾動(dòng)摩擦力為[Fo],滑動(dòng)摩擦力為[Fμ]。
圖4 四輪驅(qū)動(dòng)小車受力分析
假設(shè)小車做勻速圓周運(yùn)動(dòng),則每個(gè)輪子上所受合力方向?yàn)橹赶驁A心[O]的方向,合力矩為0,由此可得出:
[4(F-Fo)?L=4Fμ?K] (2)
假設(shè)小車質(zhì)量為[m],動(dòng)摩擦系數(shù)為[μ],則滑動(dòng)摩擦力為:
[Fμ=14μmg] (3)
將式(3)代入式(2)得:
[4(F-Fo)?L=μmgK] (4)
[4FL>μmgK] (5)
假設(shè)[T]為電機(jī)提供的轉(zhuǎn)矩,[i]為減速器傳動(dòng)比,[r]為輪子半徑,則:
[F=T?ir] (6)
將式(6)代入式(5)得:
[4TirL>μmgK LK>μmgr4Ti] (7)
2 控制系統(tǒng)硬件的設(shè)計(jì)
本系統(tǒng)可分為3大模塊,分別為遙控模塊,運(yùn)動(dòng)控制和驅(qū)動(dòng)模塊(如圖5所示)及無(wú)線傳輸模塊。其中,遙控模塊以AVR單片機(jī)為核心。為了使功能模塊化,把運(yùn)動(dòng)控制和驅(qū)動(dòng)模塊劃分為DSP控制電路和驅(qū)動(dòng)器電路,時(shí)個(gè)電路相互獨(dú)立便于驅(qū)動(dòng)器的散熱。無(wú)線傳輸模塊負(fù)責(zé)在遙控模塊、運(yùn)動(dòng)控制和驅(qū)動(dòng)模塊之間傳輸數(shù)據(jù)。系統(tǒng)各部分組成如圖6所示。
圖5 運(yùn)動(dòng)控制和驅(qū)動(dòng)模塊
圖6 系統(tǒng)總框圖
遙控模塊選用ATxmega128A1單片機(jī)作為控制核心,該單片機(jī)是一個(gè)基于AVR先進(jìn)的精簡(jiǎn)指令集(RISC)結(jié)構(gòu)的8位CMOS微處理器,具有32×8通用工作寄存器,帶8個(gè)具有12位精度的A/D轉(zhuǎn)換模塊,內(nèi)部具有兩個(gè)精準(zhǔn)的參考電壓,用它可以采集的模擬電壓精度理論可達(dá)0.002 V,能精確控制小車的速度。運(yùn)動(dòng)控制模塊采用TMS320LF2407A DSP作為處理器,該處理器集成了多種控制資源,這些豐富的片上資源使得它在電機(jī)控制中比傳統(tǒng)單片機(jī)更具優(yōu)勢(shì),能達(dá)到更高的精度要求。無(wú)線傳輸部分選用基于ZigBee協(xié)議的XBee PRO S3B無(wú)線數(shù)傳模塊。
2.1 A/D轉(zhuǎn)換及發(fā)送
遙控盒負(fù)責(zé)A/D轉(zhuǎn)換以及數(shù)據(jù)發(fā)送。采用高精度二維搖桿電位器,可輸出兩路模擬電壓經(jīng)ATxmega128A1單片機(jī)的A/D轉(zhuǎn)換模塊轉(zhuǎn)換后得到2路具有12位精度的數(shù)字電壓值,分別用作線速度和角速度。由于芯片內(nèi)部自帶的參考電壓值為2.56 V,故用2個(gè)1 kΩ的電阻對(duì)3.3 V電源分壓,PB1和PB2端口分別作為2路模擬電壓的輸入口,電路圖如圖7所示。
圖7 A/D轉(zhuǎn)換電路
ATxmega128A1單片機(jī)具有8個(gè)串口,為保證傳輸可靠性,選用2個(gè)串口分別用作無(wú)線數(shù)據(jù)發(fā)送和有線數(shù)據(jù)發(fā)送接口。無(wú)線數(shù)據(jù)發(fā)送串口連接X(jué)Bee PRO S3B無(wú)線數(shù)傳模塊,采用最小連接方式,DOUT引腳和DIN引腳分別接入單片機(jī)的PF2和PF3引腳。有線數(shù)據(jù)發(fā)送串口電平為RS 232電平,而單片機(jī)為TTL電平,因此需要用MAX3232芯片進(jìn)行電平轉(zhuǎn)換。
2.2 PWM信號(hào)的產(chǎn)生
為實(shí)現(xiàn)速度的閉環(huán)控制,采用如圖8所示的編碼器逆反饋形式。增量式編碼器反饋回3相方波信號(hào),A相和B相具有90°的相位差,方便判斷旋轉(zhuǎn)方向,Z相用于基準(zhǔn)點(diǎn)的定位。CPLD主要起到電平轉(zhuǎn)換的作用。DSP根據(jù)三相方波信號(hào)計(jì)算出電機(jī)的旋轉(zhuǎn)速度和方向,與串口接收到的速度做對(duì)比,通過(guò)一個(gè)PID調(diào)節(jié)器產(chǎn)生PWM波形,進(jìn)行速度的閉環(huán)控制。
圖8 DSP運(yùn)動(dòng)控制系統(tǒng)閉環(huán)系統(tǒng)
2.3 H橋PWM驅(qū)動(dòng)電路
由DSP產(chǎn)生的PWM信號(hào)傳到驅(qū)動(dòng)電路上。驅(qū)動(dòng)電路的驅(qū)動(dòng)器采用LMD18200,同一芯片上集成有CMOS控制電路和DMOS功率器件,利用它可以與主處理器、電機(jī)和增量型編碼器構(gòu)成一個(gè)完整的運(yùn)動(dòng)控制系統(tǒng)。內(nèi)部結(jié)構(gòu)圖如圖9所示,它內(nèi)部集成了4個(gè)DMOS管,組成一個(gè)標(biāo)準(zhǔn)的H型驅(qū)動(dòng)橋。引腳2,10接直流電機(jī)電樞,正轉(zhuǎn)時(shí)電流的方向應(yīng)該從引腳2到引腳10;反轉(zhuǎn)時(shí)電流的方向應(yīng)該從引腳10到引腳2。電流檢測(cè)輸出引腳8可以接一個(gè)對(duì)地電阻,通過(guò)電阻來(lái)輸出過(guò)流情況。內(nèi)部保護(hù)電路設(shè)置的過(guò)電流閾值為10 A,當(dāng)超過(guò)該值時(shí)會(huì)自動(dòng)封鎖輸出,并周期性的自動(dòng)恢復(fù)輸出。過(guò)熱信號(hào)還可通過(guò)引腳9輸出,當(dāng)結(jié)溫達(dá)到145 ℃時(shí)引腳9有輸出信號(hào)。
圖9 LMD18200內(nèi)部結(jié)構(gòu)圖
驅(qū)動(dòng)電路采用2個(gè)LMD18200并聯(lián)的方式,既能加大連續(xù)輸出電流和峰值電流,增強(qiáng)驅(qū)動(dòng)能力,又可在一個(gè)驅(qū)動(dòng)芯片損壞的情況下工作一段時(shí)間,增強(qiáng)可靠性。電路原理圖如圖10所示,其中,PWM引腳輸入脈寬調(diào)制波,可改變電機(jī)的速度,BREAK引腳為制動(dòng)引腳,DIR引腳可改變電機(jī)旋轉(zhuǎn)方向。Motor1A和Motor1B輸出電流,電流的方向由DIR引腳改變。J2和J3可選通電流取樣,形成電流的閉環(huán)反饋。
圖10 LMD18200電路原理圖
在驅(qū)動(dòng)電路中,DSP控制芯片只需給PWM引腳,BREAK引腳,DIR引腳輸入信號(hào)就能控制電機(jī)運(yùn)轉(zhuǎn)。為使信號(hào)更加穩(wěn)定,采用6N137光電耦合器,使輸入端和輸出端實(shí)現(xiàn)電隔離,加強(qiáng)抗干擾能力,電路原理圖如圖11所示。IN_BRK,IN_PWM和IN_DIR為DSP的信號(hào)輸入引腳,輸出引腳接上拉電阻,根據(jù)輸入引腳的特性可選通5 V或3.3 V輸入。
圖11 6N137電路原理圖
3 控制系統(tǒng)軟件的設(shè)計(jì)
控制系統(tǒng)主程序流程如圖12所示。程序分為遙控盒程序和運(yùn)動(dòng)控制程序。遙控盒作為數(shù)據(jù)發(fā)送端,主要功能是采集手柄的模擬電壓信號(hào)和I/O信號(hào),然后發(fā)送給DSP運(yùn)動(dòng)控制板,由DSP板對(duì)數(shù)據(jù)進(jìn)行進(jìn)一步處理后再發(fā)給驅(qū)動(dòng)器。DSP板返回的即時(shí)信息會(huì)被發(fā)送板接收,處理過(guò)后顯示在LCD顯示屏上。運(yùn)動(dòng)控制程序作為數(shù)據(jù)接收和處理端,接收來(lái)自遙控盒的速度命令,然后根據(jù)電機(jī)當(dāng)前的速度對(duì)PWM波進(jìn)行PID調(diào)節(jié),達(dá)到閉環(huán)控制的目的,同時(shí)返回給遙控盒即時(shí)的速度信息。
3.1 遙控盒程序流程圖
定時(shí)器中斷程序作為主要的程序,負(fù)責(zé)A/D轉(zhuǎn)換以及無(wú)線發(fā)送等主要功能的實(shí)現(xiàn),而串口接收中斷主要作用是即時(shí)更新顯示屏數(shù)據(jù)以及監(jiān)控通信是否中斷,為了使DSP板能實(shí)時(shí)接收到來(lái)自遙控盒的控制信號(hào),應(yīng)將定時(shí)器中斷級(jí)別設(shè)置成較高一級(jí)別的中斷。程序流程圖如圖13,圖14所示。
3.2 運(yùn)動(dòng)控制板流程圖
運(yùn)動(dòng)控制板流程圖如圖15所示。
3.3 通信協(xié)議的設(shè)計(jì)
為實(shí)現(xiàn)可靠的數(shù)據(jù)通信,需要建立一個(gè)遙控盒和運(yùn)動(dòng)控制板之間的通信協(xié)議。通信協(xié)議采用校驗(yàn)數(shù)據(jù)包頭和校驗(yàn)數(shù)據(jù)之和的方法數(shù)據(jù)總長(zhǎng)為11 B,數(shù)據(jù)格式如表1所示。
表1 遙控盒和運(yùn)動(dòng)控制板的通信協(xié)議
注:30表示線速度或角速度為正值;31表示線速度或角速度為負(fù)值。
圖14 定時(shí)器中斷流程圖
4 實(shí)驗(yàn)與結(jié)論
該設(shè)計(jì)的平臺(tái)為四輪驅(qū)動(dòng)蘋(píng)果采摘機(jī)器人,該機(jī)器人重約75 kg,軸距K=60 cm,寬L=55 cm,輪子直徑為36 cm,電機(jī)減速比為35,每個(gè)電機(jī)的功率為100 W,持續(xù)輸出扭矩為0.15 N·m。經(jīng)試驗(yàn)得出地面與輪胎的動(dòng)摩擦系數(shù)大約為0.5,經(jīng)計(jì)算,小車能在0.2 m/s的速度下進(jìn)行原地旋轉(zhuǎn),滿足設(shè)計(jì)要求,圖16為機(jī)器人的機(jī)械結(jié)構(gòu)圖,圖17為機(jī)器人的遙控實(shí)驗(yàn)。
圖15 運(yùn)動(dòng)控制板流程圖
圖16 蘋(píng)果采摘機(jī)器人結(jié)構(gòu)圖
在不同的波特率和傳輸距離下進(jìn)行實(shí)驗(yàn),得到數(shù)據(jù)傳輸正確率見(jiàn)表2。
表2 數(shù)據(jù)正確率與傳輸距離(室內(nèi))、波特率關(guān)系表
綜合考慮機(jī)器人的反應(yīng)速度和通信正確率,選擇9 600 b/s作為系統(tǒng)通信波特率。
經(jīng)驗(yàn)證,機(jī)器人速度控制精確,反應(yīng)迅速,在低速度下可進(jìn)行原地旋轉(zhuǎn),滿足采摘蘋(píng)果的需求。但是車胎磨損比較嚴(yán)重,下一步要做的就是優(yōu)化轉(zhuǎn)向結(jié)構(gòu)設(shè)計(jì),采用車體和車輪彈性的連接方式,減少車胎損耗。
圖17 機(jī)器人遙控實(shí)驗(yàn)
5 結(jié) 語(yǔ)
本文通過(guò)對(duì)輪式移動(dòng)機(jī)器人模型的分析,確定了一種四輪驅(qū)動(dòng)的差速轉(zhuǎn)向模型,并對(duì)其進(jìn)行了運(yùn)動(dòng)學(xué)和動(dòng)力學(xué)分析,證明了差速模型的可行性,得出了能夠?qū)崿F(xiàn)原地旋轉(zhuǎn)的必要條件,在此基礎(chǔ)上,設(shè)計(jì)了一款以DSP為核心的驅(qū)動(dòng)器以及AVR單片機(jī)為核心的無(wú)線遙控盒,通過(guò)制定通訊協(xié)議,在四輪驅(qū)動(dòng)蘋(píng)果采摘機(jī)器人上實(shí)現(xiàn)了可靠的運(yùn)動(dòng)控制。實(shí)驗(yàn)證明,本文設(shè)計(jì)的驅(qū)動(dòng)器和無(wú)線遙控盒控制精準(zhǔn),響應(yīng)速度快,能實(shí)現(xiàn)超遠(yuǎn)距離的可靠傳輸,當(dāng)然,實(shí)驗(yàn)中還發(fā)現(xiàn),雖然機(jī)器人能輸出較大的轉(zhuǎn)動(dòng)力矩,但是輪胎磨損較為嚴(yán)重,如何改善轉(zhuǎn)向機(jī)構(gòu)將成為下一步的研究重點(diǎn)。
參考文獻(xiàn)
[1] 陳欣,左志奇,王立操,等. 6×6無(wú)人地面車輛差速轉(zhuǎn)向分析與優(yōu)化[J].汽車實(shí)用技術(shù),2011(9):57?61.
[2] 盧杉.基于單片機(jī)的差速驅(qū)動(dòng)導(dǎo)引小車運(yùn)動(dòng)控制[D].西安:西安理工大學(xué),2010.
[3] 刑潔.四輪驅(qū)動(dòng)輪式機(jī)器人的差速轉(zhuǎn)向及其力矩匹配[D].上海:同濟(jì)大學(xué),2008.
[4] 劉建清,孫保書(shū),李鳳偉,等.輕松玩轉(zhuǎn)AVR單片機(jī)C語(yǔ)言[M].北京:北京航空航天大學(xué)出版社,2011.
[5] 洪利,呂敬偉,楊強(qiáng)生,等.AVR XMEGA高性能單片機(jī)開(kāi)發(fā)及應(yīng)用[M].北京:北京航空航天大學(xué)出版社,2013.
[6] 孫培剛.無(wú)線遙控系統(tǒng)的分析與應(yīng)用[J].綏化學(xué)院學(xué)報(bào),2012,32(1):190?192.
[7] 孟凡菲,王文君,俞竹青.基于DSP2812無(wú)刷直流伺服電機(jī)控制系統(tǒng)的設(shè)計(jì)[J].煤礦機(jī)械,2009,30(12):138?140.
[8] 葉鄭凱,朱建鴻,李琳,等.基于單片機(jī)的無(wú)線遙控智能小車的設(shè)計(jì)與實(shí)現(xiàn)[J].計(jì)算機(jī)與現(xiàn)代化,2012(10):65?67.
[9] 黃建能,楊光杰.無(wú)線遙控小車[J].現(xiàn)代電子技術(shù),2012,35(23):126?128.
[10] 姜寶華,齊強(qiáng).基于單片機(jī)的無(wú)線遙控智能小車的設(shè)計(jì)與制作[J].電子世界,2013(3):24?25.