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

Постино: Шуудан зөөгч ямар нэгэн юм өгсөн үү ?: 6 алхам (зурагтай)
Постино: Шуудан зөөгч ямар нэгэн юм өгсөн үү ?: 6 алхам (зурагтай)

Видео: Постино: Шуудан зөөгч ямар нэгэн юм өгсөн үү ?: 6 алхам (зурагтай)

Видео: Постино: Шуудан зөөгч ямар нэгэн юм өгсөн үү ?: 6 алхам (зурагтай)
Видео: После смерти моей жены и ребенка, мое критическое двухчасовое путешествие (субтитры) 2024, Долдугаар сарын
Anonim
Постино: Шуудан зөөгч ямар нэгэн зүйл хүргэсэн үү?
Постино: Шуудан зөөгч ямар нэгэн зүйл хүргэсэн үү?

Миний санаа биш: нэг өдөр найз маань шуудангийн хайрцагт ямар нэгэн шуудан байгаа эсэхийг алсаас шалгах арга замыг надаас асуув. Шуудангийн хайрцаг нь хаалганыхаа явган хүний зам дээр байдаггүй тул залхуу хүү тул технологийн хэрэгсэл шуудангийн хайрцагт орж ирэх аливаа захидлыг түүнд анхааруулж чадах болов уу гэж боджээ. Би зах зээлийг хараад түүний хэрэгцээнд нийцсэн бэлэн төхөөрөмж олж чадаагүй тул өөртөө дизайн хийж, бүтээж яагаад болохгүй гэж?

Хязгаарлалтууд нь:

  • батерейгаар ажилладаг, батерейны өөрчлөлтийн хооронд боломжийн хугацаатай;
  • WiFi холболт;
  • шуудан байсан эсэхээс үл хамааран өдөрт нэг л удаа шалгах;

Гол асуулт нь: ямар төрлийн мэдрэгч миний шаардлагад нийцэх вэ? Ойролцоох мэдрэгч ажиллах боломжгүй, учир нь шалгалтыг бодит цаг хугацаанд биш өдөрт нэг удаа хийх ёстой байв; жин мэдрэгч ч бас байхгүй, учир нь энэ нь нарийн төвөгтэй байдал, мэдрэмжийн асуудлыг нэмж оруулах болно (нэг хуудас цаас маш хөнгөн байж магадгүй юм). Миний сонголт нислэгийн цаг (микро лазер) мэдрэгч дээр буусан. Шуудангийн хайрцгийн хэмжээг тохируулсны дараа дунд нь тавьсан бүх зүйл мэдрэгчийг асаах болно! 3 хязгаарлалтыг харгалзан би ESP8266 (програм хангамжийг ажиллуулж, WiFi-тэй холбох), VL6180 нислэгийн цагийн мэдрэгч, DS3231 бодит цагийн цагийг ашиглан бүх хэлхээг өдөрт нэг удаа ажиллуулахаар шийдсэн. Постино төрсөн!

Алхам 1: эд анги ба бүрэлдэхүүн хэсгүүд

  • ESP8266-01 (эсвэл ESP-12E NodeMCU)
  • VL6108 Нислэгийн цаг мэдрэгч
  • DS3231 бодит цагийн цаг
  • IRLZ44 N сувагтай MosFET
  • BC547 транзистор
  • Эсэргүүцэл
  • CR123 батерей

Алхам 2: Мэдрэгч

Мэдрэгч
Мэдрэгч

Системийн зүрх нь VL6180 мэдрэгч юм. Энэ бол зорилтот тусгалаас үл хамааран абсолют зайг хэмжих боломжийг олгодог шинэ технологи юм. VL6180X нь объектоос эргэж буй гэрлийн хэмжээг хэмжих замаар зайг тооцоолохын оронд (өнгө, гадаргуугаас ихээхэн хамаардаг) VL6180X нь гэрлийг хамгийн ойрын объект руу очиж мэдрэгч рүү тусгах хугацааг нарийн хэмждэг. -нислэгийн). IR ялгаруулагч, хүрээ мэдрэгч, орчны гэрэл мэдрэгчийг хослуулан ашиглахад бэлэн, дахин ашиглах боломжтой гурван багцыг багтаасан VL6180X нь нэгтгэхэд хялбар бөгөөд эцсийн бүтээгдэхүүн үйлдвэрлэгчийг урт, өндөр өртөгтэй оптик болон механик дизайны оновчлолыг хэмнэдэг.

Модуль нь бага эрчим хүчээр ажиллах зориулалттай. Би 2.7 В -оос 5.5 В хүртэлх оролтын хүчдэлийн хязгаарт ажиллах хүчдэлийн зохицуулагчтай Pololu таслагч хавтанг ашигласан.

Мэдрэгч нь хэмжилтийн хамгийн дээд хязгаарыг 20-60 см -ийн хооронд өөр өөр мэдрэмжтэйгээр хэмжих 3 хүчин зүйлийг зөвшөөрдөг. Хэмжээний масштабын коэффициентийг тохируулснаар мэдрэгчийн боломжит дээд хязгаарыг бага нарийвчлалтайгаар нэмэгдүүлэх боломжтой. Масштабын коэффициентийг 2 болгож тохируулснаар 2 мм -ийн нарийвчлалтайгаар 40 см хүртэлх зайтай байх бол 3 -ийн масштабын коэффициент нь 3 мм -ийн нарийвчлалтайгаар 60 см хүртэлх зайтай байна. Та 3 хэмжээсийг шуудангийн хайрцгийнхаа хэмжээсээр туршиж үзэх хэрэгтэй. Минийх 25 см (H) байсан тул масштабын коэффициент = 1 -ийг ашигласан.

Алхам 3: Бодит цагийн цагийг тохируулах

RTC -ийн хувьд би EEPROM (миний хувьд ашиггүй), зоосон хэмжээтэй батерей агуулсан DS3231 таслах самбар ашигласан. Би RTC -ийг үндсэн төхөөрөмжийн батерейгаар (3v CR123) тэжээхээр шийдсэн тул би зоосны батерейг салгасан; Эрчим хүч хэмнэхийн тулд би EEPROM (зүүг нь сайтар хайчилж), самбар дээрх утсыг салгасан.

Зоосны батерей нь надад ашигтай байсангүй, учир нь би бодит цагийн огноо/цаг/минут/секунд байлгах шаардлагагүй байсан, гэхдээ RTC нь зөвхөн 24 цаг тоолж, дараа нь төхөөрөмжийг асаах дохиоллыг асаах ёстой байв.

Алхам 4: Онгоцонд байгаа бусад төрөл бүрийн зүйл

Онгоцонд байгаа бусад төрөл зүйл
Онгоцонд байгаа бусад төрөл зүйл
Онгоцонд байгаа бусад төрөл зүйл
Онгоцонд байгаа бусад төрөл зүйл

Төхөөрөмжийг асаах ажлыг RTC дохиололоор өдөөгдсөн транзистор ба MosFET хэлхээгээр гүйцэтгэдэг. Сэрүүлгийг дахин тохируулсны дараа хэлхээ нь төхөөрөмжийн тэжээлийг өөр 24 цагийн мөчлөгөөр тасалдаг. Сэрүүлэг дуустал DS3231 нь зүүг өндрөөс доош руу шилжүүлдэг: ердийн нөхцөлд транзистор ханасан бөгөөд MosFET -ийн хаалгыг богиносгодог. Сэрүүлэг нь транзисторын суурийг газардуулсны дараа нээгдэж, MosFET нь хэлхээг хааж, бусад бүрэлдэхүүн хэсгүүдэд хүч өгөх боломжийг олгодог.

Нэмж дурдахад би "тест-1М" холбогчийг нэмсэн. Энэхүү шилжүүлэгчийн зорилго нь хэрэв идэвхжүүлсэн бол байршлын туршилтыг хийхийн тулд мөчлөгийг өдөрт нэг удаа минутанд нэг удаа өөрчлөх явдал юм. Интервалыг нэг өдрөөс нэг минут болгож өөрчлөхийн тулд та "Test-C" холбогчийг 15 секунд орчим хааж, цагийн дохиоллын идэвхжүүлэлтийн хугацааг алгасаж, төхөөрөмжийг асаах хэрэгтэй. Туршилт хийсний дараа холбогчийг нээж төхөөрөмжийг дахин тохируулна уу (мөчлөгийн хүч).

Алхам 5: Схем

Схем
Схем

Алхам 6: Програм хангамж ба логик

Туршилтын явцад би (практик шалтгаанаар) NodeMCU хянагч ашигласан тул програм хангамж нь CHIP variale -ийг "NodeMCU" эсвэл "esp8266" болгож тохируулж өгдөг.

Энэхүү ноорог нь WiFiManager номын санг хэрэгжүүлж, төхөөрөмжийг анхны ажиллуулах явцад хүчинтэй WiFi AP -тэй холбох боломжийг олгодог. Энэ тохиолдолд төхөөрөмж AP горимд шилжиж, түүнд холбогдох, холбогдох WiFi сүлжээг сонгох боломжийг танд олгоно. Үүний дараа сүлжээний тохиргоог EPROM дээр дараагийн мөчлөгүүдэд хадгална.

REST_MSG хувьсагч нь мэдрэгч нь шуудангийн хайрцганд объект олох үед илгээх http мессежийг агуулдаг. Миний хувьд энэ нь REST сервер рүү мессеж илгээдэг боловч та үүнийг хүссэнээрээ өөрчилж болно: Telegram BOT мессеж, IFTTT WebHook үйл явдал гэх мэт.

Үлдсэн ноорог нь бүгдийг нь setup () функцэд оруулдаг. Хэд хэдэн номын санд шаардлагатай тохиргоог хийсний дараа програм хангамж нь цагийг 00:00:01 болгож, сэрүүлгийг өдөрт нэг удаа (эсвэл "туршилтын 1М" холбогчийг идэвхжүүлсэн тохиолдолд минутанд нэг удаа) тохируулдаг. Дараа нь энэ нь хэмжилт хийж, мэдэгдэл илгээдэг (хэрэв шуудангийн хайрцагт ямар нэгэн объект олдвол), дохиоллын зүүг дахин тохируулж, төхөөрөмжийг унтраадаг. Циклийн төгсгөлд зөвхөн RTC -ийг асааж, 24 цагийн турш тоолно. Test-1M холбогч нь ESP8266-ийн RX зүүтэй холбогдсон бөгөөд үүнийг GPIO-3 болгон ашигладаг: setMode (PIN, FUNCTION_3). Үүнтэй холбоотойгоор та ESP8266 -г ажиллуулахдаа Цуваа дэлгэцийг ашиглах боломжгүй: ESP8266 -ийн оронд NodeMCU суулгасан тохиолдолд л "#define DEBUG" шугамыг (ноорог дээрх бүх цуврал хэвлэмэл зургийг зөвшөөрдөг) ашигладаг.

ESP8266 нь Wire номын санд эхлүүлсэн GPIO-0 ба GPIO-2 зүүгээр дамжуулан RTC ба мэдрэгчтэй I2C холболтыг зохицуулдаг.

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

Туслах технологийн уралдаан
Туслах технологийн уралдаан
Туслах технологийн уралдаан
Туслах технологийн уралдаан

Туслах технологийн тэмцээнд дэд байр эзэлсэн

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