0

0
0

文字

分享

0
0
0

把機器人感測器值與座標用電子郵件寄送

馥林文化_96
・2014/04/28 ・2564字 ・閱讀時間約 5 分鐘

BANNER-G

文/曾吉弘(CAVEDU教育團隊

從上次的專欄開始,Android裝置控制樂高機器人專欄將改用App Inventor 2來編寫。App Inventor 2在指令上與前一版的App Inventor 是差不多的,相信您可以很快上手。請到App Inventor 中文學習網來登入App Inventor 2 開發網站並認識更多新功能。

本期專題將會把樂高NXT光感測器值,每十筆為單位更新到Google Chart雲端圖表來取得折線圖。只要熟悉基本語法就可以產生各式各樣的圖表,非常方便!有接觸過App Inventor的師長朋友們,歡迎從App Inventor中文學習網下載原始碼回去,加入更多有趣的功能。

請注意本範例需用到網路連線,請確認您的手機是使用Wi-Fi或3G行動網路來連上網路,否則將無法顯示Google雲端圖表。

超音波感測器

NXT超音波感測器是一種I2C數位感測器,它有內建的晶片可以分析並送出資料。利用超音波感測器,我們可以讓機器人「看到」物體並在撞上去之前躲開,這是觸碰感測器所辦不到的。 超音波感測器使用了聲納技術,它會發出一連串的超音波並記錄超音波被物體反射後所需要的時間,再轉換成距離回傳給NXT。請注意,超音波感測器的預設單位是公分。實際使用上,超音波感測器可測到最短的距離約為5公分,最遠距離約為220公分(圖1)。

002
圖1 App Inventor中用來取得超音波感測器值的指令。

開始玩機器人

本範例的機器人只要將一個超音波感測器接在NXT主機的4號輸入端即可。請確認NXT主機的藍牙是啟動的,接著將NXT主機與Android手機進行藍牙配對(註2),完成之後就可以把機器人放到一邊了。啟動藍牙之後您可以從NXT主機的螢幕左上角看到藍牙的符號。

接下來依序介紹程式的各個功能:

STEP1登入畫面:

首次進入程式的畫面如圖2a,這時只有「連線」按鈕可以按,其它所有按鈕都無法操作。點選「NXT主機/連線」按鈕後進入藍牙裝置清單(圖2b),請找到剛剛配對完成的NXT主機名稱(本範例為abc),點選之後就會由Android裝置對NXT主機發起藍牙連線。順利連線成功的話,「NXT主機/連線」按鈕會變成不可按的狀態,其他按鈕則都可按(圖2c)。

4aa
圖2a  程式首次執行的畫面。 圖2b  點選連線按鈕後進入藍牙裝置清單。 圖2c  連線成功後的畫面。

STEP2程式初始化:

在點選連線清單之前(ListPickerConnect的BeforePicking事件),需先將清單內容指定為Android裝置上的藍牙配對清單(圖3a)。點選之後則先測試連線是否成功,成功則將「NXT主機/連線」設為不可點選,「寄信」、「取得座標」與「斷線」等按鈕設為可點選,並啟動Clock元件來取得超音波感測器值(圖3b)。

005a
圖3a指定藍牙配對裝置清單。
005b
圖3b連線成功後啟動相關元件。

STEP3 按鈕記錄GPS坐標:

每當我們點擊一次「取得座標」這個按鈕時,就會要求LocationSensor元件來取得手機當下的座標(圖4),並顯示在Label_GPS標籤上。由於Google Map的座標格式為「緯度,經度」。所以我們在此也是這樣顯示。

006
圖4 顯示手機座標。

STEP4 使用Clock元件定時更新超音波感測器值:

接著使用Clock元件來每秒更新一次超音波感測器值,如圖5。如果在尚未與NXT主機連線之前就要取得超音波感測器值的話,會顯示錯誤畫面。因此我們在圖5b中,會確認藍牙連線成功之後才做這件事。

007
圖5 定時更新超音波感測器值。

STEP5 寄送電子郵件:

我們將寄送電子郵件的指令包成一個副程式,將寄送電子郵件的指令設定成ActivityStarter元件的DataUri屬性內容。「mailto:」是收件人電子郵件,這裡油使用者自行填入。「subject=」是郵件主題,「body」是信件內容,在此我們填入座標與感測器值等內容(圖6)。 接著按下「寄信」按鈕之後,會先呼叫email副程式,再透過ActivityStarter元件來啟動手機上的電子郵件程式(圖7)。

008a
圖6 寄送電子郵件的副程式。
008b
圖7 按下按鈕寄送電子郵件。

STEP6 斷線:

按下「斷線」按鈕之後,會中止藍牙連線(BluetoothClient.Disconnect指令),並使畫面上的各個元件恢復到程式一開始時的狀態(圖8)。

009
圖8 按下「斷線」按鈕時中斷藍牙連線。

操作:

實際執行的時候,請先確認NXT已經開機且藍牙也啟動了。接著在您的Android裝置上點選畫面中的「NXT裝置/連線」按鈕,會進到如圖2b的藍牙清單畫面,點選您所要的NXT主機名稱並連線成功後,就能自動取得超音波感測器值。按下「取得座標」按鈕之後,就可在畫面上看到手機目前的GPS座標(圖9a)。請注意您當下所在的位置有可能無法取得座標,例如地下室等密閉空間。

在TextBox中輸入收件人的電子郵件之後,例如aa@bbb,請點選「寄信」按鈕。這時系統會詢問您要使用哪個電子郵件軟體來寄送,例如Android預設的email軟體或Gmail或任何其他的電子軟體等,在此我們選用Gmail(圖9b)。接著就會跳到圖9c的電子郵件畫面,按下寄送按鈕就發信出去了!快去問好朋友有沒有收到信吧。

請注意Android系統中,無法自動發送email、簡訊或撥打電話,因為這樣一來您的手機很容易被惡意使用。所以最後的送出都要由我們親自來執行喔。

9
圖9a 與機器人連線後取得座標與感測器值。 圖9b 系統詢問要使用哪個電子郵件軟體。 圖9c 電子郵件畫面。

本期專欄介紹了如何將機器人的感測器值與手機的GPS座標,透過電子郵件的方式發送出去。這樣有一天您派機器人遠征的時候,就能用這樣的方式來報平安。請繼續關注CAVEDU的機器人專欄唷!

本程式已上架Google play,請到Google Play搜尋「CAVEDU教育團隊」就找得到我們的樂高機器人系列app了。歡迎大家到App Inventor 中文學習網的檔案庫下載本程式的aia原始檔與apk安裝檔。

註:

  1. 想學如何開發App Inventor程式嗎?請到App Inventor 中文學習網與我們一同學習。
  2. 將Android手機設定為可安裝非Google Play下載的程式以及讓手機與樂高NXT主機連線等說明請參考此處
  3. 與NXT連線後如果出現[Error 402]之錯誤訊息請不必理會,程式依然能正確執行。

 

文章原文刊載於《ROBOCON》國際中文版2014/5月號

文章難易度
馥林文化_96
54 篇文章 ・ 6 位粉絲
馥林文化是由泰電電業股份有限公司於2002年成立的出版部門,有鑒於21世紀將是數位、科技、人文融合互動的世代,馥林亦出版科技機械類雜誌及相關書籍。馥林文化出版書籍http://www.fullon.com.tw/

0

0
0

文字

分享

0
0
0

素養不是知識,是讓孩子像科學家一樣思考——LIS 創辦人嚴天浩專訪

PanSci_96
・2021/09/24 ・2101字 ・閱讀時間約 4 分鐘

近年來,在新課綱推行之下,「素養」這個詞成為熱門關鍵字,「對我來說,素養就是面對世界的行為模式,在面臨問題時,一個人會抱著什麼樣的態度去解決問題。而科學素養就是『像科學家一樣思考』」LIS 科學情境教材(台灣線上教育發展協會)創辦人嚴天浩這麼說。

嚴天浩在大學時開始製作教學影片,最初的動機來自上大學後體會到城鄉差距、資源落差,想藉由線上教材擴大影響力,然而觀看次數卻不如預期。

2013 年起,嚴天浩和夥伴到台東,向「孩子的書屋」負責人陳爸(陳俊朗)請益,並長期蹲點接觸孩子,發現學生們面臨最大的問題不在於「學什麼」,而在於「為什麼要學」,因此意識到若要改變孩子的學習狀態,不能只是單方面灌輸「老師想教的」,而要從學生的需求出發,了解「孩子想學什麼」。

七年來,LIS 拍攝超過 100 支線上科學影片,包括將科學家的思想歷程、時代背景融入角色劇情的科學史,以及結合時事、生活情境的科學實驗,目前已經超過 250 萬觀看人次,也成為全台許多中小學的教材。

這次,LIS 歷時三年研發出一套科學實境解謎遊戲,不只在玩遊戲的過程中學科學,也引導孩子練習「像科學家一樣思考」。

什麼是「像科學家一樣思考」?

過去,我們在國中課本裡學到的科學方法「觀察、提出假說、進行實驗、得到結論」,然而許多學生能對步驟琅琅上口,卻不見得理解背後的邏輯。LIS 分析百位科學家的思考歷程以及參考教育學者的理論,設計出適合培養國小學生科學思維的「科學推理階梯」,共有四個步驟,包括「發現問題」、「聯想原因」、「大膽假設」、「實際驗證」。

嚴天浩坦言,對於國小的孩子來說,他認為最難的在於——第一步「發現問題」,這取決於孩子過去是否累積足夠的觀察經驗,因此,如何訓練孩子觀察是培養探究學習的重點。然而,在沒有老師的引導下,要怎麼讓孩子能聚焦在實驗的現象上,成為開發遊戲過程中的一大考驗,後來,團隊想出了運用 RPG 中的角色對話,設計句子讓玩家將注意力集中在現象上的差異,「當孩子觀察到的與他原本的認知有所不同,產生衝突時才會進而發現問題。」嚴天浩說。

有適當的引導,才能從問題中學習

在發現問題之後,還須激發玩家思索問題的意願,因此在遊戲中便成為一個個解謎關卡,玩家為了破關、練等會主動尋找答案,在玩完遊戲後得到的成就感,會讓孩子對科學產生動機,在未來有自信用這樣的方式去思考、面對問題。

嚴天浩說:「大學時我修過教育學的課,設計課程的第一步往往是『引起動機』,但我們認為應該從遊戲開始到結束的每一個動作,都需要一個『引起動機』,目前玩過這套遊戲的孩子有持續玩過兩個小時以上,玩得越久代表引起的學習動機越強烈。」

了解背後的意義才是學科學

然而,有時在做完實驗後,學生只會記得當時看到的實驗結果或現象,卻沒有把背後的邏輯和原理帶走,關於這部分,嚴天浩分享,「玩實驗」和「學科學」最大的差別在於,是否了解每個步驟的意義,如同以往「食譜式實驗」,照著課本一步一步做,卻不知道為什麼這麼做。

因此,他們把演示型實驗設計成遊戲,將探究歷程拆分成關卡,透過與 NPC 對話帶領玩家思考,並預想玩家可能卡關的地方,就像是在蓋房子時的鷹架,一層層建構、支持,逐漸將學習的責任放回孩子身上,傳統課堂中搭鷹架的角色可能是老師,而在這個遊戲裡,是精心設計過的關卡提示。

讀到這裡,或許你會想問,在探究式的學習中,真的能夠學會「像科學家一樣思考」嗎?

「我認為探究學習中,知識其實只是附帶的。」嚴天浩解釋:「我們想告訴孩子的是,科學家最厲害的並不是他成功發現了什麼,而是他在失敗了那麼多次之後,還是願意繼續努力。」

如果現在的台灣是二十年前教育的結果,那麼 LIS 正在改變的是二十年後的台灣,那時的每個人在面對問題時都能有邏輯地看待、抱著自信的態度去解決,這是 LIS 的憧憬,也是我們對於台灣未來世代的期盼。


網站更新隱私權聲明
本網站使用 cookie 及其他相關技術分析以確保使用者獲得最佳體驗,通過我們的網站,您確認並同意本網站的隱私權政策更新,了解最新隱私權政策