0

0
0

文字

分享

0
0
0

如何用LEGO研究植物

葉綠舒
・2014/06/29 ・1116字 ・閱讀時間約 2 分鐘 ・SR值 481 ・五年級
相關標籤: 樂高 (8)

-----廣告,請繼續往下閱讀-----

愛荷華州立大學(The Iowa State University)材料科學與工程系助理教授Ludovico Cademartiri想了解環境對植物生長的影響,特別是在氣候變化與土壤特性如何影響根系的生長。要進行這樣的研究,植物要暴露於高度受控的環境中,包括養分、水、氧氣以及根的物理障礙物等等都要控制。

140626121723-large
Ludovico Cademartiri 以及 Kara Lind。 圖片來源:Science Daily

過去在植物實驗上最常用的環境控制方式,包括了溫室(Greenhouses)、培養箱(growth chamber)與微流控技術(microfluidic technologies);溫室與培養箱可以為整株植物創造一個大致上控制得還不錯的環境,但是整間溫室都一樣。微流控技術可以建立一個高度控制微米級的環境,但是造價很貴,又比較複雜,也不容易擴充。

Cademartiri認為,這種研究植物和根系的生長的設備,應該是簡單、廉價、靈活、再現性高,並能同時進行多個實驗。這樣的東西最好還能模組化,結構精確又容易擴充,即使在沒有最新的技術或植物科學或農業研究的基礎設施的實驗室也能操作。 當然,這種設備還要透明,可以用高溫高壓消毒,立體,具有安定的化學性質,而且能與現有的植物生長實驗相容。

看起來達成所有這些要求似乎是很困難,但是他想到了完美的解決方案:樂高積木。

-----廣告,請繼續往下閱讀-----

Cademartiri說,不要認為它們就是玩具。樂高積木實際上是以精密非凡的標準來構建的高品質的塑膠模組,我們可以用它來建立任何東西;而且非常適合用來解決複雜的設計問題。

Kara Lind(愛荷華州立大學博士生)說,她在這個研究裡面負責的項目是:搞清楚如何將透明的樂高積木搭成可以充填凝膠或其他土壤替代物,然後讓植物在裡面發芽和生長。她還嘗試把樂高的環境擴充,好讓正在成長中的植物可以繼續裝在裡面。

除此之外,她還開發在樂高的環境中建立化學梯度的技術,未來可以用來測試植物對營養物和毒素的反應。

研究人員認為,他們最近在PLoS ONE發表的研究結果說明了,對於研究植物根系來說,樂高積木是非常方便和靈活的設備。他們將繼續開發工具庫,製造複雜、實惠又精緻的工具(樂高積木)。

-----廣告,請繼續往下閱讀-----

他們是怎麼做的呢?

1. 先用LEGO Digital Designer(簡稱LDD)設計出想要的實驗器具,接著LDD就會產生說明書,並告訴設計者他需要的積木數目與型號。

2. 到LEGO的”pick a brick”網頁進行線上購買。

3. 等積木來了以後,拿去滅菌後組合。 然後就可以做實驗了!

-----廣告,請繼續往下閱讀-----

因為LEGO不是完全密合的,所以當要使用培養基培養植物的時候,在置備培養基的過程中會有少量培養基從隙縫流出,只需要在置備的時候先置備多一點培養基,等培養基冷卻到40度C左右再將培養基倒入LEGO容器,就不會損失太多培養基了。(詳情請看文章所附的影片

參考文獻: LEGO bricks turned into scientific tool to study plant growth. Science Daily [ June 22 ,2014]

原刊載於作者部落格Miscellaneous999

文章難易度
葉綠舒
262 篇文章 ・ 9 位粉絲
做人一定要讀書(主動學習),將來才會有出息。

0

0
0

文字

分享

0
0
0
如何使用樂高測量普朗克常數?
活躍星系核_96
・2014/12/17 ・1861字 ・閱讀時間約 3 分鐘 ・SR值 556 ・八年級

-----廣告,請繼續往下閱讀-----

lego-watt-balance-4

文 / WaveRiderZETA(某個尚未畢業的爆炎單身菸酒生,不菸不酒,倒是3C的癮頭比較嚴重。)

如果你想要找個完美的禮物送給近乎擁有一切物理學家,何不考慮給他套樂高來測量宇宙的基本常數之一:普朗克常數呢?

普朗克常數是科學中最重要的數字之一。它描述了在被稱為普朗克─愛因斯坦關係的方程的電磁波能量和頻率之間的關係:E=hν。其中,E是能量,ν是頻率和h是普朗克常數。

自1990以來的,普朗克常數因為與其能量單位的關聯性,故成為具有歷史象徵性的一個能量常量單位─但,它不曾被定義與連結到任何一種量測系統校準與標準定義的單位聯想之上。

現在這個情況即將改變。普朗克常數在現在越趨被「設定」的重要,來自於物理學家正試圖改變質量的定義─物理學家們希望它(質量)取決於普朗克常數,而不是依賴一塊藏在巴黎保管庫裡頭的在金屬塊狀體(現在放在巴黎保管庫內的國際千克原器,是一顆人造鉑銥合金塊)。

-----廣告,請繼續往下閱讀-----

正因為此,所以科學家必須要收集大量基於普朗克常數的質量數據;或者反過來,從已知質量逆推得到普朗克常數相關的數值。這也就顯得見怪不怪了─而今日,位於馬里蘭州蓋瑟斯堡的國家標準與技術研究所裡,里昂周(音譯)和幾個快樂的夥伴們,提供並解釋了個好的解決方案:用樂高製作一套製作一套實驗儀器來辦到這個任務。

多年來,物理學家和標準與幾束研究所評估了許多不同量測的方式;最後決定使用一台被人們稱為「瓦特天平器」的機器來進行試驗。

Watt balance

這設備原理上相當簡單。在科學家的點子中,儀器將以質量上所造成的力─物體下墜的重力與由載流線圈所產生的磁場所施予的力達成兩者平衡來加以測試。質量可以通過機械動力(線圈的磁力)進行對照比較─而這樣可以轉換出功率與瓦數,所以,機器就這樣被命名為瓦特天平器,而且兩者可以輕易地被轉換測量而得。

覺得這樣敘述很複雜嗎?那從測量數據的轉換觀點來看吧。這實驗涉及量測如同原理一樣簡單:透過電壓、電流流經線圈的測量(你需要安培與伏特計,不知道是啥去五金行或者電子材料行買吧!)與g,重力加速度的精確數值即可。其中,如果要取得詳盡的重力加速度數值,因為在地球表面上此數字和重力常數息息相關,所以問題很好解決:透過美國國家海洋與大氣管理局網站,簡單的輸入地點,就可以輕易的獲得來自全世界各地的數據。

-----廣告,請繼續往下閱讀-----

接下來是個簡單的數學轉換問題了。既然重力施予物體下落產生下拉的力,天平的另一端要以線圈所產生的機械力─擁有SI單位的電功率,也是機械力數據抗衡,那麼兩者可以畫上等號。「透過常規SI電功率轉換出的機械動力對比,就可以求出h。」於是周和快樂的夥伴們得出了這樣的結論。

那麼,有了原理與方式,該是建造儀器的時刻了。周與快樂的夥伴們表示,這台「瓦特天平器/瓦特平衡儀」所需要的零件幾乎大部分可以從樂高的網站「Pick-a-Brick」(選塊磚塊?)中直接選購;而針對比較特殊的專業組建,周他們也同時提供了網購地取得清單。 最近接觸了一款任天堂上面的遊戲《 FRIV 》,深深覺得遊戲能做到這種程度已經不是厲害可以形容了,決定為文好好談談這款遊戲精巧在哪裡。

cxvxfvf

要花多少錢?看完圖片與列表之後,你一定會想問這個問題。周與快樂的夥伴們提供了一套基本的套件價格試算:大約總成本可低於634美金─最昂貴的組件是300美金的數據採集器和90美金的模擬輸出器。這兩個都可以透過單一功能性的套件進行替換,成本大約189美金。一來一往,節省200美金絕對讓你能夠負擔得起。

「我們希望鼓勵眾多的科學愛好友打造瓦特平衡器,以從事有趣的科學測量。」周的團隊說。這是他們最發自內心的感想了。隨著年末假日大採購的時刻即將來臨;還在傷腦筋找不到禮物送給他人嗎?瓦特平衡套件將會是送給號稱「擁有一切」的物理學家最佳的伴手禮,絕對沒錯!

-----廣告,請繼續往下閱讀-----

備註:

  • 普朗克常數=6.62606957×10-34m2 kg/s。這是一個是一個物理常數,用以描述量子大小。
  • 馬克斯‧普朗克在1900年研究物體熱輻射的規律時發現:電磁波的發射與吸收必須假設為不連續的狀態且以「份」的方式進行,才能和試驗結果相符。在計算中, 這樣的一份能量被稱作「量子」,每一份能量子等於普朗克常數乘以輻無線電磁波的頻率。這關係稱為普朗克關係,用方程式表示普朗克關係式。
  • 本文不會完全按照內文結構進行翻譯,因為翻成中文很多地方語序不順暢無法形成正常的中文文章,請各位見諒。

資料來源:

活躍星系核_96
752 篇文章 ・ 122 位粉絲
活躍星系核(active galactic nucleus, AGN)是一類中央核區活動性很強的河外星系。這些星系比普通星系活躍,在從無線電波到伽瑪射線的全波段裡都發出很強的電磁輻射。 本帳號發表來自各方的投稿。附有資料出處的科學好文,都歡迎你來投稿喔。 Email: contact@pansci.asia

0

0
0

文字

分享

0
0
0
一步一步讓樂高機器人玩打鼓遊戲
馥林文化_96
・2013/12/17 ・2317字 ・閱讀時間約 4 分鐘 ・SR值 535 ・七年級

-----廣告,請繼續往下閱讀-----

文/曾吉弘(CAVE教育團隊

本篇文章將使用三個樂高NXT 觸碰感測器來進行有趣的聲光效果,按下不同觸碰感測器就會讓手機畫面變色, 除此之外,當您點擊手機畫面時,機器人也會發出音效與您同樂。有接觸過App Inventor 的師長朋友們,歡迎從App Inventor 中文學習網下載原始碼回去加入更多有趣的功能。

觸碰感測器

樂高NXT 套件中的觸碰感測器前端有一個橘色按鍵,可藉此偵測是否撞到物體或被壓下。由於內部構造是一個開關(switch),所以只能判斷前端是否被壓下而無程度上的區別。對應的資料型別是布林(boolean)。在App Inventor 中, 我們使用NxtTouchSensor 元件的IsPressed 指令(圖1)來偵測觸碰感測器是否被壓下,如果被壓下則為true ,反之為false。

圖1 App Inventor 偵測觸碰感測器是否按下

開始玩機器人

今天的機器人有點不一樣,不需要馬達,請拿出三個觸碰感測器分別接在NXT 主機的輸入端1 到3 ,組裝好如圖2(註1)。請確認NXT 主機的藍牙是啟動的,接著將NXT 主機與Android手機進行藍牙配對(註2),完成之後就可以把機器人放到一邊了。啟動藍牙之後您可以從NXT 主機的螢幕左上角看到藍牙的符號。

-----廣告,請繼續往下閱讀-----
圖2 組裝好的樂高NXT 機器人。

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

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

圖3a 程式首次執行的畫面。
圖3b 點選連線按鈕後進入藍牙裝置清單。
圖3c 連線成功後才可看到鼓面。

STEP2 程式初始化:在點選連線清單之前(ListPicker Connect 的BeforePicking 事件),需先將清單內容指定為Android 裝置上的藍牙配對清單(圖4a)。點選之後則先測試連線是否成功,成功則將「斷線」按鈕設為不可點選、「斷線」按鈕設為可點選並顯示Canvas 畫布元件(圖4b)。

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

STEP3 使用副程式管理觸碰感測器狀態:我們宣告了三個變數t1、t2 與t3 來儲存三個觸碰感測器的狀態(圖5a)。接著宣告一個名為checkTouch 的副程式來管理這三個變數,只要某個觸碰感測器被壓下,就會將對應的變數改為1 ,反之則為0 ,最後回傳這三個變數的加總值(圖5b),我們就是根據這個加總值來改變Canvas 畫布元件的背景顏色。

-----廣告,請繼續往下閱讀-----
圖5a 三個用來儲存觸碰感測器狀態的變數。
圖5b checkTouch 副程式。

STEP4 改變Canvas背景顏色:為了讓程式能夠持續監控三個觸碰感測器的狀態, 我們使用了一個Clock 元件,並設定其計時器更新頻率為100 ,代表每0.1 秒偵測一次觸碰感測器狀態。在Clock.Timer 事件中, 藉由呼叫checkTouch 副程式並根據它的回傳值(0、1、2、3) 將Canvas 背景顏色改為淺灰色、綠色。這裡回傳的數值代表被按下的觸碰感測器數目, 也就是說當您壓下1 號與3 號觸碰感測器時,這時與您壓下2 號與3 號以及1 號與2 號的意義是相同的,都會使手機畫面變為青綠色( 圖6 中的Cyan)。同時我們也會把目前偵測到被壓下的觸碰感測器個數顯示在手機畫面上。

圖6 每0.1 秒偵測一次觸碰感測器狀態。

STEP5 點擊畫面播放讓機器人播放不同音效:當我們點擊Canvas 元件時, 會根據點擊位置讓機器人發出四種音效。Canvas 元件長寬各為320 像素, 所以我們取中點(160,160) 將畫面分成四等分( 圖7a), 點擊左上、右上、左下與右下時,會讓樂高NXT 機器人發出La、Sol、Mi 與Do 四種音效(圖7b、圖7c), 每次播放長度為0.3秒,這是藉由NxtDirectCommand 的PlayTone 指令所達成的。

圖7a Canvas 元件切成四等分。
圖7b 左上播放La 音, 頻率440/ 右下播放Do 音,頻率262 。
圖7c 右上播放Sol 音,頻率392/ 左下播放Mi 音,頻率330 。

 

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

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

 

操作

實際執行的時候,請先確認NXT 已經開機且藍牙也啟動了。接著在您的Android 裝置上點選畫面中的「連線」按鈕,會進到藍牙清單畫面,點選您所要的NXT 主機名稱並連線成功後,就能按下觸碰感測器來控制手機畫面顏色,或者點擊手機畫面來控制機器人發出不同的音效(圖9a ∼ 9c)。

-----廣告,請繼續往下閱讀-----
圖9a 按下任一個觸碰感測器,畫面為綠色。
圖9b 按下任兩個觸碰感測器,畫面為青綠色。
圖9c 按下所有的觸碰感測器,畫面為紅色。

 

歡迎大家由此連結或掃描以下的QRCode 來下載本程式:

本程式已上架Google play,請到Google Play 搜尋「CAVE 教育團隊」就找得到我們的樂高機器人系列app 了。請在App Inventor 中文教學網上直接下載本範例的App Inventor 原始檔與apk 安裝檔。

註1: 想學如何開發App Inventor 程式嗎? 請到App Inventor 中文學習網(http://www.appinventor.tw)與我們一同學習。

註2: 將Android 手機設定為可安裝非Google Play 下載的程式以及讓手機與樂高NXT 主機連線等說明請參考:http://www.appinventor.tw/setup。

-----廣告,請繼續往下閱讀-----

註3: 與NXT 連線後如果出現[Error 402] 之錯誤訊息請不必理會,程式依然能正確執行。

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

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

0

0
0

文字

分享

0
0
0
輕鬆使用Android 裝置控制樂高機器人:用滑桿控制馬達速度
馥林文化_96
・2013/07/16 ・2702字 ・閱讀時間約 5 分鐘 ・SR值 521 ・七年級

-----廣告,請繼續往下閱讀-----

文/曾吉弘(CAVE教育團隊

本期專欄將與大家介紹如何使用Slider 滑桿元件來分別控制樂高機器人馬達的轉速與方向。滑桿元件好比是電玩遊戲機的類比搖桿,提供了比按鈕更細緻的操控效果。

樂高NXT 伺服機

樂高公司所生產的馬達種類約有十數種,其中NXT 馬達是輸出扭矩最大也是最有份量的一款馬達,相對地耗電量也是相當驚人。另一方面,NXT馬達是所有樂高馬達中唯一有配置角度感應器的馬達,透過角度感應器我們可以精確指定馬達轉軸之旋轉角度(最低為1 度),甚至經過計算之後可轉換為機器人行走的距離,非常方便。在App Inventor 中是透過NxtDrive元件來控制樂高NXT 馬達,雖然控制功能不如其他程式語言例如C 語言或是LabVIEW 來得豐富,但是基本操作也是相當足夠了。圖1a 是NxtDrive的屬性設定欄位,由於本範例要使用三個Slider 元件分別來控制三個馬達,所以需要三個NxtDrive 元件, 將其DriveMotors 欄位分別設為A、B 與C,代表控制樂高NXT 機器人的A、B 與C 馬達。至於WheelDiameter 代表目前所使用的輪胎直徑, 單位為公分。
在此不必理會此欄位,因為它不會影響到本範例的操作效果,我們會在日後的專欄來介紹如何使用它。

圖1a NxtDrive 的屬性設定欄位。
圖1b NxtDrive 的轉動指令。

開始玩機器人

請把NXT機器人組裝好,並將左側馬達接在NXT的輸出端B,右側則是輸出端C(註1)。請確認NXT主機的藍牙是啟動的,接著將NXT主機與 Android手機進行藍牙配對(註2),完成之後就可以把機器人放到一邊了。啟動藍牙之後您可以從NXT主機的螢幕左上角看到藍牙的符號。

-----廣告,請繼續往下閱讀-----

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

STEP1 登入畫面:

首次進入程式的畫面如圖2a , 只有「NXT 裝置清單/ 連線」按鈕可以按,其它所有按鈕都無法操作。點選「NXT 裝置清單/ 連線」按鈕後進入藍牙裝置清單(圖2b),請找到剛剛配對完成的NXT 主機名稱(本範例為abc),點選之後就會由Android 裝置對NXT 主機發起藍牙連線。順利連線成功的話,就可拉動Slider 滑桿元件來控制馬達轉速(圖2c)。

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

-----廣告,請繼續往下閱讀-----

 

STEP2 程式初始化:

在點選連線清單之前(ListPickerConnect 的BeforePicking事件), 需先將清單內容指定為Android 裝置上的藍牙配對清單(圖3a)。點選之後則先測試連線是否成功,成功則將「選擇感測器」與「開始唸/ 停止」設為可點選(圖3b)。

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

STEP3 使用滑桿控制馬達電力:

在設計的想法上,我們希望滑桿拉到最左邊時,馬達電力為-100(全速反轉),拉到最右邊時馬達電力為100(全速正轉),置於中間時電力則為0 ,同時也讓馬達停下來。
由於滑桿元件最小值只能為0 ,因此我們將滑桿的最大值改為200 ,後續運算再減100 就可對應到馬達電力-100~100 的範圍了。至於滑桿的初始位置則設為100 ,即滑桿正中央處。
拉動滑桿時, 會呼叫Slider 的PositionChanged 事件並帶入thumbPosition 參數, 我們就是要用這個參數來控制馬達的電力。在圖4中,我們將滑桿位置thumbPosition_A 減去100 之後四捨五入, 指定為power 變數的內容, 這就是馬達的電力。接著將相關數值顯示於畫面上, 最後呼叫NxtDrive 的MoveForwardIndefinitely 指令並塞入power 變數值就好了。這樣當滑桿位於最右側時,thumbPosition_A 的值為200 ,power 變數值為200-100為100 ,代表馬達正向全速轉動。

-----廣告,請繼續往下閱讀-----
圖4 Slider 元件控制馬達轉速。

STEP4 定義副程式:

您應發現了三個Slider 元件做的事情好像大同小異,這時候就可以將這些類似的指令包成一個副程式,不但程式的可讀性變高,日後要修改程式時也更加方便。本範例中宣告一個名為move 的副程式,並可傳入一個參數。當我們拉動SliderA 時,就會傳入一個文字A 給move 副程式。因此的程式可以簡化變成以下的樣子(圖5a):

圖5a 使用副程式架構來改寫Slider 事件。

我們將文字A 傳入move 副程式之後, 就都交給它來處理了。那麼,move 副程式裡面到底發生了什麼事呢? 在move 裡面, 我們會判斷接收到的參數motor 內容是否等於「A」,如果是的話就執行圖5b 的內容, 圖5b 的內容是不是和圖4 是一樣的呢?
那麼另外兩個Slider 事件您應該已經知道怎麼做了,就是分別送出文字「B」與「C」,並在move 副程式中進行對應的判斷與動作(圖5c)。這樣一來我們就能集中管理程式碼了。

圖5b 將原本的Slider_A 事件中指令整合到副程式中。
圖5c 不同的Slider 事件差別在於送出的參數。

STEP5 停止所有馬達並將滑桿歸零:

-----廣告,請繼續往下閱讀-----

為了方便起見, 請新增一個按鈕,按下之後會三個Slider 元件的滑桿回復到正中央位置,同時也會將power 變數值歸零,馬達也就停止轉動(圖6)。

圖6 停止所有馬達。

STEP6 斷線:

按下「斷線」按鈕之後,會中止藍牙連線(BluetoothClient.Disconnect指令),並使按鈕恢復到未連線時的狀態(圖7)。

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

操作

實際執行的時候,請先確認NXT 已經開機且藍牙也啟動了,並將NXT 接上三個馬達( 圖8a、8b、8c)。接著在Android 裝置上點選程式畫面中的「連線」按鈕,會進到藍牙清單畫面,點選您要的NXT 主機名稱並連線成功後,就能拉動滑桿來控制,或按下「停止所有馬達」按鈕來停止馬達。

-----廣告,請繼續往下閱讀-----

圖8a A 馬達電力82% 正轉。
圖8b B 馬達電力34% 正轉。
圖8c C 馬達電力46% 反轉。

 

本範例介紹了Slider 滑桿元件,它提供了更細微的控制, 善加利用它,您的機器人會有更多有趣的功能。程式模組化是非常重要的程式開發觀念,希望您可以藉此建立起良好的基礎。

期待您從本期專欄的內容來激盪出更多有趣的火花。請繼續關注CAVE 的機器人專欄唷!

 

歡迎大家由以下連結或掃描以下的QRCode 來下載本程式:

-----廣告,請繼續往下閱讀-----

本程式已上架Google play,請到Google Play 搜尋「CAVE 教育團隊」就找得到我們的樂高機器人系列app 了。在App Inventor 中文教學網上直接下載本範例的App Inventor 原始檔與apk 安裝檔。

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

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

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