ESP8266 WiFi – BMP 085/180 (NodeMCU)

Espressif logo

nodeMCU logo

Op deze pagina vind je een voorbeeld om via de ESP-01 module een BMP085/180 luchtdruk en temperatuur sensor te gebruiken via de GPIO pinnen met de firmware NodeMCU.

Hardware

bmp180_gy-68_bovenkant bmp180_gy-68_onderkant

BESTEL NU!

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)

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