Isi kandungan:

Kawal Arduino Menggunakan Bot Telegram Tanpa Perkakasan Tambahan: 5 Langkah
Kawal Arduino Menggunakan Bot Telegram Tanpa Perkakasan Tambahan: 5 Langkah

Video: Kawal Arduino Menggunakan Bot Telegram Tanpa Perkakasan Tambahan: 5 Langkah

Video: Kawal Arduino Menggunakan Bot Telegram Tanpa Perkakasan Tambahan: 5 Langkah
Video: kirim pesan menggunakan esp8266 secara otomatis 2024, Julai
Anonim
Kawal Arduino Menggunakan Bot Telegram Tanpa Perkakasan Tambahan
Kawal Arduino Menggunakan Bot Telegram Tanpa Perkakasan Tambahan

Terdapat pelbagai perkara yang boleh anda lakukan dengan Arduino, tetapi adakah anda pernah berfikir untuk mengawal Arduino anda menggunakan bot Telegram? APA YANG ANDA PERLUKAN:

  • Arduino UNO
  • Node.js dipasang pada PC anda
  • Beberapa peranti yang dapat dikawal (Kami menggunakan LED on-board Arduino pada pin 13 di sini, tetapi jangan ragu untuk bertanya mengenai apa sahaja yang anda mahu lakukan dalam komen)

Langkah 1: Pasang Node.js pada PC anda

Pasang Node.js pada PC anda
Pasang Node.js pada PC anda

Node.js adalah runtime JavaScript, tetapi jangan panik jika anda tidak mempunyai latar belakang pengaturcaraan. Saya menyediakan apa yang anda perlukan dan anda boleh memuat turunnya. Dalam projek ini, kami akan menggunakan Node.js untuk:

  1. Buat bot Telegram
  2. Kawal Arduino

PASANG NODE. JS:

Pergi ke halaman muat turun Node.js rasmi dan muat turun pakej pemasang terkini berdasarkan OS anda.

* Ingat nombor versi terbaru seperti yang disebutkan di atas halaman muat turun, kami akan menggunakannya pada langkah berikutnya.

Selepas memuat turun pakej dan memasangnya, anda harus memeriksa untuk melihat apakah Node.js dipasang sepenuhnya atau tidak.

SEMAK UNTUK MELIHAT JIKA PAKEJ DIPASANG SEPENUHNYA:

Sekiranya anda berada di tingkap, buka CMD dan jika anda berada di terminal terbuka macOS dan taip:

simpul -v

Sekarang anda akan melihat versi yang anda lawati di halaman muat turun Node.js, dicetak di sini.

Jika tidak, saya meletakkan beberapa tutorial di bawah untuk mencuba lagi:

  • Tingkap
  • macOS

Langkah 2: Bahagian Arduino

Bahagian Arduino
Bahagian Arduino

Pada langkah ini, satu-satunya perkara yang perlu anda lakukan ialah memuat naik firmware Arduino IDE terbina dalam Arduino Uno anda.

Penting: Anda perlu mengemas kini Arduino IDE anda ke versi terbaru yang dikeluarkan oleh Arduino.

Import perpustakaan firata:

Menu Teratas >> Fail >> Contoh >> Firmata >> StandardFirmata

Sahkan dan muat naik kod di Arduino:

1. Menu Teratas >> Lakaran >> Sahkan / Susun

2. Menu Teratas >> Lakaran >> Muat naik

Semua selesai.

Langkah 3: Dapatkan Token Bot Telegram

Dapatkan Token Bot Telegram
Dapatkan Token Bot Telegram

Buka Telegram dan cari @BotFather atau klik di sini untuk membuka bot ini di telegram.

  1. Taip / newbot dan tekan enter
  2. Pilih nama untuk bot anda
  3. Pilih nama pengguna untuk bot anda. Ia mesti berakhir dengan 'bot'
  4. Sekarang bot mengirimkan beberapa maklumat termasuk token akses API anda. Tuliskan, kami akan menggunakan token ini pada langkah seterusnya

Langkah 4: Buat Projek Node.js

BUAT PROJEK NODE. JS BARU

Untuk membuat projek Node.js dan memasang modul, kita perlu menggunakan terminal, jadi jika anda menggunakan Windows, gunakan CMD dan sekiranya menggunakan macOS gunakan Terminal untuk semua langkah di bawah.

1. Buat folder di suatu tempat untuk projek

2. CD (Change Directory) ke folder yang baru dibuat. Contohnya jika anda menamakan folder itu 'TelegramBot' dan meletakkannya di desktop, tulis ini di terminal dan tekan enter:

cd Desktop / TelegramBot

3. Untuk membuat projek Node.js masukkan arahan berikut:

npm init

4. Jawab beberapa soalan termasuk nama, keterangan, lesen dan lain-lain jika anda tidak tahu apa yang harus dijawab, tekan enter. Dalam kes ini, kata antara tanda kurung akan digunakan sebagai nilai lalai.

5. Sekarang anda akan melihat fail 'package.json' yang dibuat dalam folder anda dan ini bermakna anda berjaya membuat projek Node.js.

Langkah 5: Pengekodan

Kami perlu menulis beberapa kod di sini. Mari terangkan beberapa perpustakaan terpakai:

  1. Node Telegram Bot API untuk menangani permintaan telegram bot API.
  2. Platform Johnny-Five untuk menyambung ke Arduino.

Semua yang anda perlu ketahui mengenai perpustakaan ini boleh didapati di laman web yang dipautkan. kami hanya menggunakannya dalam kod kami tetapi dokumentasi lengkapnya terdapat di blog mereka.

Saya menggunakan Kod Microsoft Visual Studio untuk penyuntingan kod. tetapi anda boleh menggunakan yang lain yang anda suka.1. Buka perisian penyuntingan kod dan buat fail bernama 'index.js' (atau apa sahaja yang anda masukkan di bahagian entri dari langkah pembuatan projek Node.js) di direktori yang berkaitan.

2. Tulis kod:

var lima = memerlukan ("johnny-five"); biarkan TelegramBot = memerlukan ('node-telegram-bot-api'); const token = '###########################################'; const bot = TelegramBot baru (token, {polling: true}); var board = baru lima. Board (); const answerCallbacks = {};

bot.on ("message", fungsi (msg) {

const callback = answerCallbacks [msg.chat.id]; jika (panggilan balik) {delete answerCallbacks [msg.chat.id]; panggil balik balik (msg); }});

board.on ("siap", fungsi () {

var led = baru lima. Led (13);

bot.on ('message', (msg) => {

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

permulaan fungsi (chatId, led) {

bot.sendMessage (chatId, "Arduino Control Panel", getKeyboardOptions ());

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

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

fungsi getKeyboardOptions () {

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

pilihan kembali;

}

3. Ganti nilai harta token dengan nilai yang anda tulis dalam langkah pembuatan bot

4. Simpan kod

5. Buka terminal dan masukkan arahan berikut:

npm saya --simpan johnny-lima simpul-telegram-bot-api

6. Setelah memasang modul, semasa Arduino anda disambungkan ke port USB, masukkan terminal berikut perintah berikut:

node index.js

7. Anda mesti melihat sesuatu seperti:

1534514872949 Terdapat /dev/cu.usbmodem1411

1534514872957 Bersambung /dev/cu.usbmodem1411 1534514876660 Replikasi Diisikan >>

8. Buka telegram dan cari nama pengguna bot anda (atau buka dari BotFather) dan masukkan arahan ini:

/ mulakan

9. Anda harus melihat panel kawalan yang dapat mengawal LED Arduino terbina dalam dengan perintah 'Hidupkan' dan 'Matikan', jika anda cukup bernasib baik;)

Disyorkan: