Инструменты пользователя

Инструменты сайта


bananapi:bme280

Подключение датчика давления BME280 к Banana Pi

схема подключения:
—> VIN - контакт 3,3 вольта (1-я ножка) на CON3
—> GND - контакт GND (6-я ножка) на CON3
—> SDA - контакт SDA (3-я ножка) на CON3
—> SLC - контакт SCL (5-я ножка) на CON3

Смотрю какие есть устройства I2C

root@bananapi ~ # ls -l /dev/i2c*
crw------- 1 root root 89, 0 Янв  1  2010 /dev/i2c-0
crw------- 1 root root 89, 1 Янв  1  2010 /dev/i2c-1
crw------- 1 root root 89, 2 Янв  1  2010 /dev/i2c-2
crw------- 1 root root 89, 3 Янв  1  2010 /dev/i2c-3
crw------- 1 root root 89, 4 Янв  1  2010 /dev/i2c-4

Устанавливаю i2c-tools

root@bananapi ~ # apt-get install i2c-tools

Ищу устройство с адресом 0х76, это и будет BME280.

root@bananapi ~ # i2cdetect -y 1
     0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f
00:          -- -- -- -- -- -- -- -- -- -- -- -- --
10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
70: -- -- -- -- -- -- -- --
root@bananapi ~ # i2cdetect -y 0
     0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f
00:          -- -- -- -- -- -- -- -- -- -- -- -- --
10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
30: -- -- -- -- UU -- -- -- -- -- -- -- -- -- -- --
40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
70: -- -- -- -- -- -- -- --
root@bananapi ~ # i2cdetect -y 2
     0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f
00:          -- -- -- -- -- -- -- -- -- -- -- -- --
10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
20: -- -- -- -- -- -- -- 27 -- -- -- -- -- -- -- --
30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
70: -- -- -- -- -- -- 76 77

Устанавливаю скачиваю скрипт на Python для работы с датчиком.

wget -O bme280.py http://bit.ly/bme280py

Редактирую файл bme280.py. Заменяю bus = smbus.SMBus(1) на bus = smbus.SMBus(2). Для получения давления в мм. ртутного столба, заменяю return temperature/100.0,pressure/100.0,humidity на return temperature/100.0,pressure/133.3224,humidity

Проверяю

/usr/local/src # python bme280.py
Chip ID     : 96
Version     : 0
Temperature :  22.23 C
Pressure :  735.863401711 mm
Humidity :  47.6733253481 %

Датчик выдаёт пять значений: Chip ID, Version, температура (Temperature), давление (Pressure), влажность (Humidity)

В папке /usr/local/bin создаю ссылку на файл

cd /usr/local/bin
ln -s  /usr/local/src/bme280.py bme280

А файл bme280.py делаю исполняемым.

Ссылки:
http://www.raspberrypi-spy.co.uk/2016/07/using-bme280-i2c-temperature-pressure-sensor-in-python
https://github.com/rm-hull/bme280
https://github.com/adafruit/Adafruit_Python_BME280
http://www.instructables.com/id/Connect-Your-RaspberryPI-to-the-BME280-Temperature/?ALLSTEPS

bananapi/bme280.txt · Последние изменения: 2017/02/05 11:13 (внешнее изменение)