Агуулгын хүснэгт:

Weewx -ийн Nodemcu ESP8266 өргөтгөлийн мэдрэгч: 8 алхам (зурагтай)
Weewx -ийн Nodemcu ESP8266 өргөтгөлийн мэдрэгч: 8 алхам (зурагтай)

Видео: Weewx -ийн Nodemcu ESP8266 өргөтгөлийн мэдрэгч: 8 алхам (зурагтай)

Видео: Weewx -ийн Nodemcu ESP8266 өргөтгөлийн мэдрэгч: 8 алхам (зурагтай)
Видео: DIY Wetterstation - ESP8266 2024, Долдугаар сарын
Anonim
Weewx -ийн Nodemcu ESP8266 өргөтгөлийн мэдрэгч
Weewx -ийн Nodemcu ESP8266 өргөтгөлийн мэдрэгч

Weewx цаг уурын станцын програм хангамжид мэдрэгчийг нэмж оруулах зааварчилгаа юм.

Хэрэв танд weewx байхгүй бол та энэ хичээлээс зарим зүйлийг сурч болно.

танд Arduino код болон төхөөрөмж дээр хэрхэн байршуулах талаар анхан шатны мэдлэг хэрэгтэй.

Wewex мэдээллийг эндээс олж болно:

Таны бүтээсэн зүйл бол 2 төхөөрөмж юм:

1 Төхөөрөмж Weewx програм хангамж руу Температур ба Чийгшил илгээх.

1 Төхөөрөмж нь газрын гүн дэх хөрсний температурыг weewx програм хангамж руу илгээдэг.

Бидний анхны төхөөрөмж бол BME 280 мэдрэгч юм.

Манай хоёрдахь төхөөрөмж бол 3 DS18B20 Temperatur мэдрэгчийн сүлжээ юм. (Хэрэв та хүсвэл илүү ихийг нэмж болно).

Эхэлцгээе:

Алхам 1: Танд хэрэгтэй зүйл…

Чамд юу хэрэгтэй вэ…
Чамд юу хэрэгтэй вэ…
Чамд юу хэрэгтэй вэ…
Чамд юу хэрэгтэй вэ…
Чамд юу хэрэгтэй вэ…
Чамд юу хэрэгтэй вэ…

Weewx ажиллаж, ажиллаж байгаа + weewx серверт хандах боломжтой. (жишээ нь, бөөрөлзгөнө PI 3).

2 Nodemcu ESP8266 модуль

3 ба түүнээс дээш DS18B20 мэдрэгч

1 BME 280 хосолсон мэдрэгч

1 Хөнгөн цагаан хоолой ба түүнтэй төстэй 10мм ба 1мм ханын зузаантай диаметртэй. 1 метр урт

1 Кабелийн хавчаар, түгжээтэй самартай ус нэвтэрдэггүй хайрцаг.

1 5V тэжээлийн эх үүсвэр (Жишээлбэл, гар утасны дуудагч).

Зарим утас, гагнуурын зүйл.

Та eBay дээрээс BME280 мэдрэгч ба Nodemcu модулийг олох боломжтой.

Хөнгөн цагаан хоолойн хувьд би орон нутгийн тоног төхөөрөмжийн дэлгүүрийг сонгодог

DS18B20 болон ус нэвтэрдэггүй хайрцгийн хувьд би www.reichelt.de -ийг ашигладаг

www.reichelt.de/DS-18B20/3/index.html?ACTI…

www.reichelt.de/EL-FK-110/3/index.html?ACT…

болон цоож самар бүхий кабелийн хавчаарын бүлэг

www.reichelt.de/Kabelverschraubungen-Bopla…

Bme280 -ийн хувьд та салаалсан лаазыг ашиглах боломжтой

www.reichelt.de/Installationsmaterial/EL-D…

Алхам 2: BME 280 мэдрэгчийн тоног төхөөрөмжийн тохиргоог эхлүүлээрэй

BME 280 мэдрэгчийн тоног төхөөрөмжийн тохиргоог эхлүүлээрэй
BME 280 мэдрэгчийн тоног төхөөрөмжийн тохиргоог эхлүүлээрэй

BME280 дээр туузыг гагнах.

Дараа нь BME -ийг Nodemcu руу холбоно уу.

BME VIN 3.3V хүртэл

BME GND -ээс GND хүртэл

SC4 -ээс D4 хүртэл

SDA -аас D3 хүртэл

Хэрэв та хүсвэл төхөөрөмжийг орон сууцанд хийж болно, гэхдээ чийг, температурын утгыг зөв байлгахын тулд орон сууцанд нүх байгаа эсэхийг шалгаарай.

Алхам 3: BME 280 Nodemcu ESP8266 код

BME 280 Nodemcu ESP8266 код
BME 280 Nodemcu ESP8266 код
BME 280 Nodemcu ESP8266 код
BME 280 Nodemcu ESP8266 код
BME 280 Nodemcu ESP8266 код
BME 280 Nodemcu ESP8266 код

Кодын хувьд та миний github репозиторыг ашиглаж болно:

github.com/Landixus/BME280_TO_SERVER_WEEWX

Ino файлыг танаас оруулах шаардлагатай байна.

Таны weewx сервер эсвэл URL -ийн IP хаяг

php файлтай байх маршрутыг бичих боломжтой эсэхийг шалгаарай.

Би public_html dir -ийг сонгодог, учир нь энэ нь гэрийн сервер юм.

Хэрэв та git репозиторийг клончлохыг хүсч байгаа бөгөөд сервер дээрээ git суулгасан бол та дараах тушаалыг ашиглан клон хийх боломжтой.

"git clone" https://github.com/Landixus/BME280_TO_SERVER_WEEWX"

Одоо бид weewx сервер дээрээ зарим зүйлийг хийх хэрэгтэй.

Та тохиргоондоо хүрэх замыг хийх хэрэгтэй!

/home/weewx/public_html

фолдерын өгөгдлийг үүсгэх

мэдээллийн хавтсанд bme.txt үүсгэнэ үү, жишээ нь:

нано bme.txt

файл хоосон байх ёстой.

Үүнийг бичих боломжтой болгох:

chmod -R 777 bme.txt

(та үүнийг интернетэд холбогдсон сервер дээр хэзээ ч хийхгүй!)

фолдерт

/home/weewx/public_html

Та миний github репогийн bme.php -ийг тавь.

Заль мэх нь INO файл нь bme.php руу утга илгээдэг бөгөөд bme.php өгөгдлийг bme.txt дээр бичдэг.

Дараа нь бид энэ үйлчилгээг weewx дээр нэмэх хэрэгтэй

bme.py файлыг хавтсанд хийнэ үү

/home/weewx/bin/хэрэглэгч

weewx.conf файлыг хавтсанд нээнэ үү

/home/weewx

Энэ файлыг засварлахаас өмнө нөөцлөлт хийх нь үргэлж сайн байдаг!

Хөдөлгүүрийн шугам руу очоод мөрийг минийх шиг болгоорой.

[Хөдөлгүүр]

# Энэ хэсэгт ажиллуулах ёстой үйлчилгээг зааж өгсөн болно. Тэд байна

# төрөл, бүлэг тус бүрийн үйлчилгээний дарааллаар бүлэглэсэн болно

# нь үйлчилгээг ажиллуулах дарааллыг тодорхойлдог.

data_services = user.pond. PondService, user.bme.bme

weewx -ийг дахин эхлүүлэх:

sudo /etc/init.d/weewx зогсоох

sudo /etc/init.d/weewx эхлэх

тушаалаар

сүүл -f/var/log/syslog

Та бүртгэлийн файлаас алдаа эсвэл амжилтыг хайж, гаралтын bme: олдсон утгыг хайж олох боломжтой …

"Миний" weewx.conf файлд 5 минут тутамд гаралт гарч ирдэг.

Хэрэв танд алдааны мэдэгдэл байвал замаа шалгаарай.

Хэрэв танд үнэ цэнэ байгаа бол үүнийг вэб хуудсан дээр харуулах боломжтой.

нээлттэй арьс

/home/weewx/skins/Стандарт

руу явах:

# Энэ нь миний станцад зориулагдсан байх магадлалтай!

extraTemp3 = BME1 Температур ExtraHumid1 = BME1 Чийглэг

файлыг хадгалаад нэг хавтсанд нээнэ үү

index.html.tmpl

мөр хайх:

#If $ day.extraTemp..

#байвал дуусгая

Эхний #төгсгөлийн дараа, хэрэв та олдвол BME мэдрэгчээ дараах байдлаар байрлуулна уу.

^^ Уучлаарай, гэхдээ үүнийг текст болгон бичих боломжгүй байна:(файлыг хадгалаад гарах.

weewx -ийг дахин эхлүүлэх шаардлагагүй болно.

Одоо та NODEMCU ESP8266 -ийг Arduino файлаар тэжээх хэрэгтэй.

Файл дээр wifi болон хаягаа тохируулахаа бүү мартаарай.

Ачаалсны дараа цуваа гаралтын алдааг шалгана уу.

Хэсэг хугацааны дараа та weewx вэбсайт дээрх утгыг харах ёстой.

Алхам 4: BME280 мэдрэгчийн төхөөрөмж + алдааг олж засварлах

BME280 мэдрэгчийн төхөөрөмж + алдааг олж засварлах амжилт
BME280 мэдрэгчийн төхөөрөмж + алдааг олж засварлах амжилт
BME280 мэдрэгчийн төхөөрөмж + алдааг олж засварлах амжилт
BME280 мэдрэгчийн төхөөрөмж + алдааг олж засварлах амжилт

Танд өгөх хэдэн зөвлөгөө:

1 -ээс дээш консолыг шаваасаар нээнэ үү

1 консол дээр өөрчлөлт оруулаарай, нөгөө консол дээр syslog -г шууд уншина уу.

сүүл -f/var/log/syslog

Хэрэв танд алдаа байгаа бол эхлээд өөрийн бүртгэлийн файлыг хайна уу.

Таны гаралт минийхтэй төстэй байх ёстой:

Алхам 5: Хөрсний мэдрэгчийн тоног төхөөрөмжийн тохиргоо

Хөрсний мэдрэгчийн тоног төхөөрөмжийн тохиргоо
Хөрсний мэдрэгчийн тоног төхөөрөмжийн тохиргоо
Хөрсний мэдрэгчийн тоног төхөөрөмжийн тохиргоо
Хөрсний мэдрэгчийн тоног төхөөрөмжийн тохиргоо
Хөрсний мэдрэгчийн тоног төхөөрөмжийн тохиргоо
Хөрсний мэдрэгчийн тоног төхөөрөмжийн тохиргоо

DS18B20 мэдрэгчийн хувьд бид зарим утастай, гагнууртай автобусны систем хийх хэрэгтэй.

DS18B20 төхөөрөмжөө шалгана уу

Өгөгдөл, GND, VCC

VCC ба DATA -ийн хооронд танд 4.7K эсэргүүцэл хэрэгтэй болно. Хэрэв танд анхны DS18B20 эсэргүүцэл байгаа бол хангалттай

Бусад DS18B20 нь хоорондоо параллель байна.

Таны хэрэгцээнд нийцүүлэн уртыг хэмжинэ. Гинжийг гагнахдаа би тээглүүрээ агшсан хоолойгоор бэхэлсэн.

ТЕСТ -ийн хувьд та DATA -ийг D3, VCC -ийг VCC (3.3V), GND -ийг GND руу холбоно.

Гүн нойр авахын тулд та RST ба D0 (GPIO16) хооронд гүүр холбох хэрэгтэй.

Та одоо гинжийг хөнгөн цагаан хоолойд хийж болохгүй, туршилтаа өмнө нь хий!

Алхам 6: DS18B20 Nodemcu ESP8266 код

DS18B20 Nodemcu ESP8266 код
DS18B20 Nodemcu ESP8266 код

Кодын хувьд та миний GITHUB репозиторыг ашиглаж болно.

github.com/Landixus/multipleDS18B20WeeWX

Мөн ino файлд танаас зарим оруулга оруулах шаардлагатай болно: Таны weewx сервер эсвэл URL -ийн IP хаяг, php файлыг оруулсан маршрут, энэ хэсэгт бичигдэх боломжтой эсэхийг шалгаарай, би public_html dir -ийг гэрийн сервер учраас сонгоно.

Хэрэв та git репозиторийг хуулбарлахыг хүсч байгаа бөгөөд сервер дээрээ git суулгасан бол "git clone https://github.com/Landixus/multipleDS18B20WeeWX" командыг ашиглан клон хийж болно.

Одоо бид бүгд бидний weewx сервер дээр ажиллаж байгаа зарим зүйлийг хийх хэрэгтэй байна.

Та тохиргоондоо хүрэх замыг оруулах ёстой

/home/weewx/public_html

өгөгдлийн фолдерт "өгөгдөл" фолдер үүсгэх ds18b20.txt үүсгэх жишээ нь нано ds18b20.txt txt нь emtpy байх ёстой. Үүнийг chmod -R 777 ds18b20.txt (та интернетэд нэвтрэх боломжтой сервер дээр хэзээ ч хийдэггүй!) ашиглан бичих боломжтой болго Заль мэх нь INO файл нь ground.php руу утга илгээх бөгөөд ground.php өгөгдлийг ds18b20.txt дээр бичдэг бөгөөд дараа нь бид ds18b20.py -ийг хавтас/home/weewx/bin/-д оруулах ёстой. хэрэглэгч

weewx.conf файлыг home /weewx хавтсанд нээнэ үү

Энэ файлыг засварлахаас өмнө нөөцлөлт хийх нь үргэлж сайн байдаг!

шугам руу буух:

[Хөдөлгүүр]

# төрөл, бүлэг тус бүрийн үйлчилгээний дарааллаар бүлэглэсэн болно

# нь үйлчилгээг ажиллуулах дарааллыг тодорхойлдог.

prep_services = weewx.engine. StdTimeSynch, data_services = user.pond. PondService, user.bme.bme, user.ds18b20.ds18b20 таслалаас хойш мөрийг нэмнэ.

"user.ds18b20.ds18b20" нь дээд мөр шиг харагдах ёстой ^^

weewx -ийг дахин эхлүүлэх:

sudo /etc/init.d/weewx зогсоох

sudo /etc/init.d/weewx эхлэх

tail -f/var/log/syslog командын тусламжтайгаар та бүртгэлийн файлыг хайж олох эсвэл алдаа гаргах эсвэл ds18b20 -ийн амжилтыг хайх боломжтой болно: олдсон утгыг сервердээ хэдэн минут өгөхийг миний weewx.conf дээр 5 минут тутамд гарч ирдэг. тавих. Хэрэв танд алдааны мэдэгдэл байвал замаа шалгаарай. Хэрэв танд үнэ цэнэ байгаа бол та үүнийг хуудсан дээр харуулахын тулд очиж болно: нээлттэй

skin.conf in/home/weewx/skins/Стандарт руу орно уу:

# Энэ нь миний станцад зориулагдсан байж магадгүй юм!

нэмэх

earthTemp1 = DS18B201

earthTemp2 = DS18B202

earthTemp3 = DS18B203

файлыг хадгалаад index.html.tmpl фолдерт нээгээд мөр хайх:

#if $ day.extraTemp..…

#байвал дуусгая

Эхний #төгсгөлийн дараа хэрэв та GroundSensor мэдрэгчээ тавьбал:

^^ Уучлаарай, гэхдээ үүнийг текст болгон бичих боломжгүй:

Файл дээр wifi болон хаягаа тохируулахаа бүү мартаарай. Ачаалсны дараа цуваа гаралтын алдааг шалгана уу.

Хэсэг хугацааны дараа та weewx вэбсайт дээрх утгыг харах ёстой.

Алхам 7: Хөрсний мэдрэгч болон алдааг олж засварлах

Хөрсний мэдрэгч ба алдааг олж засварлах нь амжилт
Хөрсний мэдрэгч ба алдааг олж засварлах нь амжилт

Хэрэв та ажиллаж, үнэ цэнийг олж харсан бол гадаа гарч, хөнгөн цагаан хоолойг газарт тавь.

Хоолойн нэг талд халуун цавуу түрхээд дараа нь хоолойг дарахад сайн хөрстэй бол хөрсөнд илүү хялбар болгох боломжтой болно.

Хоолойгоо эхлээд газарт тавь, та модон хавтангаар зөөлөн алх хийж болно.

Хэрэв хоолой хангалттай гүн байвал та ds18b20 гинж, цахилгаан утаснуудаа ус үл нэвтрэх хайрцагт хийж болно.

Таны wifi энэ газарт ажиллаж байгаа эсэхийг шалгаарай!

Хэрэв та ямар мэдрэгч ямар гүн болохыг мэдэхгүй бол 2 боломж бий.

Би туршилтын үе шатанд 1 ds18b20 -ийг хурууныхаа хооронд байрлуулснаар температур өндөр болно.

Хоолойг аль хэдийн газардуулсны дараа хамгийн өндөр утга нь хамгийн гүн цэг юм.

Алхам 8: Дуусгах

Дуусгах
Дуусгах

Зүгээр л төгсгөл

Асуултаа тавиад сэтгэгдлээр үндсэн цагийг харуулаарай!

Илүү их тусламж авахыг хүсвэл weewx google Groups -т нэгдээрэй.

groups.google.com/forum/#!forum/weewx-user

Зөвлөмж болгож буй: