Мазмуну:

Ардуинону Telegram Bot менен эч кандай кошумча жабдууларсыз башкарыңыз: 5 кадам
Ардуинону Telegram Bot менен эч кандай кошумча жабдууларсыз башкарыңыз: 5 кадам

Video: Ардуинону Telegram Bot менен эч кандай кошумча жабдууларсыз башкарыңыз: 5 кадам

Video: Ардуинону Telegram Bot менен эч кандай кошумча жабдууларсыз башкарыңыз: 5 кадам
Video: Уроки Ардуино #0 - что такое Arduino, куда подключаются датчики и как питать Ардуино 2024, Ноябрь
Anonim
Ардуинону Telegram Bot менен эч кандай кошумча жабдууларсыз башкарыңыз
Ардуинону Telegram Bot менен эч кандай кошумча жабдууларсыз башкарыңыз

Arduino менен кыла турган нерселердин кеңири чөйрөсү бар, бирок сиз Telegram бот аркылуу Arduino башкарууну ойлонуп көрдүңүз беле? ЭМНЕ КЕРЕК:

  • Arduino UNO
  • Node.js сиздин PC орнотулган
  • Кээ бир башкарылуучу түзмөк (Биз бул жерде 13-пинде Arduino бортундагы LEDди колдонобуз, бирок комментарийлерде эмне кылгыңыз келсе, ошону сураңыз)

1 -кадам: Node.jsти компьютериңизге орнотуңуз

Node.jsти компьютериңизге орнотуңуз
Node.jsти компьютериңизге орнотуңуз

Node.js - бул JavaScriptтин иштөө убактысы, бирок эгерде сизде программалоо фону жок болсо, паника кылбаңыз. Мен сизге керектүү нерселерди даярдадым жана аларды жүктөп алсаңыз болот. Бул долбоордо биз Node.js колдонобуз:

  1. Telegram бот түзүү
  2. Ардуинону көзөмөлдөө

NODE. JS орнотуу:

Расмий Node.js жүктөө барагына өтүңүз жана OSиңизге негизделген акыркы орноткуч пакетин жүктөп алыңыз.

*Жүктөө барагынын үстүндө айтылгандай, акыркы версиянын номерин унутпаңыз, биз аны кийинки кадамда колдонобуз.

Топтомду жүктөп алып, аны орноткондон кийин, Node.js толугу менен орнотулганбы же жокпу, текшериш керек.

ПАКЕТ ТОЛУК МЕНЕН ОРНОТУЛГАНЫН КӨРҮҢҮЗ:

Эгерде сиз терезеде болсоңуз, CMDди ачыңыз, эгер сиз macOS ачык терминалында болсоңуз жана териңиз:

түйүн -v

Эми сиз барган версияны Node.js жүктөмөлөр барагынан көрүшүңүз керек, бул жерде басылган.

Болбосо мен дагы бир жолу аракет кылуу үчүн төмөндөгү окуу куралдарын койдум:

  • Windows
  • macOS

2 -кадам: Arduino бөлүгү

Arduino Part
Arduino Part

Бул кадамда сизге керек болгон нерсе-Arduino Unoго орнотулган Arduino IDE программасын жүктөө.

Маанилүү: Сиз Arduino IDEңизди Arduino чыгарган акыркы версиясына жаңыртышыңыз керек.

Фирма китепканасын импорттоо:

Жогорку Меню >> Файл >> Мисалдар >> Фирма >> StandardFirmata

Текшерүү жана Arduino боюнча жүктөө:

1. Жогорку Меню >> Эскиз >> Текшерүү/Түзүү

2. Жогорку Меню >> Эскиз >> Жүктөө

Баары аткарылды.

3 -кадам: Telegram Bot Токенин алыңыз

Telegram Bot Токенин алыңыз
Telegram Bot Токенин алыңыз

Телеграмманы ачыңыз жана @BotFather издеңиз же бул ботту телеграммадан ачыңыз.

  1. /Newbot терип, Enter баскычын басыңыз
  2. Ботуңуздун атын тандаңыз
  3. Ботуңуз үчүн колдонуучу атын тандаңыз. Ал "бот" менен бүтүшү керек
  4. Азыр бот сизге кээ бир маалыматты жөнөтөт, анын ичинде APIге жетүү белгиси. Аны жазыңыз, биз бул белгини кийинки кадамдарда колдонобуз

4 -кадам: Node.js долбоорун түзүңүз

ЖАҢЫ NODE. JS ДОЛБООРУН ТҮЗҮҢҮЗ

Node.js долбоорун түзүү жана модулдарды орнотуу үчүн биз терминалды колдонушубуз керек, андыктан эгер сиз Windowsта болсоңуз, CMDди колдонуңуз жана macOSту колдонгон учурда төмөндөгү бардык кадамдар үчүн Терминалды колдонуңуз.

1. Долбоор үчүн бир жерге папка түзүңүз

2. CD (Каталогду өзгөртүү) жакында түзүлгөн папкага. Мисалы, эгер сиз ал папканы 'TelegramBot' деп атасаңыз жана аны рабочий столго койсоңуз, муну терминалга жазыңыз жана Enter баскычын басыңыз:

cd Desktop/TelegramBot

3. Node.js долбоорун түзүү үчүн төмөнкү буйрукту киргизиңиз:

npm init

4. Кээ бир суроолорго жооп бериңиз, аты -жөнү, сүрөттөмөсү, лицензиясы ж. Бул учурда кашаанын ортосундагы сөз демейки маани катары колдонулат.

5. Эми сиз папкаңызда түзүлгөн 'package.json' файлын көрүшүңүз керек жана бул сиз Node.js долбоорун ийгиликтүү жаратканыңызды билдирет.

5 -кадам: Коддоо

Биз бул жерге кээ бир коддорду жазышыбыз керек. Келгиле, кээ бир колдонулган китепканаларды сүрөттөп берели:

  1. Node Telegram Bot API телеграмма ботунун API сурамдарын иштетүү үчүн.
  2. Johnny-Five Platform Arduino менен туташуу үчүн.

Бул китепканалар жөнүндө билишиңиз керек болгон нерселердин бардыгын шилтемеленген веб -сайттарынан тапса болот. биз аларды жөн эле кодубузда колдонобуз, бирок алардын толук документтери блогдорунда.

Мен кодду түзөтүү үчүн Microsoft Visual Studio Code колдоном. бирок сиз каалаган башка колдоно аласыз.1. Кодду түзөтүү программасын ачыңыз жана тиешелүү каталогдо 'index.js' (же Node.js долбоорун түзүү кадамынын кирүү пунктуна кирген нерсеңиз) аттуу файлды түзүңүз.

2. Кодду жазыңыз:

var five = талап кылуу ("johnny-five"); TelegramBot = талап кылсын ('node-telegram-bot-api'); const токен = '#################################################; const бот = жаңы TelegramBot (токен, {сурамжылоо: чындык}); var board = new five. Board (); const answerCallbacks = {};

bot.on ("билдирүү", функция (msg) {

const callback = answerCallbacks [msg.chat.id]; if (callback) {delete answerCallbacks [msg.chat.id]; кайра чалуу (msg); }});

board.on ("даяр", function () {

var led = new five. Led (13);

bot.on ('билдирүү', (msg) => {

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

функцияны баштоо (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 ();} if if (data == 'turnoff') {led.off ();}})}); }

getKeyboardOptions функциясы () {

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

кайтаруу параметрлери;

}

3. Токендин касиетинин маанисин бот түзүү кадамына жазыңыз

4. Кодду сактаңыз

5. Терминалды ачыңыз жана төмөнкү буйрукту киргизиңиз:

npm i-куткаруу johnny-беш түйүн-телеграмма-бот-api

6. Модулдарды орноткондон кийин, сиздин Arduino USB портуна туташып турганда, терминалга төмөнкү буйрукту киргизиңиз:

түйүн index.js

7. Сиз сыяктуу бир нерсени көрүшүңүз керек:

1534514872949 Жеткиликтүү /dev/cu.usbmodem1411

1534514872957 Туташты /dev/cu.usbmodem1411 1534514876660 Repl башталды >>

8. Телеграмманы ачыңыз жана ботуңуздун колдонуучу атын издеңиз (же BotFatherден ачыңыз) жана бул буйрукту киргизиңиз:

/баштоо

9. Сиз, эгерде бактылуу болсоңуз, "Күйгүзүү" жана "Өчүрүү" буйруктары менен орнотулган Arduino LEDди башкара турган башкаруу панелин көрүшүңүз керек;)

Сунушталууда: