Sisukord:

Arduino juhtimine telegrammiboti abil ilma täiendava riistvarata: 5 sammu
Arduino juhtimine telegrammiboti abil ilma täiendava riistvarata: 5 sammu

Video: Arduino juhtimine telegrammiboti abil ilma täiendava riistvarata: 5 sammu

Video: Arduino juhtimine telegrammiboti abil ilma täiendava riistvarata: 5 sammu
Video: Start Using Wemos D1 Mini NodeMCU WiFi ESP8266 module with Arduino 2024, November
Anonim
Arduino juhtimine telegrammiboti abil ilma täiendava riistvarata
Arduino juhtimine telegrammiboti abil ilma täiendava riistvarata

Arduinoga saate teha palju erinevaid asju, kuid kas olete kunagi mõelnud oma Arduino juhtimisele telegrammi bot abil? MIDA TE VAJATE:

  • Arduino UNO
  • Node.js on teie arvutisse installitud
  • Mõni juhitav seade (me kasutame siin Arduino pardal olevat LED-i, mis asub siin tihvti 13 juures, kuid küsige kommentaarides kõike, mida soovite teha)

Samm: installige arvutisse Node.js

Installige arvutisse Node.js
Installige arvutisse Node.js

Node.js on JavaScripti käitusaeg, kuid ärge paanitsege, kui teil pole programmeerimise tausta. Valmistasin vajaliku ette ja saate need alla laadida. Selles projektis kasutame Node.js järgmist:

  1. Looge Telegrami robot
  2. Juhtige Arduino

Paigalda NODE. JS:

Minge ametlikule Node.js allalaadimislehele ja laadige alla uusim installipakett, mis põhineb teie OS -il.

*Pidage meeles allalaadimislehe ülaosas mainitud uusima versiooni numbrit, me kasutame seda järgmises etapis.

Pärast paketi allalaadimist ja installimist peaksite kontrollima, kas Node.js on täielikult installitud või mitte.

Kontrollige, kas pakett on täielikult paigaldatud:

Kui kasutate Windowsi, avage CMD ja MacOS -i avatud terminal ja tippige:

sõlm -v

Nüüd peaksite nägema siin trükitud versiooni, mida külastasite Node.js allalaadimislehel.

Vastasel juhul panen allpool mõne õpetuse, et uuesti proovida:

  • Windows
  • macOS

Samm: Arduino osa

Arduino osa
Arduino osa

Selles etapis on ainus asi, mida peate tegema, üles laadima oma Arduino Unosse sisseehitatud Arduino IDE püsivara.

Tähtis: peate oma Arduino IDE värskendama Arduino uusimale versioonile.

Firmata teegi importimine:

Ülemine menüü >> Fail >> Näited >> Firmata >> StandardFirmata

Kontrollige ja laadige kood üles Arduinos:

1. Ülemine menüü >> Visand >> Kontrolli/kompileeri

2. Ülemine menüü >> Visand >> Üleslaadimine

Kõik tehtud.

Samm: hankige telegrammi robotimärk

Hankige telegrammi robotimärk
Hankige telegrammi robotimärk

Avage Telegram ja otsige @BotFather või klõpsake siin, et see bot telegrammis avada.

  1. Tippige /newbot ja vajutage sisestusklahvi
  2. Valige oma robotile nimi
  3. Valige oma robotile kasutajanimi. See peab lõppema "botiga"
  4. Nüüd saadab bot teile teavet, sealhulgas teie API juurdepääsuluba. Kirjutage see üles, me kasutame seda märki järgmistes sammudes

Samm: looge projekt Node.js

LOO UUS NODE. JS PROJEKT

Projekti Node.js loomiseks ja moodulite installimiseks peame kasutama terminali, seega kui kasutate Windowsi, kasutage CMD -d ja macOS -i kasutamise korral kõigi järgmiste toimingute jaoks terminali.

1. Looge projekti jaoks kusagil kaust

2. CD (Muuda kataloogi) hiljuti loodud kausta. Näiteks kui panite sellele kaustale nimeks „TelegramBot” ja panite selle töölauale, kirjutage see terminali ja vajutage sisestusklahvi:

cd Desktop/TelegramBot

3. Projekti Node.js loomiseks sisestage järgmine käsk:

npm init

4. Vastake mõnele küsimusele, sealhulgas nimi, kirjeldus, litsents jne. Kui te ei tea, millele vastata, vajutage lihtsalt sisestusklahvi. Sel juhul kasutatakse sulgudes olevat sõna vaikeväärtusena.

5. Nüüd peaksite nägema oma kausta loodud faili "package.json" ja see tähendab, et lõite Node.js projekti edukalt.

Samm: kodeerimine

Me peame siia mõned koodid kirjutama. Kirjeldame mõnda kasutatud raamatukogu:

  1. Node Telegram Bot API telegrammi bot API taotluste haldamiseks.
  2. Johnny-Five platvorm Arduinoga ühenduse loomiseks.

Kõik, mida peate nende raamatukogude kohta teadma, leiate nende lingitud veebisaitidelt. me lihtsalt kasutame neid oma koodis, kuid nende täielik dokumentatsioon on nende ajaveebides.

Kasutan koodi redigeerimiseks Microsoft Visual Studio koodi. kuid võite kasutada mis tahes muud meelepärast.1. Avage kooditöötlustarkvara ja looge sellega seotud kataloogi fail nimega „index.js” (või mis tahes muu, mille sisestasite projekti loomise etapi Node.js sisenemispunkti ossa).

2. Kirjutage kood:

var viis = nõuda ("johnny-viis"); las TelegramBot = nõuda ('node-telegram-bot-api'); const token = '##########################################”; const bot = uus TelegramBot (märk, {polling: true}); var board = uus viis. Board (); const answerCallbacks = {};

bot.on ("sõnum", funktsioon (msg) {

const tagasihelistamine = answerCallbacks [msg.chat.id]; if (tagasihelistamine) {delete answerCallbacks [msg.chat.id]; tagasihelistamine (msg); }});

board.on ("valmis", function () {

var led = uus viis. Led (13);

bot.on ('sõnum', (msg) => {

const chatId = msg.chat.id; const tekst = msg.text; if (text == '/start') {start (chatId, led); }}); });

funktsiooni algus (chatId, led) {

bot.sendMessage (chatId, "Arduino juhtpaneel", getKeyboardOptions ());

bot.on ("callback_query", (callbackQuery) => {

const msg = callbackQuery.message; bot.answerCallbackQuery (callbackQuery.id). Siis (() => {const data = callbackQuery.data; if (data == 'turnon') {led.on ();} else if (data == 'turnoff') {led.off ();}})}}); }

function getKeyboardOptions () {

const options = {"answer_markup": {resize_keyboard: true, "inline_keyboard":

tagastamisvõimalused;

}

3. Asendage sümboolse omaduse väärtus väärtusega, mille kirjutasite üles robotite loomise etapis

4. Salvestage kood

5. Avage terminal ja sisestage järgmine käsk:

npm i-salvesta johnny-five node-telegram-bot-api

6. Pärast moodulite installimist, kui teie Arduino on USB -porti ühendatud, sisestage terminali järgmine käsk:

sõlm index.js

7. Sa peaksid nägema midagi sellist:

1534514872949 Saadaval /dev/cu.usbmodem1411

1534514872957 Ühendatud /dev/cu.usbmodem1411 1534514876660 Vastus lähtestatud >>

8. Avage telegramm ja otsige oma boti kasutajanimi (või avage see BotFatherist) ja sisestage see käsk:

/alusta

9. Kui teil on õnne, peaksite nägema juhtpaneeli, mis saab juhtida sisseehitatud Arduino LED-i käsuga "Lülita sisse" ja "Lülita välja";)

Soovitan: