基于Stm32 掃地機器人的控制系統(tǒng)設計含3張CAD圖
基于Stm32 掃地機器人的控制系統(tǒng)設計含3張CAD圖,基于Stm32,掃地機器人的控制系統(tǒng)設計含3張CAD圖,基于,Stm32,掃地,機器人,控制系統(tǒng),設計,CAD
1.研究意義: 隨著科學技術的發(fā)展,人工智能方面的研究引起了人們大量的關注,與此同時智能機器人的研究也越來越受到人們的重視,其中智能掃地機器人正逐步進入人們的日常生活。進入21世紀,隨著國內生活水平的提高及生活節(jié)奏的加快,原本只存在于歐美市場. 上的智能掃地機器人開始涌入國內,并逐漸地被人們所接受;可以預見,智能掃地機器人將會像普通家電一樣成為每個家庭必備的幫手,產(chǎn)品也會向著更加智能化發(fā)展,甚至會在不久的將來逐步地取代人工清潔。在智能掃地機器人步入各種應用場所的同時,對其性價比,使用便捷性,可靠性等都
提出了新的要求,因此設計一款符合理論又能迎合市場要求的智能掃地機器人具有重大的意義。
2.基本內容: 基于 STM32F103ZET6 芯片搭建掃地機器人控制系統(tǒng),利用超聲波、紅外等多種傳感器采集信息,通過驅動電路驅動電機,使掃地機器人實現(xiàn)清掃作業(yè)。
在研究和分析現(xiàn)有掃地機器人路徑規(guī)劃算法的基礎上,提出一種穩(wěn)定可靠的路徑規(guī)劃算法,并測試效果。
對系統(tǒng)硬件如 MPU-6050、超聲波、驅動模塊進行硬件驅動設計。軟件實現(xiàn) PID 控制算法并調試。
3.重點和難點及解決方法: 重點和難點
掃地機需要在房間不同的位置清掃,不同位置的障礙物顏色和光照強度不同,會導致紅外傳感器檢測的距離不準從而使掃地機不能正確躲避障礙物。
解決辦法:
使用接觸式開關電路來彌補紅外傳感器探測障礙物時的不足,掃地機的左上角和右上角各裝有一個朝前的紅外傳感器用來檢測距離,前面邊沿處裝有接觸式開關電路。當掃地機執(zhí)行清掃任務時,如果紅外傳感器檢測的距離不在主控制器設置的范圍內,這時主控制器以接觸式開關電路采集的信息為主,響應控制方案,輸出執(zhí)行信息給執(zhí)行系統(tǒng)完成準確避障。掃地機上的紅外傳感器還能分辨出掃地機是沿墻清掃還是探地清掃,探地清掃的速度比沿墻清掃的速度快,從而減少掃地機的電量消耗。按鍵電路用來預設清掃時間。
4.提綱: 第一章 緒論
1.1 研究背景及意義
1.2國內外發(fā)展現(xiàn)狀
1.3 論文研究的主要內容
1.4論文章節(jié)安排
第2章系統(tǒng)總體方案
2.1路徑規(guī)劃的衡量標準及意義
2.2常用的路徑規(guī)劃方案
2.3路徑規(guī)劃方案探討
2.4避障方法
2.5系統(tǒng)硬件體系
2.6系統(tǒng)軟件體系
第3章系統(tǒng)硬件組成
3.1主控模塊系統(tǒng)
3.2信息采集系統(tǒng)
3.2.1外部信息采集
3.2.2自身狀態(tài)信息采集
3.2.3運動信息采集
3.3執(zhí)行系統(tǒng)
3.3.1電機驅動電路
3.3.2穩(wěn)壓電路
第4章系統(tǒng)軟件設計
4.1信息采集系統(tǒng)程序設計
4.1.1超聲波驅動程序
4.1.2陀螺儀及加速度計驅動程序
4.1.3光電編碼驅動程序
4.2信息整合與路徑優(yōu)化
4.2.1柵格地圖信息的建立
4.2.2地圖信息的整合與路徑的優(yōu)化
4.3任務執(zhí)行系統(tǒng)
4.3.1電機驅動程序
4.3.2清掃任務主程序
1前言
隨著人口老齡化的到來和人民對提升生活品質的需要人們對在現(xiàn)實生活場景中取代人力的服務機器人有著迫切的需要。,同時機電,自動控制、計算機、傳感器等技術的發(fā)展也為制造服務機器人提供了技術支持。掃地機器人是服務機器人中技術最成熟和最為廣泛使用的機器人,。它可以自動的在室內行走通過刷掃和吸塵將地面上的碎屑吸收進垃圾收集裝置中完成清潔地面的任務。有效的減少了人們清潔地面這種簡單重復的家務勞動,節(jié)約了勞動力,提高了生活品質。對于許多忙于工作和生活的人來說,掃地機器人已經(jīng)成為家庭必備的產(chǎn)品。
近年來我國掃地機器人銷售量猛增,。有數(shù)據(jù)顯示,國內掃地機器人市場近五年的零售量綜合增長速度已經(jīng)超過50%。截至2017年底,國內掃地機器人市場總零售量332.5萬臺,零售總額約44億元。對比其他清潔類家電產(chǎn)品,國內掃地機器人的普及率依然較低,具有龐大的市場需求和廣闊的發(fā)展?jié)摿Α?018年國內掃地機器人的市場總量達到53.8億元,零售總量達到約435萬臺。眾多公司推出了結構各異、種類繁多的掃地機器人產(chǎn)品,。掃地機器人系統(tǒng)通常由四個部分組成,移動機構,傳感系統(tǒng),控制系統(tǒng)和真空吸塵系統(tǒng)。對于工作環(huán)境不確定的掃地機器人而言,感知系統(tǒng)和控制系統(tǒng)是提高產(chǎn)品自動化水平的關鍵。,目前,在掃地機器人控制技術方面,傳統(tǒng)的隨機碰撞模式使用紅外線避障,像無頭蒼蠅一樣到處亂撞,覆蓋率低、重復清掃,低下的效率已經(jīng)不能滿足人們的需要。掃地機器人的路徑規(guī)劃根據(jù)機器人所感知到的工作環(huán)境信息,按照某種優(yōu)化指標,在起始點和目標點規(guī)劃出一條與環(huán)境障礙無碰撞的路徑。并且實現(xiàn)所需清掃區(qū)域的合理完全路徑覆蓋,。根據(jù)掃地機器人對環(huán)境信息掌握程度的不同,可以分為兩種類型:全局路徑規(guī)劃,環(huán)境信息完全知道,局部路徑規(guī)劃,環(huán)境信息完全未知或部分未知,通過傳感器實時地對機器人的周邊環(huán)境進行探測,以獲取障礙物的位置、形狀和大小等信息。
2國內外現(xiàn)狀及發(fā)展趨勢
2.1國外研究現(xiàn)狀及發(fā)展趨勢
掃地機器人的誕生最早可以追溯到2001年,瑞士家電品牌伊萊克斯制造了一臺名叫“三葉蟲”的掃地機器人。三葉蟲通過超聲波躲避障礙,超聲波仿生技術最大的特點在于它可以使掃地機器人很好的規(guī)避障礙物,能夠在沒有光線的情況下行走同時成本高昂。Roomba由iRobot公司于2002年9月發(fā)布,是掃地機器人發(fā)展歷史上的一個里程碑。,Roomba主要適用于木質地板、瓷磚地面、防水地毯和中短毛的地毯,有S、M、,L三種模式,分別對應小、,中、大三種清掃面積。,Roomba以螺旋狀運動并逐漸擴大螺旋半徑的方式來覆蓋整個室內空間,一旦遇到墻壁或其他大型障礙物阻礙時,其特殊的障礙物感應調節(jié)器就會抵住墻面保護機身不受損害,同時沿著墻壁開始清掃。當一部分空間清潔完畢后,Roomba會轉過90°以相同的方式清潔房間的其他區(qū)域,通過分區(qū)域的螺旋清掃完成對整個房間的清潔,Roomba清潔能力強而且價格便宜具有較高的性價比在市場上受到歡迎。Roomba掃地機器人iRobot公司將獲得專利的vSLAM視覺運算處理技術應用在新一代旗艦產(chǎn)品Roomba,980掃地機器人上,。并應用了多種模式自動智能適應技術,頂部一個斜向上的視覺傳感器獲取圖像信息,通過對圖像信息的處理創(chuàng)建地標,通過地標實現(xiàn)機器人的定位和導航,機器人可以清楚了解已清潔和未清潔區(qū)域,結合地圖進行智能路徑規(guī)劃提高清潔效率。視覺導航系統(tǒng)能夠獲取豐富的環(huán)境信息,可以獲得較好的定位、構圖效果但在光線不足的情況下,效果不佳。因此Roomba,980掃地機器人使用了多傳感器融合技術,具有三重傳感系統(tǒng),Wheel,Odometry,,輪胎里程計,Optical,F(xiàn)loat,Sensor,,光學移動傳感器和vSLAM視覺運算處理技術。各傳感器信息相互補充和校正,使Roomba,980掃地機器人即使是在光線不足,或者單個傳感系統(tǒng)不適用時,仍能夠較為精確的獲取環(huán)境信息,從而進行定位和導航,具有較強的環(huán)境適應能力。在路徑規(guī)劃技術上,和其它的Roomba掃地機器人一樣,Roomba,980掃地機器人使用了iAdapt情景規(guī)劃算法,具備多重模式的自動智能切換能力。通過多種傳感器獲取的環(huán)境信息和先進的智能算法,超過60次每秒的決策,使掃地機器人能夠實時的針對不同的室內環(huán)境采取相適應的清潔模式。獲得較高的覆蓋率和良好的清潔效果,清掃徹底。
Roomba,980掃地機器人主要的清潔模式有四種,邊角清潔模式、脫困模式、防纏繞模式和重復清掃模式。邊角清潔模式,掃地機器人沿墻邊角運動,特殊設計的邊刷能夠對墻壁邊緣和角落進行無死角清掃。脫困模式,主要應對狹窄復雜環(huán)境中尋找出口,在確保不被困住的同時完成清掃任務。防纏繞模式,在遇到線纜的情況下,特殊設計的主刷將反向旋轉以避免纏繞。重復清掃模式,通過進階版Dirt,Detect污垢探測程序,自動檢測地面是否清理干凈,對未清潔干凈區(qū)域進行小范圍的重復清掃。
為了提高清潔效率,Roomba,980掃地機器人搭載了改進版的三重高效清潔系統(tǒng),功率也進行了提升。清潔系統(tǒng)可以靈活的調節(jié)自身的高度,保證與不同地面環(huán)境的良好接觸,最大限度的提高清潔效果。邊刷可以反向旋轉,攪動并掃起粘附在地面上的碎屑,通過真空吸塵裝置將它直接吸入垃圾收集盒,對毛發(fā)較多的家居環(huán)境也可以達到良好的清潔效果。
為了使用戶對方便的對掃地機器人進行控制和掌握清掃情況,Roomba,980掃地機器人配置了WIFI模塊,用戶可以通過安裝了iRobot,HOME應用程序的手機、平板電腦等設備與掃地機器人連接,通過應用程序可以進行預約、啟動、暫停和取消清掃任務等操作。,iRobot,HOME應用程序還可以為用戶以地圖形式提供清掃后任務情況報告,清楚的顯示清潔區(qū)域的面積、清潔時間等信息,用戶可以方便的按照自己的需要定制個性化的清掃方案,清掃任務存儲能夠多達30個。
為了將掃地機器人限定在特定的區(qū)域內,Roomba,980采用虛擬墻設計,在不想讓掃地機器人到達的區(qū)域設置虛擬墻,掃地機器人遇到虛擬墻后即轉向。虛擬墻既可以單獨使用也可以組合使用。在家中有易碎品,門口等區(qū)域設置虛擬墻,可以有效的防止掃地機器人碰撞和離開清潔區(qū)域。
Roomba,980掃地機器人具有斷點續(xù)掃和自動回充功能,當在清潔任務中途出現(xiàn)電量不足時,掃地機器人將記憶當前位置坐標,返回充電樁進行充電,充電完畢后回到原位置繼續(xù)進行清掃。可以有效的防止重復清掃,提高清潔效率,延長掃地機器人使用壽命。
2.2國內研究現(xiàn)狀及發(fā)展趨勢
浙江大學的朱世強教授及其團隊成功研制了我國第一臺能夠自主進行地面清掃工作的機器人,該掃地機器人直徑為35厘米、高為10厘米。在長5.5米、寬3.5米的模擬環(huán)境中,10分鐘時間便可以覆蓋90%以上的區(qū)域。掃地機器人開機后,通過搭載的超聲波傳感器,探索墻壁并沿著墻角行走以獲取環(huán)境信息。隨后采取局部覆蓋和隨機清掃相結合的清掃策略對地面進行清掃,能夠實現(xiàn)較高的覆蓋率。該掃地機器人具有自動回充功能,在完成清掃任務后可以自動返回充電樁進行充電。目前,該掃地機器人已經(jīng)發(fā)展了四代樣機,無論是環(huán)境適應性還是智能化水平都有較大的提高。
科沃斯公司2018年發(fā)布的年度高端旗艦機型地寶DN55,具備較強的清潔能力和較高的智能化水平。地寶DN55采用激光SLAM技術,在機身頂端安裝有激光雷達,激光雷達高速旋轉以獲取周邊障礙物的點云數(shù)據(jù),結合SLAM算法實現(xiàn)定位和構建環(huán)境地圖。地寶DN55搭載了Smart,Navi,2.0全局規(guī)劃系統(tǒng),具備地圖存儲和更新功能。在第一次使用后自動將地圖信息進行存儲,下次使用時無需重新構建地圖,在環(huán)境信息發(fā)生改變時,可以自動更新地圖。用戶可以通過移動智能終端安裝應用程序連接掃地機器人,實時的查看構圖和清潔任務完成情況。除此之外,還可以進行設置虛擬墻、選區(qū)清掃等操作。地寶DN55會依據(jù)地圖信息對清掃區(qū)域進行自動分區(qū),用戶可以通過應用程序自主選擇清掃區(qū)域。在客廳或房間有人活動、休息時,可以讓掃地機器人清潔其他區(qū)域,可以有效的避免噪音影響。用戶可以在應用程序生成的地圖上設置虛擬墻,在門口、貴重易碎物品處劃線,掃地機器人便會自動的進行規(guī)避。地寶DN55具有自動回充功能,在電量不足時可以自動尋找充電樁并進行充電。
3總結
隨著技術的進步,掃地機器人的智能化水平越來越高,人們對掃地機器人的需求也越來越迫切,但高昂的價格成為掃地機器人普及的障礙, iRobot公司Roomba 980售價為8899元, 國產(chǎn)的科沃斯地寶DN55也達到了2499元的售價。決定掃地機器人的成本主要在于路徑規(guī)劃和導航方式,激光和視覺導航對傳感器、微處理器的性能要求高,導致整體價格居高不下。而傳統(tǒng)的隨機清掃方式性能差,越來越難以滿足用戶需要。本論文在研究國內外掃地機器人發(fā)展趨勢與研究的基礎上,提出一種低成本、可靠性好的掃地機器人路徑規(guī)劃算法。
主要研究內容如下
1、基于STM32F103ZET6芯片搭建掃地機器人控制系統(tǒng),利用超聲波、紅外等多種傳感器采集信息,通過驅動電路驅動電機,使掃地機器人實現(xiàn)清掃作業(yè)。
2、在研究和分析現(xiàn)有掃地機器人路徑規(guī)劃算法的基礎上,提出一種穩(wěn)定可靠的路徑規(guī)劃算法,并測試效果。
3、對系統(tǒng)硬件如MPU-6050、超聲波、驅動模塊進行硬件驅動設計。軟件實現(xiàn)PID控制算法并調試。
參考文獻
[1]傅一元掃地機器人:它們正在發(fā)展,它們正在壯大[J].電器,2017年10期: 32-34. .
[2]柴劍.智能掃地機器人技術的研究與實現(xiàn)[D].西安電子科技大學.2013. 12.
[3] 萬軍,張郭,楊代強.基于STM32的智能掃地機器人避障系統(tǒng)設計的研究[J].中國高
新區(qū),2017 年13期: 22.
[4]徐勝華.基于STM32的智能掃地機器人研究與設計[D].廣西師范大學.2016. 04.
[5]Dying.從“小”入手智能家電嘗鮮[J] . 電腦迷,2014 年16期:60-61.
[6]齊開陽.科沃斯,做對用戶有用的機器人[J].機器人產(chǎn)業(yè),2017 年5期:68-72.
[7]蔡月日.”技術"方為掃地機器人的"王道"[J].機器人產(chǎn)業(yè), 2016年6期:52-57
[8]石海娥.掃地機器人市場潛力加速釋放[J].光采,2018 年06期: 44-46.
[9]孫曉雪,趙玉山.掃地機器人的發(fā)展現(xiàn)狀和趨勢研究[J].科技資訊,2017,NO. 28:
238 - 239.
[10]王中民,劉家燕,岳紅.“移動機器人自主導航技術研究調查”[J]. 天津科技大學學
報,2004年, 第14卷: 11-15.
要求及原始數(shù)據(jù)(資料):
隨著科學技術的發(fā)展,人工智能方面的研究引起了人們大量的關注,與此同時智能機器人的研究也越來越受到人們的重視,其中智能掃地機器人正逐步進入人們的日常生活。進入21世紀,隨著國內生活水平的提高及生活節(jié)奏的加快,原本只存在于歐美市場上的智能掃地機器人開始涌入國內,并逐漸地被人們所接受;可以預見,智能掃地機器人將會像普通家電一樣成為每個家庭必備的幫手,產(chǎn)品也會向著更加智能化發(fā)展,甚至會在不久的將來逐步地取代人工清潔。在智能掃地機器人步入各種應用場所的同時,對其性價比,使用便捷性,可靠性等都提出了新的要求,因此設計一款符合理論又能迎合市場要求的智能掃地機器人具有重大的意義。
基于?STM32F103ZET6?芯片搭建掃地機器人控制系統(tǒng),利用超聲波、紅外等多種傳感器采集信息,通過驅動電路驅動電機,使掃地機器人實現(xiàn)清掃作業(yè)。
在研究和分析現(xiàn)有掃地機器人路徑規(guī)劃算法的基礎上,提出一種穩(wěn)定可靠的路徑規(guī)劃算法,并測試效果。
對系統(tǒng)硬件如?MPU-6050、超聲波、驅動模塊進行硬件驅動設計。軟件實現(xiàn)?PID?控制算法并調試。
畢業(yè)設計(論文)主要內容: 1、設計圖樣要求:
設計原理正確,運用相關標準、查閱相關手冊,正確處理好圖、數(shù)字、符號、標準等的關系,圖樣完整準確??傮w設計完整、圖紙表達清晰、標注采用國家最新標準;完成整機裝配圖紙設計,保證結構方案確定最優(yōu)化;完成控制系統(tǒng)設計;完成零件圖設計。
2、畢業(yè)設計說明書:
設計依據(jù)可靠,參數(shù)選用合理,計算準確,內容完整,中英文摘要與科技論文必須做到準確無誤。對主要系統(tǒng)方案進行比較和選擇、并可行性論證。對主要的系統(tǒng)進行控制的計算,可行性的校核。
畢業(yè)設計說明書參考文獻15篇以上,原則上所涉及的參考文獻論文資料為近5年出版發(fā)表。
學生應交出的設計文件(論文):
設計成果要求:提交紙質資料(打印和部分手工繪制圖紙)和電子文檔資料。圖紙使用AutoCAD軟件繪制,文件為*.dwg格式。設計說明書資料為*.doc格式。
1、畢業(yè)設計(論文)開題報告。
2、畢業(yè)設計說明書1份,字數(shù)2-2.5萬字。按《山西能源學院本科畢業(yè)設計(論文)撰寫規(guī)范》執(zhí)行。
3、圖紙:
(1) 機器人總裝配圖(A0號)1張;
(2) 控制系統(tǒng)原理圖(A1號)1張;
(3) 傳感器零件圖(A3號)不少于2張;
4、文獻綜述&外文翻譯:按《山西能源學院本科畢業(yè)設計(論文)撰寫規(guī)范》執(zhí)行。
(1)?文獻綜述:字數(shù)不少于3000字;
(2)?外文翻譯:外文翻譯必須與畢業(yè)設計課題相關,字數(shù)不少于5000字,并標明文章出處。
主要參考文獻(資料): [1]傅一元.掃地機器人:它們正在發(fā)展,它們正在壯大[J].電器,2017年10期: 32-34. .
[2]柴劍.智能掃地機器人技術的研究與實現(xiàn)[D].西安電子科技大學.2013. 12.
[3] 萬軍,張郭,楊代強.基于STM32的智能掃地機器人避障系統(tǒng)設計的研究[J].中國高
新區(qū),2017 年13期: 22.
[4]徐勝華.基于STM32的智能掃地機器人研究與設計[D].廣西師范大學.2016. 04.
[5]Dying.從“小”入手智能家電嘗鮮[J] . 電腦迷,2014 年16期:60-61.
[6]齊開陽.科沃斯,做對用戶有用的機器人[J].機器人產(chǎn)業(yè),2017 年5期:68-72.
[7]蔡月日.”技術"方為掃地機器人的"王道"[J].機器人產(chǎn)業(yè), 2016年6期:52-57
[8]石海娥.掃地機器人市場潛力加速釋放[J].光采,2018 年06期: 44-46.
[9]孫曉雪,趙玉山.掃地機器人的發(fā)展現(xiàn)狀和趨勢研究[J].科技資訊,2017,NO. 28:
238 - 239.
[10]王中民,劉家燕,岳紅.“移動機器人自主導航技術研究調查”[J]. 天津科技大學學
報,2004年, 第14卷: 11-15.
基于 Stm32 掃地機器人的控制系統(tǒng)系統(tǒng)設計
Control System Design of Sweeping Robot Based on stm32
摘 要
今天,隨著現(xiàn)代科學和技術的進步與發(fā)展,現(xiàn)代化的科學和技術正在改變我們日常生活中的各個方方面面。因為人們生活的巨大壓力,沒有時間打掃家務?;谝陨显蚩梢钥闯?,掃地機器人在我們的生活中是一個必不可少的物品。掃地機器人的作用是可以幫助我們減少日常繁雜的勞動,從而節(jié)省出大部分的時間去做其他事情,它可以有效的提高我們的生活質量。到目前為止,掃地機器人的相關技術已經(jīng)逐步成熟,并且具備廣闊的市場前景。清掃機器人的自動化控制是提高其智能化程度、降低生產(chǎn)費用的關鍵,并且具備重大的研究價值。本文先簡單介紹清掃工業(yè)機器人的研究發(fā)展背景、國內外的研究發(fā)展現(xiàn)狀和價值,之后,逐步講解了掃地機器人相關的自動化控制的技術。主控板采用 Stm32f103zet6 作為主控單元芯片、外置紅外傳感器、超聲波傳感器、MPU6050 陀螺儀等器件。本人完成了該掃地機器人的軟件和驅動程序,而且通過編寫相關的程序完成了 PID、PWM 控制和路徑規(guī)劃的算法。掃地機器人的外置紅外傳感器、超聲波傳感器可以從四周的環(huán)境中探測是否需要進行清掃,而且路徑規(guī)劃的算法可以通過對四周環(huán)境不同的變換來給該機器人規(guī)劃合適的路線,PID 實時輸入一個控制量來自動控制發(fā)電機的轉速,保證清掃機器人運轉的穩(wěn)定。最后,制作好了一個機器人樣機,并對 PID 參數(shù)做了調整。通過試驗驗證了自動化機器人監(jiān)測系統(tǒng)的設計合理。
關鍵詞:掃地機器人:PID 參數(shù):STM32 單片機:紅外傳感器
Abstract
Today, with the progress and development of modern science and technology, modern science and technology are changing every aspect of our daily life.The role of sweeping robot is to help us clean the ground, can help us reduce the daily complicated labor, so as to save most of the time to do other things, it can effectively improve the quality of our life. So far, the related technology of sweeping robot has gradually matured, and has a broad market prospect. The automatic control of cleaning robot is the key to improve its intelligence and reduce the production cost, and has great research value. This paper first briefly introduces the research and development background of industrial cleaning robot, the research and development status and value at home and abroad, and then gradually explains the automation control technology related to the sweeping robot. The main control board uses STM32F103ZET6 as the main control unit chip, external infrared sensor, ultrasonic sensor, MPU6050 gyroscope and other components. I completed the sweeping robot software and driver, and through the preparation of related programs to complete the PID, PWM control and path planning algorithm. Sweeping the robot's external infrared sensors, ultrasonic sensors can detect whether from the environment around the need to be clean, and path planning algorithm can through to the surrounding environment of different transformation plan the appropriate route to the robot, the real time input a control PID to automatically control the speed of the generator, ensure the stability of the cleaning robot. Finally, a robot prototype is made, and the PID parameters are adjusted. The design of the automatic robot monitoring system is verified by experiments.
Keywords:Sweeping robot: PID parameters: STM32 MCU: infrared sensor
IV
目 錄
摘 要 ........................................................ 3
1 緒論 ........................................................ 1
1.1 課題研究背景和意義 ...................................... 1
1.2 國內外研究現(xiàn)狀及發(fā)展趨勢................................ 2
1.4 掃地機器人的機械結構設計 ................................ 3
1.5 掃地機器人的單片機控制技術............................. 4
1.6 本文的主要研究內容 ...................................... 5
1.7 本章小結 ................................................ 6
第 2 章 硬件電路設計 .......................................... 7
2.2 電機 .................................................... 7
2.3 電機驅動 ................................................ 8
2.4 編碼器 .................................................. 9
2.5 控制核心.............................................. 11
2.6 外部信息采集.......................................... 12
2.7 MPU6050............................................... 13
2.8 ATK-ESP8266 WIFI 模塊................................. 14
2.9 程序下載電路模塊...................................... 15
2.10 電源管理模塊......................................... 17
2.11 本章小結............................................. 19
第 3 章 軟件設計 ............................................ 20
3.1 軟件系統(tǒng)框架.......................................... 20
3.2 傳感器數(shù)據(jù)讀取........................................ 20
3.2.1 超聲波傳感器數(shù)據(jù) ............................... 20
3.2.3 編碼器數(shù)據(jù)讀取.................................. 24
3.3 電機控制.............................................. 25
3.3.1 PID 控制器...................................... 25
3.3.2 PWM 輸出........................................ 27
3.4 數(shù)據(jù)發(fā)送.............................................. 28
3.4.1 子模式選擇...................................... 28
3.4.2 WIFI 模塊系統(tǒng)參數(shù)設置........................... 29
3.5 路徑規(guī)劃.............................................. 29
第 3.5.1 弓字型行走.................................... 30
3.5.2 覆蓋算法一...................................... 31
3.5.3 覆蓋算法二...................................... 32
3.5.4 結束算法......................................... 33
3.6 本章小結 ............................................... 33
第 4 章實驗與調試 ............................................. 34
4.1 PID 參數(shù)調試.......................................... 34
4.1.1 PID 參數(shù)的作用.................................. 34
4.1.2 PID 參數(shù)調試步驟................................ 35
4.2 巡航算法實驗.......................................... 35
4.3 算法 A 的測試......................................... 36
4.4 算法 B 的測試......................................... 37
4.5 綜合測試.............................................. 37
第 5 章 總結與展望 ........................................... 39
5.1 全文總結.............................................. 39
5.2 研究展望.............................................. 40
致 謝 ....................................................... 41
參考文獻 ..................................................... 42
1 緒論
1.1 課題研究背景和意義
今天,隨著現(xiàn)代科學和技術的進步與發(fā)展,現(xiàn)代化的科學和技術正在改變我們日常生活中的各個方方面面,人們對于生活質量的要求也越來越多,不想將過多的時間浪費在生活的瑣事上。所以目前為止,整個社會對于自動化的要求逐步增高,人們需要各種各樣的機器人來代替人類去服務生活。與此同時,機電工程、自動化及其控制、傳感器、計算機等也給為人類服務的全自動化機器人提供了應有的知識體系。在這些全自動化機器人中,掃地機器人出現(xiàn)的理念和時間都是最早的一批,它已經(jīng)擁有了足夠成熟的技術來為人類服務。掃地機器人的作用是在室內環(huán)境時,它可以自動檢測出地面上的垃圾,然后根據(jù)系統(tǒng)內的相關算法計算出路線,根據(jù)該路線,將地面上的垃圾、浮塵等污染物清掃進自帶的垃圾收納箱中,這樣就完成了地面的清掃工作,徹底的解放雙手,將時間應用到真正需要的地方。在近幾年來,掃地機器人的銷售額不斷的提升,它已經(jīng)逐漸的變成人們生活中的必需品,成為家庭生活中必不可少的生活助手。
根據(jù)相關的數(shù)據(jù)表明,在最近幾年之內中國有關掃地機器人方面的銷售額相對于前幾年來說在成倍的增長。于 2020 年截止前,中國市場上的掃地機器人的銷
售總額度已超過 569.7 萬臺,其零售總額已超過 89 億元。相比于別的家用清潔電器而言,在中國內的家用掃地機器人的普及率不足 7%,還沒有達到預想的結果。由此可以看出,在國內,掃地機器人的市場需求量仍然很大。而且,該機器屬于消耗品,所以其售后服務也應該跟上發(fā)展的腳步,這樣才能讓更多的消費者滿意, 從而達到宣傳商品的目的。在 2021 年度,國內的掃地機器人的市場規(guī)模巨大,銷
售了 765 萬臺,銷售額已經(jīng)達到了 102 億元。銷售規(guī)模增長了 20%。在 2020 年度, 掃地機器人的市場迎來了新的爆發(fā)點,這主要是由于疫情的催化作用,所以愈來愈多的企業(yè)開始研發(fā)各種各樣的相關產(chǎn)品。掃地機器人主要是由控制、移動、傳感系統(tǒng)以及真空吸塵的系統(tǒng)所構成的。由于需要掃地機器人的范圍不斷的增多,
9
所以傳感系統(tǒng)控制產(chǎn)品的系統(tǒng)還需要不斷的完善和改進,才能讓掃地機器人適應不同的環(huán)境,以便讓其更好的工作。
現(xiàn)在,對于掃地機器人而言,問題最大的便是感知系統(tǒng)。目前為止,市場上大部分的掃地機器人采用的仍然是最普通的最傳統(tǒng)的紅外線躲避障礙系統(tǒng),它在工作時,經(jīng)常會由于沒有檢測到障礙物而向無頭蒼蠅一樣到處亂碰,經(jīng)常會由于這個原因而需要檢修。而且,由于算法不夠成熟,所走的路線會出現(xiàn)部分重復而部分區(qū)域不能清掃。對于現(xiàn)在所要求的生活質量來說,它已經(jīng)不能滿足人們的所需,急需要改進算法來適應多變的環(huán)境。而且技術完善的掃地機器人就應該具有很強的應變能力,隨著清掃的面積大、清掃的效率提高、規(guī)劃的路線節(jié)約時間和電能等的需求。根據(jù)以上的要求,目前的機器人需要根據(jù)清掃面積的增大對路徑的規(guī)劃。以上兩種的不同之處在于前者是對于周遭的環(huán)境只能感知到部分,而后者是對于周遭的環(huán)境都可以完全的掌握,根據(jù)周圍的環(huán)境,比如所需要躲避的物體所處的位置、大小以及形狀等,設計出一條最近且最優(yōu)的路線,完美的路徑規(guī)劃的算法能夠提高掃地機器人的工作效率以及增大工作面積,所以該算法也是整個掃地機器人系統(tǒng)的核心所在,若實現(xiàn)了該種技術,便可以在在真正意義上幫助人類節(jié)約時間、解放雙手,從根源上提高人們的生活質量。
1.2 國內外研究現(xiàn)狀及發(fā)展趨勢
二十一世紀初期,國外一家名為 ILEX 的公司推出了一款智能三葉蟲機器人, 是什么導致了對掃地機器人概念的顛覆?這款名為“三葉蟲”的機器人是通過一個蛋糕外形的設計以及一個塑料外殼來清掃污染物。在一臺機器的控制下,下輪可以旋轉,因此,通過仿生技術,根據(jù)蝙蝠的超聲波技術,從 2003 年開始,iRobot 和 Proscenic 發(fā)布了一系列產(chǎn)品,主要致力于真空吸塵器和碰撞[1]。從國外的
Euromonitor 以及 IFR 的數(shù)據(jù)所表明的來看,從 2019-2021 年掃地機器人的行業(yè)規(guī)模來看,整個全球的發(fā)展趨勢都是呈上升趨勢的,從 2020 年開始,國外掃地機器
人的銷售額度相比于 2019 年來說增長了 43%,整個行業(yè)的市場規(guī)模為 45 億美金, 對于滲透率來說,2020 年的為 30%,與 2019 年的相比較而言,增加了 9%。2004
年,重慶大學的智能與技術研究所與寧波電業(yè)有限公司共同開發(fā)了一種機器人用于清潔,這款機器人可以打掃房間里的墻壁。未來,美國掃地機器人的發(fā)展或將經(jīng)歷由“家庭可選”到“家庭必需”的過程,市場滲透率有望大幅提升[2]。今天, 掃地機器人不僅適應了復雜的家庭環(huán)境,而且在很大程度上提高了清潔的效果。目前,清理機器人有幾個關鍵的技術支柱,清潔任務主要分為以下幾個階段:[3] 首先是傳感器技術,清潔機器人在傳感器的測量和控制下,可以向前和遠處移動, 單獨執(zhí)行清潔任務;其次是定位功能,掃地機器人的內部系統(tǒng)中有定位的系統(tǒng), 主定位系統(tǒng)是 RPS 激光定位系統(tǒng),只要掃地機器人進行了移動,其定位系統(tǒng)便會進行更新,改變位置信息,為掃地機器人的工作提供提供幫助;然后便是路徑規(guī)劃算法,掃地機器人感知到垃圾所在的位置后,便通過系統(tǒng)內部的算法以及所處周遭環(huán)境中的障礙物,計算出一條最為合適的路線;最后是真空吸塵技術,掃地機器人內部裝有機械裝置,開始工作后便形成巨型空氣渦流進行凈化,用于除塵。
1.3 掃地機器人的結構
在目前,市面上所出現(xiàn)的掃地機器人分為三級輥刷式清洗機和兩級無輥刷式清洗機。自動清洗機器人可以自動完成內角除塵.目前流行的掃氣機器人具有自動掃氣等智能功能,臨時清潔、智能定位、自動充電等??赏ㄟ^遙控器、手機或電腦控制。清洗機器人配有感應探頭,房間里有殺菌燈,可以有效地消滅螨蟲,細菌和病毒在清洗過程中。然而,目前清洗機器人正處于開發(fā)階段,噪音、灰塵、旋轉等問題,需要優(yōu)化和改進。
1.4 掃地機器人的機械結構設計
掃地機器人非常依賴于他的機械結構,依次,優(yōu)化它的機械機構,提高機器人的動力性能是很重要的。良好的機器線性性能,可采用左右兩輪電機,使汽車具有更高的機動性和靈活性。洗滌裝置由兩臺刷子機控制,為了在除塵后集中吸塵口制備除塵機理.除塵器采用急性真空吸塵力形成旋渦除塵器可在機器人底部安裝清潔布,以清除地面上的細灰塵。清洗方式可隨機、點狀、邊緣等;智能導航系統(tǒng)的本質在于自動路徑規(guī)劃,包括隨機全局覆蓋和全局覆蓋規(guī)劃;防墜落裝
置由距離傳感器測量。機器人的主要機械結構包括清洗、行走和吸塵器.因為機器人有許多運動部件.運動狀態(tài)不斷變化,因此,提高機器人運動的穩(wěn)定性,提高機器人的動力性能是很重要的[4]。良好的機器線性性能,可采用左右兩輪電機,使汽車具有更高的機動性和靈活性。洗滌裝置由兩臺刷子機控制,為了在除塵后集中吸塵口制備除塵機理.除塵器采用急性真空吸塵力形成旋渦除塵器可在機器人底部安裝清潔布,以清除地面上的細灰塵。清洗方式可隨機、點狀、邊緣等;智能導航系統(tǒng)的本質在于自動路徑規(guī)劃,包括隨機全局覆蓋和全局覆蓋規(guī)劃;在智能安全控制系統(tǒng)下,在垃圾機器人中安裝了 3 個超聲波測距傳感器,用于檢測垃圾機器人途中的障礙物;防墜落裝置由距離傳感器測量。 1.4.1 監(jiān)護儀網(wǎng)絡化
隨著網(wǎng)絡信息技術的高速發(fā)展,國內研發(fā)的許多新型號醫(yī)療監(jiān)護儀基本上都可以用網(wǎng)絡來進行連接,通過這種技術,監(jiān)護儀隨時可以將患者的被測數(shù)據(jù)迅速地傳輸給醫(yī)院的儲存器上,醫(yī)院的中央監(jiān)測系統(tǒng)會將病人所有的相關病情資料進行匯總,患者及其家屬可以通過網(wǎng)絡了解患者的患病情況與檢查結果,醫(yī)生也可以通過網(wǎng)絡隨時隨地的了解病人的各項生理指標,方便醫(yī)生在第一時間內對患者進行救治,極大的節(jié)省了時間。這種技術的應用,在一定程度上極大的方便了醫(yī)院對于患者各項指標信息的管理。此外,監(jiān)護儀網(wǎng)絡化還在一定程度上降低了醫(yī)護人員的工作強度,方便了醫(yī)護人員對病患的管理。尤其是在晚上,醫(yī)護人員不足的時候,也可以在同時監(jiān)測不同的病人,大大提高了醫(yī)護人員的工作效率,這樣每個患者都可以得到及時的救治與護理。在此基礎上,網(wǎng)絡化的監(jiān)護儀也推動了遠程治療的發(fā)展,通過網(wǎng)絡,其他地方的醫(yī)生也可以了解患者的信息,為患者的救治提出方案。
1.5 掃地機器人的單片機控制技術
掃地機器人是通過采用紅外傳感器、光電傳感器和測距傳感器來完成自我保護,采用光電編碼器確定發(fā)動機轉速,采用 PWM 技術動態(tài)控制發(fā)動機轉速和轉速, 采用單片機編程,保證移動、清洗,防障礙,精確停車控制,存儲檢測和數(shù)據(jù)顯示[5]。掃地機器人采用了傳感器系統(tǒng),這相當于是機器人的感知器官,它還主要
是用于清理和收集環(huán)境障礙物及其狀態(tài)的信息,在掃地機器人工作時,能將感知系統(tǒng)放在處于工作狀態(tài)的掃地機器人的旁邊,然后根據(jù)處理系統(tǒng)以及信號處理額電路,對收集到的信息進行分析和計算。驅動系統(tǒng)采用直流電機,通過寬度調制控制電機電樞電壓脈沖,將直流電壓轉換為電壓脈沖序列,通過調節(jié)電壓脈沖或循環(huán)的持續(xù)時間來實現(xiàn)電壓轉換的目的。有些單片系統(tǒng)在斷電時也需要保存重要數(shù)據(jù),所以可以使用系統(tǒng),由狗門組成。自動充電系統(tǒng)通過充電實現(xiàn)。對接充電時使用紅外信號,使掃描儀能夠獨立定位充電樁。
1.6 本文的主要研究內容
隨著科技發(fā)展不斷的進步,清潔機器人的智能化水平也在穩(wěn)步提高。但是, 掃地機器人的研究也遇到了阻礙,比如其高昂的價格會使許許多多的普通家庭無力購買。目前市場上所使用的是 iRobot Roomba 980,該機器人的清掃成本主要取決于激光和視覺導航,因此會提高掃地機器人的制作成本。本課題在分析機器人技術在國內發(fā)展趨勢的基礎上,研究出了一種算法,它以成本低廉且所規(guī)劃的路線最優(yōu)而取勝。主要研究內容如下:
表 1-1 主要內容
第一點
基于 STM32F103ZET6 芯片建立清洗機器人控制系統(tǒng),通過超聲波、紅外等傳感器采集信息,用于清潔操作的發(fā)動機驅動程序。
第二點
在分析現(xiàn)有路徑清理機器人調度算法的基礎上,提出一種穩(wěn)定可靠的路徑規(guī)劃算法。
第三點
設計系統(tǒng)硬件,包括 6050 微處理器、超聲波檢測模塊和驅動程序, 用于 PID 控制算法實現(xiàn)和調試的軟件。
1.7 本章小結
介紹了研究背景和意義、結構特點、機器人傳感器加工技術的主要功能和應用,綜述了機器人在國內外的發(fā)展現(xiàn)狀,總結現(xiàn)有的清洗機器人具有更智能、更自主的特點。隨著科技的進步,它們可以進一步發(fā)展,分析掃地機器人的機械設計、單片控制技術和傳感器技術,提供了進一步提升智能清洗機器人的詳細信息,
最后是寫了文章的主要研究內容。
第 2 章 硬件電路設計
2.1 硬件系統(tǒng)總體框架
在本文所描述的內容中,主要的研究內容是針對的最為傳統(tǒng)普通的掃地機器人,在日常的工作中,該機器人所使用的避障系統(tǒng)主要是通過紅外線以及超聲波來感知周遭的環(huán)境的,而且,在遇到障礙物需要躲避時,這款機器人是通過 mpu6050 運動傳感器來規(guī)劃路線,在規(guī)劃的路線中,可以詳細到遇到某障礙物時,機身需要旋轉多少度來躲避,在最大程度上實現(xiàn)自我保護。掃地機器人的兩個車輪的動力由兩個直流減速電機提供。他的速度和兩個車輪之間的距離可以通過測量編碼器所產(chǎn)生的脈沖數(shù)計算得出。若果想要得到具有時效性的傳感器數(shù)據(jù)以及將電流傳輸給逆變器,那么就需要一個 wife 模塊,并且在你的電腦中安裝相關控制軟件, 實現(xiàn)與 WLAN 模塊通信。還有極其重要的一塊就是掃地機器人的能源問題了,我們?yōu)樗峁┝?12V 電壓的電池組,當電容為 9000 毫安時,穩(wěn)壓后為驅動和控制單元供電。掃地機器人的控制是通過對 stm32f103zet6 這個主控元件的控制實現(xiàn)的, 可以將家務清掃清掃分為機械運動,多傳感器的信息相互融合這兩個主要部分。
2.2 電機
掃地機器人的兩個車輪的動力由兩個直流減速電機提供,在掃地機器人的底盤上,對于兩個驅動輪來說,其相對速度應保持一致并且呈差速減速,當掃地機器人走到墻角位置時,需要掃地機器人進行相當于在平面直角坐標系中半徑為零的運動,此時可以保持它兩個車輪速度相等,方向相反就可以完成此運動[6]。直流發(fā)電機比較適合應用于中小型的掃地機器人。直流發(fā)電機中的電流為直流,因而可以將電池做為電源。將電池作為電源,會導致發(fā)電機所供給的動力不夠大, 轉矩較小,為了克服這個困難,我們一般可以在掃地機器人的發(fā)電機和車輪之間裝一個減速器,這個減速器可以減小車輪的轉速,提高車輪的轉矩[7]。很多汽車廠商在發(fā)動機工廠都有不同的減速比可供選擇,然后根據(jù)我們實際的需要,在設
計某款掃地機器人時,我們可以可以根據(jù)需要選擇適當?shù)呐ぞ睾退俣?。掃地機器人的兩個車輪的動力由兩個直流減速電機提供,在掃地機器人的底盤上,對于兩個驅動輪來說,其相對速度應保持一致并且呈差速減速,當掃地機器人走到墻角位置時,需要掃地機器人進行相當于在平面直角坐標系中半徑為零的運動,此時可以保持它兩個車輪速度相等,方向相反就可以完成此運動[6]。直流發(fā)電機比較適合應用于中小型的掃地機器人。直流發(fā)電機中的電流為直流,因而可以將電池做為電源。將電池作為電源,會導致發(fā)電機所供給的動力不夠大,轉矩較小,為了克服這個困難,我們一般可以在掃地機器人的發(fā)電機和車輪之間裝一個減速器, 這個減速器可以減小車輪的轉速,提高車輪的轉矩[7]。很多汽車廠商在發(fā)動機工廠都有不同的減速比可供選擇,然后根據(jù)我們實際的需要,在設計某款掃地機器人時,我們可以可以根據(jù)需要選擇適當?shù)呐ぞ睾退俣取?
2.3 電機驅動
驅動發(fā)動機的電流是比較大的,單個單片機中的電流不足以驅動發(fā)電機,需要一個獨立的發(fā)動機模塊來驅動發(fā)電機[8]。想要驅動直流發(fā)電機,那么必須使用一個驅動芯片,我們這里采用的是 H 橋驅動芯片。H 橋驅動芯片是由法半導體公司研發(fā)制作的一款芯片,它的名稱是 L298N 驅動芯片,此芯片性能優(yōu)越,可以用單片機直接控制電機的直流電流的功率,方向。
表 2-1 電機功能模塊表
驅動器控制芯片:
l298n 雙橋或H 橋直流驅動電機的通用
驅動器控制芯片
驅動部分端子供電范圍 Vs:
+5V~+12V ;板內取電時,則供電范圍 Vs:+6V~+12V 3.驅動部分峰值
電流 Io:2A
邏輯部分端子供電范圍 Vss:
4+5V~+7V(可板內取電+5V)
邏輯部分工作電流范圍:
5. 0~36mA
控制信號輸入電壓范圍(IN1 IN2 IN3 IN4):
低電平:-0.3V≤Vin≤1.5V 高電平: 2.3V≤Vin≤Vss
使能信號輸入電壓范圍(ENA ENB):
低電平:-0.3≤Vin≤1.5V(控制信號無效) 高電平:2.3V≤Vin≤Vss(控
制信號有效)
最大功耗:
20W(溫度 T=75℃時)
存儲溫度:
-25℃~+130℃
驅動板尺寸:
55mm*Ⅰ45mm*33mm(包括固定銅柱和散熱片高度)
它的缺點就是,盡管使用 l298n 這個驅動板已經(jīng)能夠個同時連續(xù)驅動兩臺直流高壓發(fā)電機,但是如果長一段時間的連續(xù)工作于較大的低功率電壓狀態(tài)下,則很有可能會直接導致這個驅動板可能產(chǎn)生電壓過熱、燃燒板等異常情況。為了不斷改善軟硬件驅動系統(tǒng)的運行穩(wěn)定性,我們需要合理安排掃地機器人的工作時間。
圖 2-1 L298N 模塊電路連接圖
2.4 編碼器
當光柵電動機高速連續(xù)轉動時,光柵轉轉盤和驅動電機可以進行一個同步高
速旋轉,檢測控制設備同時輸出若干個高速脈沖控制信號。通過對信號編碼器前端輸入的高壓脈沖信號個數(shù)可以進行直接計算,即我們可以直接得到一臺高壓電動機的實際工作運行里程。編碼器將通過兩路高頻脈沖調制信號分別輸出一個之間相位角度誤差為 90 度的高頻脈沖信號,從而可以使一個用戶電機可以更加簡單地準確地來判斷其高速旋轉的運動方向]。光電脈沖編碼器主要是一種同時具有系統(tǒng)構造復雜原理簡單、平均測量計算器和機械軸的使用壽命長,抗干擾能力、可靠性好等多大優(yōu)點的光電脈沖編碼器,它主要是一種通過進行光電脈沖轉換把數(shù)字信號從一端輸出機械軸上的計算機械軸向幾何上的位移進行測量后再轉換后作為光電脈沖或者圖像是其他數(shù)字信號測量的一種信號處理傳感器。由于它的操作精確度比較高、性能穩(wěn)定以及合理的使用價格,成為廣泛應用的一種傳感器。這種傳感器通過對信號編碼器前端輸入的高壓脈沖信號個數(shù)可以進行直接計算,即我們可以直接得到一臺高壓電動機的實際工作運行里程。編碼器將同時輸出一個脈沖相位時間誤差為 90 度的兩路電機脈沖相位信號,從而可以使每個用戶電機可以更加方便準確地快速判斷其同軸旋轉的運動方向。光電信號編碼器主要具有產(chǎn)品結構復雜原理簡單、平均具有機械性和使用壽命長,抗干擾能力和工作可靠性好等幾大特點。
光電信號編碼器的基本設計和技術選型主要目的是為了考慮其工作精度以及
是否達到能夠直接達到國家規(guī)定的技術要求,本文的研究課題主要選擇了 de38s6 型通用增量式射頻光電雙向旋轉信號編碼器,具備兩個 a 相、b 相的信號輸出。其中它每圈的高速脈沖輸出次數(shù)已經(jīng)完全達到了 600,即一臺柴油發(fā)動機在連續(xù)高速旋轉超過一圈后就已經(jīng)會連續(xù)輸出 600 個高速脈沖,精度大約為 0.6 度,完全已經(jīng)能夠充分滿足這個高速實驗的實際需要,其中每個脈沖輸出次數(shù)的精度定義具體如下:
脈沖數(shù):
600 電源電壓:
表 2-2 脈沖次數(shù)定義
19
1
消耗電流:
+5V 加減 5%
信號高電平:
≥2.5V
信號低電平:
≤0.5V
上升下降時間:
≤100ns
響應頻率:
100KHz
2.5 控制核心
主控上位芯片模塊是用于掃地電動機器人遠程控制處理系統(tǒng)的一個技術核心, 完成了各個控制器對系統(tǒng)的大量遠程數(shù)據(jù)采集處理和邏輯運算的完成任務,主要芯片功能原理包括:通過使用它的 兩個模塊直接同時實現(xiàn)與主控上位機之間的數(shù)據(jù)通訊,讀取外部超聲波、紅外、 等各種環(huán)境傳感器的相關信息,根據(jù)所有的需要及時獲取的各種外部環(huán)境條件信息對其信號進行邏輯計算,再以 超聲波的組合方式將各個控制器的信號直接送入主控輸出端并給予一臺掃地電機的電源驅動,控制一臺掃地電動機器人的正常運轉。由此可見其各主控控制單元的驅動芯片設計特點對于自動控制單元系統(tǒng)設計具有非常大的重要技術意義。本課程研究課題需要選擇的接口是一個"stm32f103zet6" 作為 MCU,它所需要具備的基本特點也就是所需要擁有的特殊接口技術軟件資源:
表 2-3 stm32f103zet6 的資源接口
64kbsram
512kbflash
2 個高級基礎標準定時器
4 個普通基礎定時器
2 個高級基礎定時器
2 個大的 dma 串口控制器(共 12 個數(shù)字通道)
3 個小的 spi
2 個 spiic
5 個數(shù)字串口:1 個 USB 個 、1 個 USCAN 、3 個 12 位的 SDCA 、1 個 12 位的 SDCA
1 串口接口
1 接口
112 個國際通用接口。
2.6 外部信息采集
為了掃地機器人識別周圍的環(huán)境以及準確找到充電基地,給它配備了兩種傳感器當作它的“感官”。超聲波傳感器可以使它探測周圍環(huán)境中的障礙物距離掃地機器人的位置,紅外傳感器可以令它識別充電基地的紅外坐標信號()。但是,通過測試,在掃地機器人實際工作的時候,超聲波傳感器并不能 360 度無死角全方面覆蓋,總是會存在幾個超聲波傳感器檢測不到的盲區(qū),因此我們給它的周圍裝上了接觸器傳感器,這種接觸器傳感器可以解決超聲波傳感器所產(chǎn)生的問題,當掃地機器人快碰到障礙物時,接觸器傳感器的裝置會將信號發(fā)給掃地機器人的主控單片機,使其作出反應。
表 2-4 超聲波模塊電路結構
名稱
作用
5個管腳
VCC
接 5V 電源
GND
地線
TRIG
觸發(fā)控制信號輸入, 回響信號輸出
OUT
作為開關量輸出(當報警模塊使用)
模塊采用 IO 口 觸發(fā)測距,超聲波模塊發(fā)出信號到接收信號,通過計算回響信號的持續(xù)時間,就能計算出掃地機器人與障礙物之間的距離。 與 分別起電平
轉換和信號放大作用。
2.7 MPU6050
MPU6050 是九軸移動處理的運動傳感器的開山之作。為了大大減少系統(tǒng)的內存功耗,它分別使用了 1024 字節(jié)的先出后進入和打開后入后出的存儲器(FIFO)。通過 400khz 的兩個 I2C 接口和全部的用于設備數(shù)據(jù)寄存器之間可以進行實現(xiàn)信號高速傳輸,對于大量的業(yè)務,需要直接實現(xiàn)信號高速傳輸?shù)脑O備應用, 20MHz 的SPI 接口可以直接實現(xiàn)用于設備寄存器之間信號的高速讀寫和傳輸中斷。此外,在兩個芯片上也分別重新嵌入了一個只用于能夠同時產(chǎn)生±1%的溫度變動的微振蕩器和一個溫度傳感器。這種運動傳感器的芯片非常小,長為 4mm,寬為 4mm,厚度僅有 0.9 毫米。用無線方盒封裝,極其堅固。
運動處理傳感器能夠提供 2.5V 上下 5%、3.0V 上下和 3.3V 下 5%的器件內部的工作電壓范圍。此外,運動處理傳感器的引腳 VLOGIC 是專門為 I2C 接口供給邏輯電壓的。邏輯電壓可以是 1.8±5%或器件內部的工作電壓。數(shù)字推進處理器(DMP):數(shù)據(jù)管理平臺的接收和處理陀螺儀數(shù)據(jù),加速度計和外部傳感器,并可以從數(shù)據(jù)
管理平臺寄存器讀取處理結果。數(shù)據(jù)管理平臺可以使用外部電機保護裝置(MPU) 按鈕創(chuàng)建故障。
圖 2-2 MPU6050 電路原理圖
模塊 ATK-MPU6050,連接 VCC、GND、IIC Sun SDA、IIC Sun SCL、MPU UY INT 和 MPU Sun AD0,帶外部張力電阻器 4.7K,MPU YIC SCL 帶外部張力電阻器,MPU YAD 帶 10K 拉伸電阻器。默認情況下,IIC(0x68).MPU6050\SCL 和 IIC\SDA 地址分別連接到 STM32 I2C SCL 接口和 SDA 數(shù)據(jù)庫,VCC 連接到 3.3V 和 GND 開發(fā)板。如果控制地址來自 AD0,MPU6050 的 2C 地址是 0x68.因為這個主題不需要中斷,所以
MPU\int 輸出按鈕的輸出中斷是移動
圖 2-3 MPU6050 電路連接圖
2.8 ATK-ESP8266 WIFI 模塊
ATK-ESP8266 是深圳安信可科技有限公司研發(fā)制作的一款優(yōu)質的 WiFi 模塊, 一般的串行設備使用這個 WiFi 模塊只需要傻瓜操作,串行端口配置
圖 2-4 ATK_ESP8266 電路原理圖
2.9 程序下載電路模塊
表 2-5 電路模塊功能
STA 模式
ESP8266 模塊主要是通過一個移動路由器將
Internet 連接起來,實現(xiàn)一個用戶的一臺移動平板電腦或者也就是他的電子信箱郵件通過一個 Internet 連接進行遠程網(wǎng)絡監(jiān)測和數(shù)
據(jù)管理的。
AP 模式
模塊默認的熱點模式為 ATK_ESP8266 模塊設備可以直接充當無線熱點,使得任何智能手機移動電話終端或平板電腦設備能夠直接與該熱點模塊設備進行無線通信,構建一個無線局域網(wǎng)后它就可以直接實現(xiàn)對整個局域網(wǎng)
的無線網(wǎng)絡監(jiān)視。
ATK_ESP8266 WIFI 模塊的硬件連接方式如圖所示,在本研究課題中我們只是根據(jù)需求選擇了一個模塊的四個引腳。VCC 連接到該開發(fā)板的模塊上帶有 3. 3v 的電源,并且可以用于為該模塊提供電, GND 接地,串口 TXD 和 RXD 連接到 STM32 芯片的 RXD 和 TXD ,實現(xiàn)了串口的通信。
圖 2-5 ATK_ESP8266 模塊電路連接圖
圖 2-6 CH340G 模塊電路原理圖
STM32 芯片常用的下載程序串口下載連接模式主要分為有長的JTAG 下載模式、
SWD 格式模式和短的 USB 無線轉四種串口下載模式,為了幫助使用者方便地通過無線移動電話或者移動計算機直接下載連接到這些應用程序,本文的研究課題主要建議用戶選擇使用 usb 無線轉這種串口下載模式,只要你需要一根短的 usb 數(shù)據(jù)線, 就已經(jīng)完全可以直接通過移動計算機上直接下載這些應用程序。電路設計工作過程原理基本結構如電路圖所示, CH340G 電路是一個基于 USB 總線的直接輸入轉換器串口芯片,實現(xiàn)兩個 usb 總線變換器的總線轉接口和串口。其中兩個標號 parxd 和標號 txd 分別認為是 usbm3 轉換為數(shù)字寫入串口的 2 個原始數(shù)據(jù)寫入輸出口(對于 sch340g 來說),而標號 pa9(txd)和標號 pa10(rxd)則分別認為是對 ustm32 的兩個數(shù)字寫入串口 1(即在無法重新寫入復用的特殊功能下)兩個新的數(shù)據(jù)寫入輸出口。連接收集到一起后,實現(xiàn)了 sstm32 的所有應用程序免費下載。
2.10 電源管理模塊
電源控制管理功能模塊主要就是用于向一個電子控制系統(tǒng)個別的電路功能模塊芯片提供電源供電,由于燃料電池的輸出電壓一般固定為 12v,主控系統(tǒng)芯片的電源供電輸出電壓一般固定為 3.3v,不能直接向單個主控系統(tǒng)芯片模塊提供電源
供電,同時部分外部的電源功能模塊也通常需要 5v 輸出電壓才能進行電源供電,因此本文的研究課題特別設計了一個具有電源降壓整流電路、電壓自動輸出選擇穩(wěn)壓電路和 3.3v/5v 的電源輸出穩(wěn)壓電路,可以完全能夠滿足所有單個控制管理系統(tǒng)的電源供電的實際需求。dc_in 也是用于外部高壓直流電源的送出輸入,范圍一般指的是介于 dc6~24v,輸入輸出電壓通常指的是經(jīng)過 4vmp2359 芯片轉換成 5v 直流電源時的輸出,其中 d4 是用于防反接二極管,避免外部高壓直流電源的輸出極性電路弄錯的一種情況而有時候,燒壞了電源控制器的輸出電路。
圖 2-7 MP2359 穩(wěn)壓芯片電路原理圖
電壓的選擇控制電路由總開關 k2 和 ams1117 -3.3 穩(wěn)壓芯片兩部分組成, ams1117 -3.3 穩(wěn)壓芯片能夠可以同時輸出 3. 3v 的電壓,這樣進行電壓的選擇控制電路就可以同時提供 3. 3v 和 5v 的電源。電壓的選擇電路也是一種,它可以直接通過使用 usb 來作為輸入,并且在系統(tǒng)中進行電源的選擇,當我們使用 usb 來下載應用程序的時候,就可以不需要再連接到電池,方便了實驗性的開發(fā)。 f1 為1000ma 的自修復保險絲,用來保護 usb 。
表 2-6 輸出電路結構
VOUT1:
3.3V 電源輸出接口
可以通過主控板給外部功能模塊提供 3.3V 和 5V 電源,功率最大
1000mA。
VOUT2:
5V 電源輸出接口
D6 和 D7
TVS 管
可以有效避免 VOUT
外接負載不穩(wěn)的時候, 對主控板造成損壞。
2.11 本章小結
本章主要內容是簡單介紹一下掃地自動機器人的一些軟硬件操作系統(tǒng),首先我們是簡單介紹一下掃地自動控制軟件系統(tǒng)的一些總體硬件結構。然后對各種電子器件的總線工作電路原理、選型、技術參數(shù)及其它相關電子硬件集成電路的總線連接工作方式等模塊進行了詳細介紹,其中主要包括電子計算機、電動機的主驅動、編碼器、主控控制芯片、紅外輻射傳感器、超聲波輻射傳感器、wifi 六個模塊、mpu6050 運動信號處理電路傳感器、程序上載和下載控制電路六個模塊及其它相應的通用電源流量管理電路模塊。
第 3 章 軟件設計
3.1 軟件系統(tǒng)框架
3.2 傳感器數(shù)據(jù)讀取
3.2.1 超聲波傳感器數(shù)據(jù)
掃地機器人的超聲波傳感器就相當于他的眼睛,可以測出距離與前方是否有障礙物,在掃地機器人的前方與兩側都各自安裝著一個超聲波傳感器,可以同時識別三個方向的環(huán)境信息。因為超聲波發(fā)出的信號波有可能會與返回的信號波發(fā)生碰撞而導致接收到的信號發(fā)生偏差,所以超聲波的采集周期要有大量的實驗證明,最終將采集周期定位 65ms。
25
2
在控制端 (管腳接收到觸發(fā)信號后,模塊內部電路發(fā)出 8 位 40khz 脈沖,超聲波返回端輸出回響信號,檢測返回端管腳的電平變化確定回響信號的時間,而障礙 物 的 距 離 與 回 響 信 號 的 持 續(xù) 時 間 成 比 列 , 計 算 公 式 為 : 距離=回響信號時間*聲速(340m/s)/2。
圖 3-1 超聲波模塊程序流程
4
.1.
3.2.2 MPU6050 數(shù)據(jù)讀取控制
機器人的運動處理傳感器 MPU-6050 的作用是檢測自身在運動過程中的狀態(tài), 系統(tǒng)采用檢測機器人行走過程中自身的各種狀態(tài):
對于 MPU-6050 模塊,首先對模塊進行初始化, MPU-6050 使用的關鍵在于相關初始化,各初始化步驟如下:
①所以我們需要先對 IIC 完成初始化,編碼如下:
1. void HmcIICInit(void) 2. {
3. /*GPIO 初 始 化 */
4. GPIO_InitTypeDef GPIO_InitStructure; 5. /* 配置硬件 IIC 需要的變量 */
6. I2C_InitTypeDef I2C_InitStructure; 7.
8. /* 使能與 I2C1 有關的時鐘 */
9. RCC_APB2PeriphClockCmd (RCC_APB2Periph_GPIOB,ENABLE );
10. RCC_APB1PeriphClockCmd(RCC_APB1Periph_I2C1,ENABLE);
11.
12. /* PB6-I2C1_SCL 、 PB7-I2C1_SDA*/
13. GPIO_InitStructure.GPIO_Pin = GPIO_Pin_6 | GPIO_Pin_7; 14. GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
15. GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF_OD; 16. GPIO_Init(GPIOB, &GPIO_InitStructure);
17.
18. /*IIC 外設初始化*/
19.
20. /* I2C 配 置 */
21. I2C_InitStructure.I2C_Mode = I2C_Mode_I2C ; // 配 置 為 普通 IIC 模式
22. //I2C_InitStructure.I2C_DutyCycle = I2C_DutyCycle_2; 23. //I2C_InitStructure.I2C_OwnAddress1 = SlaveAddress; 24. I2C_InitStructure.I2C_Ack = I2C_Ack_Enable; //使能自動應
答 25. I2C_InitStructure.I2C_AcknowledgedAddress = I2C_AcknowledgedAddress_7bit;
26. I2C_InitStructure.I2C_ClockSpeed = 50000; //5K 的 速 度
27.
28.
29. /* I2C1 初 始 化 */
30. I2C_Init(I2C1, &I2C_InitStructure);
31.
32. /* 使 能 I2C1 */
33. I2C_Cmd (I2C1,ENABLE);
34. /*允許應答模式*/
35. I2C_AcknowledgeConfig(I2C1, ENABLE);
②. 復位于 MPU-6050 這一步讓 MPU-6050 內部所有寄存器恢復到默認值, 通過電源管理器實現(xiàn)。
③設置加速度傳感器的最大量程與最小量程與陀螺儀的量程。
④設置其他參數(shù);
⑤配置系統(tǒng)時鐘源,代碼實現(xiàn)如下:
1. u8 MPU_Init(void) 2. {
3. u8 res;
4. IIC_Init();// 初 始 化 IIC 總 線
5. MPU_Write_Byte(MPU_PWR_MGMT1_REG,0X80); // 復 位MPU6050
6. delay_ms(100);
7. MPU_Write_Byte(MPU_PWR_MGMT1_REG,0X00); // 喚 醒MPU6050
8. MPU_Write_Byte(MPU_INT_EN_REG,0X00); // 關 閉 所 有中斷
9. MPU_Write_Byte(MPU_USER_CTRL_REG,0X00); //I2C
主模式關閉
10 MPU_Write_Byte(MPU_FIFO_EN_REG,0X00); // 關 閉FIFO
11. MPU_Write_Byte(MPU_INTBP_CFG_REG,0X80); //INT
引腳低電平有效
12. res=MPU_Read_Byte(MPU_DEVICE_ID_REG);
13. return 0;
14. }
15. //設置 MPU6050 陀螺儀傳感器滿量程范圍
16. //fsr:0,±250dps;1,±500dps;2,±1000dps;3,±2000dps
17. //返回值:0,設置成功
18. // 其他,設置失敗
上述即 MPU-6050 初始化函數(shù)。
收藏