Inhoudsopgave:

Continu-rotatie servomotor (CRS) met telegrambesturing - Ajarnpa
Continu-rotatie servomotor (CRS) met telegrambesturing - Ajarnpa

Video: Continu-rotatie servomotor (CRS) met telegrambesturing - Ajarnpa

Video: Continu-rotatie servomotor (CRS) met telegrambesturing - Ajarnpa
Video: с использованием бесщеточных двигателей с цифровым серводвигателем HJ и тестера ESC [с субтитрами] 2024, Juli-
Anonim
Continue Rotatie Servo (CRS) Motor Met Telegram Control
Continue Rotatie Servo (CRS) Motor Met Telegram Control

In deze instructable leer ik je hoe je een CRS via telegram kunt besturen. Voor deze instructable heb je een aantal dingen nodig. Ik ga werken aan een NodeMCU 1.0 (ESP-12E-module). Dit kan werken op andere Arduino-borden, je hoeft er alleen maar de juiste schijven voor te vinden.

Het volgende was de setup-omgeving voor de ESP-12E-module:

  • Windows 10
  • Arduino IE 1.8.7 (Windows Store 1.8.15.0)

Een handleiding voor het installeren van de stuurprogramma's en kernbestanden voor de ESP-12E-module vindt u hier:

Als je dit eenmaal hebt gedaan. We zijn klaar om te gaan!

Stap 1: Stap 1: Componenten

Stap 1: Componenten
Stap 1: Componenten

Voor deze tutorial heb je een aantal componenten nodig:

  • ESP12-E-module (ESP8266)
  • Continue rotatie servomotor (dit is degene die ik heb gebruikt)
  • Micro-USB-kabel
  • Een wifi-netwerk
  • Telegram-app
  • Een Botfather Bot (maak je geen zorgen, we komen er wel)

Stap 2: Stap 2: Sluit de servomotor aan

Stap 2: Sluit de servomotor aan
Stap 2: Sluit de servomotor aan

Volg dit schema om de servomotor aan te sluiten.

  • Zwart: GND (aarde)
  • Rood: 3.3V of 5V (vermogen)
  • Geel of Wit: Digitale uitgang (Signaal)

Dus als je dezelfde servomotor gebruikt die ik heb gebruikt en een arduino-bord hebt met een hogere spanning (5V max) output, kun je de voedingskabel daar steken. Het betekent alleen dat de servomotor meer koppel zal produceren. Hoe dan ook, 3.3V of 5V zijn beide prima.

Stap 3: Stap 3: een beetje begrip

Voordat we beginnen met het testen van de code en kijken of deze werkt, moet u iets weten over deze servomotor. Omdat het geen conventionele servomotor is, die naar specifieke hoeken draait, is de code die u moet gebruiken een beetje anders.

Ik raad af om de servo op volle torsie te gebruiken, omdat deze veel warmte genereert en een groot deel van de levensduur van het product kan verbruiken. Probeer in de buurt van [60, 120] te blijven.

lege lus {

mijnservo.write(90); // dit betekent geen beweging, de servomotor staat stil vertraging (1000); mijnservo.write(0); // dit betekent bewegingsvertraging op volle snelheid tegen de klok in (1000); mijnservo.write(180); // dit betekent bewegingsvertraging op volle snelheid met de klok mee (1000); }

Stap 4: Stap 4: voeg code toe om de servomotor te testen

#erbij betrekken

Servo-mijnservo; void setup() { myservo.attach(D5); // bevestig de servo op pin D5)} void loop () { myservo.write (85); // roteert de motor tegen de klok in met een lage snelheidsvertraging (1000); mijnservo.write(120); vertraging (1000); mijnservo.write(90); vertraging (5000); }

Stap 5: Stap 5: Voorbereiden op communicatie

Om met je Arduino te kunnen communiceren, moet je een aantal dingen oplossen. Ze zijn vrij gemakkelijk. We verdelen deze taken in twee kleine secties.

de bot

  1. Installeer Telegram op uw mobiele telefoon.
  2. Maak een account aan op Telegram.
  3. Zoek de gebruiker 'Botfather'.
  4. Maak een nieuwe bot met behulp van de opdrachten die hij laat zien (bewaar de sleutel die hij je geeft).

De Arduino-taken

  1. Open Arduino IE.
  2. Ga naar de 'Bibliotheekbeheerder'.
  3. Voeg de bibliotheek 'Universal Telegrambot' toe.
  4. Voeg de bibliotheek 'ArduinoJson' toe.

    • Voeg de bèta niet toe
    • Voeg de nieuwste 5.x-build toe die er is.

Stap 6: Stap 6: de communicatie testen

Stap 6: de communicatie testen
Stap 6: de communicatie testen

We zijn er bijna.

  1. Open 'echobot' uit de universaltelegrambot > esp8266 bibliotheek.
  2. Wijzig de wifi-inloggegevens zodat deze overeenkomen met uw netwerk op de plaats waar u zich bevindt.
  3. Verander de BOTtoken die de Botfather je heeft gegeven.
  4. Voeg deze regel code toe aan de for-lus die zich in de `void loop();`. bevindt

Serial.println(bot.berichten.tekst);

Nu zijn we klaar om te testen.

Upload deze code naar je Arduino. Controleer in de seriële monitor of je NodeMCU verbinding maakt met je wifi-netwerk. Zodra je ziet dat het is verbonden, stuur je een bericht naar je bot. Het zou u exact hetzelfde bericht terug moeten sturen.

Stap 7: Stap 7: De opdrachten toevoegen

Dus het werkte! We hebben een verbinding tussen apparaten. De volgende stap is dingen bij elkaar optellen. Dus we gaan commando's toevoegen aan de bestaande echobot-code. Het is misschien een goed idee om de volgende code te plaatsen in plaats van de laatste code die ik je heb gegeven. Dus we zullen voorkomen dat we een bot hebben die zich als een papegaai gedraagt.

Dit volgende stukje code moet in de for-lus zitten die door nieuwe berichten loopt. Afhankelijk van hoe je de servomotor plaatst, wil je misschien de 'Open'- en 'Sluiten'-commando's omwisselen. Upload dit naar je esp8266 en controleer of het werkt.

//het commando dat je wilt

if(bot.messages.text == "Open") {

// Het antwoord dat je bot je geeft bot.sendMessage(bot.messages.chat_id, "Ik doe de gordijnen voor je open.");

// wat het Arduino-bord zal doen

mijnservo.write(80); // servomotor draait tegen de klok in om de gordijnen te openen

}

if(bot.messages.text == "Stop") { // Het antwoord dat je bot je geeft bot.sendMessage(bot.messages.chat_id, "Stop de gordijnen."); // wat het Arduino-bord zal doen myservo.write(90); // servomotor stopt met draaien }

if(bot.messages.text == "Close") { // Het antwoord dat je bot je geeft bot.sendMessage(bot.messages.chat_id, "Ik doe de gordijnen voor je dicht."); // wat het Arduino-bord zal doen myservo.write(80); // servomotor draait met de klok mee om de gordijnen te sluiten }

Stap 8: Stap 8: Sluit het apparaat aan op uw gordijnen (niet nodig)

Stap 8: Sluit het apparaat aan op uw gordijnen (niet nodig)
Stap 8: Sluit het apparaat aan op uw gordijnen (niet nodig)

Joepie, je bent klaar!

De instructies gingen over hoe je een Telegrambot op je Arduino kunt aansluiten, zodat je hem op afstand kunt bedienen. Maar ik heb deze speciale opstelling gemaakt om een manier te hebben om mijn gordijnen in mijn studio te openen zonder ze fysiek te hoeven openen. Dus als je hetzelfde wilt doen als ik, is de laatste stap om ons kleine apparaatje aan je gordijnen te koppelen en voila.

Aanbevolen: