車璽 孟青 中北大學(xué)(朔州校區(qū))
前言:近幾年來,隨著計算機技術(shù)的迅速發(fā)展以及人們對生活方式快捷便利的需求,人工智能得到了迅速發(fā)展。智能小車也是人工智能的一個重要組成部分。智能小車可運用于智能家具、搬運設(shè)備等多個領(lǐng)域。例如智能掃地機器人,使忙碌的上班族不再因打掃衛(wèi)生而煩惱,大大提高了人們的生活質(zhì)量和水平。為更好地激發(fā)在校大學(xué)生參與智能小車研究的熱情,智能小車一直是近幾年來各種電子設(shè)計競賽的熱點話題。本設(shè)計則是對2018年山西省電子設(shè)計大賽自動循跡小車的設(shè)計與實現(xiàn)。

圖1 整體方案設(shè)計
該系統(tǒng)由STC89C52單片機、L298N電機驅(qū)動模塊、電感式接近開關(guān)、測速傳感器、直流減速電機、LCD12864液晶顯示屏、蜂鳴器、DC-DC可調(diào)穩(wěn)壓模塊組成。通過電感式接近開關(guān)檢測金屬的有無,并將此信號傳給單片機,經(jīng)單片機處理后控制L298N電機驅(qū)動模塊驅(qū)動電機的正轉(zhuǎn)與反轉(zhuǎn)以及蜂鳴器的工作狀態(tài),從而實現(xiàn)循跡功能以及硬幣的檢測。通過單片機定時器對小車運行進(jìn)行精確計時,通過外部中斷對測速傳感器的脈沖數(shù)進(jìn)行精確計數(shù)從而對小車進(jìn)行實時測距,最終由LCD1286實時顯示小車的運行時間、距離以及速度。
2.1.1 金屬傳感器
本設(shè)計采用的金屬傳感器為浙江滬工科技有限公司生產(chǎn)的電感式接近開關(guān)。其型號為LJ18A3-8-Z/BX,輸出形式為NPN三線直流常開,有效檢測距離為8mm,所需電壓為DC6-36V,本設(shè)計中右3節(jié)3.7V鋰電池串聯(lián)為其供電。可以穩(wěn)定地檢測鐵、鎳等磁性金屬,當(dāng)檢測到金屬時向單片機傳回低電平,無金屬時傳回高電平。電感式接近開關(guān)引出的棕色線接正極,蘭色線接負(fù)極,黑色線接單片機的I/O口。
2.1.2 循跡算法
當(dāng)鐵絲位于左右兩個電感式接近開關(guān)下方時,小車直行。當(dāng)鐵絲位于左側(cè)電感式接近開關(guān)下方時,小車左轉(zhuǎn),直到鐵絲位于中間的電感式接近開關(guān)下方,小車恢復(fù)直行。當(dāng)鐵絲位于右側(cè)電感式接近開關(guān)下方時,小車右轉(zhuǎn),直到鐵絲位于中間的電感式接近開關(guān)下方,小車恢復(fù)直行。
本設(shè)計的驅(qū)動系統(tǒng)由4個直流減速電機、2個L298N電機驅(qū)動模塊、3節(jié)3.7V鋰電池以及LM2596S直流降壓模塊固定在一塊亞克力板上組成。3節(jié)3.7V鋰電池串聯(lián)后,經(jīng)LM2596S直流降壓模塊降壓后輸出6-8V的電壓向L298N電機驅(qū)動模塊供電,每個L298N電機驅(qū)動模塊驅(qū)動2個直流減速電機。通過調(diào)節(jié)PWM波的占空比來調(diào)節(jié)直流減速電機的轉(zhuǎn)速,由L298N電機驅(qū)動模塊的ENA和ENB兩個使能端控制電機的轉(zhuǎn)動與停止。由2對信號輸入端IN1、IN2、IN3、IN4控制電機的正轉(zhuǎn)與反轉(zhuǎn)。
2.3.1 硬幣檢測方法
通過使用電感式接近開關(guān)來實現(xiàn)循跡鐵絲,我們發(fā)現(xiàn)電感式接近開關(guān),性能穩(wěn)定且操作簡單,所以硬幣檢測的實現(xiàn)仍然采用電感式接近開關(guān)。檢測辦法為采用有效檢測距離為4mm,直徑為10mm的電感式接近開關(guān)。而1角硬幣的直徑為19.50mm,由于1角硬幣的直徑幾乎為電感式接近開關(guān)直徑的2倍,所以當(dāng)兩個電感式接近開關(guān)同時檢測到硬幣時,刺激蜂鳴器發(fā)聲,從而實現(xiàn)硬幣檢測的功能。
2.3.2 傳感器布局
此設(shè)計采用的電感式接近開關(guān)的外部構(gòu)造由一根螺柱和兩個螺母構(gòu)成,為了增加兩個電感式接近開關(guān)同時檢測到硬幣的概率,將兩個螺母去掉,把電感式接近開關(guān)緊挨著并排固定在一塊洞洞板上,與地面保持有效檢測距離,并用熱熔膠加固。
為了以最低的成本實現(xiàn)最理想的設(shè)計效果,我們先用三個電感式接近開關(guān)并排固定在一起進(jìn)行第一次實驗,往后每進(jìn)行一次實驗加一個電感式接近開關(guān),直到達(dá)到最理想的設(shè)計效果。經(jīng)實驗驗證,當(dāng)6個電感式接近開關(guān)并排放置時,效果較為理想。
2.4.1 顯示屏
此設(shè)計當(dāng)中對于時間、距離、速度的實時顯示采用Nokia 5110液晶顯示屏,它可以顯示15個漢字、30個字符。接口簡單,僅5根I/O線就可以驅(qū)動,工作電壓為3.3V。
2.4.2 時間、距離、速度計量方案
此設(shè)計對于時間的計量采用單片機的內(nèi)部資源定時器;距離和速度的測量采用光電測速傳感器模塊。它可以輸出脈沖信號,一個脈沖信號中斷一次。此設(shè)計當(dāng)中,測速碼盤共20個小格,小車輪胎直徑22cm。所以單片機每接受一次中斷,小車前進(jìn)了(1.1±0.02)cm。
當(dāng)采用內(nèi)圈測距時,所測數(shù)值偏小;采用外圈測距時,所測數(shù)值偏大。為了精確地對小車行駛距離進(jìn)行測量,此設(shè)計采用兩個測速傳感器分別測量內(nèi)圈和外圈地行駛距離,最后求平均值。
計算公式為:(motor1+motor2)/2*(1.1±0.02)
對于速度的測量,則采用單片機定時計數(shù)器,計算出小車每秒所前進(jìn)的距離即為小車的速度。
本設(shè)計由循跡系統(tǒng)、信息顯示系統(tǒng)、硬幣檢測系統(tǒng)組成。各模塊由3節(jié)3.7V鋰電池串聯(lián)組成的直流電源降壓后供電。由于51單片機的主頻較慢,為了更好地達(dá)到設(shè)計效果,本設(shè)計采用3塊單片機作為每個系統(tǒng)的控制核心。
本設(shè)計的程序分為3個部分,分別是循跡程序、信息顯示程序和硬幣檢測程序。程序首先進(jìn)行初始化,循跡程序設(shè)計思路為單片機對金屬傳感器傳回的高低電平做出判斷,以確定小車的實時位置,然后根據(jù)循跡算法對小車的行駛狀態(tài)做出相應(yīng)調(diào)整使小車始終沿預(yù)定軌道行駛 。硬幣檢測程序設(shè)計思路為當(dāng)任意相鄰2個金屬傳感器同時傳回低電平時,刺激蜂鳴器發(fā)聲以提示檢測到硬幣。信息顯示程序設(shè)計思路為由定時器0中斷對小車運行時間進(jìn)行精確計時,定時器1對小車運行速度進(jìn)行顯示,外部中斷0測速傳感器的脈沖數(shù)進(jìn)行計數(shù)以計算出小車的運行距離。各部分程序結(jié)構(gòu)如下圖所示。

圖2 循跡程序框圖

圖3 硬幣檢測程序框圖

圖4 信息顯示程序框圖