Cuprins:

Waiter Please Bot: 6 pași (cu imagini)
Waiter Please Bot: 6 pași (cu imagini)

Video: Waiter Please Bot: 6 pași (cu imagini)

Video: Waiter Please Bot: 6 pași (cu imagini)
Video: Bogdan DLP ✘ @MGK666 - Libera 🕊️ Official Video 2024, Iulie
Anonim
Image
Image

Ce se poate întâmpla dacă un serviciu într-un spațiu deschis de birou deschide un clopot de apel de chelner?

- Nu știu: D

Oamenii tind să urască alarma sau chiar întreruperile, deci ar putea fi o idee bună să o faceți puțin amuzantă (cel puțin o vreme). Asta mi-am propus să realizez. Alertați rapid inginerii despre incidentele critice într-un mod acceptabil.

Este primul meu proiect Arduino realizat din scut Ethernet, control infraroșu, SG90 9g Micro Servo și materiale reciclate.

Acțiunea de palme declanșată prin WebHook sau telecomandă. Telecomanda este de asemenea utilizată pentru a fi fină până la unghiul brațului.

Pasul 1: Cum funcționează?

Cum functioneaza?
Cum functioneaza?

Ascultă pe receptorul infraroșu și preia o adresă HTTP pentru un anumit cuvânt cheie. Controlerul cu infraroșu poate fi utilizat pentru reglarea fină a unghiului brațului și poate fi utilizat și pentru declanșator. Răspunsul HTTP poate fi utilizat numai pentru declanșarea soneriei. (În cazul actual am creat o mică aplicație web care captează webhook-ul de la Slack și gestionează un flag. - Nu este inclus în acest instructable)

Practic, am folosit controlerul cu infraroșu numai în scop de depanare. Prima oară am făcut o greșeală lăsând controlerul să rămână lângă mașină slap, dar oamenii au fost destul de curioși să declanșeze palmă de multe ori, așa că am găsit dispozitivul deconectat:)

În viața reală, verifică periodic o adresă web codificată, care are un răspuns similar, cum ar fi:

Dacă cuvântul cheie anyslap urmat de un număr întreg, face tot atâtea mișcări ale brațului.

Pasul 2: Componenta necesară

Componenta obligatorie
Componenta obligatorie
Componenta obligatorie
Componenta obligatorie
Componenta obligatorie
Componenta obligatorie

Componente electronice:

  • Arduino Uno R3
  • UNO Shield Ethernet Shield W5100 R3
  • Set de module de telecomandă fără fir cu infraroșu IR
  • Servo (SG90)
  • Circuit imprimat universal 4x6cm
  • 5 x LED
  • Rezistor 5 x 220 Ohm
  • Sârmă de silicon 30AWG

Materiale reciclabile:

  • Șampon flacon
  • Cutii de carton
  • Mână de jucărie (vine cu un croissant cumpără două primește o mână gratis:)

Pasul 3: Combinați tutorialele Arduino

În cea mai mare parte tocmai am urmat exemplele încorporate Arduino, exemplele bibliotecii și am combinat cu un singur proiect.

Lecții recomandate

  • Clipește fără întârziere - Se utilizează pentru indicatoare LED; funcția millis () pentru a verifica HTTP periodic și a opri servo dacă nu este utilizat.
  • Funcții de ieșire serial ASCIITable - Folosit pentru depanare.
  • Structuri de control, cum ar fi: Iterarea buclelor, Comutarea cazului, declarația If, În timp ce bucla
  • Client Web Ethernet cu închiriere DHCP - Folosit pentru primirea declanșatoarelor de la punctul final
  • Servo Lesson - folosit pentru mișcarea brațului (rotație).
  • Receptor cu infraroșu - utilizat pentru control suplimentar și pentru a regla fin unghiul brațului.

Pasul 4: Căutați un cuvânt cheie în răspunsul HTTP și alte probleme EthernetClient

Adunarea Waiter Please Bot a fost destul de simplă, cu excepția lucrurilor Ethernet.

Dificultăți

  1. Orice apel EthernetClient, în special DHCP Lease, este un singur proces. Funcționează ca o întârziere cu rand ceea ce întrerupe programul.
  2. Uitați de JSON în API și WebHook Arduino Strings oricum sunt rele.

1. - Proces unic

Renunț pentru a face ca programul să facă mai multe procese. Am găsit câteva soluții posibile, dar nicio dintre ele a fost simplă. Am vrut să păstrez codul cât mai mic și mai ușor de citit.

2. - Analizați răspunsul

Stabilitatea și capacitatea de a lucra fără întreținere sunt cerințe cheie. Așa că evit să folosesc orice obiect String din cauza unei posibile scurgeri de memorie.

EthernetClient se bazează pe clasa de bază Stream și funcția de căutare face posibilă căutarea cuvintelor cheie. Este un pic complicat și ocupă multe linii de cod, dar funcționează.

Pasul 5: schiță și sursă

Schiță și sursă
Schiță și sursă

Depozit:

Pasul 6: Construiți hardware-ul

Construiți hardware-ul
Construiți hardware-ul
Construiți hardware-ul
Construiți hardware-ul
Construiți hardware-ul
Construiți hardware-ul

Mana

  1. Există patru colțuri de protecție în cutia livrată de Macbook. L-am folosit ca stand.
  2. Decupați o formă mică potrivită pentru servo.
  3. Lipiți împreună suportul și servo-ul cu pistol de lipit la cald.
  4. Am luat o țeavă dintr-un flacon de șampon uzat și am înșurubat-o pe servo.
  5. Trageți mâna de jucărie pe țeavă.

Controlorul

  1. A făcut un prototip pe panou.
  2. Copiați prototipul plăcii de testare pe placa de circuit imprimat universal.
  3. Am folosit anteturi de rupere pentru toate conexiunile circuitului de sârmă.
  4. Decupați cutia de hârtie.
  5. Lipiți împreună fața cutiei și placa de circuite imprimate.
  6. Puneți placa Arduino, scutul Ethernet și niște burete la cutie.

Terminat.

Recomandat: