Blockly (Junior)_ Variables變數
Step 1:
何謂變數?
變數在程式中是一個能夠儲存資訊的方法,而他儲存最多的就是值。如果你有玩電玩遊戲,會有個變數專門儲存你的分數,另一個變數儲存你生命值,而另一個會儲存你的時間。使用在CoDrone上,變數會儲存感測器的值;無人機的速度或可能飛行的距離。 當你需要在程式中使用大量的數值,變數會對你很有幫助!例如:你可能有個程式中,有5個位置是你設定速度的地方。若沒有變數你就必須改所有位置的數字。而若有變數你就只要改變數的值就好。 |
Step 2:
設定變數
若要紹定變數,先去Blockly中粉色變數選單再點擊灰色” Create variable…(創造變數…)”區塊。
|
Step 3:
設定
你會看見其中一個程式區塊叫set _ to,它可以讓你設定你的變數成你選擇的值。
|
Step 4:
獲取變數
當你需要呼叫你的變數,或是使用其中的資訊,你可以從變數選單中,用get程式區塊來呼叫。在Blockly中,你通常會將它接上迴路或條件式。此外,你也可以設定你的變數來獲取其他變數的值!這對於程式中,相互影響的事件判斷很有用!
|
Step 5:
改變數
如果你需要改變數的值,你有兩個選項。 如果要在整個程序中更改它,你只需在設定變數區塊旁邊的數學區塊中,輸入一個新的值。 如果你只是要在程序中某部分更改變數的值,你可以用change_by程式區塊。拖行該區塊到程序中你需要放的地方,再輸入你要改變的值成多少。 |
Step 6:
把所有區塊連接起來吧!
使用你所學來改變CoDrone顏色吧!編程你的CoDrone若你的變數的值低於或等於50,無人機的眼睛會變成一種顏色;而若變數的值是大於或等於51,無人機的眼睛會變成另一種顏色。LED燈的程式區塊在亮紫色選單中。 若你想挑戰更多,把他們全放在for loop迴路裡重複然後持續讓你的程序加一到你的變數100次。不確定什麼是for loop嗎?別擔心下一堂課就會告訴你。只要先知道任何在迴路裡的區塊都會重複100次。 疑惑為何要用這麼大的數字嗎?電腦每次跑的時間很短,所以如果你沒有用wait block(等待區塊),或執行次數較少,你的CoDrone的LED燈會變色變得非常快。 你的程序應該呈現如下: |
Step 7:
試試看!
挑戰: 點對點飛行 編程你的CoDrone從一個降落墊起飛,朝方向一個方向飛行,在降落在另一個墊子上。 規則:
若你想讓挑戰更有競爭力,將目的地改成標靶樣式並賦予它們分數。中心點是最高分,越接近邊緣越低分。 |
Blockly (Junior)_ Loops迴圈
Step 1:
什麼是迴圈?
迴圈可以讓你的一直重複程式碼的部分。這個是很好的捷徑讓你不需要一再重複連接同樣的程式區塊。Blockly有三種形式的迴圈:
|
Step 2:
For loops
For loops會重複裡面程式碼你所選的次數。一旦程式碼已經重複該次數,程序就會離開迴圈,並往下讀取下一組程式區塊。 如同第一步驟我們提到的,Blockly有2種for loops 區塊。一種是區塊重複次數,你可以輸入一個新的值在區塊已改變執行次數。如果你要用數學運算、方程式或變數,你可以從數學、邏輯、或變數選單中,拉下那些區塊到迴圈區塊裡的灰色區域
|
Step 3:
編程for loop
我們來試試使用for loop吧!讓CoDrone像是飛上階梯! 注意:因為有兩種for loop區塊,你必須寫出不同程序來試試。你的CoDrone應該往前並持續往上移動,或許你會覺得程序陌生,但你試試運作它看看? |
Step 4:
While loops
While loop會在你設定的特定條件為true(是)時重複裡面的程式碼。每次運作while loop後,他會回頭確認條件是否為true,若否,程序會離開迴圈。 |
Step 5:
編程while loop
在變數的課程中,你已經學會讓無人機飛出一個形狀,不過現在你可以用迴圈試試!設定變數為0,然後用while loop每一回增加1。當你的變數等於或少於4,編程你的CoDrone往前並往左飛(或反之亦然)。 是否疑惑為何從0開始?人類從1開始數數,但電腦認為0是起始點喔! |
步驟6:
用while loop編程forever loop
你可以設計一個程式,讓while loop裡面的程式碼永遠重複,如同無限迴圈!只要你設定條件式為true(是),然後確定你有放置緊急開關(請記得一直都要做到),你也可以觀察當你選擇下拉式選單中,設定條件式為false(錯)會發生什麼事?用你的CoDrone的LED眼睛試試兩種迴圈!
|
Step 7:
Until loop
Until loops 非常像 while loops,除了Until loops運作區塊內的程式碼直到條件式為true(是)。每次程序跑過while loop,他會去確認條件式是否為true(是)。若是,程序會再跑最後一輪,之後離開迴圈。 |
Step 8:
編程until loop
設定變數為0,然後在while loop中每一回增加1。編程你得無人機讓它直到變數達到8就會在每秒鐘向左轉或右轉。 |
Step 9:
試試看! 跳舞吧無人機!
編程你的無人機讓它像舞廳中的燈球旋轉,並讓它眼睛和手臂上的LED燈變換顏色! 規則:
|
Blockly (Junior)_ LEDs LED燈
Step 1:
什麼是LED燈?
LED是發光二極體的縮詞。二極體是一種電子材料,他只能讓電流沿一個方向流動,因其高效的功能漸漸就取代傳統燈泡。 你的CoDrone有6個RGB LED燈:四個手臂各一個 ,一個在機頭,和一個在機尾。RGB代表紅綠藍三原色。 使用這三個顏色可以製造出任何你想像的到的顏色!除了讓你的CoDrone看起來更酷,LED燈也提供其他形式的回饋。比如說尾燈能夠讓你知道無人機連接狀態。尾燈固定亮綠燈代表無人機已連線,而閃爍綠燈代表進入配對模式。然而你無法修改這些預設的LED燈的顏色,但剩下的5個LED燈可以讓你編程產生各種顏色與形式排列! |
Step 2:
參數
CoDrone提供許多功能性讓你不但可以改變手臂LED燈、眼睛LED燈或甚至同時改變!這些功能都可以在燈選單中找到。 每個LED程式區塊都有至少1個或多個以下參數: Color(顏色)—想改LED燈的顏色,請按color(顏色)鍵,會出現一個選單,可以選你想要LED燈的顏色。 Brightness(亮度)–在固定LED區塊中,這關乎到燈的明亮度,0是關閉而100是全亮。 Mode (模式)–是你可以選擇的燈閃爍的形式排列 BLINK LED燈會像眨眼一樣閃爍亮燈關燈 DOUBLE BLINK 像雙眨眼一樣LED燈會連量兩次再關燈 DIMMING 用緩慢地調亮(淡入)與調暗(淡出)LED燈光 Interval(間隔) –每個燈光形式的頻率(每秒)。間格的值永遠不能是負數! |
Step 3:
LED彩虹
試著與CoDrone配對並練習用LED燈製造彩虹色。請確認每個顏色轉換下一個顏色前至少顯示1秒。想要最佳明亮度請設定100。請在顏色程式區塊之間用wait(等待)區塊,設定1秒好讓你可以在燈在變換前看到每一個顏色。試著使用迴圈來不斷改變顏色。 |
Step 4:
試試看!
第一個電氣通信系統是電報。 它是一種發送長或短電的脈衝,來發送信息的設備。 字母由長短逼逼聲的獨特組合定義,稱為摩斯密碼。 或許你能夠識別這個訊息: . . . _ _ _ . . . 此訊息讀作SOS(求救)!可以查找摩斯密碼字母表並學習一些字母代碼。試著找些方法,利用你的CoDrone送出摩斯密碼訊息出去。如果你想要,可以配對解碼與彼此訊息。用輸入不同的值在wait區塊調整閃燈長短,傳送你的訊息。 |