袁正道 趙 恒
(河南廣播電視大學,河南 鄭州 450008)
循跡避障小車在單片機教學中的應用
袁正道 趙 恒
(河南廣播電視大學,河南 鄭州 450008)
針對傳統(tǒng)單片機教學過程中存在的學生學習興趣不足、實訓與實際工程應用脫節(jié)、硬件設備昂貴和設備維護工作量大等問題,本文提出了一種項目驅動教學法。通過設定幾個難度依次提高的目標,使學生在具體項目中不斷建立信心、提高實踐能力。經過幾個學期的實踐,該實訓方法在教學中取得了良好的效果。
循跡避障;單片機;項目驅動教學法
近年來,單片機在汽車、通信、家用電器等領域的應用發(fā)展異常迅速,企業(yè)對單片機系統(tǒng)軟硬件設計方面的人才需求也日益增加,這對學校人才培養(yǎng)方面提出了更高的要求。現(xiàn)階段普通高校的單片機教學有兩種主要形式:
(1)運用proteus軟件進行仿真教學。這種形式非常適合于課堂教學演示,它能向學生直觀地展示單片機的硬件連接和軟件的運行過程等;但其缺點即是proteus軟件中庫元件有限,并且也不能仿真出工程應用中的實際問題,比如低功耗、按鍵抖動等。
(2)在單片機實驗箱中做驗證性實驗。這種形式比軟件仿真更接近真實情況,能讓學生觀察到單片機的實際尺寸、元件布局等。通過這兩種形式的結合,即上課時運用proteus軟件仿真,實驗時在實驗箱上進行仿真實驗,能有效地提高學生對單片機系統(tǒng)的認識和編程熟練程度。但這兩種形式也存在兩點主要的不足之處:第一,在軟件仿真和實驗箱中只能做一些驗證性實驗,如IIC總線、AD轉換、溫度傳感器等,并不能激起學生的學習興趣,導致一部分學生對課程失去熱情,最后喪失了信心。第二,在實驗箱中做實驗時,學生往往只關注程序的下載方式或特定外圍設備的鏈接方法等,而對單片機的引腳分配、電源選擇、抗干擾、成本控制等具體的工程問題不作深入的探究,這樣導致了學生在遇到具體的單片機項目時感到無從下手,沒有一個整體思路。
為了解決上述問題,本文提出了在單片機教學過程中引入項目驅動教學方法,具體來說就是找出能激發(fā)學生學習熱情的項目,而且此類項目要能實現(xiàn)功能的擴充,即設定幾個難度不斷提高的目標,可以使學生在實踐中不斷樹立信心,最終掌握一個典型單片機系統(tǒng)的整體設計。
筆者在單片機課程設計中選定的題目是 《智能循跡避障小車》(以下簡稱小車)。小車由以下幾個模塊組成:單片機最小系統(tǒng)板、電機驅動板、循跡傳感器、數碼管顯示、紅外避障傳感器、霍爾測速傳感器和超聲波測距傳感器等。電路結構框架如圖1所示:
下面結合原理圖介紹循跡、避障、測速等傳感器模塊的工作原理。其中循跡傳感器的原理圖如圖2所示,具體工作原理是:
圖中D1為紅外發(fā)光二極管,D2是紅外接收三極管,D1和D2之間的光并不是直接傳輸,而是依靠地面反射。當地面為白色時,D2能接收到地面反射的紅外光,其電阻變小,則比較器C1的負輸入端電壓Un減小。當Un小于正輸入端電壓Up時,輸出電壓為高電平;反之當地面為黑色時D2不能收到反射的紅外光則Un大于Up,輸出低電平。所以可以從輸出端電壓值判斷地面上的黑線跡線的有無??勺冸娮鑂3可以調節(jié)Up基準值,用于調節(jié)探測靈敏度。這樣的循跡探頭可以在小車前端并排放置5路或者更多,單片機讀取5路探頭的電壓值就能判定車輛和黑色跡線的位置關系。當跡線位于小車正中間位置時控制小車直行;當發(fā)現(xiàn)跡線位于小車偏右方向時控制小車右轉,反之則控制小車左轉;從而控制小車隨時根據黑色跡線的方向調整自身位置,最終實現(xiàn)循跡功能。
電動機正反轉控制電路原理圖如圖3所示。圖中由4個三極管連接成電橋,直流電動機接在中心橋臂上。當控制IN1、IN2輸入為00時,Q1、Q3截止,電動機兩側電壓為零,電動機停轉。當輸入為01時,Q3、Q2導通,電動機內部電流方向為自右至左,電動機反轉。輸入為10時Q1、Q4導通,電動機電流方向為自左至右,電動機正轉??刂七壿嬋绫?所示。小車行走控制由兩塊H橋組成,當兩個電動機都正轉時小車直行,一正一反時小車轉彎。
測速功能的實現(xiàn),可以根據車架的結構在合適的位置安裝傳感器。例如有一款小車傳動齒輪位置比較突出,學生可以在齒輪上鉆出一個孔,將一個光斷續(xù)器卡在鉆孔的位置。光斷續(xù)器連接電路如圖4所示,當發(fā)光管和接收管之間沒有隔斷時光電三極管導通輸出低電平,反之光通路被隔斷后三極管截止輸出高電平。當齒輪轉到鉆孔所在位置時光通路暢通,輸出低電平,反之輸出高電平。單片機不斷查詢光斷續(xù)器輸出端,當發(fā)現(xiàn)上升沿時就能判斷齒輪已經轉動一圈。通過測量齒輪轉動一圈小車行駛的距離,再除以轉動一圈的時間就能得到行駛的瞬時速度。另外有一款小車底座傳動齒輪封裝在所料殼內,沒辦法安裝光斷續(xù)器,學生在車輪上安裝磁鐵,在車架上安裝霍爾傳感器。每次車輪旋轉到傳感器位置,單片機就能收到一個觸發(fā)信號。單片機統(tǒng)計在單位時間內車輪的轉動次數,乘以車輪周長,也能計算出小車的瞬時速度。最終將小車的瞬時速度通過七段碼顯示出來。
表1 電機控制邏輯表
避障功能的實現(xiàn)可以有多種選擇,可以選擇超聲波傳感器或紅外避障傳感器。紅外傳感器結構簡單造價低廉,但是測距精度比較低,而且測距精度于被測物體的顏色有直接關系,導致當障礙物顏色比較深時避障效果較差。超聲波測距精度高,只是成本較高,單片機程序復雜。本實訓課程中讓學生自由選擇,在此只簡要介紹超聲波傳感器測距原理。超聲波傳感器有4個引腳,分別是電源、地、觸發(fā)輸入和回響輸出。首先單片機需要向觸發(fā)引腳輸出觸發(fā)脈沖 (寬度在10到20微秒),然后超聲波傳感器就開始向外發(fā)射40KHz的超聲波。當接收探頭收到被測物反射回來的超聲波后響應引腳輸出一個高電平,持續(xù)時間和超聲波從發(fā)射到接收的時間間隔相等。單片機只需要統(tǒng)計回響引腳的高電平時間,再乘以超聲波在空氣中的傳播速度就能得到被測物與超聲波傳感器之間的距離。在車架四周安裝多個超聲波探頭,單片機周期性的查詢距離四周障礙物的距離。再根據距離信息調整小車的行進方向,從而避免碰撞。
單片機的程序方面,只需要周期性的查詢5路循跡探頭電平高低,判斷小車和黑色跡線的位置關系,然后驅動左右兩路電動機正反轉,即可使小車實現(xiàn)循跡功能。
綜上所述,以循跡避障小車為基礎平臺,涵蓋單片機教學的整個流程,從電源、模擬電路設計到單片機程序開發(fā)、傳感器選擇等各個環(huán)節(jié)。學生的積極性在這個項目的設計過程中被充分地調動起來。學生可以發(fā)揮自己的想象力對循跡小車的功能進行擴充,例如在本年度的教學中,給學生布置的基本任務是實現(xiàn)循跡小車,后續(xù)功能自行開發(fā)。學生通過網絡查找相關資料,獨立設計出了測速、避障、超聲波測距、紅外遙控等各種功能,取得了很好的教學效果。
[1]張艷玲.Keil與Proteus在高職單片機教學中的應用[J].器械管理開發(fā),2011,(5).
[2]張瑋,李眾.高職高專基于寶貝車機器人的單片機課程改革[J].現(xiàn)代企業(yè)文化,2008,(29).
[3]李占芳,黃嘉興.面向煤炭應用型人才的單片機課程教學改革探索[J].價值工程,2011,(7).
[4]石明江,顧亞雄,張禾.單片機原理與應用課程教學改革與實踐[J].計算機教育,2011,(6).
[5]翟永前,蔣芳芳.基于MSP430單片機的智能數字電壓表設計[J].化工自動化及儀表,2011,(3).
[6]許超,吳新杰,張丹.基于Proteus和Keil的單片機課程教學改革[J].遼寧大學學報(自然科學版),2011,(1).
G424.1
A
1671-2862(2012)03-0111-02
2012-01-15
袁正道,男,河南廣播電視大學助教,研究方向:嵌入式技術與應用;趙恒,男,河南廣播電視大學講師,研究方向:嵌入式技術與應用。