Mundarija:

Ofitsiant iltimos bot: 6 qadam (rasmlar bilan)
Ofitsiant iltimos bot: 6 qadam (rasmlar bilan)

Video: Ofitsiant iltimos bot: 6 qadam (rasmlar bilan)

Video: Ofitsiant iltimos bot: 6 qadam (rasmlar bilan)
Video: O'zbek qizidan bunaqasini hech kim kutmagan edi 2024, Iyul
Anonim
Image
Image

Ofitsiant qo'ng'iroq qo'ng'irog'ining servo tomonidan ochiq ofis maydoniga urilishi bilan nima xato bo'lishi mumkin?

- Bilmayman: D.

Odamlar signaldan yoki hatto uzilishlardan nafratlanishadi, shuning uchun uni biroz kulgili qilish yaxshidir (hech bo'lmaganda bir muddat). Men bunga erishishni maqsad qilganman. Muhandislarni tanqidiy hodisalar to'g'risida tezda xabardor qiling.

Bu Ethernet qalqoni, infraqizil boshqaruv, SG90 9g Micro Servo va qayta ishlangan materiallardan yasalgan birinchi Arduino loyiham.

WebHook yoki masofadan boshqarish pulti orqali urish harakati. Masofadan boshqarish pulti qo'l burchagiga qadar nozik holatlarda ham ishlatiladi.

1 -qadam: Bu qanday ishlaydi?

U qanday ishlaydi?
U qanday ishlaydi?

U infraqizil qabul qiluvchini tinglaydi va ma'lum kalit so'z uchun HTTP manzilini oladi. Infraqizil boshqaruv moslamasi qo'l burchagini aniq sozlash uchun ishlatilishi mumkin va tetik uchun ham ishlatilishi mumkin. HTTP javobi faqat qo'ng'iroqni ishga tushirish uchun ishlatilishi mumkin. (Hozirgi holatda men Slack -dan webhookni ushlab turadigan va bayroqni boshqaradigan kichik veb -ilovani yaratdim. - Bu ko'rsatmaga kirmagan)

Asosan men infraqizil tekshirgichni faqat disk raskadrovka maqsadida ishlatardim. Men birinchi marta xato qildim, men nazoratchiga urish mashinasining yonida turishga ruxsat berdim, lekin odamlar ko'p marta urishni boshlashga qiziqishdi, shuning uchun men qurilmani uzib qo'ydim:)

Haqiqiy hayotda u vaqti-vaqti bilan shunga o'xshash javobga ega bo'lgan qattiq kodlangan veb-manzilni tekshiradi:

Agar anyslap kalit so'zidan keyin butun son bo'lsa, u shunchalik ko'p qo'l harakatini qiladi.

2 -qadam: Komponent talab qilinadi

Komponent talab qilinadi
Komponent talab qilinadi
Komponent talab qilinadi
Komponent talab qilinadi
Komponent talab qilinadi
Komponent talab qilinadi

Elektron komponentlar:

  • Arduino Uno R3
  • UNO Shield Ethernet Shield W5100 R3
  • Infraqizil IR simsiz masofadan boshqarish moduli to'plami
  • Servo (SG90)
  • Universal bosilgan elektron platalar 4x6 sm
  • 5 x LED
  • 5 x 220 Ohm qarshilik
  • 30AWG silikon simlari

Qayta ishlangan materiallar:

  • Shampun flakoni
  • Karton qutilar
  • O'yinchoq qo'li (ikkita kruvasan sotib oling, bir qo'lingizni tekinga oling:)

3 -qadam: Arduino darsliklarini birlashtiring

Men asosan Arduino o'rnatilgan misollar, kutubxona misollarini kuzatdim va bitta loyihaga birlashdim.

Tavsiya etilgan darslar

  • Kechiktirmasdan miltillash - LED ko'rsatkichlari uchun ishlatiladi; millis () funktsiyasi vaqti -vaqti bilan HTTP -ni tekshirish va ishlatilmasa servo rejimini o'chirish.
  • ASCIITable ketma -ket chiqish funktsiyalari - disk raskadrovka uchun ishlatiladi.
  • Boshqaruv tuzilmalari, masalan: tsiklni takrorlash, almashtirish holati, agar bayonot, halqa paytida
  • DHCP ijarasi bilan chekilgan Internet -mijoz - HTTP so'nggi nuqtasidan tetiklarni qabul qilish uchun ishlatiladi.
  • Servo darsi - qo'l harakati (aylanish) uchun ishlatiladi.
  • Infraqizil qabul qilgich - qo'lning burchagini qo'shimcha sozlash va sozlash uchun ishlatiladi.

4 -qadam: HTTP javobida va boshqa EthernetClient muammolarida kalit so'zni qidiring

Ofitsiant Iltimos Bot yig'ilishi, Ethernetdan tashqari, deyarli oldinga siljidi.

Qiyinchiliklar

  1. Har qanday EthernetClient qo'ng'irog'i, ayniqsa DHCP ijarasi - bu bitta jarayon. Bu dasturni to'xtatadigan rand bilan kechikish kabi ishlaydi.
  2. API -da JSON haqida unuting va WebHook Arduino Strings baribir yomon.

1. - Yagona jarayon

Men dastur ko'p jarayonlarni bajarishi uchun voz kechaman. Men Google -ga bir nechta echim topaman, lekin ulardan hech biri oddiy emas edi. Men kodni iloji boricha kichikroq va o'qishni osonlashtirmoqchi edim.

2. - HTTP javobini tahlil qilish.

Barqarorlik va texnik xizmat ko'rsatmasdan ishlash - bu asosiy talab. Shunday qilib, xotira oqishi mumkin bo'lganligi sababli, String ob'ektini ishlatishdan qochaman.

EthernetClient Stream asosiy sinfiga tayanadi va uning qidirish funktsiyasi kalit so'zni qidirishga imkon beradi. Bu biroz murakkab va ko'plab kod satrlarini egallaydi, lekin u ishlaydi.

5 -qadam: Sketch va manba

Eskiz va manba
Eskiz va manba

Ma'lumotlar ombori:

6 -qadam: Uskuna tuzing

Uskunani yarating
Uskunani yarating
Uskunani yarating
Uskunani yarating
Uskunani yarating
Uskunani yarating

Qo'l

  1. Macbook qutisida to'rtta burchak qo'riqchisi bor. Men uni stend sifatida ishlatardim.
  2. Servo uchun mos keladigan kichik shaklni kesib oling.
  3. Stend va servoni issiq eritilgan yopishtiruvchi qurol bilan yopishtiring.
  4. Ishlatilgan shampun flakonidan quvur oldi va servoga mahkamlandi.
  5. O'yinchoq qo'lini trubaga torting.

Nazoratchi

  1. Non taxtasida prototip tayyorlandi.
  2. Non paneli prototipini universal bosilgan elektron kartaga nusxalash.
  3. Men barcha simli kontaktlarning zanglashiga olib keladigan sarlavhalarni ishlatardim.
  4. Qog'oz qutisini kesib oling.
  5. Qutining old qismini va bosilgan elektron kartani yopishtiring.
  6. Arduino kartasini, chekilgan qalqoni va shimgichni qutiga soling.

Bajarildi.

Tavsiya: