蔣莘+謝作如
編者按:隨著社會(huì)的發(fā)展、各類教育改革的逐漸推進(jìn),學(xué)科間的融合已成為大勢(shì)所趨。跨學(xué)科、智能化的創(chuàng)客類校本課程應(yīng)如何開發(fā)?
● 創(chuàng)客課程方向分析
創(chuàng)客類的課程應(yīng)該涵蓋哪些方向?目前并沒有很明確的定義。雖然創(chuàng)客們的作品種類復(fù)雜,包羅萬象。但是,我們從創(chuàng)客們研究的方向還是大致可以看出一些特征。
1.跨學(xué)科
創(chuàng)客的研究方向,基本上都打破了學(xué)科的界限,如生物藝術(shù)的作品,不僅和生物、藝術(shù)相關(guān),更是結(jié)合了電子、控制、網(wǎng)絡(luò)等。其實(shí),學(xué)科本來就是人為劃定的,在生活應(yīng)用中,往往都需要用綜合的學(xué)科知識(shí)去解決一些具體問題。這也是最近STEM、STEAM、STEM+教育思潮如此受人關(guān)注的原因。
2.智能化
創(chuàng)客們喜歡玩新技術(shù),智能控制技術(shù)當(dāng)然是最受歡迎的。互動(dòng)媒體、機(jī)器人、物聯(lián)網(wǎng)、可穿戴設(shè)備,無論哪一種,看起來都挺酷。Arduino把單片機(jī)開發(fā)技術(shù)降到了最低,因而成為了創(chuàng)客們的神器。
3.軟硬結(jié)合
很少看到哪位創(chuàng)客的作品是純粹的軟件,或者純粹的硬件。智能化的特點(diǎn),幾乎體現(xiàn)了創(chuàng)客們軟硬兼施的技術(shù)高度。在他們的眼里,電子技術(shù)和編程技術(shù)本來就是密不可分的基本技術(shù)。
● 創(chuàng)客課程校本化可能
因?yàn)樵诋?dāng)前的國(guó)家課程設(shè)置中,并沒有劃出綜合類的課程,綜合實(shí)踐活動(dòng)僅僅定位在活動(dòng),而難以實(shí)施創(chuàng)客類課程。更為遺憾的是,高中技術(shù)課程標(biāo)準(zhǔn)中,把信息技術(shù)和通用技術(shù)分為不同的課程,導(dǎo)致了智能化、軟硬結(jié)合的課程找不到對(duì)應(yīng)的位置。因此,要開展創(chuàng)客類課程,只能通過校本課程的形式開展了。
校本課程是與國(guó)家課程、地方課程相對(duì)應(yīng)的,以學(xué)校為本位的,由學(xué)校自行確定開發(fā)的課程。作為國(guó)家課程的補(bǔ)充,信息技術(shù)校本課程開發(fā)大致可以分為兩種思路:①在技術(shù)廣度方面進(jìn)行拓展。這類課程主要培養(yǎng)學(xué)生的學(xué)科興趣和學(xué)科素養(yǎng),了解和體驗(yàn)學(xué)科知識(shí)在生產(chǎn)生活中的應(yīng)用以及國(guó)內(nèi)外前沿性的最新應(yīng)用,樹立推動(dòng)信息技術(shù)未來發(fā)展的共同愿景。②在技術(shù)深度方面進(jìn)行挖掘。這類課程主要通過項(xiàng)目或者專題的形式,引導(dǎo)學(xué)生對(duì)某一領(lǐng)域開展深入探究與實(shí)踐,體驗(yàn)運(yùn)用信息技術(shù)解決實(shí)際問題的方法和過程,培養(yǎng)學(xué)生的技術(shù)素養(yǎng)和綜合能力。
創(chuàng)客類課程一般以第二種方式開發(fā),但是考慮到2004年出臺(tái)的高中信息技術(shù)課標(biāo)已經(jīng)嚴(yán)重滯后,與當(dāng)前的技術(shù)發(fā)展脫節(jié)。所以很多課程會(huì)結(jié)合兩種開發(fā)思路的特點(diǎn),既有廣度的拓展,又有深度的挖掘,如物聯(lián)網(wǎng)技術(shù)、互動(dòng)媒體技術(shù)、智能家居技術(shù)、手機(jī)編程和3D打印等。那么,創(chuàng)客類校本課程的開發(fā)可以選擇哪些技術(shù)平臺(tái)?下面對(duì)一些技術(shù)平臺(tái)進(jìn)行介紹,通過這些技術(shù)平臺(tái),我們能夠看到開源軟件和開源硬件推動(dòng)下的信息技術(shù)教學(xué),正在從邏輯世界(程序語言)走向電子世界(可編程集成電路),最終通過3D打印等原型或產(chǎn)品的設(shè)計(jì)構(gòu)建工具,走向改變世界的原子世界。
1.邏輯世界:圖形化語言到代碼語言
(1)Scratch類
Scratch是一款由麻省理工學(xué)院 (MIT) 設(shè)計(jì)開發(fā)的面向兒童的簡(jiǎn)易編程工具。Scratch雖然采用積木堆砌的形式編寫程序,但是功能十分強(qiáng)大,支持?jǐn)?shù)組、事件驅(qū)動(dòng)、多線程編程,具備了面向?qū)ο蟮某绦蛘Z言的基本特點(diǎn)。難得的是,Scratch提供了外部傳感器和樂高WEDO系列馬達(dá)、傳感器的接口,只要拖拽指令塊圖標(biāo),就可以制作出各種有趣的互動(dòng)作品。Scratch2.0加入了攝像頭識(shí)別和自定義模塊功能,還支持第三方的插件,功能更加強(qiáng)大。對(duì)青少年來說,用Scratch開發(fā)各種創(chuàng)客作品,是非常好的選擇。
Scratch是一款開源軟件,在推廣過程中衍生了好多款修改版本,如S4A、Labplus等。S4A是Scratch for Arduino的縮寫,主要提供對(duì)Arduino和Andriod的支持:采用Arduino作為傳感器和執(zhí)行器的控制平臺(tái),提供了6組模擬輸入和2組數(shù)字輸入接口,以及舵機(jī)輸出和數(shù)字輸出接口;提供了基于HTTP協(xié)議的遠(yuǎn)程傳感器功能和安卓手機(jī)的配套程序,可以組網(wǎng)互動(dòng),也可以和智能手機(jī)進(jìn)行互動(dòng)。Labplus則是國(guó)內(nèi)教育企業(yè)盛思使用的Scratch的修改版,可以支持直流馬達(dá)輸出,能以更低的成本和技術(shù)門檻讓學(xué)生體驗(yàn)軟硬件互動(dòng)。
(2)App Inventor
App Inventor的中文意思是“應(yīng)用程序發(fā)明家”,是谷歌公司Google Lab項(xiàng)目中的一部分,稱為“Google AppInventor”。Google App Inventor是谷歌公司致力于完全在線的可視化編程而打造的一項(xiàng)Arduino手機(jī)應(yīng)用程序開發(fā)工具。當(dāng)時(shí),該項(xiàng)目的負(fù)責(zé)人Hal Abelson是麻省理工學(xué)院(Massachusetts Institute of Technology,MIT)的一位計(jì)算機(jī)科學(xué)教授。2012年,麻省理工學(xué)院(MIT)正式接手谷歌公司的App Inventor項(xiàng)目,將其更名為“MIT App Inventor”,并繼續(xù)進(jìn)行研發(fā)且對(duì)公眾開放使用。目前,MIT App Inventor的第二版本支持應(yīng)用程序在手機(jī)和平板上的開發(fā)。因?yàn)榫幊涕T檻低,世界各地有很多教師開發(fā)了基于App Inventor的手機(jī)編程課程。
(3)Processing
Processing是由美國(guó)麻省理工學(xué)院媒體實(shí)驗(yàn)室(MIT Media Lab)美學(xué)與運(yùn)算小組(Aesthetics Computation Group)的Casey Reas與Ben Fry創(chuàng)立的一款專為設(shè)計(jì)師和藝術(shù)家使用的編程語言。Processing在電子藝術(shù)的環(huán)境下介紹程序語言,并將電子藝術(shù)的概念介紹給程序設(shè)計(jì)師。通過它無需太高深的編程技術(shù),便可以實(shí)現(xiàn)夢(mèng)幻般的視覺展示及媒體交互作品。同時(shí),Processing也可結(jié)合Arduino等相關(guān)硬件,制作出令人驚艷的互動(dòng)作品。
2.電子世界:軟硬件聯(lián)合編程endprint
當(dāng)創(chuàng)客類課程進(jìn)入電子世界之后,軟件環(huán)境和可編程硬件被完美結(jié)合起來,如Arduino既是一個(gè)開源硬件的名字,也是這款開源硬件編程的語言的名字,軟件和硬件的界限通過編程語言變得模糊起來,軟硬件聯(lián)合編程教學(xué)成為了創(chuàng)客類校本課程開發(fā)的新方向。
(1)Arduino
Arduino是一個(gè)基于開放源碼的軟硬體平臺(tái),具有類似Java、C語言的開發(fā)環(huán)境。因源碼開放和價(jià)格低廉,Arduino目前廣泛地應(yīng)用于歐美等國(guó)家和地區(qū)的電子設(shè)計(jì)及互動(dòng)藝術(shù)設(shè)計(jì)領(lǐng)域,得到了Make magazine等出版物和Instructable等網(wǎng)站的認(rèn)可和推薦。Arduino被稱為“科技藝術(shù)”,作為一種新“玩具”,甚至新的藝術(shù)載體,吸引了各個(gè)領(lǐng)域的人們加入到Arduino的神奇世界里來。國(guó)內(nèi)外已經(jīng)有人開發(fā)了多款基于圖形化界面的Arduino編程環(huán)境或者插件,如Modkit、Ardublock等,為Arduino的推廣普及作出了積極的貢獻(xiàn)。
(2)pcDuino
pcDuino是PC和Arduino的結(jié)合體。pcDuino使用A20處理器,運(yùn)行速度達(dá)到1GHz,自帶1G的BDRAM和2GB的Flash,支持Ubuntu和Android,接上鼠標(biāo)鍵盤和顯示器就是一臺(tái)迷你PC,尺寸有手掌大小,重量相當(dāng)于半個(gè)雞蛋。pcDuino最大的優(yōu)勢(shì)是兼容Arduino,借助Arduino豐富的擴(kuò)展板卡和傳感器資源,pcDuino就成了一臺(tái)能直接控制各類電子元件的計(jì)算機(jī),在互動(dòng)媒體方面,應(yīng)用空間很大。pcDuino還能運(yùn)行修改版的Scratch,學(xué)生通過Scratch就能控制傳感器、馬達(dá)等外部設(shè)備。利用pcDuino做一個(gè)基于WiFi的遠(yuǎn)程控制機(jī)器人是很輕松的事情。pcDuino上面可以支持Scratch依據(jù)測(cè)控板的信息輸入做出馬達(dá)、LED輸出,因此使用pcDuino可以和Scratch測(cè)控板整合起來,構(gòu)成一個(gè)完整的、可移動(dòng)的機(jī)器人控制環(huán)境。
(3)Microduino
Microduino的尺寸比Arduino更小,相當(dāng)于一個(gè)大的方形紐扣,由北京的一位大學(xué)實(shí)驗(yàn)室教師最先開發(fā)。和Arduino的故事類似,迅速集結(jié)了一批開發(fā)者,幫助其添加功能。其尺寸上的優(yōu)勢(shì)使得它堆疊的效果和產(chǎn)品級(jí)別的電路板的功能及尺寸毫無區(qū)別,加之成本優(yōu)勢(shì),使得很多產(chǎn)品沒有必要生產(chǎn)定制的電路板。依據(jù)其設(shè)計(jì)的校本課程可以直接稱為電子產(chǎn)品制造而不是電子產(chǎn)品原型設(shè)計(jì)。
3.原子世界:從掃描、設(shè)計(jì)到打印
(1)Kinect和Leap Motion
Kinect是微軟開發(fā)的3D體感攝影機(jī),具備即時(shí)動(dòng)態(tài)捕捉、影像辨識(shí)、麥克風(fēng)輸入和語音辨識(shí)等功能。微軟的宣傳標(biāo)語說:“你的身體就是控制器”。Kinect的出現(xiàn)不僅帶來了一種新的游戲操控體驗(yàn),由之引發(fā)的讓機(jī)器“讀懂人”的交互方式,也正引領(lǐng)人機(jī)交互技術(shù)的新一輪變革。Leap Motion是一款體積僅一包口香糖大小的體感控制器。通過USB連接計(jì)算機(jī)后,它會(huì)創(chuàng)造出一個(gè)4立方英尺的工作空間。在這個(gè)空間里,10根手指的動(dòng)作都會(huì)被即時(shí)追蹤,誤差在0.01毫米以內(nèi),最大頻率是每秒鐘290幀,精確度相當(dāng)于Kinect的200倍。這樣的精準(zhǔn)程度足夠保證用戶順利完成如pinch-to-zoom或控制3D渲染物體等操作。當(dāng)Leap Motion首次亮相之時(shí),外界認(rèn)為它承載了一個(gè)新穎而獨(dú)特的計(jì)算機(jī)用戶體驗(yàn)——通過揮舞手指或拳頭來和計(jì)算機(jī)進(jìn)行交互。和Kinect一樣,Leap Motion也提供了SDK,可以二次開發(fā)。
利用Kinect和Leap Motion,可以開發(fā)手勢(shì)識(shí)別、體感控制之類的課程,但是不用擔(dān)心其開發(fā)語言是否過于復(fù)雜。早有人寫好了Kinect for Scratch和Leap Motion for Scratch的第三方插件。用Scratch就能研究手勢(shì)識(shí)別、體感控制之類的課程了。使用Kinect可以制作3D掃描儀,直接輸出物品的3D模型,可以用SketchUp做進(jìn)一步的加工,最后用3D打印機(jī)輸出出來。
(2)SketchUp
SketchUp是一款三維建筑設(shè)計(jì)方案創(chuàng)作的優(yōu)秀工具,但是因?yàn)槠渲С謱?dǎo)出STL文件,成為3D設(shè)計(jì)的最好選擇之一。比起Solidworks、UG等專業(yè)級(jí)工具來說,數(shù)十兆大小的SketchUp在普通配置的計(jì)算機(jī)中可以流暢運(yùn)行。目前,SketchUp常常用于通用技術(shù)課的三視圖繪制。而如果要求不高,小學(xué)生用SketchUp畫出一些小零件并用3D打印機(jī)打印出來,并不是一件難度很高的事。
(3)3D打印機(jī)
3D打印機(jī)一度成為創(chuàng)客的代名詞,目前3D打印的課程集中在3D建模課的模型實(shí)現(xiàn)、數(shù)學(xué)課當(dāng)中復(fù)雜幾何關(guān)系的建構(gòu)、設(shè)計(jì)課中產(chǎn)品原型的設(shè)計(jì)和產(chǎn)品制造。3D打印的耗材和3D打印機(jī)都處于充分的市場(chǎng)競(jìng)爭(zhēng)的狀態(tài),這有利于降低成本、提升品質(zhì)。因此,3D打印的課程如果和軟硬件編程結(jié)合起來,將是最優(yōu)秀最有價(jià)值的創(chuàng)客類課程。
羅列了這么多技術(shù)平臺(tái),其實(shí)還僅僅是當(dāng)前各類適用于創(chuàng)客類課程技術(shù)的九牛一毛。隨著創(chuàng)客運(yùn)動(dòng)在世界各地的迅猛發(fā)展,將會(huì)有更多的技術(shù)平臺(tái)不斷涌現(xiàn)。但是,對(duì)有意開發(fā)跨學(xué)科、智能化的創(chuàng)客類校本課程的教師來說,倒沒有必要在平臺(tái)選擇上過于糾結(jié)。只要你能把握開源、低門檻、支持軟硬件這幾個(gè)關(guān)鍵詞,一切皆為可能。endprint