Sensor – BMP180 – Temperatuur en Barometrische druk sensor

Hardware

bmp180_gy-68_bovenkant

BESTELLEN

BMP180 Barometrische druksensor GY-68. Het meten van de absolute druk van de omgeving met een digitale barometer als deze heeft een aantal interessante toepassingen. Door het omzetten van de gemeten druk in de hoogte, heb je een betrouwbare sensor voor het bepalen van de hoogte van uw robot, vliegtuig of projectiel!

De BMP180 komt volledig gekalibreerd en klaar voor gebruik. Het werkt via I2C er zijn optionele I2C pull ups die kunnen worden geactiveerd met behulp van de jumper op het bord. Met I2C worden druk en temperatuur in 16bit waarden gebruikt.

Pinout

bmp180_gy-68_onderkant

Pin:Functie:
01+5V
02GND
03SCL
Serial Clock (line)
04SCA
Serial Clock (data)

Arduino

Wat heb je nodig?

1) Adafruit Sensor Driver bibliotheek
2) Adafruit BMP085/180 bibliotheek

Sluit de module aan volgens onderstaand overzicht:

Arduino Pin:BMP180 Pin:
+5v01 (+5V)
GND02 (GND)
A503 (SCL / Serial Clock line)
A404 (SCA /Serial Clock data)

bmp180 arduino schema


Script met adafruit BMP180 bibliotheek

Het resultaat

arduino bmp180 console output

Arduino Library

Installatie van Arduino IDE libraries: Arduino info

Wat heb je nodig?
1) Adafruit Sensor library


Sparkfun BMP180 Breakout Arduino Library

This archive contains an Arduino library and example sketch showing how to use this sensor. The library must be installed onto your computer in order for the example code to work correctly.


Download bibliotheek @ Sparkfun * Github

ESP8266

Espressif logo

arduino logo

 

Wat heb je nodig?

1) Firmware flashen met ArduinoIDE
2) BMP085/810 arduino bibliotheek (gebruik de Sparkfun bibliotheek)

Standaard worden de SDA en SCL connecties gebruikt op de arduino bij deze module bibliotheek:

Deze regels staan hard ingesteld in het bestand [ArduinoIDE]\[portable]\packages\esp8266\hardware\esp8266\2.0.0\libraries\Wire\Wire.cpp

Maar de op de ESP-01 is het GPIO 0 en GPIO 2, na deze regel “include <wire>“, kun je deze waarden opnieuw een waarde geven, voor de ESP-01 is dat:

Een voorbeeld code voor een BMP180 module via I2C:

Code flashen:
Voordat je de module kan aansluiten, verbind GPIO 0 op GND en flash de code in de ESP8266 module.

Module aansluiten:
Eenmaal de code geflashed, Sluit de module aan volgens onderstaand schema:

esp8266 ESP-01 GPIO BMP180 schema

Het resultaat via de seriële monitor:


Espressif logo

nodeMCU logo

Wat heb je nodig?

1) ESPlorer IDE

Sluit de BMP module aan op volgens onderstaand schema:

esp8266 ESP-01 GPIO BMP180 schema


BMP script

Upload deze “library” code als bmp085.lua

Tip: Download de code sla het op als bestand, en gebruik de “Upload…” knop in ESPlorer.

Gebruik de volgende regel om de temperatuur en luchtdruk weer te geven:

print(dofile("bmp180.lua").read(3, 4))

waarbij 3, 4 de SDA/SCL verbindig is, geen gegeven of hele afwijkende waarden?, draad de SCL/SDA verbindingen om.

resultaat:

Getest met NodeMCU 0.9.6 build 20150704 floating point en bmp180

bron:
dvv @ github.com


BMP script met webserver

Let op: firmare NodeMCU 0.9.6 build 20150704 floating point nodig!, download hier

Upload deze “library” code als bmp180.lua

Tip: Download de code sla het op als bestand, en gebruik de “Upload…” knop in ESPlorer.

Upload deze server code als srvbmp180.lua

Tip: Download de code sla het op als bestand, en gebruik de “Upload…” knop in ESPlorer.

Instructies (ENG)
— Tested with Lua NodeMCU 0.9.6 build 20150704 floating point only!
— 1. Flash Lua NodeMCU 0.9.6 build 20150704 floating point to esp8266 module.
— 2. Login esp8266 module to your AP – wifi.setmode(wifi.STATION),wifi.sta.config(“yourSSID”,”yourPASSWORD”)
— 3. You can rename the program “srvbmp180.lua” to “init.lua” and correct altitude
— 4. Load program “bmp180.lua” and “srvbmp180.lua” to ESP8266 with a LuaLoader
— 5. HW reset module
— 6. Read ip address of module esp8266 from console “= wifi.sta.getip()”
— 7. Run program “srvbmp180.lua” – dofile(“srvbmp180.lua”)
— 8. Test it with your browser and true IP address of module.
— 9. The sensor is repeatedly reading every 10s
–11. Data on http page are auto refreshed every 10s too.
–12. The pictures on page are external.

Ps. Geen gegevens?, draai de SCL en SDA kabeltjes om, of verander pin 3,4 in pin 4,3 in de code.

Na het draaien van de server code krijg je deze data via de seriele interface:

esp8266 NodeMCU bmp180 esplorer screen

Dit is de webinterface (ververst zichzelf):

esp8266 NodeMCU bmp180 webinterface

Bron:
esp8266.com

Raspberry Pi

Sluit de module aan zoals aangegeven op onderstaand schema:

Raspberry Pi pin:I2C module pin:
+5v+5v
GNDGND
3 (GPIO2) SDASDA
5 (GPIO3) SCLSCL

Wat moet je doen?

1) I2C aanzetten op de Pi.
2) SMBUS module installeren voor Python:

Om de I2C bus in Python te gebruiken moet je een module installeren, genaamd SMBUS, commando:

sudo apt-get install python-smbus

Je kan dan de module importeren in python door middel van: import smbus

Controleren van de aansluiting

Om de aansluiting van de module te controleren voor je het volgende commando uit: sudo i2cdetect -y 1, je ziet dan adres 0x77 staan in de lijst:


Script

Het script bmp.py om de module uit te lezen:

Start het script met: sudo python bmp.py, resultaat:

Bron(nen):
raspberrytips.nl
learn.adafruit.com


Script met Adafruit BMP085 180 Library

Raspberry Pi Library

This library has been deprecated!

the bmp085 and bmp180 are no longer made, and are replaced by the bmp280 + friends

we are now only using our circuitpython sensor libraries in python

we are leaving the code up for historical/research purposes but archiving the repository.

check out this guide for using the bmp280 with python! https://learn.adafruit.com/adafruit-bmp280-barometric-pressure-plus-temperature-sensor-breakout

Adafruit Python BMP

Python library for accessing the BMP series pressure and temperature sensors like the BMP085/BMP180 on a Raspberry Pi or Beaglebone Black.

Designed specifically to work with the Adafruit BMP085/BMP180 pressure sensors —-> https://www.adafruit.com/products/1603

To install, download the library by clicking the download zip link to the right and unzip the archive somewhere on your Raspberry Pi or Beaglebone Black. Then execute the following command in the directory of the library:~~

Make sure you have internet access on the device so it can download the required dependencies.

See examples of usage in the examples folder.

Adafruit invests time and resources providing this open source code, please support Adafruit and open-source hardware by purchasing products from Adafruit!

Written by Tony DiCola for Adafruit Industries. MIT license, all text above must be included in any redistribution

See examples of usage in the examples folder.

Also execute:

Installatie via GIT (github)


Download Adafruit_Python_BMP @ Github

Adafruit_Python_BMP085-180 (gedownload 2016-12-09 @ GitHub)

Schema

Teardown

Binnenkant:

Datasheet

Fritzing

Downloads

GEEN GEGEVENS