İçindekiler:
2025 Yazar: John Day | [email protected]. Son düzenleme: 2025-01-23 15:13
Arduino ile yapabileceğiniz çok çeşitli şeyler var, ancak Arduino'nuzu bir Telegram botu kullanarak kontrol etmeyi hiç düşündünüz mü? NEYE İHTİYACINIZ OLACAK:
- Arduino UNO'su
- PC'nizde yüklü Node.js
- Kontrol edilebilir bir cihaz (Biz burada pin 13'te Arduino'nun yerleşik LED'ini kullanıyoruz, ancak yapmak istediğiniz her şeyi yorumlarda sormaktan çekinmeyin)
1. Adım: Node.js'yi PC'nize yükleyin
Node.js bir JavaScript çalışma zamanıdır, ancak programlama geçmişiniz yoksa paniğe kapılmayın. İhtiyacınız olanı hazırladım ve indirebilirsiniz. Bu projede Node.js'yi aşağıdakiler için kullanacağız:
- Telegram botu oluştur
- Arduino'yu Kontrol Et
NODE. JS'İ KURUN:
Resmi Node.js indirme sayfasına gidin ve işletim sisteminize göre en son yükleyici paketini indirin.
*İndirme sayfasının üst kısmında belirtildiği gibi en son sürüm numarasını unutmayın, bir sonraki adımda kullanacağız.
Paketi indirip kurduktan sonra Node.js'nin tamamen kurulup kurulmadığını kontrol etmelisiniz.
PAKETİN TAMAMEN TAKILDIĞINI GÖRMEK İÇİN KONTROL EDİN:
Windows'taysanız, CMD'yi açın ve macOS'taysanız terminali açın ve şunu yazın:
-v düğümü
Şimdi Node.js indirme sayfasında ziyaret ettiğiniz sürümü burada yazdırılmış olarak görmelisiniz.
Aksi takdirde, tekrar denemek için aşağıya bazı öğreticiler koydum:
- pencereler
- Mac os işletim sistemi
Adım 2: Arduino Parçası
Bu adımda yapmanız gereken tek şey, Arduino Uno'nuza yerleşik bir Arduino IDE ürün yazılımı yüklemek.
Önemli: Arduino IDE'nizi Arduino tarafından yayınlanan en son sürüme güncellemeniz gerekir.
Firmata kütüphanesini içe aktar:
Üst Menü >> Dosya >> Örnekler >> Firmata >> StandardFirmata
Arduino'da kodu doğrulayın ve yükleyin:
1. Üst Menü >> Çizim >> Doğrula/Derle
2. Üst Menü >> Çizim >> Yükle
Hepsi tamam.
3. Adım: Telegram Bot Jetonunu Alın
Telegram'ı açın ve @BotFather'ı arayın veya bu botu telegramda açmak için buraya tıklayın.
- /newbot yazın ve enter'a basın
- Botunuz için bir ad seçin
- Botunuz için bir kullanıcı adı seçin. 'bot' ile bitmeli
- Şimdi bot size API erişim belirteciniz de dahil olmak üzere bazı bilgiler gönderiyor. Bir yere yazın, bu jetonu sonraki adımlarda kullanacağız
4. Adım: Bir Node.js Projesi Oluşturun
YENİ BİR NODE. JS PROJESİ OLUŞTURUN
Node.js projesi oluşturmak ve modülleri kurmak için terminal kullanmamız gerekiyor, bu nedenle Windows kullanıyorsanız CMD'yi, macOS kullanıyorsanız aşağıdaki tüm adımlar için Terminal'i kullanın.
1. Proje için bir yerde bir klasör oluşturun
2. En son oluşturulan klasöre CD(Dizini Değiştir). Örneğin, bu klasöre 'TelegramBot' adını verdiyseniz ve masaüstüne koyduysanız, bunu terminalde yazın ve enter tuşuna basın:
cd Masaüstü/TelegramBot
3. Node.js projesi oluşturmak için aşağıdaki komutu girin:
npm başlangıç
4. Ad, tanım, lisans vb. gibi bazı soruları yanıtlayın. Ne cevap vereceğinizi bilmiyorsanız, sadece enter tuşuna basın. Bu durumda parantezler arasındaki kelime varsayılan değer olarak kullanılacaktır.
5. Şimdi klasörünüzde oluşturulan 'package.json' dosyasını görmelisiniz ve bu Node.js projesini başarıyla oluşturduğunuz anlamına gelir.
Adım 5: Kodlama
Buraya bazı kodlar yazmamız gerekiyor. Bazı kullanılmış kütüphaneleri tanımlayalım:
- Telgraf botu API isteklerini işlemek için Düğüm Telegram Bot API'si.
- Arduino'ya bağlanmak için Johnny-Five Platformu.
Bu kütüphaneler hakkında bilmeniz gereken her şey onların bağlantılı web sitelerinde bulunabilir. onları sadece kodumuzda kullanıyoruz, ancak bunların tam belgeleri bloglarında.
Kod düzenleme için Microsoft Visual Studio Code kullanıyorum. ama istediğiniz herhangi birini kullanabilirsiniz.1. Kod düzenleme yazılımını açın ve ilgili dizinde 'index.js' (veya Node.js proje oluşturma adımının giriş noktası bölümünde girdiğiniz herhangi bir şey) adlı bir dosya oluşturun.
2. Kodu yazın:
var beş = require("johnny-five");let TelegramBot = require('node-telegram-bot-api'); const token = '#########################################'; const bot = new TelegramBot(belirteç, { yoklama: doğru }); var board = new beş. Board(); const answerGeri aramalar = {};
bot.on("mesaj", fonksiyon (mesaj) {
const geri arama = cevapCallbacks[msg.chat.id]; if (geri arama) { answerCallbacks[msg.chat.id] silin; geri arama(msg); } });
board.on("hazır", function () {
var led = yeni beş. Led(13);
bot.on('mesaj', (mesaj) => {
const chatId = msg.chat.id; const metin = msg.metin; if (metin == '/start') { start(chatId, led); } }); });
function start(chatId, led) {
bot.sendMessage(chatId, "Arduino Kontrol Paneli", 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": [{ text: "Aç", callback_data: "turnon", }], [{ text: "Kapat", callback_data: "turnoff", }] } }
iade seçenekleri;
}
3. Token özelliğinin değerini bot oluşturma adımında yazdığınız değerle değiştirin
4. Kodu kaydedin
5. Terminali açın ve aşağıdaki komutu girin:
npm i -- johnny-beş düğüm-telgraf-bot-api'yi kaydet
6. Modülleri kurduktan sonra Arduino'nuz USB portuna bağlıyken terminalde aşağıdaki komutu girin:
düğüm indeksi.js
7. Şuna benzer bir şey görmelisiniz:
1534514872949 Mevcut /dev/cu.usbmodem1411
1534514872957 Bağlandı /dev/cu.usbmodem1411 1534514876660 Tekrar Başlatıldı >>
8. Telegramı açın ve botunuzun kullanıcı adını arayın (veya BotFather'dan açın) ve şu komutu girin:
/Başlat
9. Şanslıysanız, yerleşik Arduino LED'ini 'Aç' ve 'Kapat' komutları ile kontrol edebilen bir kontrol paneli görmelisiniz;)
Önerilen:
Arduino ve BTS7960b Kullanarak Güçlü Elektrikli Kaykay E-Bike 350W DC Motoru Kontrol Edin: 9 Adım
Arduino ve BTS7960b Kullanarak Güçlü Elektrikli Kaykay E-Bike 350W DC Motoru Kontrol Edin: Bu eğitimde, Arduino ve DC sürücüsü bts7960b kullanarak bir DC motoru nasıl kontrol edeceğimizi öğreneceğiz. Motor 350W veya sadece küçük bir Toy arduino dc motoru olabilir. gücü BTS7960b sürücüsü Max akımını geçmediği sürece.Videoyu izleyin
RaspberryPi Kullanarak TicTacToe Donanım Uygulaması: 4 Adım
RaspberryPi Kullanarak TicTacToe Donanım Uygulaması: Bu proje, iki oyuncuyu bir ahududu pi kullanarak gösteren iki farklı renkli LED kullanarak etkileşimli bir TicTacToe modeli oluşturmayı amaçlamaktadır. Buradaki fikir, bunu bir ara sokakta daha büyük bir ölçekte uygulamaktı - 3x3 yarı küreden oluşan bir ızgara hayal edin (li
Light Jewel ✽ LED Stripinizi Arduino ve Kod Olmadan Kontrol Edin: 5 Adım (Resimlerle)
Light Jewel ✽ Arduino ve Kod Olmadan LED Stripinizi Kontrol Edin: Bu, üst parçayı katlayarak parlaklığı değiştiren akıllı bir lambadır. Konsept: Bu, rahatlatıcı bir ortamda okumaktan hoşlanan herkes için tamamen kullanıcı dostu bir lambadır. Masada oturan insanları bir pencerenin yanında biraz havalı kahve ile hayal etmeye çalışın
Nodemcu'da Reed Anahtarları, Hall Etkisi Sensörü ve Bazı Hurdaları Kullanarak Kendi Anemometrenizi Nasıl Yapabilirsiniz? - Bölüm 1 - Donanım: 8 Adım (Resimlerle)
Nodemcu'da Reed Anahtarları, Hall Etkisi Sensörü ve Bazı Hurdaları Kullanarak Kendi Anemometrenizi Nasıl Yapabilirsiniz? - Bölüm 1 - Donanım: Giriş Arduino ve Maker Culture çalışmalarıyla başladığımdan beri, şişe kapakları, PVC parçaları, içecek kutuları vb. gibi hurda ve hurda parçaları kullanarak faydalı cihazlar yapmayı sevdim. herhangi bir parçaya veya herhangi bir eşe hayat
Headless Pi - Raspberry Pi'nizi Ek Donanım Olmadan Çalıştırmak: 4 Adım (Resimlerle)
Headless Pi - Raspberry Pi'nizi Herhangi Bir Ek Donanım Olmadan Başlamak: Hey, buraya gelmenizin nedeni, sanırım, benim gibi olmanız! Pi'nizi kolay kullanmak istemezsiniz -- Pi'yi bir monitöre takın, bir klavye ve bir fare bağlayın ve işte!…Pfft, bunu kim yapıyor?! Sonuçta, bir Pi bir &