Sommario:
- Passaggio 1: installa Node.js sul tuo PC
- Passaggio 2: parte Arduino
- Passaggio 3: ottieni il token del bot di Telegram
- Passaggio 4: creare un progetto Node.js
- Passaggio 5: codifica
Video: Controlla Arduino usando Telegram Bot senza hardware aggiuntivo: 5 passaggi
2024 Autore: John Day | [email protected]. Ultima modifica: 2024-01-30 10:03
C'è una vasta gamma di cose che puoi fare con Arduino, ma hai mai pensato di controllare il tuo Arduino usando un bot di Telegram? COSA TI SERVE:
- Arduino UNO
- Node.js installato sul tuo PC
- Alcuni dispositivi controllabili (usiamo il LED di bordo di Arduino al pin 13 qui, ma sentiti libero di chiedere qualsiasi cosa tu voglia fare nei commenti)
Passaggio 1: installa Node.js sul tuo PC
Node.js è un runtime JavaScript, ma non farti prendere dal panico se non hai un background di programmazione. Ho preparato quello che ti serve e puoi scaricarli. In questo progetto, utilizzeremo Node.js per:
- Crea bot di Telegram
- Controlla Arduino
INSTALLA NODE. JS:
Vai alla pagina di download ufficiale di Node.js e scarica l'ultimo pacchetto di installazione basato sul tuo sistema operativo.
*Ricorda l'ultimo numero di versione come menzionato nella parte superiore della pagina di download, lo useremo nel passaggio successivo.
Dopo aver scaricato il pacchetto e averlo installato, dovresti verificare se Node.js è stato installato completamente o meno.
VERIFICARE SE IL PACCHETTO È INSTALLATO COMPLETAMENTE:
Se sei su Windows, apri CMD e se sei su macOS apri il terminale e digita:
nodo -v
Ora dovresti vedere la versione che hai visitato nella pagina dei download di Node.js, stampata qui.
Altrimenti ho messo qualche tutorial qui sotto per riprovare:
- finestre
- Mac OS
Passaggio 2: parte Arduino
In questo passaggio l'unica cosa che devi fare è caricare un firmware IDE Arduino integrato sul tuo Arduino Uno.
Importante: devi aggiornare il tuo IDE Arduino all'ultima versione rilasciata da Arduino.
Importa libreria firmata:
Menu principale >> File >> Esempi >> Firmata >> StandardFirmata
Verifica e carica il codice su Arduino:
1. Menu principale >> Schizzo >> Verifica/Compila
2. Menu principale >> Schizzo >> Carica
Tutto fatto.
Passaggio 3: ottieni il token del bot di Telegram
Apri Telegram e cerca @BotFather o clicca qui per aprire questo bot su Telegram.
- Digita /newbot e premi invio
- Scegli un nome per il tuo bot
- Scegli un nome utente per il tuo bot. Deve finire con "bot"
- Ora bot ti invia alcune informazioni incluso il tuo token di accesso API. Scrivilo, useremo questo token nei prossimi passaggi
Passaggio 4: creare un progetto Node.js
CREA UN NUOVO PROGETTO NODE. JS
Per creare il progetto Node.js e installare i moduli è necessario utilizzare il terminale, quindi se sei su Windows, usa CMD e in caso di utilizzo di macOS usa Terminal per tutti i passaggi seguenti.
1. Crea una cartella da qualche parte per il progetto
2. CD (Cambia directory) nella cartella creata di recente. Ad esempio, se hai chiamato quella cartella "TelegramBot" e l'hai messa sul desktop, scrivi questo nel terminale e premi invio:
cd Desktop/TelegramBot
3. Per creare un progetto Node.js, inserisci il seguente comando:
npm init
4. Rispondi ad alcune domande tra cui nome, descrizione, licenza e così via. Se non sai cosa rispondere, premi invio. In questo caso la parola tra parentesi verrà utilizzata come valore predefinito.
5. Ora dovresti vedere il file 'package.json' creato nella tua cartella e questo significa che hai creato il progetto Node.js con successo.
Passaggio 5: codifica
Abbiamo bisogno di scrivere alcuni codici qui. Descriviamo alcune librerie usate:
- Node Telegram Bot API per gestire le richieste API Telegram bot.
- Piattaforma Johnny-Five per connettersi ad Arduino.
Tutto ciò che devi sapere su queste biblioteche può essere trovato nei loro siti Web collegati. li usiamo solo nel nostro codice, ma la documentazione completa è sui loro blog.
Uso Microsoft Visual Studio Code per la modifica del codice. ma puoi usare qualsiasi altro ti piaccia.1. Apri il software di modifica del codice e crea un file chiamato "index.js" (o qualsiasi cosa tu abbia inserito nella parte del punto di ingresso del passaggio di creazione del progetto Node.js) nella directory correlata.
2. Scrivi codice:
var five = require("johnny-five");let TelegramBot = require('node-telegram-bot-api'); const token = '###########################################'; const bot = new TelegramBot(token, { polling: true }); var board = new five. Board(); const answerRichiamate = {};
bot.on("messaggio", funzione (msg) {
const callback = answerCallbacks[msg.chat.id]; if (callback) { delete answerCallbacks[msg.chat.id]; restituisce la richiamata (msg); } });
board.on("pronto", function() {
var led = nuovo cinque. Led(13);
bot.on('messaggio', (msg) => {
const chatId = msg.chat.id; const testo = msg.testo; if (testo == '/start') { start(chatId, led); } }); });
funzione start(chatId, led) {
bot.sendMessage(chatId, "Pannello di controllo 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(); } else if (data == 'turnoff') { led.off(); } }) }); }
function getKeyboardOptions() {
const options = { "reply_markup": { resize_keyboard: true, "inline_keyboard":
opzioni di restituzione;
}
3. Sostituisci il valore della proprietà del token con uno che hai annotato nella fase di creazione del bot
4. Salva il codice
5. Apri il terminale e inserisci il seguente comando:
npm i --save johnny-five node-telegram-bot-api
6. Dopo aver installato i moduli, mentre Arduino è collegato alla porta USB, nel terminale inserisci il seguente comando:
nodo index.js
7. Dovresti vedere qualcosa come:
1534514872949 Disponibile /dev/cu.usbmodem1411
1534514872957 Connesso /dev/cu.usbmodem1411 1534514876660 Repl Inizializzato >>
8. Apri Telegram e cerca il nome utente del tuo bot (o aprilo da BotFather) e inserisci questo comando:
/cominciare
9. Dovresti vedere un pannello di controllo in grado di controllare il LED Arduino integrato con i comandi "Accendi" e "Spegni", se sei abbastanza fortunato;)
Consigliato:
Gioiello luminoso ✽ Controlla la tua striscia LED senza Arduino e codice: 5 passaggi (con immagini)
Gioiello luminoso Controlla la tua striscia LED senza Arduino e codice: questa è una lampada intelligente che cambia la luminosità piegando il pezzo superiore. Concetto: questa è una lampada facile da usare per chiunque ami leggere in un ambiente rilassante. Prova a immaginare le persone sedute alla scrivania vicino a una finestra con un po' di fresco
Controlla la velocità del motore CC senza spazzole utilizzando Arduino e il modulo Bluetooth (HC-05): 4 passaggi
Controlla la velocità del motore CC senza spazzole utilizzando Arduino e il modulo Bluetooth (HC-05): IntroduzioneIn questo tutorial, controlleremo la velocità del motore CC senza spazzole utilizzando Arduino UNO, il modulo Bluetooth (HC-05) e l'applicazione Android per Bluetooth ( Controller Bluetooth Arduino)
Pi senza testa: avviare il tuo Raspberry Pi senza hardware aggiuntivo: 4 passaggi (con immagini)
Pi senza testa: avviare il tuo Raspberry Pi senza hardware aggiuntivo: Ehi, il motivo per cui sei arrivato qui è, immagino, che sei molto simile a me! Non vuoi andarci piano con il tuo Pi: collega il Pi a un monitor, collega una tastiera e un mouse e voilà!…Pfft, chi lo fa?! Dopotutto, un Pi è un &
Mod mouse a fuoco rapido SENZA aggiungere un pulsante aggiuntivo: 4 passaggi
Mod mouse a fuoco rapido SENZA aggiungere un pulsante aggiuntivo: ho eseguito una modifica a fuoco rapido sul mio mouse Logitech MX500 malconcio. Ci sono molti howto in giro, ho usato questo: www.instructables.com/id/Add_a_rapid_fire_button_to_your_mouse_using_a_555_/ La differenza nel mio approccio è: l'ho fatto senza un'aggiunta
Dispositivo di raffreddamento/supporto per laptop a costo zero (senza colla, senza foratura, senza dadi e bulloni, senza viti): 3 passaggi
Dispositivo di raffreddamento/supporto per laptop a costo zero (senza colla, senza foratura, senza dadi e bulloni, senza viti): AGGIORNAMENTO: PER FAVORE, PER FAVORE, PER FAVORE, PER IL MIO ISTRUTTORE, GRAZIE ^_^ POTRESTI ANCHE VOTARE PER IL MIO ALTRO CONCORSO ISCRIZIONE A www.instructables.com/id/Zero-Cost-Aluminum-Furnace-No-Propane-No-Glue-/ O FORSE VOTA PER IL MIO MIGLIORE AMICO