![Управлявайте Arduino с помощта на Telegram Bot без допълнителен хардуер: 5 стъпки Управлявайте Arduino с помощта на Telegram Bot без допълнителен хардуер: 5 стъпки](https://i.howwhatproduce.com/images/002/image-5102-34-j.webp)
Съдържание:
2025 Автор: John Day | [email protected]. Последно модифициран: 2025-01-23 14:36
![Управлявайте Arduino с помощта на Telegram Bot без допълнителен хардуер Управлявайте Arduino с помощта на Telegram Bot без допълнителен хардуер](https://i.howwhatproduce.com/images/002/image-5102-35-j.webp)
Има широк спектър от неща, които можете да правите с Arduino, но мислили ли сте някога да контролирате Arduino с помощта на бот Telegram?
- Arduino UNO
- Node.js инсталиран на вашия компютър
- Някои контролируеми устройства (Тук използваме вградения светодиод на Arduino на пин 13, но не се колебайте да попитате за всичко, което искате да направите в коментарите)
Стъпка 1: Инсталирайте Node.js на вашия компютър
![Инсталирайте Node.js на вашия компютър Инсталирайте Node.js на вашия компютър](https://i.howwhatproduce.com/images/002/image-5102-36-j.webp)
Node.js е време на изпълнение на JavaScript, но не се паникьосвайте, ако нямате опит в програмирането. Подготвих това, от което се нуждаете, и можете да ги изтеглите. В този проект ще използваме Node.js за:
- Създайте бот на Telegram
- Контролирайте Arduino
МОНТАЖ NODE. JS:
Отидете на официалната страница за изтегляне на Node.js и изтеглете най -новия инсталационен пакет въз основа на вашата операционна система.
*Запомнете номера на последната версия, както е споменато в горната част на страницата за изтегляне, ще го използваме в следващата стъпка.
След като изтеглите пакета и го инсталирате, трябва да проверите дали Node.js е инсталиран напълно или не.
ПРОВЕРЕТЕ ДА ВИДИТЕ АКО ПАКЕТЪТ Е ИНСТАЛИРАН НАПЪЛНО:
Ако сте на Windows, отворете CMD и ако сте на отворен терминал на macOS и въведете:
възел -v
Сега трябва да видите версията, която сте посетили на страницата за изтегляне на Node.js, отпечатана тук.
Иначе сложих някакъв урок по -долу, за да опитам отново:
- Windows
- macOS
Стъпка 2: Част от Arduino
![Част от Arduino Част от Arduino](https://i.howwhatproduce.com/images/002/image-5102-37-j.webp)
В тази стъпка единственото нещо, което трябва да направите, е да качите вграден фърмуер на Arduino IDE на вашия Arduino Uno.
Важно: Трябва да актуализирате вашата Arduino IDE до последната издадена версия от Arduino.
Импортиране на библиотека от фирми:
Горно меню >> Файл >> Примери >> Фирма >> Стандартна Фирма
Проверете и качете кода на Arduino:
1. Горно меню >> Скица >> Проверка/Компилиране
2. Горно меню >> Скица >> Качване
Готово.
Стъпка 3: Вземете Telegram Bot Token
![Вземете жетон за Telegram Bot Вземете жетон за Telegram Bot](https://i.howwhatproduce.com/images/002/image-5102-38-j.webp)
Отворете Telegram и потърсете @BotFather или щракнете тук, за да отворите този бот в telegram.
- Въведете /newbot и натиснете enter
- Изберете име за вашия бот
- Изберете потребителско име за вашия бот. Трябва да завършва с „бот“
- Сега ботът ви изпраща информация, включително вашия маркер за достъп до API. Запишете го, ние ще използваме този знак в следващите стъпки
Стъпка 4: Създайте проект Node.js
СЪЗДАЙТЕ НОВ ПРОЕКТ NODE. JS
За създаване на Node.js проект и инсталиране на модули трябва да използваме терминал, така че ако сте на Windows, използвайте CMD и в случай на използване на macOS използвайте Terminal за всички стъпки по -долу.
1. Създайте папка някъде за проекта
2. CD (Промяна на директория) в наскоро създадена папка. Например, ако сте кръстили тази папка 'TelegramBot' и сте я поставили на работния плот, напишете това в терминала и натиснете enter:
cd Desktop/TelegramBot
3. За създаване на Node.js проект въведете следната команда:
npm init
4. Отговорете на някои въпроси, включително име, описание, лиценз и т.н., ако не знаете какво да отговорите, просто натиснете enter. В този случай думата между скобите ще се използва като стойност по подразбиране.
5. Сега трябва да видите файла „package.json“, създаден във вашата папка и това означава, че сте създали успешно проекта Node.js.
Стъпка 5: Кодиране
Трябва да напишем някои кодове тук. Нека опишем някои използвани библиотеки:
- API на Node Telegram Bot за обработка на заявки за API на телеграфни ботове.
- Платформа Johnny-Five за свързване с Arduino.
Всичко, което трябва да знаете за тези библиотеки, можете да намерите в свързаните с тях уебсайтове. ние просто ги използваме в нашия код, но пълната документация за тях е в техните блогове.
Използвам Microsoft Visual Studio Code за редактиране на код. но можете да използвате всяка друга, която ви харесва.1. Отворете софтуера за редактиране на код и създайте файл с име „index.js“(или всичко, което сте въвели в частта от входната точка на стъпката за създаване на проект Node.js) в свързана директория.
2. Напишете код:
var five = require ("johnny-five"); нека TelegramBot = require ('node-telegram-bot-api'); const token = '##########################################'; const bot = new TelegramBot (token, {polling: true}); var board = нови пет. Board (); const answerCallbacks = {};
bot.on ("съобщение", функция (съобщение) {
const callback = answerCallbacks [msg.chat.id]; if (обратно повикване) {delete answerCallbacks [msg.chat.id]; връщане на обратно повикване (съобщение); }});
board.on ("готов", функция () {
var led = нови пет. 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 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 ();} else if (data == 'turnoff') {led.off ();}})}); }
функция getKeyboardOptions () {
const options = {"reply_markup": {resize_keyboard: true, "inline_keyboard":
опции за връщане;
}
3. Заменете стойността на свойството на символа с тази, която сте записали в стъпката за създаване на бот
4. Запазете кода
5. Отворете терминала и въведете следната команда:
npm i --save johnny-five node-telegram-bot-api
6. След като инсталирате модули, докато вашият Arduino е свързан към USB порт, в терминала въведете следната команда:
възел index.js
7. Трябва да видите нещо като:
1534514872949 Наличен /dev/cu.usbmodem1411
1534514872957 Свързан /dev/cu.usbmodem1411 1534514876660 Repl Инициализиран >>
8. Отворете телеграма и потърсете потребителското име на вашия бот (или го отворете от BotFather) и въведете тази команда:
/старт
9. Трябва да видите контролен панел, който може да контролира вградения Arduino LED с команди „Включване“и „Изключване“, ако имате късмет;)
Препоръчано:
Настройка на Raspberry Pi 4 чрез лаптоп/компютър с помощта на Ethernet кабел (без монитор, без Wi-Fi): 8 стъпки
![Настройка на Raspberry Pi 4 чрез лаптоп/компютър с помощта на Ethernet кабел (без монитор, без Wi-Fi): 8 стъпки Настройка на Raspberry Pi 4 чрез лаптоп/компютър с помощта на Ethernet кабел (без монитор, без Wi-Fi): 8 стъпки](https://i.howwhatproduce.com/images/001/image-566-j.webp)
Настройка на Raspberry Pi 4 чрез лаптоп/компютър с помощта на Ethernet кабел (без монитор, без Wi-Fi): В това ще работим с Raspberry Pi 4 Model-B от 1Gb RAM за настройката. Raspberry-Pi е единичен настолен компютър, използван за образователни цели и DIY проекти на достъпна цена, изисква захранване от 5V 3A
Как да изградите свой собствен анемометър с помощта на тръстикови превключватели, сензор за ефекта на Хол и някои отпадъци на Nodemcu. - Част 1 - Хардуер: 8 стъпки (със снимки)
![Как да изградите свой собствен анемометър с помощта на тръстикови превключватели, сензор за ефекта на Хол и някои отпадъци на Nodemcu. - Част 1 - Хардуер: 8 стъпки (със снимки) Как да изградите свой собствен анемометър с помощта на тръстикови превключватели, сензор за ефекта на Хол и някои отпадъци на Nodemcu. - Част 1 - Хардуер: 8 стъпки (със снимки)](https://i.howwhatproduce.com/images/004/image-9652-j.webp)
Как да изградите свой собствен анемометър с помощта на тръстикови превключватели, сензор за ефекта на Хол и някои отпадъци на Nodemcu. - Част 1 - Хардуер: Въведение Откакто започнах с изучаването на Arduino и културата на създателя, ми хареса да изграждам полезни устройства, използвайки боклуци и парчета скрап, като капачки за бутилки, парчета PVC, кутии за напитки и т.н. Обичам да дам секунда живот на всяко парче или друга половинка
Headless Pi - Стартиране на Raspberry Pi без допълнителен хардуер: 4 стъпки (със снимки)
![Headless Pi - Стартиране на Raspberry Pi без допълнителен хардуер: 4 стъпки (със снимки) Headless Pi - Стартиране на Raspberry Pi без допълнителен хардуер: 4 стъпки (със снимки)](https://i.howwhatproduce.com/images/001/image-1534-168-j.webp)
Headless Pi - Първи стъпки на Raspberry Pi без допълнителен хардуер: Здравейте, причината да кацнете тук е, предполагам, че сте много като мен! Не искате да се успокоите с вашия Pi - включете Pi в монитор, свържете клавиатурата и мишката и ето! &Hellip; Pfft, кой прави това ?! В края на краищата Pi е &
Мод за мишка за бърз пожар БЕЗ Добавяне на допълнителен бутон: 4 стъпки
![Мод за мишка за бърз пожар БЕЗ Добавяне на допълнителен бутон: 4 стъпки Мод за мишка за бърз пожар БЕЗ Добавяне на допълнителен бутон: 4 стъпки](https://i.howwhatproduce.com/preview/how-and-what-to-produce/11131011-rapid-fire-mouse-mod-without-adding-an-additional-button-4-steps-j.webp)
Мод за мишка за бърз пожар БЕЗ Добавяне на допълнителен бутон: Направих бърз режим за стрелба на очуканата мишка Logitech MX500. Има много хаутове наоколо, използвах този: www.instructables.com/id/Add_a_rapid_fire_button_to_your_mouse_using_a_555_/ Разликата в моя подход е: направих го без добавка
Охладител / стойка за лаптоп с нулева цена (без лепило, без пробиване, без гайки и болтове, без винтове): 3 стъпки
![Охладител / стойка за лаптоп с нулева цена (без лепило, без пробиване, без гайки и болтове, без винтове): 3 стъпки Охладител / стойка за лаптоп с нулева цена (без лепило, без пробиване, без гайки и болтове, без винтове): 3 стъпки](https://i.howwhatproduce.com/preview/how-and-what-to-produce/11132735-zero-cost-laptop-cooler-stand-no-glue-no-drilling-no-nuts-and-bolts-no-screws-3-steps-j.webp)
Охладител / стойка за лаптоп с нулева цена (без лепило, без пробиване, без гайки и болтове, без винтове): АКТУАЛИЗИРАНЕ: МОЛЯ ПРИЛОЖНО ГЛАСУВАНЕ ЗА МОИТЕ ИНСТРУКЦИИ, БЛАГОДАРЯ ^ _ ^ МОЖЕТЕ И ДРУГИ ДА ИЗБОРИТЕ ВЛИЗАЙТЕ НА www.instructables.com/id/Zero-Cost-Aluminium-Furnace-No-Propane-No-Glue-/ ИЛИ МОЖЕ ДА ГЛАСУВАТЕ ЗА МОЙ НАЙ-ДОБРИЯ ПРИЯТЕЛ