2011年2月Motorola推出Xoom平板電腦,2014年Apple發表iPhone 6/iPhone 6 Plus智慧型手機,這兩者有何特點?那就是:都內建了大氣壓力感測器(Barometer Sensor)。
大氣壓力感測器可以感應大氣壓力,進而推算出您目前所處位置的高度,也可簡稱高度感測器。不過不太幸運的,目前行動裝置配備這項感測器後的應用仍不多,多數用來協助導航或運動記錄,例如您的車是在平面道路上開或是在高架道路上開,導航指示便會不同,或是有人喜好運動,嘗試記錄這次滑雪,滑出去的最高高度到多少?有無破自己個人紀錄?
本文也來教導如何讓LinkIt ONE能連結、運用大氣壓力感測器,雖然過往的應用多與GPS結合,但或許各位還會有許多更佳的妙用。
筆者是使用Grove Starter Kit for LinkIt ONE中所包含的高度感測器,它是Bosch Sensortec公司的BMP180。不過,在筆者之前的網路示範、書籍示範用的是BMP085,是同公司不同型款的感測器。筆者稍微查了一下,推測可能Bosch期望用BMP180取代BMP085。
若將BMP085的程式拿來連結、感測BMP180的話,還是可以得到數據,但卻是錯誤的數據,筆者得到的是數據是:筆者正處於17,000公尺以上的高度,這可比聖母峰的8,848公尺還高啊!而且攝氏超過100度(BMP085與BMP180都是兼具溫度感測功效的大氣壓力感測器),除非是在三溫暖烤箱,否則筆者大概是被煮熟烤乾了!
Step 1: 接上I2C介面
言歸正傳,第一步先把BMP180接上LinkIt ONE,但必須是接I2C介面,不是接一般的GPIO介面,也非UART介面,如下圖的2種接法都可以。BMP180已經在內部將感測到的類比信號轉換成數位,並透過I2C介面輸出,因此也稱為數位壓力感測器(Digital Pressure Sensor)。
只需不到短短一分鐘...
輸入您的信箱與ID註冊即可享有一切福利!
會員福利
免費電子報
會員搶先看
主題訂閱
好文收藏