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

Нарны цаг уурын станц: 5 алхам
Нарны цаг уурын станц: 5 алхам

Видео: Нарны цаг уурын станц: 5 алхам

Видео: Нарны цаг уурын станц: 5 алхам
Видео: 125 САМЫХ ИННОВАЦИОННЫХ ЭЛЕКТРОТРАНСПОРТНЫХ И ЛИЧНЫХ ТРАНСПОРТНЫХ СРЕДСТВ 2024, Арваннэгдүгээр
Anonim
Нарны цаг уурын станц
Нарны цаг уурын станц

Та арынхаа хашаанаас цаг агаарын бодит мэдээллийг авахыг хүсч байсан уу? Одоо та дэлгүүрээс цаг уурын станц худалдаж авах боломжтой боловч ихэвчлэн батерей шаарддаг эсвэл залгуурт холбох шаардлагатай байдаг. Энэхүү цаг уурын станц нь илүү үр ашигтай байхын тулд нарны зүг эргэдэг нарны зайтай тул сүлжээнд холбох шаардлагагүй. RF модулийн тусламжтайгаар гаднах станцаас өгөгдлийг гэрийнхээ доторх Raspberry Pi руу дамжуулах боломжтой. Raspberry Pi нь өгөгдлийг үзэх боломжтой вэбсайттай.

Алхам 1: Материалыг цуглуулах

Материал

  • Raspberry Pi 3 загварын B + + адаптер + Micro SD карт 16GB
  • Ардуино Уно
  • Arduino Pro Mini + FTDI -ийн үндсэн эвдрэл
  • 6V 1W 4 нарны зай
  • 4 18650 батерей
  • Өргөгч 5v
  • 4 TP 4056 батерейны цэнэглэгч
  • Adafruit DHT22 температур ба чийгшил мэдрэгч
  • BMP180 Барометрийн даралт мэдрэгч
  • 4 LDR
  • RF 433 хүлээн авагч ба дамжуулагч
  • 2 Nema 17 Stepper мотор
  • 2 DRV8825 Stepper мотор жолооч
  • LCD 128*64
  • Маш олон утас

Багаж хэрэгсэл, материал

  • Цавуу
  • Модон банз
  • Харсан
  • Шураг + шураг драйвер
  • Нугас соронзон хальс
  • 2 хөнгөн цагаан тууз

Алхам 2: Механик дизайн

Механик дизайн
Механик дизайн
Механик дизайн
Механик дизайн
Механик дизайн
Механик дизайн
Механик дизайн
Механик дизайн

Цаг уурын станцын их бие нь фанераар хийгдсэн байдаг. Та мод ашиглах шаардлагагүй, хүссэн материалаараа хийж болно. Моторын бэхэлгээний хувьд би модон блокыг бүхэлд нь өрөмдөж, дараа нь хавтгай боолтыг хөдөлгүүрийн босоо аманд шургуулсан нь миний бодож байснаас хамаагүй дээр юм. Ингэснээр та мотор холбох хэрэгслийг 3d хэвлэх шаардлагагүй бөгөөд үүнийг хийхэд хялбар болно. Дараа нь би моторыг маш чанга барихын тулд 2 хөнгөн цагаан тууз нугалав. Дараа нь би банз хайчилж, нарны хавтангийн нүхийг өрөмдсөн. Дараа нь нарны хавтанг нааж, нарны хавтан дээр утсыг гагнана. Дараа нь та хар материалаар загалмай хийх хэрэгтэй болно. Хэрэв танд хар юм байхгүй бол хар тууз ашиглаж болно. Энэхүү загалмай нь LDR -ийг булан бүрт байрлуулах тул Arduino нь LDR -ийн хэмжилтийг харьцуулж, ямар чиглэлд эргэх шаардлагатайг тооцоолох боломжтой болно. Тиймээс өнцөг булан бүрт жижиг бөөнөөр өрөмдөж, тэнд LDR байрлуулах боломжтой болно. Одоо хийх ёстой зүйл бол үндсэн хавтан, электроникийг оруулах зүйл юм. Суурийн хавтангийн хувьд та бүх утсыг дамжуулахын тулд бүхэлд нь өрөмдөх хэрэгтэй болно. Хэмжилтийн хувьд би танд өгөхгүй, учир нь үүнийг хэрхэн яаж хийх нь танд хамаарна. Хэрэв танд өөр мотор эсвэл бусад нарны зай байгаа бол хэмжилтийг өөрөө хийх хэрэгтэй болно.

Алхам 3: Цахилгааны дизайн

Эрчим хүч

Бүх систем батерейгаар ажилладаг (Raspberry Pi -ээс бусад). Би 3 батерейг цувралаар байрлуулсан. 1 батерей нь дунджаар 3.7V байдаг тул 3 цуврал нь 11V орчим өгдөг. Энэхүү 3s батерейны багц нь мотор болон RF дамжуулагчийн хувьд ашиглагддаг. Үлдсэн бусад батерейг Arduino Pro Mini болон мэдрэгчийг тэжээхэд ашигладаг. Батерейг цэнэглэхийн тулд би 4 TP4056 модулийг ашигласан. Батерей бүр 1 TP4056 модультай бөгөөд модуль бүр нь нарны зайнд холбогдсон байдаг. Модуль нь B (in) ба B (out) байдаг тул би тэдгээрийг тусад нь цэнэглээд цувралаар цэнэглэх боломжтой. Бүх модуль B (in) ба B (out) байдаггүй тул зөв TP4056 модулийг худалдаж авсан эсэхээ шалгаарай.

Контол

Arduino Pro Mini нь мэдрэгч ба моторыг хянадаг. Arduino -ийн түүхий болон газрын зүү нь 5V өргөгчтэй холбогдсон байна. 5V өргөгч нь нэг батерейнд холбогдсон. Arduino Pro Mini нь маш бага эрчим хүчний хэрэглээтэй.

Бүрэлдэхүүн хэсгүүд

DHT22: Би энэ мэдрэгчийг VCC ба Ground -т холбосон, дараа нь өгөгдлийн зүүг дижитал зүү 10 -д холбосон.

BMP180: Би энэ мэдрэгчийг VCC ба Ground -д холбосон, би SCL -ийг Arduino дээрх SCL, SDA -ийг Arduino дээрх SDA -тай холбосон. Arduino Pro Mini дээрх SCL ба SDA тээглүүр нь самбарын дунд байдаг тул болгоомжтой байгаарай, хэрэв та зүүг самбар дээр гагнаж талхны тавцанд хийвэл энэ нь ажиллахгүй болно, учир нь танд бусад тээглүүрүүд хөндлөнгөөс оролцох болно. Би тэдгээр 2 тээглүүрийг самбарын дээд талд гагнаж, утсыг шууд холбосон.

RF дамжуулагч: Би үүнийг 3s батерейны багцад холбож илүү сайн дохио өгч, илүү урт хугацаанд ажиллах боломжтой болсон. Би Arduino -аас 5V -тэй холбохыг оролдсон боловч энэ нь RF -ийн дохио маш сул байна. Дараа нь би өгөгдлийн зүүг дижитал зүү 12 -т холбосон.

LDR: Би 4 LDR -ийг A0, A1, A2, A3 аналог тээглүүрт холбосон. Би LDR -ийг 1K эсэргүүцэлтэй холбосон.

Мотор: Хөдөлгүүрийг 2 DRV8825 хяналтын модуль удирддаг. Эдгээр нь маш тохиромжтой, учир нь тэд зөвхөн 2 оролтын шугам (чиглэл ба алхам) авдаг бөгөөд нэг фазад 2А хүртэл хөдөлгүүрт үйлдвэрлэх боломжтой. Би тэднийг 2, 3, 8, 9 дижитал тээглүүрт холбосон.

LCD: Би IP хаягаа харуулахын тулд lcd-ийг Raspberry Pi-тэй холбосон. Би арын гэрлийг зохицуулахын тулд шүргэгч ашигласан.

RF хүлээн авагч: Би хүлээн авагчаа 5V ба Ground дээр Arduino Uno -той холбосон. Хүлээн авагч нь 5 В -оос хэтрэхгүй байх ёстой. Би дараа нь өгөгдлийн зүүг дижитал зүү 11 -т холбосон бол хэрэв та Raspberry Pi дээр ажилладаг эдгээр RF модульд зориулсан номын сан олж чадвал Arduino Uno ашиглах шаардлагагүй болно.

Raspberry Pi: Raspberry Pi нь USB кабелиар Arduino Uno -тэй холбогддог. Arduino нь RF дохиог Raspberry Pi руу цуваа холболтоор дамжуулдаг.

Алхам 4: Кодлох ажлыг эхлүүлье

Arduino Pro Mini -ийг кодлохын тулд танд FTDI програмист хэрэгтэй болно. Pro Mini -д USB порт байхгүй тул (эрчим хүч хэмнэх) танд энэ самбар хэрэгтэй болно. Би кодыг Arduino IDE дээр програмчилсан бөгөөд үүнийг хийх хамгийн хялбар арга гэж бодож байна. Файлаас кодыг байршуулаарай, явахад тохиромжтой байх болно.

Arduino Uno -г кодлохын тулд би үүнийг USB кабелиар компьютерт холбосон. Кодыг байршуулсны дараа би үүнийг Raspberry Pi -тэй холбосон. Би Raspberry Pi дээрх кодыг өөрчилж чадсан, учир нь би Arduino IDE суулгасан тул тэндээс програмчлах боломжтой болсон. Код нь маш энгийн бөгөөд хүлээн авагчаас оролтыг авч, Raspberry Pi руу цуваа портоор дамжуулдаг.

Raspberry Pi -ийг кодлохын тулд би Raspbian програмыг суулгасан. Дараа нь би Putty ашиглан SSH холболтоор холбогдсон. Дараа нь би Raspberry -ийг тохируулсан бөгөөд ингэснээр би VNC -ээр холбогдож GUI -тэй болно. Би Apache вэб сервер суулгаж, энэ төслийн арын болон урд талын хэсгийг кодчилж эхлэв. Та кодыг github дээрээс олж болно:

Алхам 5: Мэдээллийн сан

Өгөгдлийг хадгалахын тулд би SQL мэдээллийн санг ашигладаг. Би мэдээллийн санг MySQL Workbench дээр хийсэн. Мэдээллийн сан нь мэдрэгчийн уншилт болон мэдрэгчийн мэдээллийг агуулдаг. Надад 3 хүснэгт бий, нэг нь мэдрэгчийн утгыг цагийн тэмдгээр хадгалах, нөгөө нь мэдрэгчийн тухай мэдээллийг хадгалах, хэрэглэгчдийн талаархи мэдээллийг хадгалах хамгийн сүүлийн хүснэгт. Би Хэрэглэгчийн хүснэгтийг ашигладаггүй, учир нь би төслийн MVP -д ороогүй тул энэ хэсгийг кодчилоогүй байна. SQL файлыг татаж аваад ажиллуулаад өгөгдлийн сан ажиллахад тохиромжтой байх ёстой.

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