謝作如 肖筱



學科關鍵詞:物理、數學、技術、藝術
在某雜志上看到一個有趣的案例,一位國外科學教師設計了以“找朋友機”為主題用來教學電路的相關課程。“找朋友機”的功能非常有趣,給九年級學生提供了一個自行設計、測試和搭建復雜電路的機會,而這一電路又利于學生理解,十分適合學生進行創作。按照雜志的評價是“涉及重要的工程學主題和核心的科學內容”的案例。
有趣的是,就在看到這個案例的前幾天,我們拿到了上海DFRobot公司設計的Boson Kit套件。在這個套件的支持下,“找朋友機”成為一個連小學生都能理解并且制作的作品。
功能分析
找朋友機,顧名思義就是幫助我們找朋友的機器,它通過辨別兩人的愛好、特點來判斷兩人是否能夠成為朋友。其實,它本質上就是串聯和并聯電路,陌生人將符合自己條件的開關閉合,如果小燈能夠亮起,就代表可以成為朋友。例如,謝集小朋友愛打籃球,愛看《喜羊羊》和《西游記》,并且住在鹿城區,他的找朋友機作品需要設計四個開關,分別代表(A)喜歡打籃球,(B)住在鹿城區,(C)喜歡看《喜羊羊》,(D)喜歡看《西游記》。只要對方選擇了特定的某個或某些選項,那么他們就可以成為朋友了。而這些選項之間是有著一定的邏輯關系的。如果對方選擇了(A)喜歡打籃球和(B)住在鹿城區,那么他們就可以一起出來打籃球,并可以成為朋友。但是如果對方只選擇了(A)喜歡打籃球而并沒有選擇(B)住在鹿城區,那么很遺憾,雖然彼此愛好相同但是住得太遠,不能一起出來打籃球,就不能成為朋友。也就是說(A)和(B)的開關必須同時閉合才能夠成為朋友,所以這兩個開關必須是串聯的,兩個開關同時閉合電路才聯通。而(C)喜歡看《喜羊羊》和(D)喜歡看《西游記》就是“或”的關系,只要閉合其中一個開關,電路就連通了。因為只要對方喜歡其中一個,我們就可以一起看劇聊天了,也就是說我們需要把這兩個開關設計成并聯的。
規劃制作
在制作之前,我們必須要給學生講清楚找朋友機的原理和內部的邏輯。主要是講清楚“與”是同時滿足兩個條件才能成為朋友;而“或”是只要滿足其中一個條件就可以成為朋友了。下面用一個簡單的示意圖表示一下“找朋友機”的原理(如圖1)。
在弄明白了找朋友機的原理之后,接下來的工作就簡單多了。因為Boson Kit不僅提供了多個按鈕、LED模塊和蜂鳴器模塊,還提供了“與(AND)”“或(OR)”“非(NOT)”等邏輯模塊。我們只要按照邏輯規劃出線路,然后適當加以包裝,就可以完成一個有趣的“找朋友機”了。
線路搭建
我們選擇用普通的按鈕來代表選項,只要對方按下按鈕,就代表他選擇了這個選項,小燈亮起代表成為朋友,因此我們需要的元件如表1所示。
我們把這些元件按照之前設定的邏輯連接起來就可以了,參考電路如圖2所示。
從這個電路連接圖可以看出,A和B是AND關系,需要兩個都按下,與其對應的LED模塊就能亮起;C和D是OR關系,任何一個按鈕按下,與其對應的LED模塊都能亮起。當然,這個電路不是唯一的,如果覺得這個電路用到了兩個LED模塊看起來不“爽”,還可以有好幾種辦法來改造。
其一,可以再加一個“OR”模塊。如下頁圖3所示,輸入的模塊就合并在一起了,而輸出的LED只需要一個就可以了。另外,如果覺得用3IO的電源板太浪費,也可以換成1IO的電源板。
其二,可以試試“OR”在電源板的右邊,也就是輸出模塊的方向,把兩個輸入合并為一個輸出。
或許,你還有很多辦法。如果動手能力好,可以自己用杜邦線連接起來。如果覺得就亮個LED太無趣,還可以加個蜂鳴器模塊,用分離器模塊連接起來(如下頁圖4)。
外形搭建
“找朋友機”的基本功能已經實現了,我們用一個漂亮的紙盒把它包裝起來就可以了。注意在安裝按鈕的時候要把按鈕模塊的塑料小帽拆下來,在紙盒上打一個小孔,把按鈕木塊在小孔兩端安裝起來,這樣會比較美觀。我們制作的“找朋友機”外觀如圖5所示。
隱含的數學知識
在計算機科學里,我們用數字“0”和“1”表示輸入和輸出值:“0”代表假,如不按按鈕和小燈不亮;“1”代表真,如按下按鈕和小燈亮起。我們把邏輯事件輸入和輸出之間全部可能狀態列成一個表格,就成了真值表,下面看看我們的三個邏輯模塊的真值表。
“邏輯與”相當于生活中說的“并且”,就是兩個條件都同時成立的情況下“邏輯與”的運算結果才為“真”。A和B表示兩個輸入,Y為輸出,其真值表(X表示1或者0)如表2所示。
“邏輯或”相當于生活中說的“或者”,就是兩個條件只要其中一個成立,“邏輯與”的運算結果就為“真”。A和B表示其兩個輸入,Y為輸出,其真值表如表3所示。
通過我們的嘗試,可以看出用“找朋友機”之類的案例,能很好地提高學生的學習興趣。而且,“找朋友機”是一個跨學科的案例,除了技術和藝術之外,還涵蓋了物理的電路、數學的邏輯和工程學。如果更換不同的元件,如把按鈕換成撥碼開關或者觸摸傳感器,這個作品會更加好玩。
通過這個案例,我們也了解了Boson Kit的作用,不用編程,就能讓沒有簡單電路知識的小學生制作出相對復雜的作品,而且幾乎能支持所有的Arduino兼容的傳感器。我們知道,如果充分利用“與”“或”“非”這三個邏輯模塊,理論上可以做出非常復雜的作品,如加法器、比較器等。接下來幾期,我們還會繼續用Boson Kit做幾件好玩的作品。
如果對相關內容感興趣,請關注主持人博客。