資料介紹
描述
在本章中,我將解釋如何將BMP180 Bosch 傳感器連接到 RaspberryPi。這是我的家庭自動(dòng)化項(xiàng)目的一部分。
BMP180 是 Bosch Sensortec 的新型數(shù)字氣壓傳感器,具有極高的性能,可應(yīng)用于高級(jí)移動(dòng)設(shè)備,例如智能手機(jī)、平板電腦和運(yùn)動(dòng)設(shè)備。它沿用了 BMP085 并帶來(lái)了許多改進(jìn),例如更小的尺寸和數(shù)字接口的擴(kuò)展。
低至 3 μA 的超低功耗使 BMP180 成為移動(dòng)設(shè)備節(jié)能領(lǐng)域的領(lǐng)導(dǎo)者。BMP180 還以其在電源電壓獨(dú)立性方面非常穩(wěn)定的行為(性能)而著稱。
這些傳感器使用 I2C 總線進(jìn)行通信。2C 翻譯成“Inter IC”。有時(shí)總線稱為 IIC 或 I2C 總線。
最顯著的特點(diǎn)包括:
- 只需要兩條公交線路
- 沒(méi)有嚴(yán)格的波特率要求,例如使用 RS232,主機(jī)生成一個(gè)總線時(shí)鐘
- 所有組件之間存在簡(jiǎn)單的主/從關(guān)系
- 連接到總線的每個(gè)設(shè)備都可以通過(guò)唯一地址進(jìn)行軟件尋址
- I2C 是一個(gè)真正的多主機(jī)總線,提供仲裁和沖突檢測(cè)
請(qǐng)注意,BMP180 有 4 個(gè)我們需要連接到 RaspberryPi 的引腳。首先找到以下引腳:RaspberryPi 上的 3v3(到 BMP180 上的 VIN)、SDA(到 BMP180 上的 SDA)、SCL(到 BMP180 上的 SCL)和接地(到 BMP180 上的 GND)。然后將這些引腳連接到 BMP180 板上的相應(yīng)引腳。
接下來(lái)我們需要為 RaspberryPi 配置 I2C。為此,您首先需要進(jìn)行一些安裝。確保 RaspberryPi 有網(wǎng)絡(luò)連接,然后找到 ip 地址。然后通過(guò) SSH 連接并使用這些命令:
sudo su
sudo apt-get install python-smbus i2c-tools
使用以下命令檢查內(nèi)核版本:
# uname -a
Linux musicbox 4.0.9+ #807 PREEMPT Fri Jul 24 15:14:04 BST 2015 armv6l GNU/Linux
如果內(nèi)核版本高于 3.17 那么你需要編輯/boot/config.txt
并添加:
dtparam=i2c1=on
dtparam=i2c_arm=on
接下來(lái)我們需要安裝/激活內(nèi)核模塊。修改 /etc/modules
文件并添加這兩行:
i2c-bcm2708
i2c-dev
如果 spi 和 i2c 模塊被列入黑名單,下次更新 ckeck。打開/etc/modprobe.d/raspi-blacklist.conf
并注釋以下行(如果存在),將#
其放在它們前面:
blacklist spi-bcm2708
blacklist i2c-bcm2708
全部做完。現(xiàn)在重啟
# sudo reboot
重啟后,再次通過(guò) SSH 連接到 RaspberryPi 并檢查它是否可以讀取 BMP180 設(shè)備。
# ls /dev/i2c*
/dev/i2c-1
# sudo i2cdetect -y 1
0 1 2 3 4 5 6 7 8 9 a b c d e f
00: -- -- -- -- -- -- -- -- -- -- -- -- --
10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
30: -- -- -- -- -- -- -- -- -- 39 -- -- -- -- -- --
40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
70: -- -- -- -- -- -- -- 77
請(qǐng)注意,如果ls /dev/i2c*
將返回,/dev/i2c-0
則對(duì) i2cdetect 參數(shù)使用“0”。
我們可以看到列出了 2 個(gè)地址:0x77 和 0x39。可以在 0x77 地址訪問(wèn)溫度、壓力和高度傳感器。可以在 0x39 地址訪問(wèn)光傳感器。
接下來(lái),我使用 Adafruit Python BMP 庫(kù)讀取傳感器(Light和BMP)。我寫了一個(gè)輸出傳感器信息的小腳本。
# cat read_sensor.py
#!/usr/bin/python
from libs.BMP085 import BMP085
import os
from libs.TSL2561 import TSL2561
# ===========================================================================
# Example Code
# ===========================================================================
# Init the TSL2561 sensor class (default address is 0x39)
Light = TSL2561(0x39)
# Initialise the BMP085 and use STANDARD mode (default value)
# bmp = BMP085(0x77, debug=True)
bmp = BMP085(0x77)
# To specify a different operating mode, uncomment one of the following:
# bmp = BMP085(0x77, 0) # ULTRALOWPOWER Mode
# bmp = BMP085(0x77, 1) # STANDARD Mode
# bmp = BMP085(0x77, 2) # HIRES Mode
# bmp = BMP085(0x77, 3) # ULTRAHIRES Mode
temp = bmp.readTemperature()
# Read the current barometric pressure level
pressure = bmp.readPressure()
# To calculate altitude based on an estimated mean sea level pressure
# (1013.25 hPa) call the function as follows, but this won't be very accurate
altitude = bmp.readAltitude()
# To specify a more accurate altitude, enter the correct mean sea level
# pressure level. For example, if the current pressure level is 1023.50 hPa
# enter 102350 since we include two decimal places in the integer value
# altitude = bmp.readAltitude(102350)
print "Temperature: %.2f C" % temp
print "Pressure: %.2f mmHg" % (pressure / (100.0 * 1.33322) )
print "Altitude: %.2f m" % altitude
print "Light: %d lux" % Light.readLux(0)
運(yùn)行此腳本將為您提供以下信息:
root@musicbox:/opt/rcontroller/scripts/bmp_sensor# ./read_sensor.py
Temperature: 32.10 C
Pressure: 753.18 mmHg
Altitude: 75.96 m
Light: 0 lux
- RaspberryPi Pico CLion開發(fā)環(huán)境配置
- 動(dòng)力環(huán)境監(jiān)控系統(tǒng)在通信電源中的應(yīng)用綜述 11次下載
- 基于ARM處理器的禽舍環(huán)境監(jiān)控系統(tǒng) 31次下載
- 開閉所配電環(huán)境綜合監(jiān)控管理系統(tǒng)設(shè)計(jì)方案 15次下載
- 車聯(lián)網(wǎng)環(huán)境中混合車流的車輛換道行為決策模型 14次下載
- 使用無(wú)線傳感網(wǎng)絡(luò)實(shí)現(xiàn)智能機(jī)房環(huán)境監(jiān)控系統(tǒng)的設(shè)計(jì)資料說(shuō)明 12次下載
- 如何使用ZigBee對(duì)環(huán)境監(jiān)控網(wǎng)絡(luò)路由協(xié)議進(jìn)行研究論文 10次下載
- 基于CAN總線的隧道環(huán)境監(jiān)控系統(tǒng)的研究 5次下載
- 環(huán)境在線監(jiān)控信息管理系統(tǒng) 0次下載
- 通信電源、機(jī)房環(huán)境集中監(jiān)控系統(tǒng)優(yōu)化和升級(jí)
- 基于GPRS的通信基站電源與環(huán)境監(jiān)控裝置
- 基于MCGS的水產(chǎn)養(yǎng)殖多環(huán)境因子監(jiān)控系統(tǒng)
- 室內(nèi)環(huán)境監(jiān)控系統(tǒng)模型試驗(yàn)研究
- 一種抗惡劣環(huán)境的監(jiān)控系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
- 基于SMS的環(huán)境監(jiān)控系統(tǒng)設(shè)計(jì)與應(yīng)用
- 基于啟明RA6M5的物聯(lián)網(wǎng)居家環(huán)境健康監(jiān)控設(shè)備設(shè)計(jì) 703次閱讀
- 什么是動(dòng)力環(huán)境監(jiān)控系統(tǒng) 883次閱讀
- 可用于監(jiān)控PC主板設(shè)計(jì)環(huán)境條件的芯片 786次閱讀
- 玩嗨OpenHarmony:基于OpenHarmony的智慧農(nóng)業(yè)環(huán)境監(jiān)控系統(tǒng) 1771次閱讀
- 家居環(huán)境遠(yuǎn)程監(jiān)控系統(tǒng)設(shè)計(jì)方案 1755次閱讀
- 基于Arduino與機(jī)智云的家居環(huán)境遠(yuǎn)程監(jiān)控系統(tǒng) 2260次閱讀
- 如何用RaspberryPi Pico來(lái)控制直流電機(jī)? 3969次閱讀
- 動(dòng)力環(huán)境集中監(jiān)控系統(tǒng)的可行性、主要技術(shù)及應(yīng)用分析 5354次閱讀
- 圖像傳感器為視頻監(jiān)控帶來(lái)了新趨勢(shì) 8.3w次閱讀
- 寬禁帶器件和仿真環(huán)境介紹 1457次閱讀
- 溫度傳感器TMP275的原理、工作方式及在環(huán)境監(jiān)控中的應(yīng)用分析 6077次閱讀
- 動(dòng)力環(huán)境集中監(jiān)控系統(tǒng)的架構(gòu)、標(biāo)準(zhǔn)在3G綜合解決方案中的應(yīng)用 1017次閱讀
- 樹莓派如何配置WiFi和藍(lán)牙 1.3w次閱讀
- 由下位機(jī)、傳輸網(wǎng)絡(luò)和上位機(jī)組成的環(huán)境監(jiān)控系統(tǒng)的設(shè)計(jì)方案 1.4w次閱讀
- 智能配電:動(dòng)力環(huán)境監(jiān)控系統(tǒng)與智能值守的解析 7295次閱讀
下載排行
本周
- 1山景DSP芯片AP8248A2數(shù)據(jù)手冊(cè)
- 1.06 MB | 532次下載 | 免費(fèi)
- 2RK3399完整板原理圖(支持平板,盒子VR)
- 3.28 MB | 339次下載 | 免費(fèi)
- 3TC358743XBG評(píng)估板參考手冊(cè)
- 1.36 MB | 330次下載 | 免費(fèi)
- 4DFM軟件使用教程
- 0.84 MB | 295次下載 | 免費(fèi)
- 5元宇宙深度解析—未來(lái)的未來(lái)-風(fēng)口還是泡沫
- 6.40 MB | 227次下載 | 免費(fèi)
- 6迪文DGUS開發(fā)指南
- 31.67 MB | 194次下載 | 免費(fèi)
- 7元宇宙底層硬件系列報(bào)告
- 13.42 MB | 182次下載 | 免費(fèi)
- 8FP5207XR-G1中文應(yīng)用手冊(cè)
- 1.09 MB | 178次下載 | 免費(fèi)
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費(fèi)
- 2555集成電路應(yīng)用800例(新編版)
- 0.00 MB | 33566次下載 | 免費(fèi)
- 3接口電路圖大全
- 未知 | 30323次下載 | 免費(fèi)
- 4開關(guān)電源設(shè)計(jì)實(shí)例指南
- 未知 | 21549次下載 | 免費(fèi)
- 5電氣工程師手冊(cè)免費(fèi)下載(新編第二版pdf電子書)
- 0.00 MB | 15349次下載 | 免費(fèi)
- 6數(shù)字電路基礎(chǔ)pdf(下載)
- 未知 | 13750次下載 | 免費(fèi)
- 7電子制作實(shí)例集錦 下載
- 未知 | 8113次下載 | 免費(fèi)
- 8《LED驅(qū)動(dòng)電路設(shè)計(jì)》 溫德爾著
- 0.00 MB | 6656次下載 | 免費(fèi)
總榜
- 1matlab軟件下載入口
- 未知 | 935054次下載 | 免費(fèi)
- 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
- 78.1 MB | 537798次下載 | 免費(fèi)
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420027次下載 | 免費(fèi)
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費(fèi)
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費(fèi)
- 6電路仿真軟件multisim 10.0免費(fèi)下載
- 340992 | 191187次下載 | 免費(fèi)
- 7十天學(xué)會(huì)AVR單片機(jī)與C語(yǔ)言視頻教程 下載
- 158M | 183279次下載 | 免費(fèi)
- 8proe5.0野火版下載(中文版免費(fèi)下載)
- 未知 | 138040次下載 | 免費(fèi)
評(píng)論
查看更多