Hőmérséklet,
légnyomás (magasság), páratartalom érzékelése WiFi-n keresztül
Ehhez a projekthez a BME280 érzékelőt és az ESP-01
WiFi modult használtam. A BME280 egy digitális érzékelő, de bekötése és
a használata legalább annyira egyszerű, mint a korábban használt NTC
ellenállásé. Egyszerűen csak csatlakoztatni kell az Arduino-hoz.
A https://randomnerdtutorials.com/bme280-sensor-arduino-pressure-temperature-humidity/
alapján: A BME280 Vin kivezetését az Arduino 5V kivezetéséhez, a GND
kivezetését a GND kivezetéshez kell csatlakoztatni. A BME280 SCL
kivezetését at Arduino 5-ös ANALÓG portjához, míg a SDA kivezetését a
4-es ANALÓG porthoz kell csatlakoztatni. A szenzor I2C kommunikációs
protokollt használ (több szenzort lehet megcímezni ugyanazon a
kommunikációs buszon). Nálam a szenzor a 0x76 címen található (status2
= bme.begin(0x76)). A referencia alapján installálni kell a Adafruit_BME280
és a Adafruit_Sensor
könyvtárakat. Ha nem tudjuk, milyen címen található a szenzor, a
referenciában található I2C
scanner rutin megtalálja nekünk. A szenzor kipróbálható az
installált BME280test programmal.
Az ESP-01 használatához több internetes forrást kell átolvasni. A
https://www.instructables.com/Getting-Started-With-the-ESP8266-ESP-01/
alapján be lehet kötni, de a használatához néhány módosítás
szükséges.
1) ESP01 RST – pint az Arduino Digital 5 pinjéhez kell kötni
2) Soros monitor baudrate =115200
3) Soros monitor Both NL and CR beállítás
4) Kell neki egy külső tápegység (5 és 12V között, én 12V-t használok)
mivel az USB port nem bírja el az ESP-01 energia igényét.
Ez így működik, de a WiFiESP könyvtár nem ezt a bekötést várja, mivel
itt az Arduino és a ESP-01 ugyanazt a soros portot használja.
Mielőtt továbblépnénk, állítsuk a baudrate-t 9600-ra a kiadott
AT+CIOBAUD=9600
utasítással.
Ezután:
RX --> Digital pin 6
TX --> Digital pin 7
Használjuk a szimulált serial kommunikációt.
Installáljuk .zip file-ból a WiFiESP könyvtárat.
Könyvtár (példákkal) WiFiESP https://github.com/bportaluri/WiFiEsp
Teszteljük a rendszer működését a ScanNetworks és a WebServer példával. Ne felejtsük el
beírni a saját hálózatunk nevét és kulcsszavát, valamint írjuk át a
baudrate-t 9600-ra.
Ha mind a BME280 szenzor és az ESP-01 panel működik, akkor kombináljuk
a kettőt. Én is kombináltam a feljebb
említett két példa programot.
Ekkor a szenzor információi a program által a soros portra kiírt
webcímen olvashatók. Mivel az Arduino önálló mikrokomputer, a
felprogramozása után a számítógépre nincs már szükség (csak a
tápegységre).