Агуулгын хүснэгт:
- Алхам 1: Шаардлагатай эд ангиуд
- Алхам 2: Цахилгааны утас угсрах
- Алхам 3: Firmware -ийг ESP32 дээр байршуулах
- Алхам 4: Бэлэн програмыг татаж авах
- Алхам 5: Тохиргоо
- Алхам 6: Ухах, эрчим хүчний хэрэглээ
- Алхам 7: Мэдрэгчийн тааруулалт
- Алхам 8: Apple Home Kit -д төхөөрөмж нэмэх
- Алхам 9: OTA: Агаарын шинэчлэлтүүд
Видео: Нарны эрчим хүчээр ажилладаг ESP32 цаг уурын станц: 9 алхам
2024 Зохиолч: John Day | [email protected]. Хамгийн сүүлд өөрчлөгдсөн: 2024-01-30 11:02
Энэхүү гарын авлагад бид WiFi ашиглах боломжтой цаг уурын станцын төслийг бүтээх гэж байна.
Зорилго нь бараг бүх боломж бүхий цаг уурын станцыг зохион бүтээх явдал юм.
- Одоогийн нөхцөл, цаг, температур, чийгшил, даралтыг харуул
- Дараагийн өдрүүдийн урьдчилсан мэдээг харуул
- Эфирээр шинэчлэх
- Тохиргоо хийх, өгөгдөл дамжуулах зориулалттай вэбсайт
- Түүхийн статистик мэдээллийг үүлэн рүү байршуулах
- Aple Home Kit эсвэл MQTT -тэй нэгтгэсэн
- Indepeded Accu нь нарны зайгаар цэнэглэх эсвэл холбох боломжтой
Би өөр юу байх ёстой, юу байж болохыг төсөөлөх чадвараа нэмж чадахгүй
Алхам 1: Шаардлагатай эд ангиуд
- ESP32 (би dev модулийг ашигласан)
- 2.8 "240x320 TFT LCD SPI ILI9341
- Хуванцар хайрцаг
- 3 x 18650 Accu
- Температур, чийгшил, даралтыг хэмжих BME280 цаг уурын мэдрэгч
- USB лити цэнэглэгч модуль
- DC-DC алхам UP18650
- зай эзэмшигч (3 ширхэг)
- HC-SR505 хөдөлгөөн мэдрэгч
- 220 Ом эсэргүүцэл
- 2х 10 кОм эсэргүүцэл
- TIP120 NPN транзисторыг (Дарлингтон) өөр ямар ч нийцтэй ашиглаж болно
- ButtonWires, унтраалга, гагнуурын самбар …
Алхам 2: Цахилгааны утас угсрах
Эхний алхам бол станцын хүчийг угсрах явдал юм.
Би хуванцар хайрцгийг хоёр хэсэгт хуваасан бөгөөд тэдгээрийн нэгийг батерей, унтраалга, USB цэнэглэгч, DC-DC гаралтын хэсэгт оруулав. USB цэнэглэгч модулийг маш сайн мэдэж байгаа тул би хөнгөн цагаан хавтан ашиглаж, USB цэнэглэгчийг Star 922 цавуу ашиглан тавив.
Хоёрдахь алхам бол хянагчийн хэсгийг угсрах явдал юм.
Утасны диаграмыг хэрхэн яаж холбохыг үзнэ үү
Би энэ зорилгоор талхны самбарыг дараах алхмуудаар ашигласан
- Гагнуурын ESP32 дэвтэр хавтан
- TFT дэлгэцийг хадгалахын тулд гагнуурын бамбай
- Бусад электрон эд ангиудыг гагнах: BME280, резистор, товчлуур
- Диаграммын дагуу бүрэлдэхүүн хэсгүүдийн хооронд гагнуурын утас
Гурав дахь алхам бол хуванцар хайрцгийн хоёр дахь хэсэгт талхны хавтанг суурилуулах явдал юм. Би 3d принтер дээрээ хоёр баар хэвлэж, боолтоор бэхэлж, дэлгэцийн хувьд тэгш өнцөгт хайчлав.
Би хуванцар хайрцагны биен дээр хуванцар баар бэхлэв. Одоо цавуу хуурай болсны дараа талхны тавцангийн бүхээгийг боолтоор нь салгана.
Дараагийн алхам бол:
- Цахилгаан эх үүсвэрийн гагнуурын утас
- Батерейны хүчдэлийн байдлыг тодорхойлох гагнуурын утас
- Гагнах ба холбох хөдөлгөөн мэдрэгч
Эцсийн алхам:
- гаралтын хүчдэл 5v-ийг тааруулах замаар DC-DC хөрвүүлэгчийг тохируулах
- Станцын хянагчийн хоёр хэсгийг тэжээлд холбоно уу: цахилгаан утас ба хүчдэлийн уншилт
Хөдөлгөөн мэдрэгч ба товчлуурын хувьд нүүрэн талдаа нэмэлт нүх гаргав.
Алхам 3: Firmware -ийг ESP32 дээр байршуулах
Энэ төслийн хувьд би өөрөө боловсруулсан бүх нийтийн програм хангамжийг ашигласан
Github хуудаснаас ESPHomeController -ийг үзнэ үү. Энэ нь хөрвүүлэх, тохируулах бүрэн зааврыг агуулдаг.
! Хэрэв та эмхэтгэл, Arduino -г сайн мэдэхгүй байгаа бол бэлэн програмыг байршуулах алхамыг үзээрэй
Та firmware -ийг анх удаа байршуулмагц ESP32 нь тохиргооны горимд (Хандалтын цэгийн горим) эхэлнэ.
Та тэдгээрийг тохируулах хэрэгтэй. Үүнийг хийхийн тулд боломжтой WiFi төхөөрөмжүүдийн жагсаалтыг нээнэ үү. HomeController -ийг олж, түүнд холбогдоно уу. Олзлогдсон портал автоматаар эхлэх ёстой. Хэрэв та хөтөчийнхөө URL хаягийг оруулаагүй бол: 192.168.4.1, та тохиргооны дэлгэцийг харах болно
Зааврыг дагана уу, WiFi -ийн итгэмжлэлийг WiFi сүлжээндээ тохируулна уу.
Үүний дараа ESP нь WiFi клиент болж дахин асах бөгөөд таны Wifi -д холбогдох болно.
Sson Firts холболт үүсэхэд энэ нь Spiffs файлын системийг автоматаар холбож, вэб порталд шаардлагатай файлуудыг татаж авах болно.
- индекс.html
- filebrowse.html
- js/bundle.min.js.gz
Татаж авах https://github.com/Yurik72/ESPHomeController/tree/… фолдероос явагддаг.
Одоо та вэб хөтөч ашиглан файлын агуулгыг харах боломжтой. Үүний тулд та одоо ESP32 -ийн IP хаягийг оруулах ёстой
Та үүнийг дараах аргуудын аль нэгээр олж болно.
- ESP32 бүртгэлийг харахын тулд цуваа порт мониторыг ашиглана уу
- Сүлжээний төхөөрөмжөө скан хийхийн тулд ямар ч tcp сканнер ашиглана уу
- Цаг уурын станцын товчлуурыг дарахад системийн мэдээлэл гарч ирэх болно
Http: //192.168.0. XX/browse хуудсыг оруулаад ESP файлын жагсаалтыг харах болно.
(192.168.0. XX бол таны төхөөрөмжийн IP хаяг юм
Эцсийн тохиргоог хийхийн тулд та тохиргооны файлуудыг бэлтгэх хэрэгтэй.
Алхам 4: Бэлэн програмыг татаж авах
Энэ хэсэг нь өөрөө програм хангамж үйлдвэрлэхгүй байгаа сонсогчдод зориулагдсан болно. Та зүгээр л "бэлэн" програмыг байршуулах хэрэгтэй
1. Энэ хуудаснаас флэш байршуулах хэрэгслүүдийг татаж аваарай
2. Хавсаргасан (архиваас авсан) HomeController.bin болон bootloader_qio_80m.bin файлуудыг хатуу диск рүүгээ татаж аваарай.
3. ESP32 татаж авах хэрэгслийг эхлүүлж, дэлгэцийн агшны дагуу утгыг оруулна уу
4. Start товчийг дарна уу
Алхам 5: Тохиргоо
Тохиргоог бэлтгэж эхлэхээс өмнө танд дараахь зүйл хэрэгтэй болно.
- Өөрийнхөө сувгийн түлхүүр, түлхүүр дээр сувгаа үүсгээрэй. 4 талбарыг бэлдэж, тэдгээрийг температур, чийгшил, даралт, хүчдэл гэж нэрлэнэ үү
- Wei.com сайтад бүртгүүлж api түлхүүрээ аваарай
Таны өгөгдлийг байршуулах, чиг хандлага, үнэ цэнийг хянахад Thingspeak хэрэгтэй
Урьдчилсан мэдээллийг авахын тулд цаг агаар шаардлагатай байна.
За, эцэст нь танд дараах агуулгатай services.json файлыг үүсгэх хэрэгтэй
[{"үйлчилгээ": "TimeController", "нэр": "Цаг", "идэвхжүүлсэн": үнэн, "интервал": 1000, "завсарлага": 7200, "dayloffs": 3600, "сервер": "pool.ntp.org "," enablesleep ": true," sleeptype ": 1," sleepinterval ": 900000," restartinterval ": 18000000}, {" service ":" BME280Controller "," name ":" BME "," enabled ": үнэн, "интервал": 900000, "i2caddr": 118, "uselegacy": үнэн, "temp_corr":-3.0, "hum_corr": 10.0}, {"үйлчилгээ": "WeatherClientController", "нэр": "WeatherForecast", "идэвхжүүлсэн": үнэн, "интервал": 500000, "uri": "https://api.weather.com/v3/wx/forecast/daily/5day?geocode=50.30, 30.70 & format = json & unit = m & language = en -US & apiKey = weatherapi "}, {" service ":" WeatherDisplayController "," name ":" WeatherDisplay "," enabled ": true," interval ": 500}, {" enabled ":" true "," interval ": 600000, "pin": 36, "service": "LDRController", "name": "LDR", "cvalmin": 0.0, "cvalmax": 7.2, "cfmt": "%. 2f V", "acctype": 10}, {"үйлчилгээ": "ThingSpeakController", "нэр": "ThingSpeak", "идэвхжүүлсэн": үнэн, "интервал": 1200000, "утга": [1, 1, 1, 1, 0, 0, 0, 0], "apiKey": "вандуй kapi "}, {" идэвхжүүлсэн ": үнэн," интервал ": 1," зүү ":" "," үйлчилгээ ":" ButtonController "," нэр ":" Товч "," зүү ": [27]}]
! Орлуулна уу
- зүйл ярихдаа api түлхүүрээ ашиглана уу
- weatherapi нь таны цаг агаарын api түлхүүр юм
- Урьдчилан мэдэхийг хүсч буй байршлынхаа геокод
Triger.json файлыг хоёр дахь удаагаа бэлтгэ
[{"type": "BMEToWeatherDisplay", "source": "BME", "destination": "WeatherDisplay"}, {"type": "TimeToWeatherDisplay", "source": "Time", "destination": "WeatherDisplay" "}, {" type ":" WeatherForecastToWeatherDisplay "," source ":" WeatherForecast "," destination ":" WeatherDisplay "}, {" type ":" BMEToThingSpeak "," source ":" BME "," destination ": "ThingSpeak", "t_ch": 1, "h_ch": 2, "p_ch": 3}, {"type": "ButtonToWeatherDisplay", "source": "Button", "destination": "WeatherDisplay"}, { "type": "LDRToThingSpeak", "source": "LDR", "destination": "ThingSpeak", "ch": 4}]
Хоёр файл хоёулаа esp -ийн үндэс рүү дээшлэх ёстой.
Та үүнийг https://192.168.0. XX/browse хөтөчөөр хийж болно, энд https://192.168.0. XX бол таны төхөөрөмжийн IP хаяг юм.
ESP -ийг байршуулсны дараа дахин эхлүүлэх ёстой бөгөөд бүх зүйл зөв хийгдсэн болно. Esp нь дээрх зураг, видео дээрх шиг зөв дэлгэцийг харуулах болно
Алхам 6: Ухах, эрчим хүчний хэрэглээ
Би төхөөрөмжөө нарны хавтантай холбож ашиглаж байгаа бөгөөд энэ нь "хязгааргүй" ажиллах чадвартай гэдэгт итгэлтэй байна.
Цахилгаан зарцуулалт чухал бөгөөд хэд хэдэн туршилтын дараа би хоёр том заль мэхийг ашигласан
TFT дэлгэцийн суурь LED -ийн хэрэглээг багасгах
Хэмжилтийн дагуу энэ нь 15-20 мА (маш их) иддэг тул би Motion илрүүлэгчтэй тактик хэрэглэсэн. Энэ нь 8-10 метр хүртэлх аливаа илрүүлэлтийг таньж, дохионы кабель дээрх хүчдэлийг нэмэгдүүлэх чадвартай Motion детектор төгс ажилладаг. Энэ бол транзисторын нүх, арын арын гэрлүүд нь хүчийг хүлээн авдаг. Ихэвчлэн детектор энэ төлөвийг 10 секундын дотор байлгадаг бөгөөд энэ нь дэлгэцийг харахад хангалттай биш боловч хэрэв та хөдөлгөөнөө үргэлжлүүлбэл дохио өндөр хэвээр байгаа бөгөөд LED нь гэрэлтдэг.
Ийм хандлага нь надад том эдийн засгийг өгдөг бөгөөд нэмэлт нөлөө үзүүлэхгүй, хүссэн үедээ дэлгэцээ үзэх асуудал гардаггүй
2. Цахилгаан эрчим хүчний хэрэглээг ESP32 -р бууруулах
ESP нь WiFi-д холбогдсон үед энэ нь 7-10 мА үргэлж иддэг, би асаах, анхны холболт биш харин тогтмол цагийн тухай ярьж байна. Хэрэв та бодит огноо, цагийг байнга харж, Apple гэрийн иж бүрдлээс системдээ хандаж байвал үүнийг хүлээн зөвшөөрч болно
Миний нарны эрчим хүчний хувьд өвлийн улиралд нэмэлт тэжээлийн эх үүсвэргүй ажиллах чадвартай байсан.
Тиймээс би ESP32 -ийг үе үе унтах горимд оруулахаар шийдсэн (идэх нь 1 мА -аас бага). Энэ бол надад зүгээр, жишээ нь ESP 20 минут унтаж байна, сэрэхээс илүү дэлгэцийг сэргээх (бодит өгөгдөл, урьдчилсан мэдээ) өгөгдлийг ярих, дахин унтах горим руу буцаана.
Сул талууд нь:
- Цаг агаарын дэлгэц нь хуучирсан цагийн утгыг харуулдаг
- Унтах үед хөтөч болон Apple Home Kit -ээс станц руу нэвтрэх боломжгүй байдаг
Юу илүү чухал болохыг та өөрөө шийдэх болно, та үүнийг дахин тохируулах боломжтой.
Services.json файл болон мөрийг харна уу
[{"үйлчилгээ": "TimeController", "нэр": "Цаг", "идэвхжүүлсэн": үнэн, "интервал": 1000, "завсарлага": 7200, "dayloffs": 3600, "сервер": "pool.ntp.org "," enablesleep ": true," sleeptype ": 1," sleepinterval ": 900000," restartinterval ": 18000000}
"унтуулах боломжийг олгодог": үнэн нь унтах боломжийг олгодог, хэрэв хуурамчаар байрлуулсан эсвэл параметрийг устгавал (худал нь анхдагчаар) ESP хэзээ ч унтдаггүй.
"sleepinterval": 900000 энэ бол миллис буюу 15 минут, 15 минут тутамд ESP сэрж, шаардлагатай ажилтнуудыг ажиллуулдаг гэсэн үг юм.
Тиймээс одоо хүн бүр шаардлагатай хэмжээгээр амархан тоглож чадна
Алхам 7: Мэдрэгчийн тааруулалт
BME280 температур мэдрэгчийн дотоод халаалтын нөлөөллийг багасгах
Фертс Би мэдрэгч ба нүхний эргэн тойронд хоолой хийв. LED горимыг унтрааж, ESP унтаж байх үед миний горимд ажиллах нь тийм ч чухал биш юм. Бусад тохиолдолд BME280 мэдрэгч нь дотоод халаалтанд нөлөөлөхгүйн тулд хаа нэг газар хөдлөх ёстой. Миний олж мэдсэн өчүүхэн жижиг нөлөөллийг нөхөх хоёр параметр бий
"hum_corr": 10.0
Энэ нь хэмжилт хийсний дараа эдгээр утгыг нэмнэ гэсэн үг юм
Хоёрдугаарт, батерейны хүчдэлийг хэмжих, {"enabled": "true", "interval": 600000, "pin": 36, "service": "LDRController", "name": "LDR", "cvalmin": 0.0, "cvalmax": 7.2, " cfmt ":"%. 2f V "," acctype ": 10}, "cvalmin": 0.0
"cvalmax": 7.2
Энэ зорилгоор резистор хуваагдсаны дараа хүчдэлийг хэмжиж, 3.3 В -тэй харьцуулж үзвэл cvalmax -ийн утгатай тоглосноор та мультиметр хэмжигдэхүүнээрээ хүчдэлийг яг тааруулж чадна.
Алхам 8: Apple Home Kit -д төхөөрөмж нэмэх
Эцэст нь хэлэхэд таны төхөөрөмж зөв ажиллаж байх үед үүнийг Apple Home Kit дээр нэмж болно, та харах боломжтой болно
Apple -ийн үндсэн дэлгэц дээрх мэдрэгчийн үнэ цэнэ.
Эхлээд та төхөөрөмжийг дахин асаах хэрэгтэй, учир нь төхөөрөмж эхлэхэд удалгүй унтахгүй, 20 минут хангалттай байх болно
IOS төхөөрөмж дээрээ Home Kit програмыг нээж, шинэ Home1 -ийг сонгож эсвэл үүсгээрэй. Нэмэх товчийг дарна уу (+)
2. Дагалдах хэрэгсэл нэмэх командыг сонгоно уу.
3. Надад код байхгүй эсвэл скан хийх боломжгүй гэсэн дээр дарна уу (цаашид сканнердах болно)
4. Хэрэв бүх зүйл хэвийн байгаа бол та шинэ esp төхөөрөмжөө жагсаалтаас харах ёстой (зургийг үзнэ үү)
5. Төхөөрөмжийг сонгоод албан ёсны баталгаажуулалтгүйгээр нэмж оруулахыг баталгаажуулна уу
6. 11111111 нууц үгийг оруулна уу
7. Энэ бүгд! Та төхөөрөмжийг амжилттай хослуулсан эсэхийг харах ёстой, эс тэгвээс дахин хослуулах процессыг эхлүүлнэ үү.
Энэ тохиргоон дээр үндэслэн та Apple дээр хоёр төхөөрөмжийг харах болно
1. Температур мэдрэгч ба Hum мэдрэгч, гүн рүү ороход утгыг бүтэн дэлгэц дээр харуулна
2. Гэрлийн мэдрэгч:) Үнэндээ Apple нь хүч чадал биш, харин гэрэл гэгээтэй байдлыг харуулах боломжтой тул батерейны хүчдэл Люкс дээр харагдаж байна.
Алхам 9: OTA: Агаарын шинэчлэлтүүд
Шинэчлэлтийг эхлүүлэхийн өмнө ESP32 -ийг дахин ачаалах нь дээр гэж хэлсэн бөгөөд эхний 20 минут унтахгүй
Шинэчлэх хоёр боломж бий
- Http: //192.168.0. XX/browse ашиглан тохиргоо хийснээр та ESP дээр өөрийн файлын системд хандаж, тохиргооны файлуудыг өөрчлөх боломжтой.
- Та програм хангамжийг бүрэн шинэчлэх боломжтой. Үүнийг хийхийн тулд эхлээд шинээр үүсгэх хэрэгтэй. Үүнийг Arduino эсвэл Visual Studio IDE ашиглан хийж болно. Дараа нь https://192.168.0. XX/update хөтөч дээр бичээд програм хангамжаа сонгоод update дарна уу. Процесс дуустал хүлээнэ үү, танд хариу өгөх болно, эс тэгвэл алхамыг дахин давтана уу
Зөвлөмж болгож буй:
DIY нарны эрчим хүчээр ажилладаг гудамжны автомат гэрэлтүүлэг: 3 алхам
DIY нарны эрчим хүчээр ажилладаг гудамжны автомат гэрэлтүүлэг: Манай байшин хөдөө орон нутагт байдаг тул манай гэрийн урд талын гудамж огт гэрэлгүй байхад бүрэн харанхуй байдаг. Тиймээс би энд нарны эрчим хүчээр ажилладаг гудамжны гэрэл хийлээ. Нарны хавтанг дараахь байдлаар ашигладаг
NaTaLia цаг уурын станц: Arduino нарны эрчим хүчээр ажилладаг цаг уурын станц зөв замаар хийсэн: 8 алхам (зурагтай)
NaTaLia цаг уурын станц: Arduino нарны эрчим хүчээр ажилладаг цаг уурын станц зөв замаар хийсэн: 1 жилийн турш 2 өөр байршилд амжилттай ажилласны дараа би нарны эрчим хүчээр ажилладаг цаг уурын станцын төслийн төлөвлөгөөгөө хуваалцаж, хэрхэн урт хугацаанд үнэхээр оршин тогтнож чадах систем болж хөгжсөн тухай тайлбарлаж байна. нарны эрчим хүчнээс үүссэн үе. Хэрэв та дагах бол
Нарны эрчим хүчээр ажилладаг утас цэнэглэх станц: 4 алхам
Нарны эрчим хүчээр ажилладаг утасны цэнэглэх станц: цэнэггүй болсон утас бол дэлхийн хамгийн анхны асуудал юм. Аз болоход, энэ хэлхээний тусламжтайгаар та нарны хүчийг ашиглан утсаа тэжээх боломжтой болно. Энэхүү заавар нь зөвхөн хэлхээний хэсэгт зориулагдсан болно. Системийн бодит хязгаарлалтыг өөр газраас олж авах ёстой
Нарны эрчим хүчээр ажилладаг WiFi цаг уурын станц V1.0: 19 алхам (зурагтай)
Нарны эрчим хүчээр ажилладаг WiFi цаг уурын станц V1.0: Энэхүү зааварчилгаанд би Wemos самбар бүхий нарны эрчим хүчээр ажилладаг WiFi цаг уурын станцыг хэрхэн яаж барихыг танд үзүүлэх гэж байна. Wemos D1 Mini Pro нь жижиг хэлбэрийн хүчин зүйлтэй бөгөөд олон төрлийн залгах ба тоглох бамбайтай тул үүнийг хурдан авахад тохиромжтой шийдэл болгодог
Нарны эрчим хүчээр ажилладаг мотоциклийн залгах цаг: 5 алхам (зурагтай)
Нарны эрчим хүчээр ажилладаг мотоциклийн залгах цаг: Надад хуучин мотоциклоос үлдсэн тако залгуур байсан бөгөөд механик эргэлтийн тоолуурыг электрон самбараар сольсон (энэ бол өөр төсөл!), Би үүнийг хаяхыг хүсээгүй. Эдгээр зүйлс нь дугуйн гэрэл унтарсан үед арын гэрэлтүүлэг хийх зориулалттай