999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于紅外信號的智能掃地機器人設計

2023-09-20 13:01:00高識杰
無線互聯科技 2023年14期
關鍵詞:單片機設計

高識杰

(山東科技大學,山東 青島 266590)

0 引言

近年來,我國人工智能技術取得了迅猛的發展,計算機技術和各類傳感器技術也都有著很大的進步,正是這些技術的快速發展為智能掃地機器人在科技領域取得重大成就做出了鋪墊[1]。智能掃地機器人的最終目的是實現智能化與自主化,即在無人控制的情況下能獨立自主地完成安排的清掃任務。本文基于單片機設計原理,設計了一款智能掃地機器人,具體思路如下。

1 智能掃地機器人系統設計總體介紹

1.1 系統硬件總體介紹

本文基于單片機設計的智能掃地機器人系統如圖1所示,整個硬件系統包括超聲波測距模塊、紅外線避障模塊、姿態檢測模塊、單片機模塊、電機及其驅動電路模塊、清掃模塊6個模塊[2]。

圖1 系統硬件系統

1.2 系統軟件總體介紹

智能掃地機器人的軟件流程如圖2所示,單片機上電之后先對GPIO引腳、紅外線避障模塊、姿態檢測模塊、超聲波測距模塊以及電機控制模塊進行初始化。

圖2 系統軟件流程

初始化后,先檢測前方的距離,當掃地機器人前方距離障礙物很遠就直接前進,向前移動的同時檢測前方的距離[3];當掃地機機器人移動到障礙物前時,就觸發避障程序(該程序將會在軟件設計部分中詳細說明)。

2 系統硬件設計

2.1 單片機控制模塊

本設計中,單片機控制模塊選擇ARM單片機作為控制核心,硬件連接思路如下。

(1)GPIOA.1連接到超聲波模塊的觸發端口Echo。

(2)GPIOA.2作為終端捕獲口連接到超聲波模塊的距離信息發送口Trig。

(3)GPIOA.5—GPIOA.7和GPIOB.0是電機的控制端口,連接到電機控制芯片左側正反轉和右側正反轉。

(4)GPIOB.1連接清掃電機控制芯片。

(5)GPIOA.4、GPIOA.15、GPIOB.10、GPIOB.11 4個引腳為單片機的IIC引腳,與MPU6050的INT、AD0、SCL以及SDA連接。

(6)GPIOB.9和GPIOB.8為IO口,接收掃地機器人兩側紅外避障模塊的傳感器信號。

2.2 姿態傳感模塊

本設計選取MPU6050六軸加速度陀螺儀傳感器作為智能掃地機器人的姿態傳感器,如圖3所示。該數字運動處理器可以幫助使用者省去大量的姿態數據運算,可以減輕加速度計和陀螺儀的運行壓力,有效地減少加速度計和陀螺儀的溫漂所帶來的誤差。

圖3 MPU6050硬件接線

2.3 紅外避障模塊

紅外避障模塊主要由紅外避障傳感器完成工作,當模塊通電后,紅外線發射二極管開始工作。當遇到不透明障礙物時,障礙物會吸收一小部分紅外線,并反射絕大部分的紅外線,模塊另一個光敏二極管接收到紅外線后會改變其反向的導通阻值[4],這樣只需再配備一個分壓電阻就可以將紅外線信號轉變成電壓信號。

2.4 電機及其驅動電路

本設計使用小型直流電機作為掃地機器人的動力來源,電機額定工作電壓為5 V,額定工作電流為100 mA,額定轉速為190 r/s,最終算出每臺電機額定功率。

掃地機器人需要4個輪子,且每個輪子都由一個電機來驅動,一共需要4個電機,總功率為2 W。設計中,共需要3組L9110 H芯片,L9110 H支持正反轉控制,如果電機的正極接OB,負極接OA,IB就是正轉控制,IA為反轉控制,反之亦然。硬件連接電路如圖4所示。

圖4 L9110H硬件連接

2.5 超聲波測距模塊

本設計使用HC-SR04超聲波測距模塊測量掃地機器人與前方障礙物之間的距離,模塊為3.3 V低壓工作模塊,不需要額外使用電源電路給模塊提供電能。HC-SR04超聲波模塊可以測量圓錐角15°、高為4 m的圓錐體范圍內的所有物體與模塊的距離。該模塊有兩根通信線,但其通信協議既不屬于同步通信,也不屬于異步通信,而是一種極其特殊的TTL電平通信[5-6]。

2.6 車體框架

本設計需要一個框架支撐4個電機以及電源模塊和控制板,框架參數如下。

整個車體由兩塊透明亞克力板組成,車體長260 mm,寬140 mm,6個銅柱支撐兩塊亞克力板構成一個夾層,夾層寬35.5 mm用于固定電機。車輪直徑為6.6 cm,根據上節電機的額定轉速可以算出,掃地機器人的行進速度為39 m/min。

2.7 電源模塊

本設計使用3個5號電池串聯組成的干電池組作為外置電源,額定輸出電壓為4.5 V,電池組容量為2 700 mAh。使用專門的電池盒裝配(電池盒上有電源開關),足以支撐整套智能掃地機器人系統的電能供應。

2.8 清掃裝置

本設計使用旋轉式清掃裝置,由一個48 V的電機拖動,轉速為1 200 r/min。通過外置繼電器間接驅動,清掃裝置直徑為20 cm,刷頭材質為棉材質,以保證更高效率的清掃。

3 系統軟件設計

3.1 紅外避障模塊程序設計

本文設計的兩個紅外避障模塊程序,是將GPIOB的IDR寄存器的第9位和第8位重命名為Lift_sen和Right_sen,以便操作。當模塊未檢測到障礙物時,默認輸出高電平;當遇到障礙物時,輸出低電平。

3.2 姿態傳感模塊程序設計

首先,在整個庫中有3個文件,分別是IIC的通信函數驅動文件、DMP驅動文件和MPU6050陀螺儀與監督度計的驅動文件。其中,mpuiic.c文件主要是IIC通信協議的定義。

其次,inv_mpu.c文件是MPU6050姿態運算的相關函數和算法,其中的函數是對DMP算法的配置,加載了DMP模塊固件,最后再重置陀螺儀;mpu_dmp_get_data函數是操作DMP單元獲取翻滾角、俯仰角和航向角3個歐拉角量姿態數據。

最后,MPU6050.c驅動文件包含了MPU6050六軸加速度陀螺儀傳感器的初始化。本設計不會直接使用三軸加速度量和三軸陀螺儀量,只使用MPU6050的初始化函數MPU_Init。通過將GPIOA.15設置成MPU60 50模塊的AD0模塊為地址設置端口,將GPIOA.4設置成模塊的中斷輸入端口。

3.3 超聲波模塊程序設計

首先,捕獲中斷初始化函數CAP_Init。觸發方式設置成上升沿中斷觸發,對中斷優先級和中斷服務函數進行配置。具體如圖5所示。

圖5 捕獲中斷服務函數程序流程

其次,TIM2_IRQHandler函數。當中斷觸發時,會先查看捕獲完成標志位是否為高,為高說明已經捕獲完成。如果沒有捕獲完成,則要查看觸發了什么中斷,如果是更新中斷,要看溢出計數是否溢出。如果溢出,則需要強制結束捕獲;如果未溢出,則需要溢出計數+1。

最后,Lenth函數。函數運行后,會檢測捕獲完成標志位是否為1,如果為1,就讀取溢出計數,并乘65 536后再加計數器內的計數數值,最后將計數的數值除以58,這樣計算出來的是以cm為單位的距離數據;如果捕獲未完成,則返回上一次計算的距離數據。

3.4 電機驅動模塊程序設計

car_movtion_Init函數是將GPIOA.4、GPIOA.5、GPIOA.6、GPIOA.7以及GPIOB.0設置成推挽輸出模式。因此,本次定義了小車向前、向后、左轉、右轉和靜止5個動作模式,分別為car_front、car_back、car_lift、car_right和car_static 5個函數。

當執行car_right函數時,單片機驅動左側輪子向前行駛并驅動右側輪子向后行駛,機器人車體則原地右轉;當執行car_lift函數時,單片機驅動左側輪子向后行駛并驅動右側輪子向前行駛,機器人車體則原地左轉。

3.5 主程序設計

3.5.1 變量定義介紹

關于float pitch、roll、yaw 3個量,分別是儲存俯仰角、翻滾角和航向角的浮點量變量。

u32 time_F=0;

該變量用于測算障礙物的長度。由于小車避障時一定會偏移“主航線”一定的距離,在避障結束后需要再返回到主航線上。

static u8 dir=0;

該變量用于標記當前為正向行駛還是反向行駛的方向標志位。1為反向行駛,0為正向行駛。

3.5.2 轉向控制程序介紹

掃地機器人的轉向控制函數共設計了4個轉向函數。

(1)right_first_corr函數。該函數是控制避障時的第一次右轉,在執行函數之前會先確定是正向行駛還是反向行駛。

(2)Lift_first_corr函數。該函數為避障時第一次左轉,在轉向之前會判斷是正向行駛還是反向行駛。

(3)Lift_second_corr函數。該函數為第二次左轉函數,其轉向邏輯與第一次左轉函數類似,先判定是正向行駛還是反向行駛,如果正向行駛,需要左轉將航向角修正至90±2°;反向行駛,需要左轉將航向角修正至-90±2°。

(4)right_second_corr函數。該函數為第二次右轉函數,其轉向邏輯與第一次右轉函數類似,當正向行駛時,需要將當前的航向角修正至0±2°;反向時,需要將當前的航向角修正至180±2°。

3.5.3 避障控制程序介紹

本文設計的智能掃地機器人在房間內的行走路徑為“弓”字形,其避障邏輯無論是正向行駛還是反向行駛都是右轉避障,即當掃地機器人在“弓”字形路徑上行駛時,遇到障礙物的第一動作先右轉90°躲避障礙物。

3.5.4 主函數程序介紹

單片機上電后,會初始化各個模塊。首先,初始化delay系統延時功能,再設置中斷組為組別2,即兩位搶占優先級和兩位相應優先級;其次,對小車運動模塊進行初始化,再初始化MPU6050模塊和DMP處理單片機;最后,初始化超聲波測距模塊和紅外線避障模塊。

4 系統軟硬聯調

按照以上設計思路,對小車的硬件和功能進行測試,包括機器人的驅動能力、姿態檢測模塊對航向角的測量以及小車的避障功能。

測試得出,當把電池倉的電源開關打開,各模塊的電源指示燈都亮起,說明供電正常;上電后,機器人會靜止一段時間,主要是對各模塊進行初始化;初始化完成后,掃地機器人會向前移動。

當掃地機器人運行到障礙物前時,會向右旋轉90°,沿著障礙物向前移動,直到左側的紅外避障傳感器不再觸發信號,當確定左側沒有障礙物時,機器人會左轉90°躲避障礙。當掃地機器人運行到障礙物的后方時,會回到“主航線”繼續運行,如果前方有障礙物,則會繼續進行避障操作。

5 結語

本文基于紅外測距原理,結合單片機設計了一款智能掃地機器人,由各類硬件電路構成的執行模塊進行避障測試,旨在完成特定的清掃任務。經系統軟硬件聯調測試,本文設計的掃地機器人在實際操作中具有較為顯著的可行性,不僅造價劃算,而且性能優越,適合在今后的居家應用中推廣。

猜你喜歡
單片機設計
何為設計的守護之道?
現代裝飾(2020年7期)2020-07-27 01:27:42
《豐收的喜悅展示設計》
流行色(2020年1期)2020-04-28 11:16:38
基于單片機的SPWM控制逆變器的設計與實現
電子制作(2019年13期)2020-01-14 03:15:28
基于單片機的層次漸變暖燈的研究
電子制作(2019年15期)2019-08-27 01:12:10
基于單片機的便捷式LCF測量儀
電子制作(2019年9期)2019-05-30 09:42:02
瞞天過海——仿生設計萌到家
藝術啟蒙(2018年7期)2018-08-23 09:14:18
小議PLC與單片機之間的串行通信及應用
電子制作(2018年12期)2018-08-01 00:48:04
設計秀
海峽姐妹(2017年7期)2017-07-31 19:08:17
有種設計叫而專
Coco薇(2017年5期)2017-06-05 08:53:16
基于單片機的平衡控制系統設計
電子制作(2017年19期)2017-02-02 07:08:27
主站蜘蛛池模板: 欧美翘臀一区二区三区| 欧美国产精品不卡在线观看| 精品国产免费观看一区| 亚洲一级色| 丰满人妻中出白浆| 在线观看免费国产| 一级毛片免费观看久| 亚洲国产精品无码AV| 97青草最新免费精品视频| 国产精品尹人在线观看| 国产精品成人观看视频国产 | www.精品国产| 福利姬国产精品一区在线| 伊伊人成亚洲综合人网7777| 国产免费观看av大片的网站| 9啪在线视频| 亚洲天堂2014| 农村乱人伦一区二区| 麻豆AV网站免费进入| 亚洲AV无码久久天堂| 日本午夜在线视频| 国产91九色在线播放| 亚洲黄色高清| 无码一区中文字幕| 欧美色图久久| 久久久久青草大香线综合精品| 国产成人夜色91| 国产伦精品一区二区三区视频优播| 国产女人水多毛片18| 亚洲精品动漫| 青青青国产精品国产精品美女| 丁香六月综合网| 亚洲色婷婷一区二区| 国产成人精品一区二区三区| 久久精品视频一| 成人免费黄色小视频| 欧美黄色a| 国产永久免费视频m3u8| 久久这里只精品国产99热8| 88av在线看| 久久午夜夜伦鲁鲁片不卡| 成人综合久久综合| 国产成人三级在线观看视频| 亚洲自偷自拍另类小说| 美女高潮全身流白浆福利区| 特级欧美视频aaaaaa| 欧美午夜性视频| 久久99精品久久久久纯品| 欧美日韩中文国产va另类| 亚洲欧美在线综合图区| 三区在线视频| 精品无码一区二区三区电影| 国产99在线| 制服丝袜一区二区三区在线| 99一级毛片| 国产成人久久综合777777麻豆| 色婷婷亚洲综合五月| 亚洲中文制服丝袜欧美精品| 亚洲国产日韩视频观看| 三上悠亚一区二区| AV不卡无码免费一区二区三区| 久一在线视频| 国产精品漂亮美女在线观看| www.亚洲一区| а∨天堂一区中文字幕| 国产成人免费手机在线观看视频| 色男人的天堂久久综合| a天堂视频| 国产内射在线观看| 午夜精品福利影院| 国产国模一区二区三区四区| 四虎影视国产精品| 国产成人综合日韩精品无码不卡| 91精品国产丝袜| 久久99国产乱子伦精品免| 亚洲免费黄色网| 88国产经典欧美一区二区三区| 国内精品自在欧美一区| 欧美中文字幕在线二区| 青青草原偷拍视频| 欧美不卡在线视频| 中文字幕亚洲专区第19页|