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

ESP8266 ба MQTT бүхий гар чийдэнгээс хөдөлгөөн мэдрэгч хүртэл: 5 алхам (зурагтай)
ESP8266 ба MQTT бүхий гар чийдэнгээс хөдөлгөөн мэдрэгч хүртэл: 5 алхам (зурагтай)

Видео: ESP8266 ба MQTT бүхий гар чийдэнгээс хөдөлгөөн мэдрэгч хүртэл: 5 алхам (зурагтай)

Видео: ESP8266 ба MQTT бүхий гар чийдэнгээс хөдөлгөөн мэдрэгч хүртэл: 5 алхам (зурагтай)
Видео: P1 ESP01 4CH Relay Module (Subtittled) 2024, Арваннэгдүгээр
Anonim
Image
Image
Хязгаарлагдмал байхын тулд LED -д гүйдэл хэрэгтэй
Хязгаарлагдмал байхын тулд LED -д гүйдэл хэрэгтэй

Энэ бичлэгт би доорх зүйлсийг танилцуулах болно.

  • LED нь хязгаарлах гүйдлийн хэлхээ хэрэгтэй
  • гар чийдэн хэрхэн хийх
  • зөөврийн батерейгаар ажилладаг гэрэл хийж, LED -ийг ESP8266 -ээр MQTT ашиглан бүдгэрүүлнэ.

Видео бол энэ нь хэрхэн ажилладаг талаар товч бөгөөд товч тайлбар юм.

Би PIR мэдрэгчийг оруулахаар төлөвлөж байсан боловч энэ хичээл нь нэлээд урт тул PIR мэдрэгчийг энэ сэдвийн хоёрдугаар хэсэгт танилцуулах болно

Тиймээс эхэлцгээе.

Алхам 1: LED -ийг хязгаарлахын тулд гүйдэл хэрэгтэй

Эхлэгчдэд улайсдаг эсвэл флюресцент чийдэнг ихэвчлэн асаах нь хачирхалтай юм. Санаа зоволтгүй, тавиур дээрх эдгээр LED чийдэн нь AC-DC гүйдлийн адаптер, хязгаарлах гүйдэлтэй байдаг. Гэхдээ эхнээс нь ямар нэгэн зүйл хийх нь сайхан байх болно.

LED -ийг асаах нэг түлхүүр бол гүйдлийг хязгаарлах хэлхээ юм. Энэ нь гүйдлийн хавхлага болж ажилладаг бөгөөд ингэснээр LED -д хүчдэл дамжуулагч болж хувирахад LED -ээр дамжих гүйдэл нь хэлхээгээр зохицуулагдсан хэмжээнээс их байж болохгүй. LED нь ихэвчлэн хэт халалтаас болж бүтэлгүйтдэг. Одоогийн хязгаарлах хэлхээ байхгүй байгаа нь LED -ийг хэдхэн секундын дотор шатаах найдвартай арга биш юм. Дашрамд хэлэхэд, LED чипийг хөнгөн цагаан хүрээ дээр суурилуулж, халаагуурт оруулах нь LED чипийг багасгаж, ерөнхийдөө санал болгодог.

Би энэ талаар 2015 он орчим сурч байхдаа толгойгоо маш их маажиж байсан, одоо ч гэсэн толгойгоо маажиж байсан (янз бүрийн шалтгаанаар). Би энэ гарын авлагаас олж мэдсэн бөгөөд түүний тодорхой тайлбар нь намайг зарим жижиг хэсгүүдийг аварсан.

Хэлхээ хавсаргасан байна. Зоригтой шугамууд нь ачааллын гол замыг илэрхийлдэг бол нимгэн нь 150 мА орчим гол чиглэлийн урсгалыг хянах хяналтын механизмыг илэрхийлдэг. Википедиа нь богино нийтлэл, зарим лавлагаа хавсаргасан болно. Одоогийн хязгаарлалтыг MOSFET -ийг BD135, BD139 гэх мэт дунд гүйдлийн ачааллын транзистороор солих замаар транзистороор барьж болно.

Алхам 2: Гар чийдэн хийх

Гар чийдэн хийх
Гар чийдэн хийх
Гар чийдэн хийх
Гар чийдэн хийх
Гар чийдэн хийх
Гар чийдэн хийх
Гар чийдэн хийх
Гар чийдэн хийх

Шаардлагатай эд ангиуд:

  1. N сувагтай MOSFET (IRF540N $ 1.62/10pcs, 30N06, $.1.75/10pcs)
  2. NPN транзистор (S8085 гэх мэт)
  3. 3.9 ом - 2W эсэргүүцэл, гүйдэл нь 0.6/3.9 = 153mA орчимд хязгаарлагдана
  4. 100kR (1/4W) эсэргүүцэл
  5. Түлхүүр түгжих унтраалга
  6. Энд 0.5W 8mm LED, $ 3.18/100 ширхэг байдаг
  7. 18660 оны лити батерей. Би тэдний хэдийг нь цахилгаан банкнаас аварсан. Зөөврийн компьютерын батерей (4, 6, 8 эсүүд) нь 18650 эсээр хийгдсэн боловч үүнийг болгоомжтой хийх хэрэгтэй.
  8. 12V хүртэлх 1 самбарыг нэмэгдүүлээрэй, үүнтэй адил 0.56 доллар
  9. Ийм литий цэнэглэгч 1 ширхэг, 0.30 доллар

Дээрх хэлхээний гол ялгаа нь 5V хүчдэлийн адаптерийн оронд бэхэлгээний самбар бүхий лити зай (18660) ашиглах явдал юм.

Сүүлийн гэрэл зураг дээр гар чийдэнгийн эцсийн гэрэл харагдаж байгаа бөгөөд энэ нь ямар ч микро USB эх үүсвэрээс цэнэглэгдэж байсан (> 1А).

Алхам 3: Энэхүү гар чийдэн бүхий зүйлсийн интернет үү?

Энэхүү гар чийдэн бүхий зүйлсийн интернет үү?
Энэхүү гар чийдэн бүхий зүйлсийн интернет үү?
Энэхүү гар чийдэн бүхий зүйлсийн интернет үү?
Энэхүү гар чийдэн бүхий зүйлсийн интернет үү?
Энэхүү гар чийдэн бүхий зүйлсийн интернет үү?
Энэхүү гар чийдэн бүхий зүйлсийн интернет үү?

Би энэ хэсгийг гурван үе шатанд хуваадаг

  • Захиалагч бэлтгэх (энэ нь)
  • MQTT серверийг тохируулах (дараагийн алхам)
  • мөн Нийтлэгч бэлтгэх (дараагийнх)

Эд анги:

Нэгдүгээрт, би IOT гэх нэр томъёог ашигласан боловч энэ нь 2 -р алхам дахь хэлхээг ESP8266 ашиглан сайн хослуулж, дараа нь гэрлийн эрчмийг MQTT аргаар хянах боломжтой юм.

Хэлхээний хэсгүүд нь адилхан бөгөөд дараахь зүйлийг эс тооцвол.

  1. 12V хүчдэлийг MT3608 өргөлтийн самбараар сольж, $ 1.92/5 ширхэг, энэ нь 18650 батерейны хүчдэлийг (3.7V орчим) 28 В хүртэл нэмэгдүүлж, 8LED (3 -ийн оронд) тэжээхэд хангалттай юм.
  2. Шилжүүлэгч дээрх түлхэлтгүй байрлал нь PWM дохионы ESP8266 GPIO 1 эсвэл 2-т холбогдсон байна.
  3. ESP8266 01, тус бүр нь 1.68 доллар. Энэ шиг
  4. AMS1117 3.3 V, ESP8266 хүчдэлийн зохицуулагч, зарим конденсатор
  5. USB модуль нь ESP8266, $ 0.78/ширхэгийг асаах болно

Btw. Эдгээр холбоосууд нь тав тухтай байдлыг хангахад зориулагдсан болно.

Гагнах ба байршуулах:

  • Гагнах эд ангиудыг хооронд нь холбож, дээрх схемийг ашиглана уу. Урьдчилан бэлтгэсэн 3.3 хүчдэлийн хэлхээ нь танд цаг хэмнэх болно ($ 1.38/5 ширхэг). ПХБ -ийн самбарыг эргүүлэхдээ зүүг санаж байгаад эргэлзэж, зарим AMS1117 хүчдэлийн зохицуулагчийг хангаж чадлаа.
  • Дараачийн. Гурав дахь зурган дээрх шиг жижиг өөрчлөлт хийж, GPIO 0 -ийг GND дээр дарж, EST8266 -г Flashmode руу оруулахын тулд RST зүүг GND зүүгээр хурдан дарна уу.
  • Кодыг эндээс миний GitHub дээрээс татаж аваад Arduino IDE ашиглан ESP 8266 руу кодыг байршуулна уу.

Би захиалагчийн бүртгүүлсэн сэдвийг харуулахын тулд мөрийг тодруулсан. Энэ сэдэвт оруулсан аливаа мессежийг энэ сэдвийн бусад үйлчлүүлэгчид (захиалагчид) дамжуулах болно. Энэ хэлхээнд байгаа EPS8266 нь энэ сэдвээр оруулсан JSON мессежийг сонсож, Гуравдугаар суваг дээр өөрчлөлт оруулсан тохиолдолд чөлөөлөгдөх болно

* Нэг удаа би ESP8266-г танилцуулаагүй үед MOSFET-ийн хаалгыг газардуулах эсэргүүцэгч (100k) тавьж болно гэж бодож байсан. Энэ нь ESP8266 байхгүй тохиолдолд ажилладаг боловч ESP8266 -ийн тусламжтайгаар резистор нь GPIO0 эсвэл 2 -ийг GND рүү татаж авснаар Flash горимд оруулах эсвэл ачаалахгүй байх болно (GPIO2 LOW байхад). Хэрэв ийм зүйл тохиолдвол та хатуу ногоон өнгийг харах болно.

Алхам 4: MQTT серверийг тохируулна уу

MQTT серверийг тохируулах
MQTT серверийг тохируулах
MQTT серверийг тохируулах
MQTT серверийг тохируулах
MQTT серверийг тохируулах
MQTT серверийг тохируулах
MQTT серверийг тохируулах
MQTT серверийг тохируулах

MQTT (Message Queuing Telemetry Transport) нь нийтлэх-захиалах аргад суурилсан замбараагүй протокол юм. MQTT мессежийг оруулах, оруулах төхөөрөмжийг брокер гэж нэрлэдэг. Жинхэнэ брокерын нэгэн адил хэвлэн нийтлэгчид (худалдагч) ба захиалагч (худалдан авагч) хоорондын солилцоог зохион байгуулдаг. Ямар ч мөнгө тэдний гарыг өөрчилдөггүй. Үүний тулд маш олон гарын авлага байдаг.

Дүгнэлт энд байна. Raspberry Pi бол хамгийн алдартай төхөөрөмж юм. Фрист, MQTT -ийг дараах байдлаар суулгаарай.

sudo apt-get шумуул шумуул-үйлчлүүлэгчийг суулгаарай

MQTT сервер нь бөөрөлзгөнө дээр хоёр терминал нээж ажиллаж байгаа эсэхийг шалгаарай, нэгийг нь эхний мөрийг бичээд дараагийнхыг нь бичнэ үү.

mosquitto_sub -h localhost -"таны сэдэв"

mosquitto_pub -t "чиний сэдэв" -h localost -m "ямар нэг юм хэлэх"

Эхний терминал дээр "ямар нэг юм хэлэх" гарч ирэхийг та харах ёстой. Валах! Энэ нь ажилладаг.

"#" Нь аливаа сэдвийг сонсоход ашиглагдаж болох бөгөөд "таны сэдэв" -ийг "#" -ээр сольж болно.

Одоо та хэн нэгэн таны MQTT серверийг нийтлэх эсвэл захиалахыг хүсэхгүй байна, та нууц үгээ тохируулах хэрэгтэй.

cd ~

mosquitto_passwrd -c pwfile mqtt_user

mqtt_user нь өөр хэрэглэгчийн нэр байж, нууц үгээ хоёр удаа оруулаад.conf файлыг дараах байдлаар шинэчилж болно.

sudo нано /etc/mosquitto/mosquitto.conf

эдгээр хоёр мөрийг нэмж оруулав:

Зөвшөөрөгдөх_аномгүй худал

password_file/home/pi/pwfile

дараа нь шумуулыг дахин эхлүүлнэ үү:

sudo systemctl шумуулыг дахин эхлүүлнэ үү

Нэрийг нууц үгээр оруулаад тест хийх.

mosquitto_sub -h localhost -t "таны сэдэв" -u "mqtt_user" -P "123456"

mosquitto_pub -h localhost -t "yourtopic" -u "mqtt_user" -P "123456" -m "энэ хамгаалалттай юу?"

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

шумуул -d

Эдгээр лавлагааг үзэх нь зүйтэй гэж би олж харсан. Өнөөдөр энэ хоёроос би нэг зүйл сурсан.

  1. Адафрут:
  2. Stees-internet-guide.com

Алхам 5: Нийтлэгч бэлтгэ

Нийтлэгч бэлтгэх
Нийтлэгч бэлтгэх
Нийтлэгч бэлтгэх
Нийтлэгч бэлтгэх
Нийтлэгч бэлтгэх
Нийтлэгч бэлтгэх
Нийтлэгч бэлтгэ
Нийтлэгч бэлтгэ

Үүний тулд би MQTT сервер рүү зурвас оруулах энгийн хяналтын самбар хийдэг. Зогсолт горимд LCD дэлгэц нь Цагийг харуулдаг.

Эд анги:

  1. SSD1306 Дэлгэцийн дэлгэц, тус бүр нь 2.41 доллар
  2. EPS8266 WEMOS D1 Mini, тус бүр нь 2.53 доллар
  3. Потенциометр
  4. Нэг 4 зүү слайд унтраалга.
  5. 3 мм хэмжээтэй хоёр LED,
  6. зарим эсэргүүцэл

Гагнах:

Энэ терминалын схемийг энд харуулав.

Кодыг байршуулах:

WEMOS ESP8266 брэнд нь ажиллахад таатай байна. Танд зөвхөн микро USB хэрэгтэй, Arduino IDE флэш дээрх чипийг байршуулах товчийг дарна уу. Код энд байна (GitHub):

Зурвас нийтлэхийн тулд унтраалгыг дарж ногоон гэрлийг асаагаарай (мөн улаан унтраана), дараа нь зүүгээ дээш гулсуулж тохируулаад эцэст нь товчлуурыг дарж MQTT сервер рүү илгээнэ үү. Хяналтын самбар нь 4 сувагт JSON мессеж нийтлэх боломжтой.

Кодын онцлох хэсгийг харна уу (дэлгэцийн зураг). Энэ бол хяналтын самбараас зурвас руу түлхэх сэдэв бөгөөд манай LED нь JSON мессежээс шинэ зүйлийг харахыг маш их хүсч байна

Энэ бол энэ тухай юм. Хичээл тустай гэж найдаж байна.

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