掃地機器人原理及實現(xiàn)(共7頁)
精選優(yōu)質(zhì)文檔-傾情為你奉上掃地機器人結構及控制系統(tǒng)設計自動清掃機器人是當今服務機器人領域一個熱門的研究方向。從理論和技術上講,自動清掃機器人比較具體地體現(xiàn)了移動機器人的多項關鍵技術,具有較強的代表性,從市場前景角度講,自動清掃機器人將大大降低勞動強度、提高勞動效率,適用于賓館、酒店、圖書館、辦公場所和大眾家庭。因此開發(fā)自動清掃機器人既具有科研上的挑戰(zhàn)性又具有廣闊的市場前景。家用智能清掃機,包括計算機、傳感器、電機與動力傳動機構、電源、吸塵器、電源開關、操作電位計等,在清掃機的頂部共設有三個超聲波距離傳感器;清掃機底部前方邊沿安裝有5個接近開關,接近開關與超聲波距離傳感器一起,構成清掃機測距系統(tǒng);清掃機裝有兩臺直流電機;在清掃機的底部安裝有吸塵器機構。自動清掃機器人的功能是自動完成房間空曠地面尤其是家居空曠地面的清掃除塵任務,打掃前,要把房間里的物體緊靠四周墻壁,騰出空曠地面。清掃機完成的主要功能:能自動走遍所以可進入的房間,可以自動清掃吸塵,可在遙控和手控狀態(tài)下清掃吸塵。本文所介紹的自動清掃機器人的總體布局方案如圖1所示,前后兩輪為萬向輪,左右兩輪為驅(qū)動輪。驅(qū)動輪設計采用兩輪獨立且各由兩臺步進電動機驅(qū)動的轉(zhuǎn)向方式,通過控制左右兩輪的速度差來實現(xiàn)轉(zhuǎn)向??紤]到機器人實際應用的實用性,本驅(qū)動系統(tǒng)設計成一個獨立的可方便替換的模塊,當機器人驅(qū)動系統(tǒng)發(fā)生故障時,只需簡單步驟就可以對驅(qū)動部分進行替換。同時為了機器人能夠靈活的運動,從動輪選用萬向輪。下圖為自動清掃機的三維立體圖:自動清掃機器人車箱體采用框架式結構。從下至上分隔成三個空間:第一層裝配各運動部件的驅(qū)動電機、傳動機構;第二層為垃圾存儲空間;第三層裝配機器人控制系統(tǒng)、接線板、電源電池、開關等。自動清掃機器人控制系統(tǒng)硬件主要是以單片機AT89C51作為核心,輔助其外圍電路、電機驅(qū)動電路、傳感器檢測電路以及紅外遙控電路等,各模塊在單片機的控制下,相互協(xié)調(diào)工作,保證自動清掃機器人各種功能的實現(xiàn)。該控制系統(tǒng)框圖如圖2所示。傳感器在清掃機器人上的布置如圖下所示,圖中紅色的圓點代表六個紅外傳感器的位置。下圖為清掃機的硬件系統(tǒng):步進電機作為執(zhí)行元件,廣泛應用于各種自動化設備中。步進電機和普通電動機不同之處在于它是一種可以將電脈沖信號轉(zhuǎn)化為角位移的執(zhí)行機構,工作中傳遞轉(zhuǎn)矩的同時還可以控制角位移或速度。本研究中采用兩臺步進電機分別驅(qū)動兩個驅(qū)動輪,通過通電方式的不同使自動清掃機器人的行走機構達到前進、后退、左轉(zhuǎn)、右轉(zhuǎn)的運動姿態(tài)。自動清掃機器人的吸塵器則采用直流電機(H橋式電路)驅(qū)動。下圖為步進電機驅(qū)動電路:采用以AT89C51單片機為核心的紅外接收電路和步進電機驅(qū)動電路。紅外遙控器發(fā)射不同的碼值來控制步進電機的正轉(zhuǎn)、反轉(zhuǎn)、加速減速以及啟動停止。單片機通過對紅外信號的解碼來實現(xiàn)步進電機的變速。紅外發(fā)射器原理圖如下所示:設計行走功能模塊程序設計系統(tǒng)選用了圖 3所示的行走方案。程序設計時要考慮:吸塵器在外圈行走時, 為了避免接近開關中斷對程序運行的干擾, 應對接近開關的中斷處 理程序做 相應處理。由于吸塵器兩動力輪的中心與車體中心不重合, 故采用以一輪為中心的旋轉(zhuǎn)方式并通過檢測轉(zhuǎn)彎標志位 ( 1或 0)來判斷轉(zhuǎn)向。在墻角轉(zhuǎn)彎時處,根據(jù)吸塵器外形的幾何尺寸計算吸塵器遇墻停止后, 后退再轉(zhuǎn)彎的時間。吸塵器內(nèi)圈行走時的轉(zhuǎn)彎依靠轉(zhuǎn)彎設定值實現(xiàn)。當超聲波傳感器 1的值小于等于設定值時, 吸塵器轉(zhuǎn)彎??紤]到超聲波傳感器的最小量程為 0. 5 m, 第一圈內(nèi)圈行走的轉(zhuǎn)彎設定值設定為 50 cm, 以后每圈的轉(zhuǎn)彎設定值遞增 30 cm。吸塵器單向行駛至轉(zhuǎn)彎結束的過程稱為一次單向清掃過程。若某次單向行駛結束后檢測到超聲波傳感器 1的值小于轉(zhuǎn)彎設定值, 則吸塵器原地再次轉(zhuǎn)彎, 然后前進至墻停止, 整個房間清掃完畢。設計躲避障礙物功能模塊程序設計避障總規(guī)則: 利用超聲波實測值與已測得的房間長 (寬 )值的比較, 判斷某次單向清掃途中是否有障礙物。若有障礙物: 行走時若為左轉(zhuǎn), 采用左避讓規(guī)則; 行走時若為右轉(zhuǎn), 采用右避讓規(guī)則。障礙物避開后按行走規(guī)則繼續(xù)行進; 若無障礙物: 按行走規(guī)則繼續(xù)行進, 在轉(zhuǎn)彎前應判斷是否有足夠的空間供機器人吸塵器轉(zhuǎn)彎。若吸塵器可以轉(zhuǎn)彎, 則轉(zhuǎn)彎, 本次單向清掃完畢; 若吸塵器不能轉(zhuǎn)彎, 說明下次單向清掃起始點處有障礙物, 后退,避開障礙物后再轉(zhuǎn)彎, 前進至通過障礙物邊線后, 本次單向清掃完畢。避障功能是在行走功能基礎上實現(xiàn)的, 分為內(nèi)圈避障程序設計和外圈程序設計。清掃完畢的判斷方案: 用外圈行走結束后清掃區(qū)域的精確長、寬值與內(nèi)圈行走軌跡寬度 30 cm相除, 商即為長、寬方向上各自所需的單向清掃次數(shù), 有余數(shù)則說明還有一塊寬度小于30cm 的矩形區(qū)域需要清掃。在執(zhí)行內(nèi)圈避障時, 只要長或?qū)捜我夥较蛏系膯蜗蚯鍜叽螖?shù)達到所需的次數(shù), 即認為清掃完畢, 剩余矩形區(qū)域的清掃在終止模塊中完成。車體姿態(tài)調(diào)整功能模塊程序設計,為保證車體運行時不偏離軌道, 采用陀螺儀傳感器監(jiān)視車體運動狀況。當車體偏移量達到一定值時, 通過控制行進方式調(diào)整車體姿態(tài)。當車體偏轉(zhuǎn)角度大于 10%時, 開始調(diào)整車體姿態(tài)。首先判斷車體偏轉(zhuǎn)的方向并記錄車體偏轉(zhuǎn)角度。為使車體能最大限度地回到原位置, 采用一個動力輪不動, 另一動力輪倒轉(zhuǎn)的方式實現(xiàn)車體姿態(tài)調(diào)整。使用該方案調(diào)整車體位置后, 車體并不一定能恰好回到原位置, 但誤差已經(jīng)很小, 可以滿足系統(tǒng)設計要求。車體姿態(tài)調(diào)整程序流程如圖所示。主控程序是吸塵器工作的主體邏輯。在主控程序中需要完成DSP的初始化設置, 考慮各功能模塊間的邏輯關系, 實現(xiàn)對各子程序的調(diào)用, 并要充分考慮到各級中斷信號對程序運行的影響, 做出正確的處理、協(xié)調(diào)。主控程序流程如圖所示。用戶操作鍵盤時接近開關可能會工作, 這有可能導致程序運行出錯, 故DSP需在程序最開始首先屏蔽所有中斷。鍵盤的檢測由單片機實現(xiàn), 用戶若想通過鍵盤設定吸塵器工作方式, 則必須在開機后20 s內(nèi)開始操作, 該20 s的延時由DSP提供, 20 s后若無鍵按下, 則認為用戶未設定吸塵器工作狀態(tài), 系統(tǒng)按自動方式開始工作; 20 s后若有鍵按下, 則將等待用戶輸入完畢后,按照用戶設定要求工作。系統(tǒng)初始化程序設計,系統(tǒng)的初始化程序是系統(tǒng)各功能實現(xiàn)的前提。給狀態(tài)寄存器賦值, 保證子程序調(diào)用或進入中斷時實現(xiàn)CPU 各種狀態(tài)的保存; 數(shù)據(jù)存儲區(qū)配置; 輸出口的選擇及功能設定; 中斷的相關寄存器處理; 累加器的溢出方式選擇及系統(tǒng)的時鐘頻率的選定等功能都在初始化程序中實現(xiàn)。系統(tǒng)中斷處理,系統(tǒng)設計中共有4路中斷信號需要處理, 其中8路接近開關和4路超聲波傳感器共用優(yōu)先級為1級的外部中斷X INT1;兩個事件管理模塊EVA和EVB在產(chǎn)生PWM 波形時用到了優(yōu)先級為2級的定時器1和定時器3的周期中斷; 此外, 陀螺儀的測量值經(jīng)ADC 轉(zhuǎn)換時用到了中斷優(yōu)先級為6級的ADC 中斷。外部中斷X INT1的處理,由于8路接近開關和超聲波傳感器共用XINT1中斷, 故在響應該中斷時應首先判斷是哪個外部設備產(chǎn)生的中斷請求, 然后進行相應的處理。若為接近開關中斷, 單片機向雙口RAM8040h單元寫0, 若為超聲波中斷則寫1, DSP通過讀8040h單元內(nèi)容來判斷是哪個外設產(chǎn)生的中斷:若為超聲波傳感器發(fā)出的中斷, 在其中斷服務程序中只需重新開中斷即可( 這是因為進入中斷服務程序時, 系統(tǒng)自動關閉中斷);若為接近開關中斷, 需判斷該接近開關是否工作。工作時, 則在中斷服務程序中還要執(zhí)行停止程序, 否則只需開中斷即可。是第幾個接近開關工作, 單片機就在雙口RAM 8033h單元中寫幾, 若同時有多個接近開關工作, 則單片機從8033 單元的最低位起將其序號依次寫入。DSP 只需依照此規(guī)則便可根據(jù)8033h單元內(nèi)容判斷是哪個接近開關工作。ADC中斷處理,吸塵器在測距模塊中車體旋轉(zhuǎn)180。, 左、右轉(zhuǎn)及姿態(tài)調(diào)整的過程中都會響應ADC 中斷, 故在執(zhí)行上述功能的程序時分別向012Eh單元寫0、1、2、3, 功能實現(xiàn)后再向012Eh單元寫4, 這樣, 響應中斷時便可在中斷服務程序中通過查詢012Eh單元的內(nèi)容來判斷車體的運動情況, 從而執(zhí)行不同的服務程序。定時器周期中斷處理,定時器周期中斷的處理相對簡單, 只需在中斷服務程序中將計數(shù)器1和計數(shù)器3重新設置計數(shù)初值并開中斷即可。結束語:掃地機器人控制系統(tǒng)主控及主要功能模塊程序的調(diào)試和仿真表明, 主控模塊通過對各子程序的調(diào)用, 按一定時序完成了對吸塵器的控制, 各主要功能模塊滿足設計要求。如避障模塊通過對采集到的超聲波信號和接近開關信號的判斷和處理, 很好地完成了對障礙物的自動感知和自主躲避; 步進電機及吸塵電機控制精度較高等。專心-專注-專業(yè)