引言
智能移動機器人集成了機械、電子、計算機、自動控制、人工智能等多學科的研究成果,在當前機器人研究領域具有突出地位。控制系統(tǒng)是機器人的核心部分,目前應用在機器人底層控制系統(tǒng)的微控制器主要有8/16位單片機和數(shù)字信號處理器(DSP)兩種類型。但使用8/16位單片機處理數(shù)據(jù)能力低,且硬件電路龐大,系統(tǒng)穩(wěn)定性弱,DSP的設計初衷是為了數(shù)字信號處理,相比而言,嵌入式微處理器ARM具有幾乎相同的內(nèi)部資源和運算速度,但在控制方面性能優(yōu)于DSP,而且許多ARM器件支持TCP/IP協(xié)議,有利于將來機器人的網(wǎng)絡控制。綜合考慮以上因素,這里提出了一種基于ARM和復雜可編程邏輯器件(CPLD)的智能輪式移動機器人控制系統(tǒng),實現(xiàn)移動機器人的底層控制。
2 系統(tǒng)組成及工作原理
該系統(tǒng)設計的輪式移動機器人機械導航結構采用四輪差速轉向式的機械機構,前面兩個輪是隨動輪,起支撐作用,后面兩個輪是驅動輪,由兩臺同步電機驅動,分別控制兩個驅動輪的轉速,可使機器人按照不同方向和速度移動,運動靈活,可控性好。
移動機器人以PC機作為上位機,利用攝像頭對機器人的自身位置和外部環(huán)境進行分析,建立環(huán)境地圖,進行路徑規(guī)劃。上位機發(fā)送運動控制指令給移動機器人的底層控制系統(tǒng),提供左右驅動電機的理論速度值。以ARM和CPLD為核心的機器人控制系統(tǒng)與上位機通過無線收發(fā)模塊實現(xiàn)通訊,根據(jù)上位機的命令控制電機的運行和超聲渡傳感器組的發(fā)送與接收;并根據(jù)障礙物信息,做出避障決策。智能移動機器人的控制系統(tǒng)結構框圖如圖1所示。
3 控制系統(tǒng)硬件設計
3.1 主控模塊設計
該智能輪式移動機器人控制系統(tǒng)的核心控制器采用Samsung公司的S3C44B0X,它是基于ARM7TDMI核(適用于實時環(huán)境)的32位微處理器,具有高速運算能力、A/D轉換器、豐富的I/O端口和中斷,有利于實現(xiàn)移動機器人的電機控制、傳感器信息處理、外部通訊以及復雜的控制算法。系統(tǒng)采用CPLD作為協(xié)處理器,提供可編程脈沖產(chǎn)生電路、光電編碼器輸入電路、超聲波傳感器輸入電路,這里選擇ALTERA公司的MAXⅡ系列EPM1270器件。該系統(tǒng)設計充分利用了CPLD的高速邏輯處理能力,主控制器ARM只需設定控制參數(shù),這樣就減輕主控制器的負擔,提高系統(tǒng)的實時性,同時也減少了外圍硬件電路,提高控制系統(tǒng)的穩(wěn)定性和可重構性。
ARM與CPLD通過并行總線連接,該并行總線包括ARM器件的地址、數(shù)據(jù)、控制和多路可編程I/O總線。ARM通過訪問特定地址和I/O端口來控制CPLD,CPLD則通過可編程I/O端口向ARM發(fā)送中斷請求。
3.2 電機控制和驅動模塊的設計
輪式移動機器人的兩個驅動輪速度分別由兩臺驅動電機控制,實現(xiàn)機器人不同方向和速度的運動。輪式移動機器人的性能要求電機轉矩大,脈動小。在高、中、低速下驅動電機均有良好的性能,且控制方式簡單,因此驅動電機選用方波驅動的交流永磁同步電機。這種電機根據(jù)轉子位置反饋信息采用電子換相運行,電機轉速與驅動信號的頻率成正比,既具備交流電機結構簡單,運行可靠,維護方便等優(yōu)點,又具有直流電機動態(tài)特性好,調速性能優(yōu)良的優(yōu)點。
系統(tǒng)通過CPLD和外部驅動器件構成控制電路,采用方波驅動和定位控制(通電狀態(tài)控制)的方式,控制兩臺永磁同步電機,獲得可調的精確速度和位置控制,結構緊湊。兩路電機控制原理相同,這里只介紹一路。
CPLD中的電機控制電路由分頻電路、調速電路、相序分配電路組成。其中,分頻電路由分頻器構成;調速電路是利用MAX+PLUSⅡ的LPM宏單元庫的算術運算模塊lpm_counter構成可預置數(shù)的5位減計數(shù)器。根據(jù)所需的速度,設置預置數(shù),計數(shù)器對分頻電路輸山的clk脈沖信號減計數(shù)至零時輸出一個借位脈沖,并再次裝入預置數(shù)進行減計數(shù),將其借位脈沖cout作為調速電路的輸出脈沖,cout借位脈沖的頻率范圍為fclk/1- fclk/31,即引入了步長為1的調速因子(預置數(shù))。可通過改變調速因子對脈沖信號進行1~31倍的連續(xù)可調分頻,從而調節(jié)電機的轉速;而相序分配電路是以cout借位脈沖作為輸入,利用兩個D觸發(fā)器和門電路輸出4路相位相差90°的方波脈沖,作為兩相同步電機的控制信號;stop信號控制電機的啟停;dir信號控制電機的轉向,正轉時相電壓uCD超前uAB 90°,反轉時uAB超前uCD90°,各相信號的頻率為cout脈沖頻率的1/4。CPLD中輸入的調速和相序分配電路原理見圖2。仿真結果驗證了設計邏輯的正確性,如圖3所示。