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

Arduino офлайн цаг агаарын станц: 18 алхам (зурагтай)
Arduino офлайн цаг агаарын станц: 18 алхам (зурагтай)

Видео: Arduino офлайн цаг агаарын станц: 18 алхам (зурагтай)

Видео: Arduino офлайн цаг агаарын станц: 18 алхам (зурагтай)
Видео: Аймаг нийслэлийн 3 хоногийн цаг агаарын урьдчилсан мэдээ /2018.05.31-2018.06.02/ 2024, Арваннэгдүгээр
Anonim
Офлайн цаг агаарын станц Arduino
Офлайн цаг агаарын станц Arduino
Офлайн цаг агаарын станц Arduino
Офлайн цаг агаарын станц Arduino
Офлайн цаг агаарын станц Arduino
Офлайн цаг агаарын станц Arduino
Офлайн цаг агаарын станц Arduino
Офлайн цаг агаарын станц Arduino

Дүгнэлт

Би термометр худалдаж авахдаа хэд хэдэн удаа утсан дээр бараг үргэлж ялгаа байдгийг олж харсан. Миний даалгавар бол хүүхдийнхээ өрөөн доторх температур, чийгшлийг дагах явдал байв. Мөн хамгийн их термометр дээр 2-3 метрийн зайнаас утгыг уншихад асуудал гарсан бөгөөд температурыг харахын тулд босож зогсох шаардлагатай байсан бөгөөд хамгийн их термометртэй холбоотой асуудал бол гэрэл байв. Өөр нэг асуудал бол эрчим хүч хэмнэхийн тулд арын гэрэлтүүлэггүй тул температурын утгыг харах боломжгүй байв. Би эрчим хүч хэмнэхийг хүсэхгүй байна, хэрэв эрчим хүчний гол шугам унтарвал энэ төхөөрөмжийг ажиллуулахын тулд хэдхэн цагийн энерги хадгалах хэрэгтэй.

Тиймээс би нэг санаа ирлээ:

Температурын утгыг өөрчлөх боломжтой термометр бий болгох.

- Арын гэрэлтүүлэг, өнгөний гэрэлтэй байж болно.- Ердийн термометрт байдаг бүх зүйлийг нэгтгэхийн тулд:

Тиймээс би 1 жилийн өмнө төслийг эхлүүлсэн. Програм хангамжийн хэсгийг дуусгахад хэдэн сар зарцуулсан. Би програм хангамжийн хэд хэдэн хувилбарыг бүтээсэн бөгөөд өнгөрсөн 2 долоо хоногт би төслийг дуусгасан.

Төхөөрөмжийн програм хангамжийн мэдээлэл

Arduino код ба номын сангууд:

Кодыг кодын алхам дээр байршуулсан болно.

https://github.com/stlevkov/KT2_144

https://github.com/stlevkov/Arduino-Libraries

Төхөөрөмжийн онцлог

  • Ачаалах хуудас - хамгийн сүүлийн firmware байршуулсан огноо, цагийг харуулна.
  • Нүүр хуудас - залгасан үед цаг, огноо, батерейны дүрс, температурын дүрс, температурын утга, чийгшлийн утга, Tmax, Tmin, улирал, амралт, USB заагчийг харуулна.
  • Цэс хуудас - Temp, Clock, Battery, About, Back цэсүүдтэй
  • Temp Page - DHT мэдрэгчийг тохируулах боломжийг олгодог
  • Цагийн хуудас - Цаг, огноог засах боломжийг олгодог
  • Зайны хуудас - Батерейны мэдээлэл, % хувь, мВ хүчдэл, Цэнэглэх байдлыг харуулна
  • Хуудасны тухай - зохиогчийн мэдээллийг харуулах
  • Цэснээс гарахын тулд буцах функц
  • Ил тод самбар
  • RTC урт наслалт
  • Лити батерей - ~ 9 цаг хүртэл (450 мАч)
  • Бага зайны үзүүлэлт - дүрсийг улаанаар харуулна ~ үлдсэн 5 минут.
  • Өөр өөр өнгө - Бага, Дунд, Өндөр температур
  • Баярын болон улирлын зурвасууд
  • Програмчлагдах залгуур - ар талд
  • Хэрэглэгчийн интерфэйс - Ротари кодлогч ашиглан

Самбарын ар талыг таглахгүй, учир нь би нялхас самбарыг харж, хүрэхийг хүсч байна, гэхдээ төхөөрөмж асахгүй байна. Та самбарын арын хэсэгт ямар нэгэн бүрхүүл үүсгэж болно.

Алхам 1: Төхөөрөмжийн тоймыг зурж, санааны санааг зур

Төхөөрөмжийн ноорог, Init санааг зур
Төхөөрөмжийн ноорог, Init санааг зур
Төхөөрөмжийн ноорог, Init санааг зур
Төхөөрөмжийн ноорог, Init санааг зур
Төхөөрөмжийн ноорог, Init санааг зур
Төхөөрөмжийн ноорог, Init санааг зур

Юу байх ёстойгоо шийдээрэй - хэдэн хуудас, цэс, цэс, хуудсыг хэрхэн өөрчлөх талаар.

Хэрэв танд өөр санаа байгаа бол та үүнийг arduino код ашиглан өөрчилж болно.

Та ямар хэлбэрийг хүсч байгаагаа, юу амархан хийж болохыг шийдээрэй. Би эхлээд 3D хэвлэх аргыг сонгосон боловч үүний дараа энгийн материалыг ашиглахаар шийдсэн.

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

Тиймээс хайрцгийн гол хэсгүүд нь:

  1. Урд - Дэлгэц ба Ротари кодлогчтой
  2. Зөв - RTC модулийн хамт
  3. Зүүн талд - DHT модулийн хамт
  4. Буцах - самбарын эсрэг талтай
  5. Топ - 3.7В батерей, ON/OFF слайдтай
  6. Доод талд - ил тод

Алхам 2: Зөв бүрэлдэхүүн хэсгүүдийг сонгох

  1. TP4056 Micro USB цэнэглэгч 5V 1A 18650 лити зай цэнэглэх самбар - Ebay
  2. 1.44 "128x128 SPI Бүтэн өнгөт 65K TFT LCD дэлгэцийн модуль ST7735 - Ebay
  3. Arduino -д зориулсан KY -040 Rotary Encoder Module - Ebay
  4. DHT22 AM2302 Дижитал температур ба чийгшил мэдрэгч - Ebay
  5. Жижиг RTC I2C модулиуд 24C32 санах ой DS1307 бодит цагийн цаг RTC модулийн самбар - Ebay
  6. Pro Micro Controller Board ATmega328P 16MHz Arduino Pro Mini Module - Ebay
  7. 3.7V 450mAh Lipo цэнэглэдэг зай - Ebay
  8. 6 зүү 2 байрлал DPDT асаах/унтраах мини слайд - Ebay

  9. CR2032 CR 2032 3V товчлууртай эсийн зоосон зай - Ebay
  10. 10х22см хэмжээтэй гагнуурын прототип Зэс ПХБ -ийн самбар Нэг талт Universal - Ebay
  11. Эрэгтэй, эмэгтэй 40pin 2.54мм толгойтой нэг эгнээний тууз - Ebay

Алхам 3: Утасны диаграмыг бэлтгэ

Утасны диаграмыг бэлтгэ
Утасны диаграмыг бэлтгэ

Диаграм нь ижил төстэй мэдрэгчүүдийн холболтыг харуулсан бол дэлгэц нь бараг ижил байна.

Зүүг зөв ашиглахын тулд кодын алхам дахь Arduino кодыг үзнэ үү.

Залгуурын талаар илүү дэлгэрэнгүй мэдээллийг fritzing файлыг татаж авна уу. Модулийн яг зүүг харахын тулд диаграм дээрх цэгүүдийг зөөнө үү.

Алхам 4: Эхлэхээс өмнө нэмэлт мэдээлэл - Эрчим хүчний хэрэглээ

Эхлэхээс өмнө нэмэлт мэдээлэл - Эрчим хүчний хэрэглээ
Эхлэхээс өмнө нэмэлт мэдээлэл - Эрчим хүчний хэрэглээ

Энэхүү төсөл нь 450 мАч батерей ашигладаг боловч та илүү ихийг ашиглаж болно. Тодорхой цагийн хэрэглээнд тохирох батерейг сонгох, тооцоолохын тулд цахилгаан зарцуулалтыг анхаарч үзээрэй. 450mAh ашиглах үед төхөөрөмж ойролцоогоор ажиллах боломжтой. 9 цаг.

Сул зогсолтын үед төхөөрөмж 0.102А орчим ажилладаг - Энд эрчим хүч хэмнэх оновчлол хийгдээгүй байна

Товчлуурыг дарахад өндөр гүйдэл гүйдэг бөгөөд энэ нь 0.177А орчим байдаг.

Алхам 5: Дэлгэцийг холбоно уу

Дэлгэцийг холбоно уу
Дэлгэцийг холбоно уу
Дэлгэцийг холбоно уу
Дэлгэцийг холбоно уу

Дэлгэц нь холболтын хувьд SPI ашиглаж байна.

Энэ драйвер ST7735 -д зориулсан adafruit номын сан байдаг.

Алхам 6: RTC модулийг холбоно уу

RTC модулийг холбоно уу
RTC модулийг холбоно уу

CR2032 батерейг ашиглахын тулд ПХБ -ийн өөрчлөлтийг үүсгэх.

  • D1 -ийг устгана уу
  • R4 -ийг устгана уу
  • R5 -ийг устгана уу
  • R6 -ийг устгана уу
  • Богино R6

Энэхүү өөрчлөлтийн талаарх дэлгэрэнгүй мэдээллийг эндээс авах боломжтой.

Алхам 7: Дэлгэц, RTC, зай, эргэлтэт кодлогчтой урд ханыг бэхлээрэй

Урд талын ханыг дэлгэц, RTC, зай, эргэдэг кодлогчоор бэхлээрэй
Урд талын ханыг дэлгэц, RTC, зай, эргэдэг кодлогчоор бэхлээрэй
Урд талын ханыг дэлгэц, RTC, зай, эргэдэг кодлогчоор бэхлээрэй
Урд талын ханыг дэлгэц, RTC, зай, эргэдэг кодлогчоор бэхлээрэй
Урд талын ханыг дэлгэц, RTC, зай, эргэдэг кодлогчоор бэхлээрэй
Урд талын ханыг дэлгэц, RTC, зай, эргэдэг кодлогчоор бэхлээрэй

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

Алхам 8: Ил тод хана бэлтгэх

Ил тод хана бэлтгэх
Ил тод хана бэлтгэх

Би 3 мм -ийн plexi ашигладаг. Та ижил төстэй ил тод материалыг ашиглаж болно. Би доод талд нь зөвхөн нэгийг ашигладаг.

Алхам 9: Зөв хана үүсгэх

Баруун ханыг бий болгох
Баруун ханыг бий болгох
Баруун ханыг бий болгох
Баруун ханыг бий болгох

Баруун талын ханыг бий болгох. Нүхэнд CR2032 хэмжээг ашиглана уу.

Алхам 10: Зүүн талын ханыг бий болгох

Зүүн талын хана үүсгэх
Зүүн талын хана үүсгэх
Зүүн талын хана үүсгэх
Зүүн талын хана үүсгэх
Зүүн талын хана үүсгэх
Зүүн талын хана үүсгэх

Зүүн талын ханыг бий болгох. Нүхэнд DHT модулийн хэмжээг ашиглана уу.

Алхам 11: Түгээмэл самбар ба төмөр замын тусламжтайгаар залгуур үүсгэх, RTC, кодлогч, дэлгэц, дэлгэцийг холбох

Түгээмэл самбар ба төмөр замын тусламжтайгаар залгуурыг үүсгэн RTC, кодлогч, дэлгэц ба дэлгэцийг холбоно уу
Түгээмэл самбар ба төмөр замын тусламжтайгаар залгуурыг үүсгэн RTC, кодлогч, дэлгэц ба дэлгэцийг холбоно уу
Түгээмэл самбар ба төмөр замын тусламжтайгаар залгуурыг үүсгэн RTC, кодлогч, дэлгэц ба дэлгэцийг холбоно уу
Түгээмэл самбар ба төмөр замын тусламжтайгаар залгуурыг үүсгэн RTC, кодлогч, дэлгэц ба дэлгэцийг холбоно уу
Түгээмэл самбар ба төмөр замын тусламжтайгаар залгуурыг үүсгэн RTC, кодлогч, дэлгэц ба дэлгэцийг холбоно уу
Түгээмэл самбар ба төмөр замын тусламжтайгаар залгуурыг үүсгэн RTC, кодлогч, дэлгэц ба дэлгэцийг холбоно уу

Утасны диаграмын дагуу бүх тээглүүрийг холбож, гагнана. Та Arduino Mini -ийг програмчлахын тулд хоосон ноорог суулгасан Arduino UNO ашиглаж болно. Шаардлагатай тээглүүр:

  • VCC 5V
  • GND
  • RX
  • TX
  • ДАХИН тохируулах

Хэрэв та эд ангиудыг дуусгахаас өмнө ноорогоо байршуулбал 3.7V батерейг салгахаа бүү мартаарай.

Алхам 12: Үргэлжлүүлэхээсээ өмнө асаана уу

Image
Image

Энэ үед та төхөөрөмжийг асааж, бүх функцийг ашиглах боломжтой болно.

Видео хувилбарыг ашиглан 1.1 хувилбар дээр ямар програм хангамж байгааг олж мэдээрэй. Хамгийн сүүлийн шинэчлэлтийг харахын тулд хураангуй алхамд github холбоос байдаг.

Дээд тагийг хаахаас өмнө бусад алхамуудыг үргэлжлүүлэхийн өмнө төхөөрөмжийг асаагаарай, энэ нь хэвийн ажиллаж байгаа эсэхийг шалгаарай.

Алхам 13: TP4056 ба батерейг нэмж, гулсагчийг гагнах, 5 -р зүүнд цэнэглэх утас нэмж оруулах, арын хэсэгт програмчлагдах залгуурыг гагнах

TP4056 ба батерей, гулсагч шилжүүлэгчийг гагнах, 5 -р зүү дээр цэнэглэх утас нэмэх, арын хэсэгт програмчлагдах залгуурыг гагнах
TP4056 ба батерей, гулсагч шилжүүлэгчийг гагнах, 5 -р зүү дээр цэнэглэх утас нэмэх, арын хэсэгт програмчлагдах залгуурыг гагнах
TP4056 ба батерей, гулсагч шилжүүлэгчийг гагнах, 5 -р зүү дээр цэнэглэх утас нэмэх, арын хэсэгт програмчлагдах залгуурыг гагнах
TP4056 ба батерей, гулсагч шилжүүлэгчийг гагнах, 5 -р зүү дээр цэнэглэх утас нэмэх, арын хэсэгт програмчлагдах залгуурыг гагнах
TP4056 ба батерей, гулсагч шилжүүлэгчийг гагнах, 5 -р зүү дээр цэнэглэх утас нэмэх, арын хэсэгт програмчлагдах залгуурыг гагнах
TP4056 ба батерей, гулсагч шилжүүлэгчийг гагнах, 5 -р зүү дээр цэнэглэх утас нэмэх, арын хэсэгт програмчлагдах залгуурыг гагнах

Гагнах бүрийн дараа системийг туршиж үзээд үргэлжлүүлэхийн өмнө эд ангиуд нь сайн ажиллаж байгаа эсэхийг шалгаарай.

Алхам 14: Дээд хавтас үүсгэнэ үү

Дээд хавтас үүсгэх
Дээд хавтас үүсгэх
Дээд хавтас үүсгэх
Дээд хавтас үүсгэх
Дээд хавтас үүсгэх
Дээд хавтас үүсгэх

Би цахилгаан банкны хайрцагнаас 0.5 мм хэмжээтэй plexi хуудас ашигладаг.

Алхам 15: Код

Та өөрийн тохиргоог тодорхойлохын тулд init хэсгийн параметрүүдийг ашиглана уу.

Баярын үеэр би Болгар хэл ашигладаг. Та өөрийн орны амралтыг ашиглан массивыг засах боломжтой.

Төхөөрөмж нь 4 улирлыг харуулдаг бөгөөд үүнийг өөрийн байршлын кодоор тохируулна уу.

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

Туршилт хийсэн платформууд:

  • Ардуино НҮБ
  • Arduino Pro Mini

Репозитороос хэрэгтэй номын сангаа аваад ноорог дээр тодорхойлсон номуудыг ашиглаарай.

Алхам 16: Төгсгөл хүрэхээс өмнө төхөөрөмжийг туршиж үзээрэй

Төгсгөл хүрэхээс өмнө төхөөрөмжийг туршиж үзээрэй
Төгсгөл хүрэхээс өмнө төхөөрөмжийг туршиж үзээрэй
Төгсгөл хүрэхээс өмнө төхөөрөмжийг туршиж үзээрэй
Төгсгөл хүрэхээс өмнө төхөөрөмжийг туршиж үзээрэй
Төгсгөл хүрэхээс өмнө төхөөрөмжийг туршиж үзээрэй
Төгсгөл хүрэхээс өмнө төхөөрөмжийг туршиж үзээрэй

Төхөөрөмж нь төгс төгөлдөр, минийх -4*C хэмжигдсэн, би Toshiba агааржуулагч, 2 энгийн ханатай термометр, хоёр дижитал термометрийг тохируулав. Хэрэв таны мэдрэгч өөр өөр утгыг хэмждэг бол та одоо үүнийг өөрчилж болно.

Алхам 17: Интерфэйсийг урьдчилан үзэх

Интерфэйсийг урьдчилан үзэх
Интерфэйсийг урьдчилан үзэх
Интерфэйсийг урьдчилан үзэх
Интерфэйсийг урьдчилан үзэх
Интерфэйсийг урьдчилан үзэх
Интерфэйсийг урьдчилан үзэх

Итгэмжлэх жуух бичгээ харуулахын тулд кодын эхний хэсэгт байгаа Firmware -ийн мэдээллийг засварлахаа бүү мартаарай.

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