學習背景
隨著人工智能、人機交互、開源硬件等技術在教育領域的崛起,編程將成為與聽說讀寫一樣重要的信息化社會生存必備技能。本案例以機器人“程小奔”為硬件載體,以mBlock5為軟件支撐,采用軟硬結(jié)合的方式,將編程創(chuàng)意變成“摸得著”的實物。案例以生活中重要的交通安全為背景展開教學,將STEM教育的理念融入具體實際問題的解決過程中,在培養(yǎng)學生的邏輯思維能力、實踐能力與創(chuàng)新能力的同時,也達到安全教育的目標。
教學目標
知識與技能
1.描述顏色紅外傳感器的作用。
2.使用RGB燈與光線傳感器采集顏色數(shù)值,判斷不同的顏色,從而控制小車的行動。
3.使用mBlock5軟件進行程序編寫。
過程與方法
1.能觀察分析顏色卡片與傳感器檢測到的顏色之間的關系。
2.有效運用“觀察現(xiàn)象—發(fā)現(xiàn)問題—分析原因—嘗試解決”的程序調(diào)試方法,解決實際問題。
情感態(tài)度與價值觀
1.體驗人機交互的過程,提升學習興趣與創(chuàng)新思維。
2.培養(yǎng)“遵守交通規(guī)則,從我做起”的意識。
教學重點與難點
1.觀察分析顏色卡片與傳感器檢測到的顏色之間的關系。
2.使用RGB燈與光線傳感器采集顏色數(shù)值,判斷不同的顏色,控制小車的行動。
教學過程
一、激趣導入,創(chuàng)設情境
教師播放各大城市車輛川流不息的畫面以及各種交通事故的圖片,讓學生們在觀看中了解到交通事故的發(fā)生與人們交通安全意識淡薄、不遵守交通規(guī)則有很大關系,深刻體會到懂得交通規(guī)則、遵守交通規(guī)則的重要性。
本課以車輛行駛為研究對象,讓學生從駕駛員的視角思考車輛應該怎樣遵守交通法規(guī),進而展開機器人小車的程序設計。
二、頭腦風暴,獲取新知
教師組織學生討論車輛在十字路口遇到交通信號燈應該遵守的規(guī)則,進而分析控制機器人小車運動的關鍵要素,理解顏色紅外傳感器在本作品中的作用,并分析驅(qū)動機器人小車的大致步驟。
三、應用新知,探究實驗
教師組織學生將機器人小車與計算機相連,在mBlock5軟件中編寫簡單程序,觀察顏色卡片與傳感器檢測到的顏色之間的關系,判斷顏色卡片與小車之間的合適距離。在前期討論和觀察分析的基礎上,嘗試在mBlock5軟件中編寫驅(qū)動小車的算法程序。
四、編程調(diào)試,鞏固新知
教師組織學生經(jīng)歷觀察現(xiàn)象、發(fā)現(xiàn)問題、分析原因、嘗試解決等過程,逐步完善程序編寫,在實踐過程中加深對人機交互解決問題的理解。
五、展示評價,拓展創(chuàng)新
教師組織學生向全班同學展示作品,介紹設計思路、遇到的問題以及解決的方法,由教師和其他學生一起對作品進行評價,并引導學生思考如何對作品進行進一步完善和創(chuàng)新。
案例詳解
一、了解交通規(guī)則
教師帶領學生了解車輛在十字路口遇到交通信號燈時應該如何遵守規(guī)則。學生們懂得,紅燈亮時表示禁止通行;綠燈亮時表示可以通行;黃燈亮時表示不準通行,但已經(jīng)越過停止線的車輛可以繼續(xù)通行。
本課要求學生能初步實現(xiàn)機器人小車檢測到紅色卡片停,檢測到綠色卡片行這一目標。
二、顏色識別
小車自帶顏色紅外傳感器,該組傳感器包括紅外發(fā)射模塊、紅外接收模塊、RGB燈、光線傳感器、補光燈(如圖1)。借助該組傳感器和mBlock5軟件可以實現(xiàn)對障礙物、顏色、環(huán)境光強度、反射光強度、紅外反射光強度、灰度值等進行檢測(如圖2)。
小車主要使用RGB燈和光線傳感器進行顏色識別,理論上可以檢測出的顏色有8種,分別是紅、綠、藍、黃、青、紫、黑、白,除此之外還可以單獨檢測出某種顏色的紅、綠、藍色值。檢測的結(jié)果與環(huán)境光的強度以及卡片離小車傳感器的距離有很大關系。
三、機器人小車編程步驟
第1步:使用USB線將機器人連接到計算機,然后打開機器人開關。
第2步:打開mBlock5軟件,連接對應串口。(如圖3)
第3步:在mBlock5軟件中拖動積木,編寫相應程序。
第4步:將寫好的程序上傳到機器人上(如圖4),觀察效果。
四、程序設計與調(diào)試
1.需求分析
小車的初始狀態(tài)有兩種:(1)小車在行進過程中;(2)小車停在原地。
根據(jù)之前的討論可知,有兩種情況需要判斷:(1)當檢測到小車前的卡片顏色是紅色,則小車立即停止運動;(2)當檢測到小車前的卡片顏色是綠色,則小車開始前進。
2.程序設計
小車的初始狀態(tài)可以用兩個功能按鈕分別控制(如圖5)。按下按鈕A表示程序一開始小車就處于前進狀態(tài),按下按鈕B表示程序開始的時候小車處于靜止狀態(tài)。
因為引起小車運動狀態(tài)改變是基于對特定的兩種顏色進行判斷,所以建議使用兩個“如果……那么……”對兩種情況進行單獨判斷(如圖6),而不是“如果……那么……否則……”。
小車在程序運行中需要不斷檢測車前情況是否發(fā)生變化,如果發(fā)生變化,需要根據(jù)檢測結(jié)果讓小車持續(xù)前進一段時間或者持續(xù)停止一段時間,所以需要一個“重復執(zhí)行”的循環(huán)結(jié)構來保證程序的有效執(zhí)行。(如圖7)
本案例的具體程序:當按下按鈕A(如圖8),小車開始以30%的動力前進,直到檢測到車前有卡片,然后判斷卡片的顏色,如果檢測到的顏色是紅色,表示信號燈紅燈亮,則機器人的RGB LED燈亮起紅色燈,小車立即停止運動;如果檢測到的顏色是綠色,表示信號燈綠燈亮,則機器人的RGB LED燈亮起綠色燈,小車立即以30%的動力前進。當按下按鈕B(如圖9),小車直接開始檢測車前的卡片顏色,如果沒有卡片,或者檢測到的顏色不是紅色或綠色,則小車保持靜止不動,直到檢測到的卡片顏色為綠色。
五、拓展創(chuàng)新
作品展示交流后,給學生一些時間梳理設計思路、完善提升作品。教師也可以提出一些拓展要求供學生挑戰(zhàn),如在十字路口遇到交通信號燈左轉(zhuǎn)、右轉(zhuǎn),或者遇到黃色信號燈,小車應該如何判斷等,并編寫出相應程序。