本篇文章給大家分享的是有關(guān)如何使用micro:bit、XinaBox和IoT實現(xiàn)數(shù)據(jù)捕捉,小編覺得挺實用的,因此分享給大家學(xué)習(xí),希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。
成都創(chuàng)新互聯(lián)公司服務(wù)項目包括資中網(wǎng)站建設(shè)、資中網(wǎng)站制作、資中網(wǎng)頁制作以及資中網(wǎng)絡(luò)營銷策劃等。多年來,我們專注于互聯(lián)網(wǎng)行業(yè),利用自身積累的技術(shù)優(yōu)勢、行業(yè)經(jīng)驗、深度合作伙伴關(guān)系等,向廣大中小型企業(yè)、政府機構(gòu)等提供互聯(lián)網(wǎng)行業(yè)的解決方案,資中網(wǎng)站推廣取得了明顯的社會效益與經(jīng)濟效益。目前,我們服務(wù)的客戶以成都為中心已經(jīng)輻射到資中省份的部分城市,未來相信會繼續(xù)擴大服務(wù)區(qū)域并繼續(xù)獲得客戶的支持與信任!
在BBC micro:bit上遠程捕獲加速度計數(shù)據(jù),然后使用XinaBox Wi-Fi網(wǎng)關(guān)將數(shù)據(jù)傳輸?shù)絀oT平臺。
需要的材料
XinaBox IP01 x 1
XinaBox CW01 x 1
XinaBox BM01 x 1
XinaBox XC10 x 1
BBC micro:bit x 1
軟件和在線服務(wù)
Ubidots,30天的免費IoT平臺。
故事
加速度是使物體改變其速度的原因:當對物體施加足夠強度的力并使其減速、加速或改變方向加速度已經(jīng)發(fā)生。這是我們對這個世界的一個基本觀察。不僅體驗簡單直觀,而且分析也很有吸引力和教育性。能夠可視化與掉落或投擲球或加速火箭相關(guān)的力,或者看到當移動物體撞擊墻壁時發(fā)生的事情。
該項目將向您展示如何使用micro:bit和IoT來分析一段時間內(nèi)的加速度。您可以使用此處描述的代碼和技術(shù)來測量適用于micro:bit的移動對象的加速度。
下面是加速度可視化的示例:該圖表顯示了在平面中移動的物體的實際數(shù)據(jù)。我現(xiàn)在不會對它說太多 - 我鼓勵你看一下加速度曲線并嘗試推斷出發(fā)生了什么(例如它是一個球彈跳,還是滾動,還是別的什么?)。本文的最后一部分揭示了下面所示的真實世界事件。
BBC micro的一個很棒的功能:它板載加速度計。許多年輕的學(xué)習(xí)者花了大量的時間從加速度計讀取數(shù)據(jù)并以各種創(chuàng)造性的方式使用它。我見過無數(shù)遙控車的遙控車,手套作為控制器,一些非常聰明的平衡機器人,甚至基于手勢的音樂'樂器'。
但是加速度計作為一種學(xué)習(xí)工具也具有巨大的潛力,可以支持速度/距離/時間三角函數(shù),這種三角形非常重要,表面上是物理學(xué)中的知識領(lǐng)域。有什么更好的教授加速方法,而不是讓年輕的學(xué)習(xí)者見證一個事件,然后回顧那個事件背后的力量?
在這篇文章中,我將向您展示如何:
使用micro:bit來收集一堆加速度計讀數(shù)。這個micro:bit將“遠程”收集數(shù)據(jù),這意味著它將在事件期間收集數(shù)據(jù)并將其存儲在micro:bit中,以便稍后共享(我將在稍后解釋原因)。
一旦我們測量的事件完成,我們將使用基于Wi-fi的micro:bit XinaBox IoT入門套件(我在這里稱為我們的micro:bit網(wǎng)關(guān))來獲取數(shù)據(jù)并將其傳輸?shù)轿锫?lián)網(wǎng)平臺。
在這個例子中,我們將在兩個人之間扔一個球然后將數(shù)據(jù)傳到Ubidots IoT平臺上。
為什么要遠程收集原始加速度計數(shù)據(jù)?
micro:bit包括無線功能,使micro:bit能夠和另一個設(shè)備(不是另一個micro:bit)之間啟用藍牙連接。
在某些情況下,可以在收集數(shù)據(jù)時使用無線電或BT傳輸數(shù)據(jù)。這種方法不適合導(dǎo)致這個博客的情況。當我被要求查看在開始時生成圖表的現(xiàn)實世界問題時,需要考慮一些具體的挑戰(zhàn):
數(shù)據(jù)不會丟失至關(guān)重要。我需要在運行期間存儲數(shù)據(jù),然后再將其提取出來,我無法承受無線數(shù)據(jù)包丟失或BT連接丟失。在運行期間保存數(shù)據(jù)意味著我們可以在空閑時檢索它,如果數(shù)據(jù)檢索失敗,我們可以重新嘗試。
由于某些我將在后面解釋的原因,在加速事件期間(后面將稱之為運行)我想使用全部處理器時間來獲取加速度計讀數(shù)。如果我在運行期間傳輸數(shù)據(jù),它會減少我們可以采樣的數(shù)據(jù)量,這會影響數(shù)據(jù)的質(zhì)量。
我想存儲大量數(shù)據(jù),因此我需要確保非必要進程使用最少的內(nèi)存。生產(chǎn)級別的數(shù)據(jù)收集程序(此處未包含)確保將microbit的數(shù)據(jù)擴展到極限!
在運動中移動的物體可能移動了相當遠的距離,將接收器放在固定位置是有風(fēng)險的。可以這樣想 - 這里的代碼可用于測量從高處掉落的身體的加速度。代碼可以適用于讀取數(shù)據(jù)10秒或更長時間,并且在那段時間內(nèi),它將從您丟棄的地方落下很長的距離。
我已經(jīng)完成了以下工作流程:
進行測量
將附加的microPython代碼寫入到micro:bit。
連接到電池
在你的球上切一個足夠大的孔,以便將microbit和電池裝入。
用填充物填充球中的空間(我使用了氣泡膜)
完成后,請執(zhí)行以下操作以激活它:
單擊復(fù)位按鈕以清除舊數(shù)據(jù),然后單擊A按鍵
將從3開始倒計時 - 在倒計時結(jié)束時,LED上顯示停止,表示microbit正在進行測量。在此期間扔球。
測量階段完成后,LED上會顯示一個小方塊。示例代碼將記錄大約3秒鐘的數(shù)據(jù),但您可以調(diào)整代碼以增加或減少數(shù)據(jù)。
單擊B按鈕時,它將啟動將數(shù)據(jù)傳輸?shù)絤icro:bit網(wǎng)關(guān)。
有Simple和Advanced兩個版本程序,它們之間的區(qū)別在于數(shù)據(jù)收集方法。兩者都是以每25ms保存1次數(shù)據(jù)(相當于每秒40次),對于Simple版本,我們每25ms只讀取一次加速度計;而advance版將在25ms周期內(nèi)讀取加速度計最多75次,然后我們保存一個值,即所有75個讀數(shù)的平均值,這樣可以“平滑”數(shù)據(jù):它可以減少異常值并在整個25ms周期內(nèi)提供加速度最大近似值。為了了解數(shù)據(jù)質(zhì)量的差異,我建議您自己嘗試一下:使用兩個版本的代碼并查看數(shù)據(jù)圖表。您可以閱讀有關(guān)此方法的更多詳細信息,何時使用它以及為什么它有效。
如果你查看代碼,你會注意到我在y平面上記錄加速度。因為對于我開發(fā)這個程序的真實場景,micro:bit在該平面中移動。然而,當涉及投擲球時,作用在y平面上的力是投擲microbit方向的分量。可以調(diào)整代碼來記錄x和z讀數(shù),以及你可以拋出球的方式,使加速度在你正在記錄的平面上。
您可能還注意到代碼需要提供120個讀數(shù)。每25ms讀取1次,這相當于3秒的數(shù)據(jù)收集,我發(fā)現(xiàn)以這種方式可以記錄多達400個數(shù)據(jù)點。我使用文件來存儲數(shù)據(jù),而不是列表。兩種方式各有利弊,我在此不再贅述(但如果你感興趣可以提問)。
microbit網(wǎng)關(guān)+物聯(lián)網(wǎng)平臺
您需要執(zhí)行以下操作:
構(gòu)建并設(shè)置micro:bit網(wǎng)關(guān)。
連接到物聯(lián)網(wǎng)平臺
我建議您查看此博客,其中包含連接所需的所有信息。
在完成實驗之前,請確保您的網(wǎng)關(guān)已通電并連接到Ubidots。
請注意,此項目的網(wǎng)關(guān)中的microPython代碼幾乎與我編寫的其他博客中使用的代碼相同。針對每種情況進行調(diào)整相對容易,使用MakeCode圖形編程時(即將提供!),這個過程將大大簡化。
把它們放在一起
如上所述,設(shè)置并投擲球。
測量完成后,確保您的球中的microbit于網(wǎng)關(guān)的范圍內(nèi)(應(yīng)該有幾米)。
確保您的網(wǎng)關(guān)已準備好接收數(shù)據(jù)。
單擊球上的B按鈕
坐下來看看這個過程。觀看數(shù)據(jù)在Ubidots積累很有趣。
我的代碼大約需要一分鐘才能將所有數(shù)據(jù)傳輸?shù)絀oT平臺。這個時間可以顯著減少。花了這么長時間的原因是我一直非常謹慎 -- 我花了一些時間來調(diào)整延時,當我發(fā)現(xiàn)各種效果始終如一時,我就放棄了。我很樂意看到它的工作速度更快,所以如果你實現(xiàn)了這一點,請與我聯(lián)系,讓我知道如何做。
從頭開始分析圖表
讓我們再看一下博客開頭的圖表。這一次,我已經(jīng)設(shè)置了一些線來標記有趣的“階段”:
階段0:對象處于靜止狀態(tài)。
階段1:快速加速(甚至可以說是爆炸性的)。它在標記的點處達到峰值,但在此期間物體會加速。在此期間結(jié)束時,物體已達到其最大速度
階段2:在此期間開始時,物體的減速超過了加速的力,開始快速減速。
階段3:此處的數(shù)據(jù)有點“嘈雜” -- 物體在大部分時間內(nèi)正在減速,減速率的偶然變化很有意思。
階段4:發(fā)生快速減速,速度同樣迅速減小,直到達到零。
階段5:物體再次處于靜止狀態(tài)。
你有沒有猜到它是什么?
這是一輛火箭動力汽車。在第1階段,火箭發(fā)動機起火,然后停止發(fā)射,我們進入第2階段。這一階段看到阻力對車輛起作用。在第3階段,汽車反彈一點,有時可能會離開地面并短暫地進入自由落體(這可能解釋了那段時期內(nèi)發(fā)現(xiàn)的輕微加速度)。在第4階段,它會撞上一個特別設(shè)計的緩沖系統(tǒng),在大約1.5米的范圍內(nèi)將其減速至停止。
以上就是如何使用micro:bit、XinaBox和IoT實現(xiàn)數(shù)據(jù)捕捉,小編相信有部分知識點可能是我們?nèi)粘9ぷ鲿姷交蛴玫降摹OM隳芡ㄟ^這篇文章學(xué)到更多知識。更多詳情敬請關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。
分享標題:如何使用micro:bit、XinaBox和IoT實現(xiàn)數(shù)據(jù)捕捉
鏈接URL:http://vcdvsql.cn/article4/phoiie.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站設(shè)計公司、靜態(tài)網(wǎng)站、品牌網(wǎng)站建設(shè)、網(wǎng)站制作、域名注冊、外貿(mào)網(wǎng)站建設(shè)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)