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

ESP8266 Цаг уурын станцын цаг: 4 алхам
ESP8266 Цаг уурын станцын цаг: 4 алхам

Видео: ESP8266 Цаг уурын станцын цаг: 4 алхам

Видео: ESP8266 Цаг уурын станцын цаг: 4 алхам
Видео: Arduino Nano, BME280 и SSD1306 OLED-метеостанция 2024, Долдугаар сарын
Anonim
ESP8266 цаг уурын станцын цаг
ESP8266 цаг уурын станцын цаг

Энэхүү төсөл нь цаг хугацаа, цаг агаарыг жижигхэн тохиромжтой багцад харуулах сайхан арга юм. Би төсөл, энэ нь хэрхэн ажилладаг талаар тайлбарлаж, кодыг энд харуулах болно.

Та өөр өөр товчлууруудыг дарж тухайн цаг агаар, температур, даралтыг харуулах боломжтой. Анхдагч харах нь NTP серверээс татаж авах хугацаа юм.

Цаг нь NTP серверээс синхрончлогдсон бөгөөд маш нарийвчлалтай тул цагийг тохируулах шаардлагагүй болно. Энэ тохиргоонд надад цаг, орон нутгийн IP хаяг байна. Та кодыг үндсэн дэлгэц эсвэл товчлуур дээр харуулах огноо, цаг агаар, даралт, температурыг оруулахаар өөрчилж болно.

Алхам 1: Схем

Схем
Схем
Схем
Схем

Схем нь харьцангуй энгийн бөгөөд хийхэд хялбар байдаг

дагах. Хэрэв та өөрийн ПХБ -ийг эргүүлэхийг хүсч байвал gerber файл байна. Бүх хэлхээг микро USB холболтоос 5V хүчээр удирддаг. Энэ нь хэлхээг энгийн бөгөөд хүчдэлд хялбар болгодог. 5V нь бага уналт 3.3V зохицуулагчид LM 3940 -ээр тэжээгддэг бөгөөд ESP8266 -д 3.3V өгдөг. ESP8266 дээр USB холбогч байдаг боловч 5V нь LCD жолоодлоготой тул би үүнийг ерөнхийд нь ашиглахгүй байхаар шийдсэн.

3.3V нь ESP8266 -тэй байх ёстой, та 5В -тай шууд жолоодох боломжгүй, учир нь энэ нь самбарыг алах болно.

Хоёр мэдрэгчтэй унтраалга нь D5 ба D6 -тай холбогдсон бөгөөд дэлгэцэн дээр өөр өөр мэдээлэл гаргахаар кодонд тохируулагдсан байдаг. Би эдгээрийг Температур/Даралт ба Урьдчилан тооцоололд тохируулсан болно.

Бүх бүрэлдэхүүн хэсгүүдийг perfboard дээр амархан гагнах эсвэл герберийг https://github.com/allenelectronics/esp8266weatherstation хаягаар миний GitHub дээрээс авах боломжтой.

Алхам 2: Код

github.com/allenelectronics/esp8266weatherstation

Кодыг Arduino IDE дээр эмхэтгэсэн бөгөөд ажиллахын тулд тохиргоо хийх шаардлагатай байна

Нэгдүгээрт, код оруулахын тулд та ESP8266 самбарыг IDE -д суулгах хэрэгтэй.

Үүнийг хэрхэн хийх талаархи дэлгэрэнгүй заавар энд байна:

Цаг агаарын функцийг олж авахын тулд би цаг агаарын өгөгдлийг API -аас шууд цуглуулдаг бөгөөд таны кодонд оруулах код үүсгэдэг RemoteMe -ийг ашиглахаар шийдсэн. Та https://remoteme.org вэбсайтад бүртгүүлж, мэдээллийн урсгалыг тохируулах шаардлагатай болно

RemoteMe -ийн талаархи баримт бичгийг эндээс олж болно:

Байршуулахаас өмнө дуусгах шаардлагатай таны тохиргооноос өөр тодорхой тодорхойлолтууд байдаг.

#тодорхойлох WIFI_NAME "SSID ЭНД БАЙНА"

#тодорхойлох "WIFI_PASSWORD" нууц үг энд байна"

#DEVICE_ID -ийг тодорхойлох 1

#DEVICE_NAME "REMOTEME. ORG -ээс ОБТАЙ" тодорхойлох

#define TOKEN "REMOTEME. ORG -с ОЛГОХ"

Энд байгаа тодорхойлолтуудыг wifi -ийн дэлгэрэнгүй мэдээлэл, RemoteMe -аас авсан жетон дээр үндэслэн тогтоох ёстой.

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

#оруулах //https://github.com/remoteme/RemoteMeArduinoLibrary

#оруулах

#оруулах

#оруулах

#оруулах

Энэ төсөл нь GPS ашигладаггүй тул өөрчлөх шаардлагатай сүүлийн хэсэг бол таны байршил юм. Та "LOCATION" мөрийг өөрчлөх хэрэгтэй.

өөр бол (buttonState2 == LOW && prevButtonState2 == HIGH) {

Serial.print ("LOCATION / n");

Serial.println (fc);

lcd.clear ();

lcd.print ("БАЙРШИЛ");

lcd.setCursor (0, 1);

lcd.хэвлэх (fc);

lcd.setCursor (0, 0);

саатал (5000);

prevButtonState2 = buttonState2;

Алхам 3: Бүтээл

Бүтээх
Бүтээх
Бүтээх
Бүтээх

Бүтээх

Тухайн үед 3d принтер ашиглах боломжгүй байсан бол энэ бол тавиур дээр хийсэн хайрцаг ашиглан хийсэн миний хамгийн сүүлийн төсөл байв. Би 16x2 LCD дэлгэц дээр зориулагдсан бэлэн байгаа дохиоллын самбарыг ашигласан.

Холбоос: https://www.ebay.co.uk/itm/86-Plastic-project-box-enclosure-case-for-diy-LCD1602-meter-tester-with-buttGA/363214674235?hash=item549148193b:g: IvQAAOSwNXpcFFrv

Бүх зүйл хайрцаг дотор чихмэл, 16x2 хэмжээтэй LCD дэлгэцийг урд самбар дээр нааж, хэлхээний самбарыг халуун наасан байна.

Алхам 4: Дүгнэлт

Дүгнэлт

Энэ бол ширээний дижитал цагны хувьд цэвэр төсөл бөгөөд тохируулга хийх шаардлагагүй бөгөөд NTP серверээс цаг авч, гэрэлтдэг LCD дэлгэц дээр харуулдаг.

Энэ нь бүрэн эхлэгчдэд зориулагдаагүй болно, учир нь шаардлагатай кодын тохиргоо байдаг тул өгөгдлийн урсгалыг тохируулах шаардлагатай байдаг. Хэрэв танд асуулт, сэтгэгдэл байвал надад сэтгэгдэлээ үлдээнэ үү.

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