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