陳世海, 王 軍, 代 偉, 牛小玲, 毛會瓊, 李 明
(中國礦業(yè)大學 信息與控制工程學院, 江蘇 徐州 221116)
大一是學生從高中階段到大學階段的轉(zhuǎn)折期,同時也是大學生發(fā)展最為關(guān)鍵的時期[1]。研究表明,大學生的成功與否在很大程度上取決于其在大一時期的經(jīng)歷[2]。對于以實踐為根本特征的高等工程教育[3],大一時期獲取的專業(yè)知識和早期工程體驗[4-5],不僅可以加強學生對專業(yè)的認同感,而且可以有效地激發(fā)專業(yè)學習興趣,促使其完成從以追求好成績?yōu)槟繕说谋粍邮綄W習[6],向以探究科學知識、解決復雜工程問題為目標的主動式學習快速轉(zhuǎn)變。
然而,現(xiàn)有工程教育體系基本沿用了科學教育模式,在教學活動的組織與安排上,過于強調(diào)知識的系統(tǒng)性和完備性[7],所以大一階段的課程側(cè)重于培養(yǎng)學生數(shù)理基礎,從而導致大一學生被置于專業(yè)學習的大門之外。盡管面向大一學生開設的專業(yè)概論或者導論等類似課程或者講座,能夠提升學生對專業(yè)的認知度和學習興趣[8-14],但這類課程通常是范圍廣、學時少,同時又沒有相應的實踐環(huán)節(jié),無法給學生提供清晰的專業(yè)認知和切身的工程體驗。
為了解決這一問題,結(jié)合電氣信息類專業(yè)大一下學期開設的智能機器人導論課,秉承“以學生為中心,以產(chǎn)出為導向”的教學理念,并針對大一學生專業(yè)知識薄弱、實驗技能欠缺的特點,以《工程教育認證標準》[15]所提出的“畢業(yè)要求”為抓手,設計了基于Arduino UNO[16]的車形機器人綜合性實驗,以幫助學生盡早跨進專業(yè)大門、增強專業(yè)認同感,并促使大一學生向以解決復雜工程問題為目標的主動式學習轉(zhuǎn)變。
實驗設計遵照《工程教育認證標準》,以培養(yǎng)學生解決復雜工程問題能力為核心,主要從“工程知識”“問題分析”“設計/開發(fā)解決方案”“研究”“使用現(xiàn)代工具”“溝通”“終身學習”等8個方面的畢業(yè)要求出發(fā),設計實驗的具體內(nèi)容與要求。同時,考慮到大一學生幾乎沒有任何專業(yè)知識和工程經(jīng)驗,所以在實驗教學目標的設定、教學內(nèi)容的選取以及教學活動的組織上,又與面向高年級學生開設的綜合性實驗有著很大的差別。
首先,實驗的教學目標不是側(cè)重于傳授某些專業(yè)知識或是培養(yǎng)某種專業(yè)技能,而是側(cè)重于給學生提供一種早期的工程體驗,通過這種專業(yè)上的切身經(jīng)歷,使學生構(gòu)建起專業(yè)基本框架,明確專業(yè)學習方向與方法,并在解決實驗問題過程中體驗精神滿足感、激發(fā)專業(yè)學習興趣。
其次,在教學內(nèi)容的選取上要充分考慮大一學生專業(yè)知識匱乏、實驗技能欠缺的現(xiàn)狀,實驗不能涉及過于繁雜的專業(yè)細節(jié),同時又要兼顧實驗的綜合性與趣味性。所以,選擇基于Arduino UNO的車形機器人作為實驗對象,其積木式的硬件和基于API的軟件開發(fā),屏蔽了大部分硬件和軟件設計細節(jié),極大地降低了對學生專業(yè)基礎的要求,進而使學生能夠更多地專注于機器人的控制、循跡與避障等功能的實現(xiàn)。
最后,在教學活動的組織上,將整個實驗分成3個階段開展。第一階段為實驗準備階段,講授并指導學生使用文獻檢索工具獲取實驗相關(guān)工程原理與知識,指導學生以小組方式構(gòu)建學習共同體,同時明確實驗要求及考核方式;第二階段為實驗操作階段,重點引導學生應用準備階段獲取的專業(yè)知識,去分析、討論、探究并嘗試解決車形機器人控制、循跡以及避障時所出現(xiàn)的問題;第三階段為實驗總結(jié)階段,采用小組答辯的方式,重點從專業(yè)知識獲取、團隊管理與運作、實驗問題探究與解決等方面闡述心得體會。同時強調(diào),實驗報告要著重反映對實驗中遇到的各種故障、“異常”現(xiàn)象的探究與解決過程。
車形機器人主要由底盤、支架、車輪、電機和運動控制電路等部分組成。車形機器人運動控制電路結(jié)構(gòu)如圖1所示。其中紅外循跡單元用于檢測車形機器人相對于軌跡線的位置;超聲測距單元用于檢測同前方障礙物的距離;電機驅(qū)動單元用于驅(qū)動車輪直流電機;電源部分采用7.4 V鋰電池組為整個系統(tǒng)供電; Arduino UNO是系統(tǒng)的運算與控制核心,通過檢測紅外循跡和超聲測距輸出信號,判斷機器人當前位置狀態(tài),并據(jù)此控制電機轉(zhuǎn)向和轉(zhuǎn)速,從而實現(xiàn)循跡與避障。

圖1 車形機器人運動控制電路結(jié)構(gòu)
車形機器人采用Arduino UNO作為傳感與控制平臺。Arduino UNO是以ATmega328P微處理器為核心的開源硬件平臺,具有14個數(shù)字量輸入輸出接口(其中6個接口可以輸出PWM信號)、6個模擬量輸入接口、32 KB的Flash Memory、2 KB的SRAM以及1 KB的EEPROM。Arduino UNO通過應用程序編程接口(application programming interface,簡稱API)封裝了對ATmega328P寄存器級的操作,通過這些API可以直接完成功能級的編程。編譯后的程序代碼可以通過Arduino UNO自帶的USB接口,直接下載到ATmega328P,不需單獨的編程器,在不需要下載時,該USB接口還可以用于同計算機進行串行通信。車形機器人超聲避障傳感器通過PIN8、PIN9與Arduino UNO相連,其中PIN8設為輸出模式,用于控制超聲波信號的發(fā)射,PIN9設為輸入模式用于接收超聲波回波信號。車形機器人共有2個紅外循跡傳感器,分別與管腳PIN2、PIN6相連,這2個管腳均設為輸入模式;驅(qū)動部分共占用6個管腳,其中PIN14—PIN17設定為輸出,用于控制電機轉(zhuǎn)向,PIN5和PIN3用于控制電機轉(zhuǎn)速。
避障單元采用了超聲測距傳感器,該傳感器主要由超聲波發(fā)射、接收以及控制電路組成。Arduino UNO通過PIN8向傳感器的TRIG管腳發(fā)出一個觸發(fā)信號,超聲發(fā)射部分即發(fā)出40 kHz的超聲波信號,超聲波信號遇到前方障礙物將被反射回來,接收部分收到回波信號后產(chǎn)生一個高電平,并通過ECHO腳反饋至PIN9。設超聲波在空氣中的傳播速度v, Arduino UNO記錄的超聲波傳播時間t,則車形機器人與前方障礙物之間的距離S=(v·t)/2。需要說明的是,超聲波在空氣中的傳播速度并不是固定不變的,在需要精確測量到障礙物的距離時,需要考慮溫度對超聲傳播速度的影響,并進行修正。
紅外循跡傳感器主要由紅外發(fā)射管、紅外接收管和電壓比較器構(gòu)成,傳感器根據(jù)預鋪軌跡線和地板對紅外光具有不同的反射率來實現(xiàn)循跡。實驗中采用黑色電工膠帶在實驗室淺色瓷磚地面鋪設行駛路線。當發(fā)射管和接收管在瓷磚上方時,紅外光被地面反射回來的光強就高,接收管輸出的電壓就高;當發(fā)射管和接收管在預鋪的軌跡線上方時,紅外光大部分被黑色膠帶吸收,導致接收管輸出的電壓降低。接收管輸出的電壓進入比較器和預設參考電壓比較,輸出與光強對應的電平信號。實驗所用紅外循跡傳感器輸出高電平表示反光弱,而低電平則表示反光強。傳感的靈敏度,可以通過旋轉(zhuǎn)可調(diào)電位器改變比較器的輸入?yún)⒖茧妷簛韺崿F(xiàn)。車形機器人共有一左一右2個紅外傳感器,通常采用跨線行駛方式,即傳感器位于軌跡線兩側(cè),當某一側(cè)循跡傳感器輸出低電平時,即說明車形機器人偏向該側(cè)。根據(jù)兩側(cè)傳感器輸出的信號即可判斷出機器人是否偏離行駛軌跡。
車形機器人采用四輪驅(qū)動方式,為簡化系統(tǒng)設計,同側(cè)車輪的直流電機采取并聯(lián)方式,這樣使用一塊雙H橋的L293D驅(qū)動板即可實現(xiàn)直流電機驅(qū)動。車形機器人的前進、后退、轉(zhuǎn)彎,以及調(diào)速都是通過Arduino UNO向L293D驅(qū)動板發(fā)出控制信號實現(xiàn)的。圖2為L293D芯片H橋驅(qū)動原理。L293D的使能管腳ENA和控制管腳IN2為“1”、IN1為“0”時,三極管T2和T3導通,電流從電源“+VS”端經(jīng)T3流向電機“+”極,然后再從電機“-”極經(jīng)T2流回電源GND端,此時電機正轉(zhuǎn);同理,T1和T4導通時,電機反轉(zhuǎn)。轉(zhuǎn)彎時,一側(cè)電機停轉(zhuǎn),另一側(cè)電機轉(zhuǎn)動即可以實現(xiàn)向停轉(zhuǎn)電機一側(cè)轉(zhuǎn)向。電機調(diào)速采用PWM方式,即Arduino UNO按固定周期向ENA管腳輸出“1”或“0”,使電機接通或斷開電源,通過改變一個周期內(nèi)“1”的持續(xù)時間改變電機接通電源的時長。只要周期選擇合適,電機即可以在這種周期性脈沖作用下連續(xù)運轉(zhuǎn),電機的轉(zhuǎn)速取決于一個周期內(nèi)的通電時間。需要說明的是,同側(cè)直流電機采用相向安裝方式,所以兩個電機必須異號并聯(lián),即一個電機的“+”和另一個電機的“-”并聯(lián),否則同側(cè)車輪相向或者背向旋轉(zhuǎn)將導致機器人無法運動。

圖2 L293D芯片H橋驅(qū)動原理
實驗采用3~4人的團隊形式,圍繞《工程教育認證標準》提出的具體畢業(yè)要求,按照實驗準備、實驗操作和實驗總結(jié)3個階段展開。實驗主要內(nèi)容及考核方式見表1。
(1) 實驗準備階段。該階段主要從“工程知識”“設計/開發(fā)解決方案”和“終身學習”等3個方面的畢業(yè)要求出發(fā),引導學生分解實驗任務,通過查閱文獻、小組討論等方式,自學車形機器人驅(qū)動、循跡和避障等方面的理論知識,并進一步設計出循跡和避障程序流程圖及代碼,同時給出具體的實驗方法和步驟。最后將相關(guān)理論知識、程序流程圖和實驗步驟等整理至實驗預習報告。指導教師審核實驗預習報告并給出預習成績,對于不合格的小組,指出其存在問題并進行有針對性的指導,待其修改并通過審核后方可進入操作階段。
(2) 實驗操作階段。該階段主要從“使用現(xiàn)代工具”“問題分析”“研究”和“溝通”等4個方面的畢業(yè)要求出發(fā),指導學生完成車形機器人組裝、循跡以及避障等實驗要求。同時考慮到學生能力的差異性,操作階段的實驗內(nèi)容和要求,按難易程度劃分為基礎、拓展和提高3個部分。指導教師按表1中的考核內(nèi)容與分值,根據(jù)學生的實際操作情況和實驗結(jié)果評定操作成績,并對實驗結(jié)果不理想的小組進行有針對性的指導。

表1 實驗主要內(nèi)容及考核方式
(3) 實驗總結(jié)階段。該階段側(cè)重于“問題分析”“研究”和“溝通”3方面的畢業(yè)要求。各小組采用答辯方式匯報實驗中所遇到的問題及其分析與解決過程,以及實驗心得體會等,指導教師針對答辯情況并予以現(xiàn)場點評并核定答辯成績,1周后以小組為單位提交實驗報告(附小組分工、源代碼及討論紀要等)。
面向大一的機器人綜合性實驗,選用了適于大一學生開發(fā)使用的車形機器人套件作為實驗平臺,遵照《工程教育認證標準》要求,以學生為中心,以產(chǎn)出為導向,以畢業(yè)要求為抓手,針對大一學生專業(yè)基礎薄弱的特點設計了具體的綜合性實驗方案。近3年的教學實踐表明,實驗不僅提高了大一學生對專業(yè)的認知度、認同感和學習興趣,而且給學生提供了一種早期工程體驗,明確了專業(yè)學習方向和學習方法,為畢業(yè)要求的達成和培養(yǎng)目標的實現(xiàn)奠定了良好的基礎。在2017年全國電工電子基礎課程實驗教學案例設計競賽中,該實驗榮獲電子綜合設計類二等獎。