Inhoudsopgave:

Totoro Project - IoT & MQTT & ESP01 - Ajarnpa
Totoro Project - IoT & MQTT & ESP01 - Ajarnpa

Video: Totoro Project - IoT & MQTT & ESP01 - Ajarnpa

Video: Totoro Project - IoT & MQTT & ESP01 - Ajarnpa
Video: Totoro project - IoT - 2024, November
Anonim
Totoro Project - IoT & MQTT & ESP01
Totoro Project - IoT & MQTT & ESP01
Totoro-project - IoT & MQTT & ESP01
Totoro-project - IoT & MQTT & ESP01

Het Totoro-project is een leuk IoT-project dat je in veel andere vormen kunt kopiëren.

Met behulp van het ESP01-bord, met het MQTT-protocol, kunt u de status van de knop doorgeven aan de MQTT-makelaar (in mijn geval AdafruitIO).

Een handige gids voor MQTT en Adafruit:

U kunt elke gewenste MQTT-makelaar gebruiken en hetzelfde voor de knopfunctie.

Hoe het werkt?

Elk apparaat in het netwerk is verbonden met de MQTT Broker en leest het kanaal genaamd "love_box".

Wanneer je op het ene apparaat op de knop drukt, stuurt het een bericht op het kanaal en de andere apparaten knipperen de led. Totdat u niet op de knop drukt, knippert het apparaat.

Met dit systeem kun je een beetje "blare" naar een ander apparaat sturen.

Stap 1: De materialen

De materialen
De materialen
De materialen
De materialen
De materialen
De materialen

Voor het maken van dit project heb je een aantal dingen nodig:

  1. ESP01 bord

    Nuttig - De programmeur voor ESP01 (DIY)

  2. 3d model

    1. Totoro - https://goo.gl/n3mAsi -
    2. Meshmixer - https://goo.gl/qqMzh - voor het modelleren van 3D-modellen
  3. Elektronische componenten

    1. LM317 spanningsregelaar
    2. Weerstanden: 150ohm, 270ohm, 10K en 68ohm.
    3. condensatoren: 10uF
    4. Led - of interne led -
    5. Mini-drukknopschakelaar:
  4. Soldeer
  5. Protobord
  6. Vrouwelijke kopteksten
  7. Transparant 3D-filament
  8. Stroomvoorziening

    BNC-connector - https://goo.gl/DrD8k2 -

  9. Sommige draden

Stap 2: Maak het Protoboard

Maak het Protoboard
Maak het Protoboard
Maak het Protoboard
Maak het Protoboard
Maak het Protoboard
Maak het Protoboard
Maak het Protoboard
Maak het Protoboard

De kracht voor het bord:

Neem het protoboard en soldeer de componenten volgens de eerste foto.

Met deze configuratie kon de LM317 - https://goo.gl/VtzNz - ongeveer 3,4 volt produceren voor de ESP01.

Vraag: waarom kan ik de LM7805 niet gebruiken?

Antwoord: de LM780x-serie werkt niet onder 5 volt en kan geen 3,3 volt produceren.

Als u klaar bent, controleert u de uitgangsspanning met de multimeter. Het moet ongeveer 3,4 volt en 4,3 volt zijn.

Voor voeding kunt u een 5V-voeding of groter gebruiken. Ik raad je aan om niet groter dan 9 volt te gebruiken, het straalt te veel warmte uit - verloren vermogen -!

Het bord:

De ESP01 is een bord van de serie ESP, het is klein en praktisch, maar niet erg gebruiksvriendelijk.

Onthoud dat je de Arduino-pinnen niet kunt gebruiken om rechtstreeks met de ESP01 te communiceren, omdat het een 3,3 volt-pintolerantie is.

Het is een zeer handige programmer gemaakt voor het programmeren van de ESP01 met een FTDI:

Gebruik de tweede afbeelding als richtlijn en onthoud speciale pinfuncties, derde afbeelding, te zien in de bovenstaande gids.

Lees voor meer info de 1° stappen van deze gids:

Als je Italiaans bent, kun je mijn gids voor de ESP01 en FTDI DIY lezen:

Voltooi het Protoboard:

De vierde afbeelding is de voltooiing van het project op het protoboard.

Ik raad de Female Headers ten zeerste aan om het bord met het protoboard te verbinden. Voor het geval er iets misgaat, kunt u een ander bord opnieuw aansluiten.

Sluit de knop en haar weerstand niet aan, we zullen het daarna doen.

Stap 3: MQTT-makelaar - Adafruit IO

MQTT-makelaar - Adafruit IO
MQTT-makelaar - Adafruit IO
MQTT-makelaar - Adafruit IO
MQTT-makelaar - Adafruit IO

De MQTT Broker is een "server" voor al uw berichten, van en naar de apparaten. Kijk eens naar de eerste afbeelding.

Gebruik deze handige gids voor meer informatie:

In mijn geval gebruik ik de Adafruit IO, maar je kunt elke MQTT-makelaar gebruiken die je wilt.

Ga naar de Adafruit IO en doe de registratie.

Nu moet u een nieuw dashboard maken en:

  • Feed toevoegen - https://goo.gl/z2Npto -

    Want mijn code is "love_box"

  • Blokken toevoegen - https://goo.gl/YJsCqX -

    • Momentary Button: link naar "love_box" met Press Value = 1 en Release Value = 0
    • Lijngrafiek: link naar "love_box" met met Y-Axis Minimum = 0 en Y-Axis Max = 2

Aan het einde heb je zoiets als de tweede afbeelding.

Vraag: waarom is de naam "love_box" in het dashboard zo belangrijk?

Antwoord: in de MQTT Broker - Ada IO - heb je het kanaal met de naam "love_box" gemaakt en als je in de code een ander kanaal hebt gebruikt, zal de MQTT niet werken.

De laatste stap op de MQTT Broker - Ada IO - is de "AIO KEY". Klik op het dashboard rechtsboven op het kleine sleuteltje.

Kopieer nu de "Gebruikersnaam" en "Actieve sleutel" en schrijf ze op de Arduino-code.

Stap 4: Arduino-code

Arduino-code
Arduino-code
Arduino-code
Arduino-code

Installeer ESP Core voor Arduino IDE:

De hoofdgids is deze: https://goo.gl/yAqlU4 en volg de "Installeren met Boards Manager".

Bekijk nu de eerste afbeelding. De zwarte versie van ESP01 heeft een flash-schijfgrootte van 1 MB en de blauwe versie heeft 512k. Wat betekent? Kijk naar de tweede afbeelding, je moet de juiste "Flash-grootte" selecteren.

De Arduino-code bevindt zich in deze repository: Code is duidelijk leesbaar.

Vergeet niet te bewerken:

  • AIO_USERNAME
  • AIO_KEY
  • Wifi_nummer

Als je hebt besloten om het kanaal "Adafruit_MQTT_Publish" en "Adafruit_MQTT_Subscribe" te bewerken, moet je dezelfde regels en de aangeroepen code bewerken.

Stap 5: Meshmixer en 3D-print

Meshmixer en 3D Print
Meshmixer en 3D Print
Meshmixer en 3D Print
Meshmixer en 3D Print
Meshmixer en 3D Print
Meshmixer en 3D Print
Meshmixer en 3D Print
Meshmixer en 3D Print

3d model

Voor mijn project heb ik een 3D-model van Totoro nodig.

Ik vond het op thingiverse, op deze link:

Je zou elk 3D-model kunnen gebruiken dat je wilt, de volgende stappen zijn hetzelfde.

Schelp

Het is tijd om Meshmixer te installeren. Met deze krachtige tool kun je de shell voor je project doen.

Importeer in Meshmixer de Totoro STL, en gebruik de Hollow tool:

Vergeet in dezelfde tool niet om een Escape Holes op de achterkant te maken.

Nu moet je het model doormidden snijden met behulp van de Plane Cut-tool:

Gebruik de exportknop om het onderste deel te exporteren.

Uiteindelijk moet je het oor afsnijden. Selecteer het oor en gebruik het gereedschap Scheiden - vijf afbeelding -.

Gebruik de exportknop om het oor te exporteren.

Keer terug naar half topmodel en gebruik de tool Erase & Fill: https://goo.gl/d4LR76 - six image -.

3D printen

Ik print de stukjes het liefst één voor één, vergeet niet om het transparante 3D-filament te gebruiken!

Stap 6: Montage

samenkomst
samenkomst
samenkomst
samenkomst
samenkomst
samenkomst
samenkomst
samenkomst

Boor een gat bovenop het hoofd. Dit gaatje is nodig om in de knoop te plaatsen.

Blokkeer de knop met de hete lijm en test de verbinding met een multimeter in continuïteitsmodus.

Neem het oor en voeg een klein stukje toe aan de onderkant, met behulp van warmblauw of superaanval. Knip het stuk af als het te hoog is.

Nu kunt u de knop en haar weerstand aansluiten volgens het schema in stap 2.

Eerste test

Denk eraan het 3D-model niet te sluiten voordat u de juiste werking hebt getest!

Druk op de knop op de Adafruit IO en de interne led moet knipperen, totdat je de knop op het oor hebt ingedrukt.

Herhaal de test met de knop op het oor.

Stap 7: Klaar om te gaan

Image
Image
Klaar om te gaan
Klaar om te gaan

Dit is eindelijk het eindresultaat.

- Vraag: heb je de interne led of de externe rode led gebruikt?

- Antwoord: in deze foto en video heb ik de interne led gebruikt. Voor de duidelijkheid: de rode led is de power led - je kunt hem niet uitschakelen - en de blauwe led is de interne led. De interne led en de externe led, in mijn schema, is dezelfde pin.

- Vraag: kan ik het gebruiken op het onbekende netwerk?

- Antwoord: nee dat kan niet. U moet de ESP01 opnieuw programmeren, omdat dit bord geen ruimte heeft voor OTA.

Veel info voor de OTA:

Maar je zou dit dik kunnen doen: voeg een speciale verbindings-ID en wachtwoord toe voor je persoonlijke hotspot op je telefoon!

Aanbevolen: