[教育時光機 EP4] 程式界的武林爭霸戰-S4A x 雙人彈珠台

[教育時光機 EP4] 程式界的武林爭霸戰-S4A x 雙人彈珠台

在[教育時光機 EP3] 中,我們向大家介紹了程式教育的興起以及S4A的基礎應用,不曉得大家是否有體驗到程式設計的成就感呢?
程式設計所帶來的成就感非常令人振奮,但在除錯(Debug)的過程也讓人備感困擾。正所謂「獨樂樂不如眾樂樂」,如果你覺得程式設計有點枯燥乏味,不妨揪你的好朋友一起試試本次的簡易模型創作-「雙人彈珠檯」

彈珠檯通常是一個矩形的木製框架,玩家在投幣之後透過彈簧彈出金屬小球,讓小球撞擊鐵釘後任意彈跳,並依據經過的地點得分。當小球往下掉的時候,玩家可以操控最底端的板子將小球打回去、繼續彈跳。
(市面常見的彈珠檯)

傳統的彈珠檯只能自己與機器對戰,今天就讓我們使用智高#1204R - S4A編程體驗工作坊,搭上「S4A」開發平台,一同呼朋引伴製作出可雙打的彈珠檯吧!

0:00
/

◆課前準備(5分鐘)

1、 與學習者複習S4A軟體功能,建議於課前事先安裝測試,以確保所有電腦皆可正常使用。

2、準備模型所需零件,因為雙人遊戲所以需準備兩份主控盒。

◆示範模型製作(20分鐘)

可參考以下組裝步驟將模型一步步組裝。

步驟1:將四個5x10孔長方框與5x13超長方框依照圖示結合。

步驟2:將兩個5x5孔正方框放上長結合鍵,並與5x10孔長方框結合,如圖所示。

步驟3:重複步驟1與步驟2,製作出兩個外框架。

步驟4:將兩個5x15孔正方框放上長結合鍵,將步驟3的外框架連接,如圖所示。

步驟5:將180度伺服馬達調整至90度的位置,並與11孔長條結合,製作左側兩個打擊器,如圖所示。

※ 務必確認180度伺服馬達的角度與11孔長條組裝孔洞,以利後續運作!請勿手動轉動180度伺服馬達,以免造成馬達損壞。

步驟6:將180度伺服馬達調整至90度的位置,並與11孔長條結合,製作右側兩個打擊器,如圖所示。

※ 務必確認180度伺服馬達的角度與11孔長條組裝孔洞,以利後續運作!請勿手動轉動180度伺服馬達,以免造成馬達損壞。

步驟7:將打擊器裝在四個角落,放置於5x10孔長方框的第三個孔洞,如圖所示。

步驟8:放置兩個智高創客主控盒,將左側打擊器連接至D7孔位、右側打擊器連接至D4孔位

步驟9:可隨意於框架中增加各種障礙物,讓球不會卡住。

步驟10:打開S4A軟體並編寫下列程式。

程式邏輯:
當按下右鍵時,右側的180度伺服馬達(motor 4)會旋轉至160度,等待0.5秒後再回到65度,如此便能快速打擊乒乓球。

而當按下左鍵時,左側的180度伺服馬達(motor 7)會旋轉至20度,等待0.5秒後再回到115度。

以上兩個指令中的0.5秒緩衝時間與角度皆可自行調整,唯獨調整時請注意11孔長條是否擠壓到框架,以免造成伺服馬達損壞。

當按下空白鍵時,左右兩側的180度伺服馬達會回歸初始角度,並且停止。此步驟是確保程式能全部停止,保護馬達不過度運轉。

◆學生製作模型與遊玩(25分鐘)

1、 讓學生自行組裝雙人彈珠檯模型,教師適時提供協助即可。

2、 完成的學生可開始遊玩,亦可調整緩衝時間或改造模型以增加變化性。


◆總結與收拾(10分鐘)

1、 教師可於課程最後進行總結,講解本模型之碰撞原理或是操作小技巧,並延伸介紹彈珠檯的種類,例如:電玩版彈珠檯、橡皮筋彈珠檯等。

2、 請學生拆解模型、分類並正確歸位,須提醒學生使用扳手拆除零件而非硬拆。


◆科學原理

此模型使用的科學原理為「碰撞」。

當兩個以上的物體在極短的時間內有交互的作用力時,我們稱之為「碰撞」。從力學的角度而言,質點受到力量,就會有速度、動量或能量的變化。
我們透過11孔長條「碰撞」乒乓球產生作用力,讓兵乓球以更快的速度回彈至相反方向。由於對手也會將球打擊回來,因此形成一個有趣的互動競賽。

牛頓擺(碰撞原理)

◆後記

由於每個人的創作都是獨一無二,因此既便是相同的程式,應用在不同作品身上仍會有些許差異。在程式教育的過程中,與同儕一起相互討論、相互合作往往能事半功倍,並享受到團隊合作的樂趣!

至此教育時光機已完成S4A的軟體介紹,讓我們一起期待接下來的冒險吧!

關鍵字參考:

程式教育、Scratch、S4A、Arduino、碰撞、彈珠檯、雙人彈珠檯

課綱參考:

科-J-A3 利用科技資源,擬定與執行科技專題活動。

運 t-IV-1 能了解資訊系統的基本組成架構與運算原理。

運 r-V-3 能利用程式語言表達運算程序。

資 P-IV-1 程式語言基本概念、功能及應用。

設 k-IV-1 能了解日常科技的意涵與設計製作的基本概念。

#Gigo智高   #學習實驗室    #趣味實驗室    #Gigo Lab


Please sign in to vote.