Sadržaj:
2025 Autor: John Day | [email protected]. Zadnja promjena: 2025-01-23 14:47
Postoji širok raspon stvari koje možete učiniti s Arduinom, no jeste li ikada razmišljali o tome da kontrolirate svoj Arduino pomoću Telegram bota? ŠTO ĆE TREBATI:
- Arduino UNO
- Node.js instaliran na vašem računalu
- Neki uređaj koji se može kontrolirati (ovdje koristimo ugrađenu LED diodu Arduina na pinu 13, ali slobodno pitajte o bilo čemu što želite učiniti u komentarima)
Korak 1: Instalirajte Node.js na svoje računalo
Node.js je vrijeme izvođenja JavaScript -a, ali nemojte paničariti ako nemate pozadinu programiranja. Pripremio sam ono što vam treba i možete ih preuzeti. U ovom projektu koristit ćemo Node.js za:
- Napravite Telegram bot
- Upravljajte Arduinom
INSTALIRAJ NODE. JS:
Idite na službenu stranicu za preuzimanje Node.js i preuzmite najnoviji instalacijski paket na temelju vašeg OS -a.
*Zapamtite broj najnovije verzije kako je navedeno na vrhu stranice za preuzimanje, upotrijebit ćemo ga u sljedećem koraku.
Nakon što preuzmete paket i instalirate ga, trebali biste provjeriti je li Node.js instaliran u potpunosti ili nije.
PROVJERITE DA VIDITE AKO JE PAKET POTPUNO INSTALIRAN:
Ako ste na Windowsima, otvorite CMD, a ako ste na otvorenom terminalu macOS i upišite:
čvor -v
Sada biste trebali vidjeti verziju koju ste posjetili na stranici za preuzimanje Node.js, ispisanu ovdje.
Inače sam ispod stavio neki vodič za pokušaj ponovo:
- Windows
- macOS
Korak 2: Arduino dio
U ovom koraku jedino što trebate učiniti je prenijeti ugrađeni Arduino IDE firmver na svoj Arduino Uno.
Važno: Morate ažurirati svoj Arduino IDE na najnoviju objavljenu verziju tvrtke Arduino.
Uvezi biblioteku firmata:
Glavni izbornik >> Datoteka >> Primjeri >> Firmata >> Standardna firma
Provjerite i prenesite kôd na Arduino:
1. Glavni izbornik >> Skica >> Provjeri/sastavi
2. Glavni izbornik >> Skica >> Prenesi
Sve gotovo.
Korak 3: Nabavite Telegram Bot Token
Otvorite Telegram i potražite @BotFather ili kliknite ovdje da biste otvorili ovog bota na telegramu.
- Upišite /newbot i pritisnite enter
- Odaberite ime za svog bota
- Odaberite korisničko ime za svog bota. Mora završiti s 'bot'
- Sada vam bot šalje neke podatke uključujući vaš API pristupni token. Zapišite ga, mi ćemo koristiti ovaj token u sljedećim koracima
Korak 4: Izradite Node.js projekt
IZRADITE NOVI PROJEKAT NODE. JS
Za izradu Node.js projekta i instalacijske module moramo koristiti terminal, pa ako ste na sustavu Windows, koristite CMD, a u slučaju korištenja macOS -a koristite Terminal za sve dolje navedene korake.
1. Negdje stvorite mapu za projekt
2. CD (Promijeni direktorij) u nedavno stvorenu mapu. Na primjer, ako ste toj mapi dali ime 'TelegramBot' i stavili je na radnu površinu, upišite ovo u terminal i pritisnite enter:
cd Desktop/TelegramBot
3. Za izradu Node.js projekta unesite sljedeću naredbu:
npm init
4. Odgovorite na neka pitanja uključujući ime, opis, licencu itd. Ako ne znate na što odgovoriti, samo pritisnite enter. U tom će se slučaju riječ između zagrada koristiti kao zadana vrijednost.
5. Sada biste trebali vidjeti datoteku 'package.json' stvorenu u vašoj mapi, a to znači da ste uspješno stvorili Node.js projekt.
Korak 5: Kodiranje
Ovdje moramo napisati neke kodove. Opišimo neke korištene knjižnice:
- Node Telegram Bot API za obradu zahtjeva API -ja bot telegrama.
- Johnny-Five platforma za povezivanje s Arduinom.
Sve što trebate znati o tim knjižnicama možete pronaći na njihovim povezanim web stranicama. mi ih samo koristimo u kodu, ali potpuna dokumentacija o njima nalazi se na njihovim blogovima.
Za uređivanje koda koristim Microsoft Visual Studio Code. ali možete koristiti bilo koji drugi koji vam se sviđa.1. Otvorite softver za uređivanje koda i stvorite datoteku pod nazivom 'index.js' (ili bilo što što ste unijeli u ulaznu točku dijela koraka stvaranja projekta Node.js) u povezanom direktoriju.
2. Napišite kod:
var five = require ("johnny-five"); neka TelegramBot = require ('node-telegram-bot-api'); const token = '##########################################'; const bot = novi TelegramBot (token, {polling: true}); var board = novih pet. Board (); const answerCallbacks = {};
bot.on ("poruka", funkcija (poruka) {
const povratni poziv = answerCallbacks [msg.chat.id]; if (povratni poziv) {delete answerCallbacks [msg.chat.id]; povratni povratni poziv (poruka); }});
board.on ("spreman", funkcija () {
var led = novih pet. Led (13);
bot.on ('poruka', (msg) => {
const chatId = msg.chat.id; const text = msg.text; if (text == '/start') {start (chatId, led); }}); });
funkcija pokretanja (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 == 'skretanje') {led.off ();}})}); }
function getKeyboardOptions () {
const options = {"reply_markup": {resize_keyboard: true, "inline_keyboard":
mogućnosti povrata;
}
3. Zamijenite vrijednost svojstva tokena s onom koju ste zapisali u koraku stvaranja bota
4. Spremite kôd
5. Otvorite terminal i unesite sljedeću naredbu:
npm i --spremite johnny-five node-telegram-bot-api
6. Nakon instaliranja modula, dok je vaš Arduino spojen na USB priključak, u terminal unesite sljedeću naredbu:
čvor index.js
7. Trebali biste vidjeti nešto poput:
1534514872949 Dostupno /dev/cu.usbmodem1411
1534514872957 Povezano /dev/cu.usbmodem1411 1534514876660 Repl inicijaliziran >>
8. Otvorite telegram i potražite korisničko ime vašeg bota (ili ga otvorite s BotFather -a) i unesite ovu naredbu:
/početak
9. Trebali biste vidjeti upravljačku ploču koja može kontrolirati ugrađenu Arduino LED s naredbama "Uključi" i "Isključi", ako imate dovoljno sreće;)
Preporučeni:
Bluetooth prekidač za svjetlo na daljinsko upravljanje - nadogradnja. Prekidač svjetla i dalje radi, bez dodatnog pisanja .: 9 koraka (sa slikama)
Bluetooth prekidač za daljinsko upravljanje svjetlom - nadogradnja. Prekidač za svjetlo i dalje radi, bez dodatnog pisanja .: Ažuriranje 25. studenog 2017. - Za verziju ovog projekta velike snage koja može kontrolirati kilovate opterećenja pogledajte Nadogradnja BLE kontrole na opterećenja velike snage - Nije potrebno dodatno ožičenje Ažurirajte 15. studenog 2017. - Neke BLE ploče / softverski hrpe proizvoda
Linearni sat pomoću Arduina + DS1307 + Neopixel: Ponovna upotreba nekog hardvera .: 5 koraka
Linearni sat pomoću Arduina + DS1307 + Neopixel: Ponovna upotreba nekog hardvera .: Iz prethodnih projekata ostao mi je Arduino UNO i Neopixel LED traka i htio sam napraviti nešto drugačije. Budući da traka Neopixel ima 60 LED svjetala, mislilo se da će je koristiti kao veliki sat. Za označavanje sati koristi se crveni segment sa 5 LED dioda (60 LED
Headless Pi - Pokretanje vašeg Raspberry Pi bez ikakvog dodatnog hardvera: 4 koraka (sa slikama)
Headless Pi - Započinjanje vašeg Raspberry Pi -a bez ikakvog dodatnog hardvera: Hej, razlog što si došao ovdje je, pretpostavljam, da si jako sličan meni! Ne želite jednostavno koristiti Pi - priključite Pi u monitor, spojite tipkovnicu i miša i voila! &Hellip; Pfft, tko to radi ?! Uostalom, Pi je i
Mod brzog vatrenog miša BEZ dodavanja dodatnog gumba: 4 koraka
Mod brzog vatrenog miša BEZ dodavanja dodatnog gumba: Napravio sam mod za brzu vatru na svom pohabanom Logitech MX500 mišu. Postoji mnogo Howtos -a u okolici, ja sam koristio ovaj: www.instructables.com/id/Add_a_rapid_fire_button_to_your_mouse_using_a_555_/ Razlika u mom pristupu je: učinio sam to bez dodatka
Hladnjak / stalak za prijenosno računalo bez troškova (bez ljepila, bez bušenja, bez matica i vijaka, bez vijaka): 3 koraka
Hladnjak / postolje za prijenosno računalo nula troškova (bez ljepila, bez bušenja, bez matica i vijaka, bez vijaka): AŽURIRAJTE: MOLIM VAS LJUBAV GLAS ZA MOJE INSTRUKCIJE, HVALA ^ _ ^ MOŽETE SE I VI GLAVATI ULAZITE NA www.instructables.com/id/Zero-Cost-Aluminium-Furnace-No-Propane-No-Glue-/ ILI MOŽDA GLASATE ZA NAJBOLJEG PRIJATELJA