Sisällysluettelo:

Tarjoilija Please Bot: 6 vaihetta (kuvilla)
Tarjoilija Please Bot: 6 vaihetta (kuvilla)

Video: Tarjoilija Please Bot: 6 vaihetta (kuvilla)

Video: Tarjoilija Please Bot: 6 vaihetta (kuvilla)
Video: Я есть. Ты есть. Он есть_Рассказ_Слушать 2024, Heinäkuu
Anonim
Image
Image

Mikä voi mennä vikaan, kun tarjoilijan soittokello lävistää servon avoimessa toimistotilassa?

- En tiedä: D

Ihmisillä on tapana vihata hälytyksiä tai jopa keskeytyksiä, joten on hyvä tehdä siitä hieman hauska (ainakin jonkin aikaa). Tähän pyrin. Varoita insinöörejä nopeasti kriittisistä tapahtumista hyväksyttävällä tavalla.

Se on ensimmäinen Arduino -projektini, joka on valmistettu Ethernet -suojauksesta, infrapunasäätimestä, SG90 9g Micro Servosta ja kierrätysmateriaaleista.

Läppäystoiminto käynnistettiin WebHookin tai kaukosäätimen kautta. Kaukosäädintä käytettiin myös varren kulmaan.

Vaihe 1: Kuinka se toimii?

Kuinka se toimii?
Kuinka se toimii?

Se kuuntelee infrapunavastaanottimella ja hakee tietylle avainsanalle HTTP -osoitteen. Infrapunaohjainta voidaan käyttää varren kulman hienosäätöön ja sitä voidaan käyttää myös laukaisuun. HTTP -vastausta voidaan käyttää vain kellon laukaisemiseen. (Tässä tapauksessa tein pienen verkkosovelluksen, jolla pyydetään webhook Slackista ja hallitaan lippua. - Ei sisälly tähän ohjeeseen)

Käytän pohjimmiltaan infrapunaohjainta vain virheenkorjausta varten. Tein ensimmäisen kerran virheen antamalla ohjaimen pysyä lyövän koneen vieressä, mutta ihmiset olivat tarpeeksi uteliaita laukaisemaan monta kertaa, joten huomaan laitteen irrotettuna:)

Tosielämässä se vain tarkistaa säännöllisesti kovakoodattua verkko-osoitetta, jolla on samanlainen vastaus:

Jos anyslap -avainsanaa seuraa kokonaisluku, se tekee yhtä monta käden liikettä.

Vaihe 2: Komponentti vaaditaan

Komponentti vaaditaan
Komponentti vaaditaan
Komponentti vaaditaan
Komponentti vaaditaan
Komponentti vaaditaan
Komponentti vaaditaan

Elektroniset komponentit:

  • Arduino Uno R3
  • UNO Shield Ethernet Shield W5100 R3
  • Langaton infrapuna-infrapuna-kaukosäädinmoduulisarja
  • Servo (SG90)
  • Yleispiirilevy 4x6 cm
  • 5 x LED
  • 5 x 220 ohmin vastus
  • 30AWG silikonilanka

Kierrätetyt materiaalit:

  • Shampoo flacon
  • Pahvilaatikot
  • Lelukäsi (osta kaksi croissantia, saat yhden käden ilmaiseksi:)

Vaihe 3: Yhdistä Arduino -opetusohjelmat

Useimmiten seurasin vain Arduinon sisäänrakennettuja esimerkkejä, kirjastoesimerkkejä ja yhdistyin yhteen projektiin.

Suositellut oppitunnit

  • Vilkkuu ilman viivettä - Käytetään LED -merkkivaloissa; millis () -toiminto tarkistaa HTTP: n määräajoin ja sammuttaa servon, jos sitä ei käytetä.
  • ASCIITable sarjalähtötoiminnot - Käytetään virheenkorjauksessa.
  • Ohjausrakenteet, kuten: silmukan iterointi, kytkinkotelo, jos lausunto, kun silmukka
  • Ethernet -verkkoasiakas DHCP -vuokrasopimuksella - käytetään liipaisimien vastaanottamiseen HTTP -päätepisteestä.
  • Servo -oppitunti - käytetään käsivarsien liikkeisiin (kierto).
  • Infrapunavastaanotin - käytetään lisäohjaukseen ja käsivarren kulman hienosäätöön.

Vaihe 4: Etsi avainsana HTTP -vastauksesta ja muista Ethernet -asiakasongelmista

Tarjoilija Please Botin kokoonpano oli melko suoraviivainen lukuun ottamatta Ethernet -asioita.

Vaikeudet

  1. Kaikki EthernetClient -puhelut, etenkin DHCP -vuokrasopimus, ovat yksiprosessisia. Se toimii kuin viive randilla, mikä keskeyttää ohjelman.
  2. Unohda JSON API: ssa ja WebHookissa Arduino Jouset ovat joka tapauksessa pahoja.

1. - Yksittäinen prosessi

Luovutan saadakseni ohjelman tekemään useita prosesseja. Googletin muutaman mahdollisen ratkaisun, mutta kaikki eivät olleet yksinkertaisia. Halusin pitää koodin mahdollisimman pienenä ja helposti luettavana.

2. - jäsennä HTTP -vastaus.

Vakaus ja kyky toimia ilman huoltoa ovat keskeisiä vaatimuksia. Joten vältän String -objektin käyttöä mahdollisen muistivuoton vuoksi.

EthernetClient luottaa Stream -perusluokkaan ja sen hakutoiminto mahdollistaa avainsanan haun. Se on hieman monimutkainen ja vie paljon koodirivejä, mutta se toimii.

Vaihe 5: Luonnos ja lähde

Luonnos ja lähde
Luonnos ja lähde

Arkisto:

Vaihe 6: Rakenna laitteisto

Rakenna laitteisto
Rakenna laitteisto
Rakenna laitteisto
Rakenna laitteisto
Rakenna laitteisto
Rakenna laitteisto

Käsi

  1. MacBookin mukana toimitetussa laatikossa on neljä kulmasuojaa. Käytin sitä telineenä.
  2. Leikkaa pieni muoto, joka sopii servolle.
  3. Liimaa teline ja servo yhteen kuumasulateliimalla.
  4. Otti putken käytetystä shampoopulloista ja ruuvattiin servoon.
  5. Vedä lelun käsi putkesta.

Ohjain

  1. Tehtiin prototyyppi leipälevylle.
  2. Kopioi leipälevyn prototyyppi yleiselle piirilevylle.
  3. Käytin katkaisupäätteitä kaikkiin johdinpiiriliitäntöihin.
  4. Leikkaa paperilaatikko pois.
  5. Liimaa laatikon etuosa ja piirilevy yhteen.
  6. Laita laatikkoon Arduino -kortti, Ethernet -suoja ja sieni.

Tehty.

Suositeltava: