王上飛
程序設計是中小學信息技術教育的重要內容之一。基礎教育階段的程序設計教學主要是培養(yǎng)學生學習程序設計的興趣,培養(yǎng)學生用程序設計的思想去分析問題、解決問題的能力。近年來,仿真虛擬機器人軟件不斷發(fā)展,其在原來實體機器人編程平臺的基礎上,加入了用計算機模擬的機器人、場景及機器人行為活動的功能模塊,使人們在仿真虛擬平臺上可直觀地看到機器人程序的執(zhí)行效果。
易時代3D仿真虛擬機器人軟件是由廣州市教育信息中心規(guī)劃設計,廣州市財政投資,委托廣東南方數碼科技有限公司開發(fā)的集機器人教學、實驗和競賽管理于一體的虛擬機器人教育平臺,供廣州市所有中小學校免費使用。該軟件具有較強的趣味性、互動性、競技性和娛樂性。筆者以廣州市易時代3D仿真虛擬機器人軟件為例,談談仿真虛擬機器人軟件在小學信息技術程序設計教學中的作用。
興趣是影響教學活動的主要因素。人們一旦對某一事物產生濃厚的興趣,就會主動地去求知,去探索,去實踐。一般程序設計內容比較抽象,由于小學生的思維特點是以直觀形象思維為主,并逐步向抽象邏輯思維過渡。所以,小學生往往在學習傳統(tǒng)的程序設計時感到枯燥、難懂,大大降低學習的興趣。
圖1 圖形化編程界面
圖2 五角星路徑效果
仿真虛擬機器人軟件采用的是圖形化編程界面和直觀的流程圖編程(如圖1所示),學生不再是對著一些乏味的字母和符號。學生還可以利用仿真系統(tǒng)的仿真功能即時看到編程的效果(如圖2所示)。同時,仿真虛擬機器人軟件采用了生活化的情景主題任務,如2009年以“虛擬滅火”為主題,2010年以“虛擬火炬?zhèn)鬟f”為主題,2012年則以“虛擬校車”為主題,為程序設計的學習增添了趣味性。因此,仿真虛擬機器人軟件比起傳統(tǒng)的程序設計語言能夠大大提高小學生學習程序設計的興趣。
學習程序設計最重要的是學習算法和結構化程序設計的思想。尤其是小學生,小學生學習程序設計重點應放在理解程序設計的基本概念和基本結構上,應重算法輕語法,注重運用算法思維和結構化程序的思想去分析問題、解決問題。在使用仿真虛擬機器人的程序設計教學中,仿真虛擬機器人軟件能夠為程序設計教學營造良好的程序實踐環(huán)境,學生在設計程序后,能從虛擬機器人的行為中得到即時反饋,學生再根據這些反饋修改程序。這樣,學生就經歷了一個“思考—實踐—再思考—再實踐”的反復的人機交互過程,直到目標程序的實現(xiàn)。仿真虛擬機器人軟件在此過程中能夠幫助學生理解并形成程序設計的思想。
以機器人簡單巡線為例,在仿真虛擬環(huán)境下,機器人需要沿著白色引導線行走。實現(xiàn)方式是在機器人的前方左右各放一個光電傳感器,通過判斷光感的光值來決定執(zhí)行相應程序,沿著白線行走。學生需要先分析機器人巡線時會出現(xiàn)幾種情況,再運用算法思維解決,最后通過編寫程序實現(xiàn)。如圖3所示,車巡線時會出現(xiàn)4種情況,如果車右邊的光感器返回大于0的值,則右邊傳感器檢測到白線,在這種情況下有兩種可能性,一是車子方向向左偏了,二是車子到了十字路口,如何區(qū)分這兩種情況呢?我們可以通過第二個光電傳感器的數據來判斷。如果第二個傳感器返回大于0的值,說明車兩邊都壓線,來到十字路口了,則可以決定車是直走還是轉彎。如果第二個傳感器返回的是小于0的值,說明車左偏,則需要對車向右偏轉校正角度后再執(zhí)行直走程序。
圖3
如果左邊的光感器返回不大于0的值,在這種情況下有兩種可能性,車子方向向左偏了或者在線上正常行走。如何區(qū)分這兩種情況,我們需要車右邊光感器的數據,如果右邊的光感器返回大于0的值,則是右邊壓線了,也就是車子偏左,我們需要對車向右偏轉校正角度后再執(zhí)行直走程序。如果左右兩個光感器返回值都不大于0,則說明車是在線上行走的,執(zhí)行直走程序。
結構化程序設計的基本結構是順序結構、選擇結構和循環(huán)結構。這個虛擬機器人簡單巡線的程序主要用到的是循環(huán)結構和選擇結構,學生只有通過一步一步的邏輯分析,才能充分考慮各種情況,只有在理解這些程序設計的基本結構作用后,才能通過編程實現(xiàn)虛擬機器人巡線程序。因此,學生利用仿真虛擬機器人軟件學習程序設計,其圖形化的編程界面能幫助學生運用邏輯思維分析問題,其仿真虛擬的環(huán)境能形象直觀地引導學生用算法思維解決問題,從而有助于培養(yǎng)小學生結構化程序設計的思想。
創(chuàng)新是一個民族進步的動力?!吨行W信息技術課程指導綱要(試行)》明確指出:“努力創(chuàng)造條件,積極利用信息技術開展各類學科教學,注重培養(yǎng)學生的創(chuàng)新精神和實踐能力。”程序設計學習就是一種培養(yǎng)創(chuàng)新思維的學習。在程序設計中,達到目標任務的編程方法是多樣的,學生可以充分發(fā)揮創(chuàng)造性,以不同的編程方法去實現(xiàn)。即使是一個簡單程序的實現(xiàn),從分析、設計、調試到最終實現(xiàn),都是一個創(chuàng)造性的過程。
仿真虛擬機器人軟件在創(chuàng)新思維培養(yǎng)的設計上也有所體現(xiàn)。它提供了地圖編輯功能、虛擬機器人的編輯功能,使整個程序設計具有開放性。這有助于培養(yǎng)學生的發(fā)散思維,激發(fā)學生的創(chuàng)新思維。例如2012年廣州市易時代3D虛擬機器人競賽,競賽的主題是智能校車接送學生,競賽的內容是使校車(虛擬機器人)在指定時間內從起點行駛到指定的車站接送“學生”,然后送往學校完成整個任務。任務包括:沿道路行駛,躲過道路上的障礙物,到指定(一個或多個)車站接“學生”,回到學校。在教學中,我們可以根據競賽的內容和規(guī)則,利用軟件的地圖編輯功能編輯出模擬競賽的地圖(如圖4所示),供學生訓練。學生看到地圖后,首先需要考慮虛擬機器人行走哪條路線才能最快到達終點。
圖4
經過分析,可以走的線路有:第一,從第一個路口向右越過第一個路障后轉到車站1,然后經過兩個路口轉向到達車站2,再經過兩個路口轉向到達廢車,越過廢車后到達終點。第二,從第一個路口向右越過第一個路障后轉到車站1,然后經過兩個路口轉向到達車站2,再直行一個路口到達路障,越過路障后右轉到達終點。第三,直行兩個路口到車站2,然后右轉兩個路口直行一個路口到達車站1,再掉頭直行兩個路口到達廢車,越過廢車后到達終點。
由于競賽規(guī)則還允許校車(虛擬機器人)離開白色軌跡線行駛,大大增加了程序設計的開放性,所以在競賽中,有的學生使用光電傳感器和超聲波來完成任務,有的學生使用指南針和GPS來完成任務,有的學生還想出了利用倒車的功能提高效率,充分體現(xiàn)了學生的創(chuàng)造性。因此,具有開放性特點的仿真虛擬機器人軟件在程序設計教學中能夠激發(fā)學生的創(chuàng)新思維,讓學生創(chuàng)造性地運用程序設計知識去解決問題。
仿真虛擬機器人軟件能夠引起小學生興趣,符合小學生認知特點,把仿真虛擬機器人軟件應用到小學程序設計教學中,能夠提高學生學習程序設計的興趣,有助于激發(fā)學生的創(chuàng)新思維。因此,仿真虛擬機器人軟件可成為小學信息技術程序設計教學的新載體。
[1] 張嘉志,王同聚.讓機器人走近學生—3D仿真虛擬機器人:普及機器人教育的新途徑[J].中小學信息技術教育,2010(6):95-96.
[2] 范利華.借助機器人教學平臺培養(yǎng)小學生編程能力[J].研究探索,2011(5):15-19.
[3] 陶興榮.機器人教育可促進程序設計教學[J].教育與信息化,2011(2):9-11.