最近,我從亞馬遜購買了一臺名為“MPU-6050”的3軸陀螺儀和加速度計。它花了5美元。當我研究“Leap Motion”的應(yīng)用程序時,我發(fā)現(xiàn)了許多可以通過Leap Motion控制Google Earth的演示程序。我嘗試在此項目中使用MPU-6050來控制Google地球。
第1步:關(guān)于Google Earth API
Google地球為開發(fā)人員提供插件和API。您可以將插件嵌入到您的網(wǎng)頁中。您還可以使用Javascript控制Google地球。
首先,我從這些教程中學(xué)習(xí)了Google Earth API的基礎(chǔ)知識,例如設(shè)置緯度和經(jīng)度。
步驟2:關(guān)于MPU-6050
MPU-6050為您提供3軸陀螺儀和加速度數(shù)據(jù)。它通過I2C連接到Arduino。我從亞馬遜購買的傳感器沒有手冊或數(shù)據(jù)表,所以我需要有關(guān)如何使用它的信息。
Arduino官方網(wǎng)站有一個MPU-6050的頁面。它提到“閱讀原始價值很容易,其余的不是?!甭犉饋砗茈y!我搜索了很多網(wǎng)站并找到了一個示例程序。程序從傳感器讀取原始3軸加速度值。我需要角度數(shù)據(jù)來控制Google Earth API,因此我通過原始3軸加速度值計算角度,這對于該項目來說已經(jīng)足夠了。您可以找到一個公式來獲取維基百科中兩個向量之間的角度。
步驟3:系統(tǒng)架構(gòu)
上面繪制了該項目的系統(tǒng)架構(gòu)。使用傳感器的原始值控制Google Earth的過程如下:
Arduino從傳感器讀取原始值并計算角度。
角度數(shù)據(jù)為通過XBee傳輸?shù)組ac。
Mac通過Socket.IO將數(shù)據(jù)發(fā)送到瀏覽器。
瀏覽器使用角度數(shù)據(jù)調(diào)用Google Earth API。
步驟4:控制Google Earth的規(guī)范
您可以從GitHub下載此項目的源代碼。
我使用MPU-6050和Google Earth API的數(shù)據(jù)組合設(shè)計了以下規(guī)格。
地圖根據(jù)傳感器的角度移動。通過地圖的比例調(diào)整移動量。即使角度相同,刻度越大,運動越多。
輕觸開關(guān)具有不同的作用。一個開關(guān)被指定為模式轉(zhuǎn)換器。另外兩個開關(guān)用于操作。系統(tǒng)有四種模式。
位置模式:您可以通過操作開關(guān)更改刻度。
平鋪模式:您可以更改視點的傾斜度(鳥瞰圖)。/li>
旋轉(zhuǎn)模式:您可以旋轉(zhuǎn)地圖。
顏色模式:您可以更改網(wǎng)頁的背景顏色。
您可以通過按住模式轉(zhuǎn)換器2秒鐘返回默認位置(我將東京設(shè)置為默認位置)。
Google地球插件提供月球和火星的圖像數(shù)據(jù)。我嘗試過,但沒有發(fā)現(xiàn)它有趣。當我看到地球的地圖時,我可以理解它的位置。但是,通過查看月球和火星的地圖,我無法理解它們的位置。如果你熟悉它們,你可能會喜歡它。
第5步:結(jié)論
在這個項目中,我用3創(chuàng)建了一個原始的Google Earth控制器軸加速度計和開關(guān)。對我來說,在沒有鍵盤或鼠標的情況下控制計算機是一種全新的體驗。該設(shè)備是原始的,但這個項目給了我創(chuàng)建一個原始的人機界面的樂趣。
審核編輯黃昊宇
-
加速度計
+關(guān)注
關(guān)注
6文章
702瀏覽量
45910
發(fā)布評論請先 登錄
相關(guān)推薦
評論