張藍兮+潘夢琪+胡又農
摘 要 為了為通用技術課程機器人與創新模塊培養師資,開設智能小車選修課。針對授課對象來源廣泛、基礎知識范圍和水平參差不齊、授課課時少等特點,在教學中改理論灌輸式教學為實踐驅動式教學、改圖形化編程為C語言編程、改虛擬機器人仿真軟件為實際硬件組裝、改模塊化的硬件為基本元器件硬件。整個教學流程包括元器件及工具的獲取、焊接及組裝、實驗研究平臺的搭建、步步為營環環相扣的學習研究、自主探索提高與發展等幾大步驟。實踐表明,基于實踐驅動式的智能小車教學,充分考慮了師范院校本科生的特點,可以有效彌補傳統智能小車教學過程中的不足,在培養學生動手能力和創新精神方面產生良好的效果,具有一定的實踐意義。
關鍵詞 機器人與創新;智能小車;通用技術課程;信息技術
中圖分類號:G652 文獻標識碼:B
文章編號:1671-489X(2017)16-0138-04
Abstract In order to train teachers for the Robotics and Innovation module of general technology, we have set up a smart car elective course. Facing the wide range of students, scope and level of basic knowledge is uneven, less hours of teaching and so on, in the tea-ching, we change indoctrination teaching for practice-driven tea-ching, change the graphical programming for the C language pro-gramming, change the virtual robot simulation software for the actualhardware assembly, change the modular hardware for the basic com-ponent hardware. The whole teaching process includes the acquisi-tion of tools and component, welding and assembly, the construction of the experimental research platform, the step-by-step study and research on independent research and development. Practice shows that, based on the practice-driven smart car teaching, taking full account of the characteristics of undergraduate students in normal colleges and universities can effectively make up for the lack of tradi-tional intelligent car teaching process, in the training of students hands-on ability and innovative spirit to produce good results, a cer-tain practical significance.
Key words robot and innovation; smart car; general technology; in-formation technology
1 引言
隨著時代發展,對人才的需求也不斷發生變化,迫切需要大量創新實踐型人才,基礎教育中的通用技術課程在此背景下應運而生。機器人與創新是通用技術課程中的一個選修模塊,受到眾多學生和教師的歡迎。機器人與創新模塊大多以智能小車為載體展開,在課程中不僅使學生學習到單片機硬件、軟件以及傳感器和控制技術等一些基礎知識,同時給學生帶來豐富的趣味性和進一步探索的熱情。課程打破了傳統乏味的“說教式”教學方式,通過動手實踐,增強了學生主動參與的意識,在“動手”和“動腦”之間建立了緊密的聯系。
為基礎教育培養師資是師范院校的責任和義務。目前,為基礎教育通用技術課程培養師資已經被越來越多的師范類院校所重視。然而與數學、物理等傳統學科不同的是,通用技術在眾多師范院校中尚未形成獨立的學科或專業,通用技術教師的培養仍然是分散地進行,沒有形成完整的體系。
針對通用技術課程機器人與創新模塊的師資培養,首都師范大學及其他部分師范院校開設了智能小車選修課,授課對象大多是教育技術、信息技術、物理、數學等理科生,其中也不乏感興趣的文科生。面對來源廣泛、基礎知識范圍和水平參差不齊的學生,以及授課課時少等特點,如何授課才能使課程順利完成,取得良好的教學效果,并使學生從中獲益,受到學生的喜愛,是值得深入研究和實踐探索的。
2 智能小車教學中存在的問題與改進對策
改理論灌輸式教學為實踐驅動式教學 智能小車雖然小,但是其中蘊藏的知識十分豐富,電子技術、控制技術、機械技術、信息技術、傳感器技術、人工智能技術等均有所體現。通常師范類本科生是不可能全面具備上述知識的,為了彌補基礎知識的缺失,部分教師在授課時用大量課時進行理論知識的講授。由于理論知識相對枯燥、趣味性不強,往往幾堂課下來,學生便失去學習的熱情。
過于偏重理論知識講授的傳統“說課式”教學方式,占用大量的課時,導致實際課時減少,學生只能被動接受教師的知識灌輸,對各種知識的認知只停留在表面,無法通過實踐進行深入學習。因此,筆者認為應該改傳統理論灌輸式教學為實踐驅動式教學。endprint
實踐驅動式教學要求教師在課程前期,通過簡單的實踐激發起學生的學習興趣;在課程中,將理論知識與實踐相結合,“即用即學”與“即學即用”配合,加深學生對抽象理論知識的理解,并通過實踐將理論知識加以應用;更加深入和完整的理論知識學習,則留給學生課下解決。在完成基本教學任務的前提下,教師還可以鼓勵有興趣、有能力的學生結合實踐進行更深層次的探究。在課程后期,教師可以基于所學知識設置相應的任務,根據任務完成情況掌握學生的學習情況。在整個教學過程中,實踐貫穿始終,通過實踐內化理論,可以很好地激發學生的學習熱情和好奇心,既完成教學任務,又可以增強學生的實踐能力和解決問題的能力。
改圖形化編程為C語言編程 程序是實現智能小車各種功能的靈魂,通過設計和編寫程序,可以培養學生良好的思維能力和創新精神,這也是開設智能小車課程的重要目的。因此,程序設計是智能小車課程中至關重要的環節。
當前,很多智能小車教學中采用圖形化的編程軟件進行程序設計,但由于本科生已經具備使用C語言編程的基本能力,因此,對本科生而言,使用圖形化的編程軟件太過簡單,既不能提高設計程序能力,也不能培養思維能力和創新精神。同時,采用圖形化編程軟件編寫的程序可移植性差,依賴于特定的硬件,不利于學生以后進行深入學習。因此,筆者建議改圖形化編程為C語言編程。
由于C語言的實驗環境是在字符方式下進行的,實驗過程比較枯燥,實驗結果表示單調,容易導致學生學習熱情不高,最終影響學生綜合應用能力的提高[1]。在智能小車課程中選用C語言作為編程語言,將智能小車與C語言代碼結合起來,可以有效彌補C語言實驗過程枯燥、實驗結果表示單調的不足,既能給學生帶來一定的挑戰性,激發他們的學習動機,又可以使學生快速上手,避免學習新語言帶來的難度和時間的消耗成本。隨著課程的進行,學生綜合運用C語言的能力也有了很大的提升。
改虛擬機器人仿真軟件為實際硬件組裝 除培養學生良好的思維能力和創新精神外,培養學生的動手能力也是開設智能小車課程的重要目的之一。通過智能小車的硬件組裝,可以充分培養學生的動手能力和探索精神。同時,選修本課程的師范類院校本科生未來很可能負責基礎教育中機器人與創新模塊的講授,在未來的授課中也避免不了帶領學生進行實踐和對小車進行改裝。因此,智能小車的硬件組裝環節是智能小車教學中不可或缺的一部分,缺乏硬件組裝環節的智能小車教學和紙上談兵別無二致。
當前,有些學校為了縮減課程開銷,采用虛擬機器人仿真軟件代替硬件組裝[2]。學生接觸不到實際的硬件,不能親手組裝,體驗不到一輛小車在自己手中誕生的成就感,也就無法鍛煉動手能力和探索精神。缺乏硬件組裝過程,學生也無法獲得感性認識,對下一步學習和探索的積極性也會大打折扣。同時失去了解決組裝過程中出現各種突發狀況的機會,同樣不利于學生對知識的獲取,也不利于學生未來的發展和開展教學。
改模塊化的硬件為基本元器件硬件 在智能小車教學的硬件選擇上,大多數學校都選擇樂高等模塊化的硬件器材。模塊化的硬件器材封裝了所有元件,采用模塊化的硬件器材進行教學,學生在學習過程中缺乏對底層硬件的感知,無法了解智能小車的硬件結構體系、機械結構以及控制系統的原理與結構,不利于學生深入地學習和靈活運用,嚴重影響教學效果,更不利于學生創新精神的形成。
目前,市面上有多種可供選擇的智能小車。在智能小車的選擇方面不能只關心功能是否多、性能是否高,是否適合教學、是否適合學生才是需要重點考慮的內容。就小車功能而言,重點關注循跡功能、遙控功能和避障功能,由于攝像、尋光、平衡等功能未安排在課程中,因此不做過多考慮。就小車結構而言,課程安排了元器件焊接、機械組裝等環節,因此考慮購置散件,而非組裝好的成品。此外,在選購小車時還考慮了成本、可維修性等諸多因素。總之,選擇一款合適的小車,是決定課程能否順利進行的關鍵環節。
在選購中,主控單元選用STC89C52單片機作為控制核心。STC89C52單片機使用經典的MCS-51內核。MCS-51資料完備,體系成熟,價格便宜,學習難度低,適合應用于教學之中[3]。
避障模塊方面采用超聲波避障和紅外避障。選擇超聲波模塊時,通過超聲波的發射和接收,還可以對障礙物的距離做出判斷并顯示。紅外避障模塊選擇F5紅外發射管和F5紅外接收管,均為市面常見的LED產品,價格便宜,易于學生購買。
循跡模塊方面選用兩個發光二極管進行左右地面的勘測,綜合單片機查詢方式,通過程序控制小車輪胎的轉動,從而使小車實現沿路徑移動的功能。
電機方面采用兩個直流減速電機。直流減速電機具有轉動力矩大、體積小、重量輕、裝配簡單、使用方便等優點,適合學生進行組裝。
電源模塊方面采用充電寶或計算機供電,也可以選擇電池組進行供電,學生可以根據需求自行選擇。
3 實踐驅動式的智能小車教學流程
元器件及工具的獲取 組裝智能小車,除了需要必要的元器件外,還需要一些特殊的組裝工具,如電烙鐵、螺絲刀等。課程所需的元器件及工具均可在網上進行購買,且商家會提供多種套餐服務,在一定程度上降低選擇購買的難度。但網上提供的套餐多種多樣,質量也參差不齊,大部分非專業的學生不具備辨別的能力。因此,在課程開始前,教師可根據教學的實際需求,為學生選擇合適的智能小車類型和組裝工具,給他們提供購買清單,讓學生自行購買。通過前期購買,學生會對各種元器件、工具和最終成品有一個初步的感性認識,從而激發好奇心和學習興趣,為后面的教學奠定一定的基礎,有利于后面教學的順利進行。
焊接及組裝 要想組裝好一輛智能小車,焊接工作必不可少。盡管本科生具備一定的操作能力和安全常識,但由于選修此課程的學生大多是教育技術、信息技術、物理、數學等理科生,和一些對智能小車感興趣的文科生,除少部分信息技術和物理學專業的學生接觸過焊接外,其他學生均未在本科學習過程中體驗過焊接,因此在焊接電路之前,教師要先介紹一下焊接的基本方法和注意事項,然后讓學生自己動手焊接每一個元器件。在焊接過程中,教師要把握好學生的整體進度,隨時檢查學生的焊接情況,避免給下一步的教學留下隱患。教師還可以挑選出幾名焊接技術優異的學生充當助手,幫助其他學生解決焊接時出現的問題。endprint
選修智能小車課程的學生大多是第一次接觸焊接和組裝,焊接的體驗可以極大地激發學生學習的興趣,提高學生的實踐能力。同時,通過處理焊接過程中出現的各種各樣的問題,學生還可以掌握更多的理論和實踐知識,增強解決實際問題的能力。組裝的體驗有助于學生了解智能小車的硬件結構體系、機械結構以及控制系統的原理與結構,還可以體會到一輛小車在自己手中誕生的成就感,為學生深入學習和創新打下堅實的基礎。
實驗研究平臺的搭建 智能小車的焊接與組裝僅是智能小車課程的一部分。組裝完成后,緊接著要通過調試,讓小車順利地實現循跡、尋光、避障等功能。在此過程中,需要使用專門的程序燒錄工具將事先寫好的程序燒錄到小車中,從而實現小車的多種功能。通過程序燒錄,可以令學生直觀地看到自己的小車動起來并做出多種智能反應,使學生體驗到強烈的喜悅感和自豪感,由此維持學生的學習興趣和熱情,為接下來的編程做鋪墊。
市面上針對智能小車的編程軟件有很多,此次選擇的是Keil C51軟件。Keil C51軟件具有豐富的庫函數、強大的集成開發調試工具和全Windows界面,可以為學生的編程降低難度;同時,顯示更加簡潔、方便,易于學生接受并快速上手。
步步為營、環環相扣的學習研究 在以往的C語言教學中,大量的課時用于理論知識的講授,只有少部分課時用于上機實驗,但由于上機次數少、單次上機時練習的內容多,導致很多學生獨立編程時往往以失敗告終,以至于大多數學生過分依賴課本案例,沒有獨立編程和調試的經驗,對前面所學知識掌握不透徹,也沒有建立起良好的編程思想。針對這種情況,此次采取理論知識講授與上機實驗相結合的方式,每節課進行相應知識點的講解,然后立即配以編程,出現問題即刻解決。同時,在課程講授方面,先由實現簡單功能的程序入手,然后過渡到復雜功能,循序漸進,從而不斷保持學生的學習積極性和學習興趣,增強學生的設計開發能力。
以實現LED燈的閃爍為例進行說明。在焊接階段,學生已經對LED燈有了初步的了解,所以授課時不必再對LED燈做過多的介紹,只需介紹單片機輸出端口的控制原理以及高低電平的概念,隨后結合C語言,講解程序的編寫過程和重難點部分,給學生建立一個流程框架。講解結束后,讓學生結合所學知識自行編寫LED燈的閃爍程序,燒錄到小車中,驗證程序編寫是否正確。若未實現目標功能,可先由學生自主反思,找出原因,進行修改,也可視具體情況由教師直接給予幫助。
在整個教學過程中,理論知識的講解只是其中的一小部分,學生自行編程和調試修改才是教學過程的重點。但是學生后期的編程離不開教師前期的講解,這樣可以很好地調動學生的學習積極性和求知欲。同時,通過編程,有助于培養學生的思維能力和創新意識。在隨后進行的反思和修改環節中,學生通過對程序進行檢查和修改,會加深對理論知識的理解和應用,還能增強學生的探索意識。最終通過修改獲得成功,學生能收獲滿滿的成就感,增強解決問題的能力。
在之后的每節課中,都可以慣用此教學流程——講授新知→編程練習→燒錄檢驗和修改反思。同時,可以逐步加深課程難度,在實現LED燈閃爍的基礎上,加入數碼管的顯示功能,還可以在此基礎上,進一步實現將小車傳感器的邏輯狀態通過數碼管顯示出來,以完成小車傳感器信號檢測部分的全部程序。
在小車傳感器信號檢測部分程序正確完成的情況下,可以開始小車電機部分程序的編寫,如控制前進、后退、轉彎等小車運動的基本控制程序。
信號檢測與基本控制程序都以函數的形式一個個地調試完成,此時便可開展小車運動算法方面的學習和研究,如躲避障礙物、沿特定軌道前進、走迷宮等。由于信號檢測與基本控制程序都是經過調試的正確函數,因此在編寫小車運動程序時,可以把精力全部放在算法研究上,無須在信號檢測和基本控制上花費精力。
通過步步為營、循序漸進的講授和實踐,學生在不知不覺中便完成一個上百行的程序,很多學生都很驚訝,自己怎么如此“偉大”?
自主探索、提高與發展 智能小車選修課的課時是有限的,所教授的知識、實現的功能也是有限的,但是智能小車所包含的知識遠不只此,這就需要學生在課后不斷進行自主探索,學習更多的相關內容,不斷充實自己,獲得提高。
到了學期后期,教師可以安排一些自主探索的時間,讓學生自主探索一些前面課程沒有涉及的內容,如藍牙無線遙控、電機調速、PID控制等;也可以讓學生自主舉辦小車比賽,以提高他們參與學習的積極性,激發深入探索的熱情。
4 總結
綜上所述,實踐驅動式的智能小車教學模式充分考慮了師范院校本科生的特點,通過實踐與理論相結合,改變了傳統智能小車教學中的不足,使智能小車的教學更加有效和有趣,在培養學生的動手能力和創新精神方面取得積極的效果,具有一定的實踐意義。
參考文獻
[1]尹華,肖隨貴.在C語言實驗課程中引入教育機器人的教學改革思考[J].教育與職業,2009(33):182-183.
[2]張瑞芳.西安市中學機器人教學的開設現狀與發展對策研究[D].西安:陜西師范大學,2016.
[3]張兵.MCS-51單片機構建機器人的實踐研究[D].武漢:華中師范大學,2006.endprint