Innehållsförteckning:
- Steg 1: Installera Node.js på din dator
- Steg 2: Arduino -del
- Steg 3: Skaffa Telegram Bot Token
- Steg 4: Skapa ett Node.js -projekt
- Steg 5: Kodning
Video: Styr Arduino med Telegram Bot utan extra hårdvara: 5 steg
2024 Författare: John Day | [email protected]. Senast ändrad: 2024-01-30 12:45
Det finns en mängd olika saker du kan göra med Arduino, men har du någonsin funderat på att styra din Arduino med en Telegram -bot?
- Arduino UNO
- Node.js installerat på din dator
- Någon kontrollerbar enhet (Vi använder Arduinos inbyggda LED vid stift 13 här, men fråga gärna om allt du vill göra i kommentarer)
Steg 1: Installera Node.js på din dator
Node.js är en Javascript -körning, men var inte rädd om du inte har en programmeringsbakgrund. Jag har förberett det du behöver och du kan ladda ner dem. I det här projektet kommer vi att använda Node.js för:
- Skapa Telegram bot
- Styr Arduino
INSTALLERA NODE. JS:
Gå till den officiella Node.js nedladdningssidan och ladda ner det senaste installationspaketet baserat på ditt operativsystem.
*Kom ihåg det senaste versionsnumret som nämns ovanpå nedladdningssidan, vi använder det i nästa steg.
När du har laddat ner paketet och installerat det bör du kontrollera om Node.js är helt installerat eller inte.
KONTROLLERA FÖR ATT SE OM FÖRPACKNINGEN INSTALLERAS HELT:
Om du använder Windows öppnar du CMD och om du använder macOS öppen terminal och skriver:
nod -v
Nu ska du se den version som du besökte på Node.js nedladdningssida, tryckt här.
Annars lägger jag lite självstudie nedan för att försöka igen:
- Windows
- Mac OS
Steg 2: Arduino -del
I det här steget är det enda du behöver göra att ladda upp en inbyggd Arduino IDE-firmware på din Arduino Uno.
Viktigt: Du måste uppdatera din Arduino IDE till den senaste versionen av Arduino.
Importera firmatabibliotek:
Toppmeny >> Arkiv >> Exempel >> Firmata >> Standard Firmata
Verifiera och ladda upp koden på Arduino:
1. Toppmeny >> Skiss >> Verifiera/kompilera
2. Toppmeny >> Skiss >> Ladda upp
Klart.
Steg 3: Skaffa Telegram Bot Token
Öppna Telegram och sök efter @BotFather eller klicka här för att öppna denna bot på telegram.
- Skriv /newbot och tryck enter
- Välj ett namn för din bot
- Välj ett användarnamn för din bot. Det måste sluta med 'bot'
- Nu skickar bot dig lite information inklusive din API -åtkomsttoken. Skriv ner det, vi kommer att använda denna token i nästa steg
Steg 4: Skapa ett Node.js -projekt
SKAPA ETT NYTT NODE. JS -PROJEKT
För att skapa Node.js -projekt och installera moduler måste vi använda terminal, så om du använder Windows, använd CMD och om du använder macOS, använd Terminal för alla nedanstående steg.
1. Skapa en mapp någonstans för projektet
2. CD (Ändra katalog) till nyligen skapad mapp. Om du till exempel heter den mappen 'TelegramBot' och lägger den på skrivbordet, skriv detta i terminalen och tryck enter:
cd Desktop/TelegramBot
3. För att skapa Node.js -projekt anger du följande kommando:
npm init
4. Svara på några frågor inklusive namn, beskrivning, licens och etc. om du inte vet vad du ska svara, tryck bara på enter. I detta fall används ordet mellan parenteser som standardvärde.
5. Nu ska du se filen 'package.json' skapad i din mapp och det betyder att du skapade Node.js -projektet framgångsrikt.
Steg 5: Kodning
Vi måste skriva några koder här. Låt oss beskriva några använda bibliotek:
- Node Telegram Bot API för att hantera telegram bot API -begäranden.
- Johnny-Five-plattformen för att ansluta till Arduino.
Allt du behöver veta om dessa bibliotek finns på deras länkade webbplatser. vi använder dem bara i vår kod men hela dokumentationen av dem finns på deras bloggar.
Jag använder Microsoft Visual Studio Code för kodredigering. men du kan använda vilken du vill. Öppna kodredigeringsprogram och skapa en fil med namnet 'index.js' (eller något du angav i ingångsdelen av Node.js -projektets steg) i relaterad katalog.
2. Skriv kod:
var five = require ("johnny-five"); låt TelegramBot = require ('node-telegram-bot-api'); const token = '##############################################'; const bot = new TelegramBot (token, {polling: true}); var board = new five. Board (); const answerCallbacks = {};
bot.on ("meddelande", funktion (msg) {
const callback = answerCallbacks [msg.chat.id]; if (återuppringning) {delete answerCallbacks [msg.chat.id]; återuppringning (msg); }});
board.on ("ready", function () {
var led = ny fem. Led (13);
bot.on ('meddelande', (msg) => {
const chatId = msg.chat.id; const text = msg.text; if (text == '/start') {start (chatId, led); }}); });
funktionsstart (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 ();} annars om (data == 'turnoff') {led.off ();}})}); }
funktion getKeyboardOptions () {
const options = {"reply_markup": {resize_keyboard: true, "inline_keyboard":
returalternativ;
}
3. Ersätt tokenegenskapens värde med ett värde du skrev ner i steget för att skapa bot
4. Spara koden
5. Öppna terminalen och ange följande kommando:
npm i-spara johnny-five node-telegram-bot-api
6. Efter installation av moduler, medan din Arduino är ansluten till USB -porten, ange följande kommando i terminalen:
nod index.js
7. Du bör se något liknande:
1534514872949 Tillgänglig /dev/cu.usbmodem1411
1534514872957 Ansluten /dev/cu.usbmodem1411 1534514876660 Repl Initialized >>
8. Öppna telegram och sök efter din bots användarnamn (eller öppna det från BotFather) och ange detta kommando:
/Start
9. Du bör se en kontrollpanel som kan styra den inbyggda Arduino LED med kommandon "Slå på" och "Stäng av", om du har turen;)
Rekommenderad:
DIY handkontaktdispenser utan kontakt utan en Arduino eller en mikrokontroller: 17 steg (med bilder)
DIY handkontaktdispenser utan kontakt utan en Arduino eller en mikrokontroller: Som vi alla vet drabbade COVID-19-utbrottet världen och förändrade vår livsstil. I detta tillstånd är alkohol och handdesinfektionsmedel viktiga vätskor, men de måste användas på rätt sätt. Vidrör alkoholbehållare eller handdesinfektionsmedel med infekterade händer
Light Jewel ✽ Styr din LED -rand utan Arduino och kod: 5 steg (med bilder)
Light Jewel ✽ Kontrollera din LED -rand utan Arduino och kod: Detta är en smart lampa som ändrar ljusstyrkan genom att fälla överdelen. Koncept: Detta är en användarvänlig lampa för alla som tycker om att läsa i en avkopplande miljö. Försök att föreställa dig människor som sitter vid skrivbordet vid ett fönster med en cool
Navigera robot med skosensorer, utan GPS, utan karta: 13 steg (med bilder)
Navigera robot med skosensorer, W/o GPS, W/o karta: Roboten rör sig i en förprogrammerad väg och överför (över bluetooth) sin faktiska rörelseinformation till en telefon för spårning i realtid. Arduino är förprogrammerad med sökväg och oblu används för att känna av robotens rörelse. oblu överför rörelse till
Hur man styr robotarm med 6 -kanals servospelare utan kodning: 5 steg
Så här styr du robotarm med 6 -kanals servospelare utan kodning: Denna handledning visar hur du styr robotarm med 6 -kanals servospelare utan kodning
Headless Pi - Komma igång din Raspberry Pi utan ytterligare hårdvara: 4 steg (med bilder)
Headless Pi - Komma igång din Raspberry Pi utan ytterligare hårdvara: Hej, anledningen till att du hamnade här är antagligen att du är väldigt lik mig! Du vill inte gå lätt på din Pi - anslut Pi till en bildskärm, anslut ett tangentbord och en mus och voila! &Hellip; Pfft, vem gör det ?! En Pi är ju en &