תוכן עניינים:

שליטה בארדואינו באמצעות Bot Telegram ללא חומרה נוספת: 5 שלבים
שליטה בארדואינו באמצעות Bot Telegram ללא חומרה נוספת: 5 שלבים

וִידֵאוֹ: שליטה בארדואינו באמצעות Bot Telegram ללא חומרה נוספת: 5 שלבים

וִידֵאוֹ: שליטה בארדואינו באמצעות Bot Telegram ללא חומרה נוספת: 5 שלבים
וִידֵאוֹ: Java Tech Talk: Telegram бот на java за 1 час 2024, יולי
Anonim
שלוט בארדואינו באמצעות Bot Telegram ללא חומרה נוספת
שלוט בארדואינו באמצעות Bot Telegram ללא חומרה נוספת

יש מגוון רחב של דברים שאתה יכול לעשות עם Arduino, אבל האם חשבת פעם לשלוט בארדואינו שלך באמצעות בוט טלגרם? מה תצטרך:

  • ארדואינו UNO
  • Node.js מותקן במחשב האישי שלך
  • מכשיר כלשהו שניתן לשלוט בו (אנו משתמשים במנורת הלוח של Arduino בסיכה 13 כאן, אך אל תהסס לשאול כל דבר שתרצה לעשות בתגובות)

שלב 1: התקן את Node.js במחשב האישי שלך

התקן את Node.js במחשב האישי שלך
התקן את Node.js במחשב האישי שלך

Node.js הוא זמן ריצה של JavaScript, אך אל תיבהל אם אין לך רקע תכנות. הכנתי את מה שאתה צריך ותוכל להוריד אותם. בפרויקט זה נשתמש ב- Node.js עבור:

  1. צור בוט טלגרם
  2. שליטה בארדואינו

התקן את NODE. JS:

עבור לדף ההורדות הרשמי של Node.js והורד את חבילת ההתקנה האחרונה המבוססת על מערכת ההפעלה שלך.

*זכור את מספר הגירסה העדכני ביותר כאמור בראש דף ההורדות, נשתמש בו בשלב הבא.

לאחר הורדת החבילה והתקנתה, עליך לבדוק אם Node.js מותקן לחלוטין או לא.

בדוק אם החבילה מותקנת במלואה:

אם אתה על חלונות, פתח את CMD ואם אתה נמצא במסוף פתוח של macOS והקלד:

צומת -v

כעת אתה אמור לראות את הגרסה שבה ביקרת בדף ההורדות של Node.js, המודפס כאן.

אחרת הכנסתי הדרכה למטה כדי לנסות שוב:

  • חלונות
  • macOS

שלב 2: חלק Arduino

חלק Arduino
חלק Arduino

בשלב זה הדבר היחיד שעליך לעשות הוא להעלות קושחת Arduino IDE מובנית ב- Uno Arduino שלך.

חשוב: עליך לעדכן את ה- IDE של Arduino לגרסה האחרונה שפורסמה על ידי Arduino.

ייבוא ספריית firmata:

התפריט העליון >> קובץ >> דוגמאות >> פירמטות >> StandardFirmata

אמת והעלה קוד ב- Arduino:

1. תפריט עליון >> סקיצה >> אימות/הידור

2. תפריט עליון >> סקיצה >> העלאה

הכל בוצע.

שלב 3: קבל אסימון Bot Telegram

קבל אסימון Bot Telegram
קבל אסימון Bot Telegram

פתח את טלגרם וחפש את @BotFather או לחץ כאן כדי לפתוח את הבוט הזה במברק.

  1. הקלד /newbot והקש enter
  2. בחר שם לבוט שלך
  3. בחר שם משתמש לבוט שלך. זה חייב להסתיים ב'בוט '
  4. עכשיו בוט שולח לך קצת מידע כולל אסימון הגישה שלך ל- API. כתוב את זה, נשתמש באסימון הזה בשלבים הבאים

שלב 4: צור פרויקט Node.js

צור פרויקט NODE. JS חדש

כדי ליצור פרויקט Node.js ולהתקין מודולים עלינו להשתמש במסוף, ולכן אם אתה ב- Windows, השתמש ב- CMD ובמקרה של שימוש ב- macOS השתמש במסוף עבור כל השלבים הבאים.

1. צור תיקייה איפשהו לפרויקט

2. תקליטור (שנה מדריך) לתיקייה שנוצרה לאחרונה. לדוגמה, אם כינית את התיקיה הזו 'TelegramBot' והעלת אותה על שולחן העבודה, כתוב זאת במסוף והקש enter:

cd שולחן עבודה/טלגרם בוט

3. ליצירת פרויקט Node.js הזן את הפקודה הבאה:

npm init

4. ענה על כמה שאלות כולל שם, תיאור, רישיון וכו 'אם אינך יודע מה לענות, פשוט הקש enter. במקרה זה המילה בין סוגריים תשמש כערך ברירת מחדל.

5. כעת אתה אמור לראות קובץ 'package.json' שנוצר בתיקייה שלך ופירוש הדבר שיצרת את פרויקט Node.js בהצלחה.

שלב 5: קידוד

אנחנו צריכים לכתוב כאן כמה קודים. נתאר כמה ספריות משומשות:

  1. Node Telegram Bot API לטיפול בבקשות API לבוט מברק.
  2. פלטפורמת ג'וני-פייב להתחבר לארדואינו.

כל מה שאתה צריך לדעת על ספריות אלה ניתן למצוא באתרי האינטרנט המקושרים שלהם. אנחנו פשוט משתמשים בהם בקוד שלנו אבל התיעוד המלא שלהם נמצא בבלוגים שלהם.

אני משתמש בקוד Visual Studio של Microsoft לעריכת קוד. אבל אתה יכול להשתמש בכל דבר אחר שאתה אוהב. פתח תוכנת עריכת קוד וצור קובץ בשם 'index.js' (או כל דבר שהזנת בחלק הכניסה בחלק משלב יצירת הפרויקט Node.js) בספרייה קשורה.

2. כתוב קוד:

var five = require ("johnny-five"); תן ל- TelegramBot = require ('node-telegram-bot-api'); const token = '#############################################'; const bot = TelegramBot חדש (אסימון, {polling: true}); לוח var = new five. Board (); const answerCallbacks = {};

bot.on ("הודעה", פונקציה (הודעה) {

const callback = answerCallbacks [msg.chat.id]; if (callback) {delete answerCallbacks [msg.chat.id]; החזרה חוזרת (הודעה); }});

board.on ("מוכן", function () {

var led = new five. Led (13);

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

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

פונקציית התחלה (chatId, led) {

bot.sendMessage (chatId, "לוח הבקרה של Arduino", getKeyboardOptions ());

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

const msg = callbackQuery.message; bot.answerCallbackQuery (callbackQuery.id).then (() => {const data = callbackQuery.data; if (data == 'turnon') {led.on ();} אחרת אם (data == 'turnoff') { הוביל את(); } }) }); }

function getKeyboardOptions () {

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

אפשרויות החזרה;

}

3. החלף את ערך נכס האסימון בערך שכתבת בשלב יצירת הבוט

4. שמור את הקוד

5. פתח מסוף והזן את הפקודה הבאה:

npm i-שמור johnny-five node-telegram-bot-api

6. לאחר התקנת מודולים, בעוד הארדואינו מחובר ליציאת USB, במסוף הזן את הפקודה הבאה:

צומת index.js

7. אתה אמור לראות משהו כמו:

1534514872949 זמין /dev/cu.usbmodem1411

1534514872957 מחובר /dev/cu.usbmodem1411 1534514876660 התחל מחדש >>

8. פתח מברק וחפש את שם המשתמש של הבוט שלך (או פתח אותו מ- BotFather) והזן פקודה זו:

/הַתחָלָה

9. אתה אמור לראות לוח בקרה שיכול לשלוט על LED Arduino מובנה עם פקודות 'הפעלה' ו'כיבוי ', אם יש לך מזל;)

מוּמלָץ: