Inhoudsopgave:

Ober Please Bot: 6 stappen (met afbeeldingen)
Ober Please Bot: 6 stappen (met afbeeldingen)

Video: Ober Please Bot: 6 stappen (met afbeeldingen)

Video: Ober Please Bot: 6 stappen (met afbeeldingen)
Video: ELBERT HELPT BIJ EEN BEVALLING - TOPDOKS EXTRA 2024, November
Anonim
Image
Image

Wat kan er mis gaan met een kelner die de bel slaat door een servo in een open kantoorruimte?

- Ik weet het niet:D

Mensen hebben de neiging om alarm of zelfs onderbrekingen te haten, dus misschien is het een goed idee om het een beetje grappig te maken (althans voor een tijdje). Dat is wat ik wilde bereiken. Breng engineers snel op een acceptabele manier op de hoogte van kritieke incidenten.

Het is mijn eerste Arduino-project gemaakt van Ethernet-schild, infraroodbesturing, SG90 9g Micro Servo en gerecyclede materialen.

De klapactie geactiveerd via WebHook of afstandsbediening. De afstandsbediening ook gebruikt voor fijn om de hoek van de arm.

Stap 1: Hoe werkt het?

Hoe het werkt?
Hoe het werkt?

Het luistert op een infraroodontvanger en haalt een HTTP-adres op voor een bepaald trefwoord. Infraroodcontroller kan worden gebruikt voor fijnafstemming van de armhoek en kan ook worden gebruikt voor trigger. Het HTTP-antwoord kan alleen worden gebruikt om de bel te activeren. (In het huidige geval heb ik een kleine webtoepassing gemaakt die webhook van Slack vangt en een vlag beheert. - Niet opgenomen in deze instructable)

In principe heb ik de infraroodcontroller alleen gebruikt voor foutopsporing. De eerste keer dat ik een fout maakte door de controller naast de slap-machine te laten blijven, maar mensen waren nieuwsgierig genoeg om de slap vaak te activeren, dus ik vind het apparaat losgekoppeld:)

In het echte leven controleert het gewoon periodiek een hardgecodeerd webadres met een vergelijkbare reactie zoals:

Als het trefwoord anyslap gevolgd wordt door een geheel getal dan maakt het evenveel armbewegingen.

Stap 2: Component vereist

Onderdeel vereist
Onderdeel vereist
Onderdeel vereist
Onderdeel vereist
Onderdeel vereist
Onderdeel vereist

Elektronische componenten:

  • Arduino Uno R3
  • UNO-schild Ethernet-schild W5100 R3
  • Infrarood IR draadloze afstandsbedieningsmodulekit
  • Servo (SG90)
  • Universele printplaat 4x6cm
  • 5 x LED
  • 5 x 220 Ohm Weerstand
  • 30AWG siliconen draad

Gerecyclede materialen:

  • Shampooflacon
  • Kartonnen dozen
  • Speelgoedhand (kom met een croissant voor twee kopen, krijg één hand gratis:)

Stap 3: Combineer de Arduino-tutorials

Meestal volgde ik gewoon Arduino ingebouwde voorbeelden, bibliotheekvoorbeelden en gecombineerd tot één project.

Aanbevolen lessen

  • Knipperen zonder vertraging - Gebruikt voor LED-indicatoren; millis() functie om HTTP periodiek te controleren en servo uit te schakelen als deze niet wordt gebruikt.
  • ASCIITable seriële outputfuncties - Gebruikt voor debuggen.
  • Besturingsstructuren, zoals: Loop Iteratie, Switch Case, If Statement, While Loop
  • Ethernet-webclient met DHCP-lease - Gebruikt voor het ontvangen van triggers van
  • Servoles - gebruikt voor de armbeweging (rotatie).
  • Infraroodontvanger - gebruikt voor extra controle en fijnafstemming van de hoek van de arm.

Stap 4: Zoek naar een trefwoord in HTTP Response en andere EthernetClient-problemen

De montage van de Waiter Please Bot was vrij eenvoudig, behalve de Ethernet-dingen.

Moeilijkheden

  1. Elke EthernetClient-aanroep, met name DHCP Lease, is één proces. Het werkt als een vertraging met rand wat het programma pauzeert.
  2. Vergeet JSON in API en WebHook Arduino Strings zijn sowieso slecht.

1. - Eén proces

Ik geef het op om het programma meerdere processen te laten doen. Ik google enkele mogelijke oplossingen, maar geen van hen was eenvoudig. Ik wilde de code zo klein en gemakkelijk leesbaar mogelijk houden.

2. - HTTP-antwoord ontleden.

De stabiliteit en onderhoudsvrij kunnen werken zijn belangrijke vereisten. Dus ik vermijd het gebruik van een String-object vanwege mogelijk geheugenlekken.

EthernetClient is afhankelijk van de Stream-basisklasse en de zoekfunctie maakt het mogelijk om op trefwoord te zoeken. Het is een beetje ingewikkeld en neemt veel regels code in beslag, maar het werkt.

Stap 5: Schets en bron

Schets en bron
Schets en bron

Opslagplaats:

Stap 6: Bouw de hardware

Bouw de hardware
Bouw de hardware
Bouw de hardware
Bouw de hardware
Bouw de hardware
Bouw de hardware

De arm

  1. Er zijn vier hoekbeschermers in de verzonden doos van Macbook. Ik heb hem als standaard gebruikt.
  2. Knip een kleine vorm uit die geschikt is voor de servo.
  3. Lijm de standaard en de servo aan elkaar met een smeltlijmpistool.
  4. Een pijp uit een gebruikte shampooflacon gepakt en op de servo geschroefd.
  5. Trek de speelgoedhand aan de pijp.

De controller

  1. Prototype gemaakt op breadboard.
  2. Kopieer het prototype van het breadboard naar de universele printplaat.
  3. Ik heb break-away headers gebruikt voor alle draadcircuitverbindingen.
  4. Knip de papieren doos uit.
  5. Lijm de voorkant van de doos en de printplaat aan elkaar.
  6. Leg het Arduino-bord, het Ethernet-schild en wat spons in de doos.

Gedaan.

Aanbevolen: