吳俊杰
米思齊是北京師范大學付騫教授團隊設計的一個開源編程軟件,隨著創客教育的推進以及開源軟件硬件編程的推廣,它漸漸成為行業內的一個編程規范。我們在推動創客教育發展的過程中,應注意的是,不是教給學生冷冰冰的電路,而是要創造一種玩法,一種交互的體驗,一個完整的制作、改裝、玩轉、分享的學習過程。因此,本次我們將做一個稍微彪悍一點的東西——巫師燈。
現代藝術的一個重要特征就是將觀眾由欣賞者轉變為參與者,這在很多裝置藝術中都可以看到,如交互投影、一個當人走進以后會自動開始張牙舞爪的電子章魚等,而這一切在現代信息技術的幫助下可以變得非常有參與感。例如,在北京“世貿天階”碩大的天頂顯示屏上,用戶可以通過發送短信將自己的祝福投射到“頭頂的天空上”,甚至去改變它的顏色,控制播放的影片。在這個過程中,交互和交互的設計是核心,而技術上的實現則是相對下位的東西,一個非常簡單的技術通過交互設計的思想也能夠產生奇妙的效果。讓參與者覺得一件作品很酷,也并非難事,這其中需要作者對這個世界充滿好奇和愛,同時也應有一些簡單、通用的設計原則可以遵循。
● 制作:巫師燈的線路銜接
將一個LED插在13口和GND之間,我們會發現它有時候亮,有時候滅。用手指觸摸D3端口,這種現象尤其明顯,這種時亮時滅的效果就像巫師手中的水晶球一樣,變幻莫測,因此我們稱其為“巫師燈”(如圖1)。

為了增強巫師燈的效果,我們可以在D3引腳上添加一根導線,這根導線起到天線的作用,能夠增強人體磁場對D3端口電壓的影響,使得巫師燈的效果更為明顯。這時,從有趣的角度,你可以試著對巫師燈說一些話看看它有什么反應,當然,這并不是真正的巫術,只是好玩的游戲。
● 改裝:制作一個大型的巫師燈交互裝置
在巫師燈的設計中,我們知道D0~D13引腳除了可以作為信息的輸出之外,還可以作為信息的輸入來使用,但是這種信息的輸入是一個二值量,意味著它只有高低兩種變化:當D3引腳電壓為高時,輸入值為真;當D3引腳電壓為低時,輸入值為假。為了使巫師燈的交互效果更好,我們制作了如圖2所示的裝置。

首先,使用繞線棒將更多的LED連接在數字端口上,以四邊形的形式裝飾在盒子的底部。隨后,我們將D3端口的導線延長,在底部打孔,使其能夠在將燈懸掛起來之后,吹到地面上供參與者把玩,接下來將GND和D5端口用同樣的方式垂下來一根導線,這三根導線就構成了一個交互裝置的雛形(如下頁圖3)。

我們事先已經通過程序將D5的電壓升到5V,使用者將D3和D5連接,巫師燈常亮,將D3與GND連接巫師燈熄滅,這說明D3作為信息的輸入使用時,電壓為5V的時候輸入為真,電壓為0V的時候輸入為假。這樣通過垂下的、類似水母觸須一樣的導線的不同連接方式,我們就可以控制水母本身的LED的亮和暗。這樣,用更多的導線和更多的數字輸入輸出端口可以做出更加絢麗的互動效果。
● 玩轉:數字輸入
在初始化環節中,我們將管腳5的電壓設置高,這樣做的目的是讓其充當一個小電流輸出的5V,因為如果直接連接系統的5V,當用戶不慎將5V和GND連接起來時,會導致控制器停止工作,長期短路甚至會危害控制器,所以使用數字端口置高的辦法,既能夠充當5V信號的輸入源,又能夠有效地避免短路的風險,另外它還可以作為一個小電流電源,用于連接一些簡單的電路(如圖4)。

上面的程序當中,使用設置的方法直接將數字端口3的輸入值賦值給數字輸出管腳13,這與下面的“如果…否則…”結構是一致的(如圖5)。
此外,我們還可以從代碼的角度分析一下,數字輸入端口的使用如圖6所示的代碼。
在米思齊自動翻譯的代碼中,初始化時設定端口3的狀態為“INPUT”即輸入,設定端口13的狀態為“OUTPUT”即輸出,這進一步明確了D0~D13端口既可以作為信息輸出又可以作為信息輸入使用的特性。
● 分享:如何讓作品更有交互性
數字藝術裝置的設計有一些共同的原則,如裝置大一些、尺寸最好和一個成年人的尺寸相當,這樣就會看上去壯觀很多。另外,在設計的過程中主動地安排一些用戶參與的環節和項目,這樣就會使得作品有更強的參與感,也會使得參觀者的體驗更好。例如,在巫師燈的觸須下面放一個圓桌,上面放一些定值電阻、光敏電阻、撥位開關、電位器、傾斜傳感器、LED一類的電子元器件,讓使用者自由地連接在上面,這樣就有可能產生更為奇妙的互動體驗。當然,拍一張美美的宣傳照片也是必要的,如圖7中的這個小姑娘,舉著巫師燈的樣子,仿佛魔法學院中的精靈。但愿這個世界的美好和愛,可以通過一個個充滿創意的設計無限地傳遞下去。
本案例的分享視頻將會在以下公眾號中陸續登載。