Taula de continguts:

Waiter Please Bot: 6 passos (amb imatges)
Waiter Please Bot: 6 passos (amb imatges)

Vídeo: Waiter Please Bot: 6 passos (amb imatges)

Vídeo: Waiter Please Bot: 6 passos (amb imatges)
Vídeo: Аномально вкусно‼️ ЧЕХОСЛОВАЦКИЙ СУП ИЗ ФАРША. Жена Липована в шоке. 2024, De novembre
Anonim
Image
Image

Què pot sortir malament amb un toc de campana trucant per un servo en una oficina oberta?

- No ho sé: D

La gent tendeix a odiar l'alarma o fins i tot les interrupcions, de manera que pot ser una bona idea fer-la una mica divertida (almenys durant un temps). Això és el que pretenia aconseguir. Alerteu ràpidament els enginyers sobre incidents crítics d’una manera acceptable.

És el meu primer projecte Arduino fabricat amb blindatge Ethernet, control infrarojos, SG90 9g Micro Servo i materials reciclats.

L'acció de bufetada es va activar mitjançant WebHook o control remot. El comandament a distància també es fa servir fins a l'angle del braç.

Pas 1: Com funciona?

Com funciona?
Com funciona?

Escolta al receptor d'infrarojos i obté una adreça HTTP per a una paraula clau determinada. El controlador d'infrarojos es pot utilitzar per afinar l'angle del braç i també es pot utilitzar per al disparador. La resposta HTTP només es pot utilitzar per activar la campana. (En el cas actual, he creat una petita aplicació web que captura el webhook de Slack i gestiona un indicador. - No s'inclou en aquest instructiu)

Bàsicament, utilitzava el controlador d'infrarojos només per a depurar. La primera vegada que vaig cometre un error en deixar que el controlador es quedés al costat de la màquina bufetadora, però la gent tenia la curiositat de provocar bufetades moltes vegades, de manera que trobo el dispositiu desconnectat:)

A la vida real, només comprova periòdicament una adreça web codificada, com té una resposta similar com:

Si la paraula clau anyslap seguida d'un enter, fa tants moviments de braços.

Pas 2: component necessari

Component obligatori
Component obligatori
Component obligatori
Component obligatori
Component obligatori
Component obligatori

Components electrònics:

  • Arduino Uno R3
  • UNO Shield Ethernet Shield W5100 R3
  • Kit de mòduls de control remot sense fils per infrarojos
  • Servo (SG90)
  • Circuit imprès universal 4x6cm
  • 5 x LED
  • Resistència de 5 x 220 Ohm
  • Fil de silicona 30AWG

Materials reciclats:

  • Flascó de xampú
  • Caixes de cartró
  • Mà de joguina (vine amb un croissant de compra de dos i aconsegueix una mà gratis:)

Pas 3: combineu els tutorials d'Arduino

Sobretot, acabo de seguir els exemples integrats d’Arduino, els exemples de biblioteques i els he combinat en un sol projecte.

Lliçons recomanades

  • Parpelleig sense retard: s’utilitza per als indicadors LED; funció millis () per comprovar HTTP periòdicament i apagar el servo si no s’utilitza.
  • Funcions de sortida sèrie ASCIITable: s’utilitzen per a la depuració.
  • Estructures de control, com ara: iteració de bucle, cas de commutació, sentència If, mentre bucle
  • Client web Ethernet amb arrendament DHCP: s’utilitza per rebre activadors des del punt final
  • Servo Lesson: s'utilitza per al moviment del braç (rotació).
  • Receptor d'infrarojos: s'utilitza per a un control addicional i afinar l'angle del braç.

Pas 4: cerqueu una paraula clau a Resposta HTTP i altres problemes d'EthernetClient

El muntatge del Waiter Please Bot va ser pràcticament senzill, excepte les coses d'Ethernet.

Dificultats

  1. Qualsevol trucada EthernetClient, especialment DHCP Lease, és un procés únic. Funciona com un retard amb el que atura el programa.
  2. Oblideu-vos de JSON a l'API i les cadenes Arduino de WebHook són malvades de totes maneres.

1. - Procés únic

Renuncio a fer que el programa faci diversos processos. Busco poques solucions possibles, però cap d’elles era senzilla. Volia mantenir el codi el més petit i fàcil de llegir possible.

2. - Analitza la resposta

L’estabilitat i la capacitat de treballar sense manteniment són requisits clau. Per tant, evito fer servir qualsevol objecte de cadena a causa de possibles fuites de memòria.

EthernetClient depèn de la classe base Stream i la seva funció de cerca permet cercar paraules clau. És una mica complicat i ocupa moltes línies de codi, però funciona.

Pas 5: esbós i font

Esbós i font
Esbós i font

Dipòsit:

Pas 6: Creeu el maquinari

Construeix el maquinari
Construeix el maquinari
Construeix el maquinari
Construeix el maquinari
Construeix el maquinari
Construeix el maquinari

El braç

  1. Hi ha quatre protectors de cantonada dins de la caixa de Macbook que s’envia. L’he utilitzat com a suport.
  2. Retalla una forma petita per al servo.
  3. Enganxeu el suport i el servo amb una pistola de cola en calent.
  4. Hem agafat una canonada d’un flascó de xampú usat i l’hem cargolat al servo.
  5. Estireu la mà de la joguina per la canonada.

El controlador

  1. Va fer un prototip sobre taulers de suport.
  2. Copieu el prototip de la taula de proves a la placa de circuits impresos universal.
  3. He utilitzat capçaleres de separació per a totes les connexions de circuits de cable.
  4. Retalla la caixa de paper.
  5. Enganxeu la part frontal de la caixa i la placa de circuits impresos.
  6. Poseu la placa Arduino, el blindatge Ethernet i una mica d’esponja a la caixa.

Fet.

Recomanat: