基于單片機與傳感器的機器人設計與實現(xiàn)
機器人技術是融合了機械、電子、傳感器、計算機、人工智能等許多學科的知識,涉及到當今許多前沿領域的技術。一些發(fā)達國家已把機器人制作比賽作為創(chuàng)新教育的戰(zhàn)略性手段。如日本每年都要舉行諸如“NHK杯大學生機器人大賽”、“全日本機器人相撲大會”、“機器人足球賽”等各種類型的機器人制作比賽,參加者多為學生,旨在通過大賽全面培養(yǎng)學生的動手能力、創(chuàng)造能力、合作能力和進取精神,同時也普及智能機器人的知識。
開展機器人的制作活動,是培養(yǎng)大學生的創(chuàng)新精神和實踐能力的最佳實踐活動之一,特別是機電專業(yè)學生開展綜合知識訓練的最佳平臺。本文針對具有引導線環(huán)境下的路徑跟蹤這一熱點問題,基于單片機控制及傳感器原理,通過硬件電路制作和軟件編程,制作了一個機器人,實現(xiàn)了機器人的路徑跟蹤和自動糾偏的功能,并能探測金屬,實時顯示距離。
2 機器人要完成的功能
選取一塊光滑地板或木板,上面鋪設白紙,白紙上畫任意黑色線條(線條不要交叉),作為機器人行走的軌跡,引導機器人自主行走。紙下沿黑線軌跡隨機埋藏幾片薄鐵片,鐵片厚度為0.5~1.0mm。機器人沿軌跡行走一周,探測出埋藏在紙下鐵片,發(fā)出聲光報警,并顯示鐵片距離起點的位置。
3 硬件設計方案
機器人總體構成
圖1機器人總體構成
如圖1所示,以微處理器為核心,接受傳感器傳來外部信息,進行處理,控制機器人的運行。
系統(tǒng)電源供電部分
由于機器人電機,傳感器及系統(tǒng)CPU等部分均采用+5V供電,考慮電動車功率和車載質量及摩擦阻力問題,電源我們采用電動車自帶干電池組,功耗小、體積小和質量輕,安裝較為方便。
電機驅動及PWM調速部分
機器人需控制在一個合適的速度行駛,速度太快,因單片機對各傳感器傳來的信號有一個響應、處理時間,小車極易偏離軌道。小車的速度是由后輪直流電機轉速控制,改變直流電機轉速通常采用調壓、調磁等方式來實現(xiàn)。其中,調壓方式原理簡單,易與實現(xiàn)。
采用由晶體管組成的H型PWM調制電路。通過圖2所示PWM調制電路,用單片機控制晶體管使之工作在占空比可調狀態(tài),實現(xiàn)調速。
圖2 電機驅動電路
令單片機P1.7口為低電平,P1.6口為高電平,此時Q1、Q4導通,Q2、Q3截止,電動機正常工作。改變P1.6口高電平周期,即改變PWM調制脈沖占空比,可以實現(xiàn)精確調速。脈沖頻率對電機轉速有影響,脈沖頻率高連續(xù)性好,但帶負載能力差;脈沖頻率低則反之[2]。經實驗發(fā)現(xiàn),脈沖頻率在30Hz以上,電機轉動平穩(wěn),但小車行駛時,由于摩擦力使電機轉速降低很快,甚至停轉;脈沖頻率在10Hz以下,電機轉動有跳躍現(xiàn)象,實驗證明脈沖頻率在25~35Hz效果最佳。我們選取脈沖頻率為30Hz。
引導線檢測模塊
根據(jù)白紙和黑線反射系數(shù)不同,通過以
光電傳感器為核心的光電檢測電路將路面兩種顏色進行區(qū)分,轉化為不同電平信號,將此電平信號送單片機,由單片機控制轉向電機作相應的轉向,保證小車沿引導線行駛。考慮到小車與路面的相對位置,采用反射式光電檢測電路。
紅外光電傳感器TCRT1000,它是一種光電子掃描,光電二極管發(fā)射,三極管接收并輸出的裝置 .它的特點是尺寸小、使用方便、信號高輸出、工作狀態(tài)受溫度影響小。它的外圍電路簡單,(如圖3所示)。二極管的C端和三極管的E端接地,二極管的A端通過一電阻和電源相接,組成偏置電流電路;三極管的C端也通過一電阻和電源相接,組成輸出電路。當檢測器檢測到白色時,其輸出低電平;當檢測到黑色時,則輸出高電平。
為提高檢測精度,采用了多傳感器信息融合技術。設計中,在車頭均勻布置三個光電傳感器,其中,中間一個(Q1)安裝在小車正中央。Q1的輸出經一級比較器和非門,接單片機的P1.3腳.Q1左右兩端分別布置一個傳感器,經與圖3相同的電路后也連接到單片機P1口。若兩側某一傳感器檢測到黑線,表明小車正脫離軌道,將3個檢測點的結果融合后作為單片機的輸入,機器人按照單片機P1口信息進行判斷調整,實現(xiàn)路徑跟蹤和自動糾偏。
圖3 光電檢測轉換電路
金屬探測部分
圖4 金屬探測電路
如圖4所示,金屬探測器使用一接近開關,探測有效距離約為4mm,將它固定在機器人上,當探測到金屬片時,探測器輸出端輸出低電平,經反向器后接一發(fā)光二極管和一蜂鳴器,發(fā)出聲光指示信號。同時輸出反向后接單片機,對探測到的金屬片個數(shù)進行計數(shù)。
霍爾元件測距設計
霍爾集成片內部由三片霍爾金屬板組成,當磁鐵正對金屬板時,根據(jù)霍爾效應,金屬板發(fā)生橫向導通,因此可以在車輪上安裝磁片,而將霍爾集成片安裝在固定軸上,通過對脈沖計數(shù)進行距離測量。小車后輪每轉一圈,霍爾元件產生的脈沖送入單片機的T0口進行計數(shù),單片機完成脈沖數(shù)到距離的轉換。在后輪安裝一個磁極,測量誤差是一個車輪的周長,可在軟件中給予補償。
LCD顯示
液晶顯示器以其微功耗、體積小、顯示內容豐富、超薄輕巧的諸多優(yōu)點,在袖珍式儀表和低功耗應用系統(tǒng)中得到越來越廣泛的應用。這里采用2行16個字的DM-162液晶模塊,通過與單片機連接,編程,完成顯示功能。
4 系統(tǒng)軟件流程
系統(tǒng)軟件流程如圖5所示。
圖5 系統(tǒng)軟件流程圖
5 結論
本文基于單片機及傳感器原理,以單片機為控制器的核心,小型直流電機作為驅動元件,配置不同類型的傳感器,通過軟件編程,制作出了一個價格低廉、模塊化結構的小型機器人。大量的行走實驗證明,該機器人能夠順利路徑跟蹤和自動糾偏自主行走,并完成探測、顯示等功能。