Mục lục:

Điều khiển Arduino bằng Telegram Bot mà không cần bất kỳ phần cứng bổ sung nào: 5 bước
Điều khiển Arduino bằng Telegram Bot mà không cần bất kỳ phần cứng bổ sung nào: 5 bước

Video: Điều khiển Arduino bằng Telegram Bot mà không cần bất kỳ phần cứng bổ sung nào: 5 bước

Video: Điều khiển Arduino bằng Telegram Bot mà không cần bất kỳ phần cứng bổ sung nào: 5 bước
Video: Cách sử lý bộ nhớ đầy #shorts #meovat #thanhcongnghe 2024, Tháng bảy
Anonim
Điều khiển Arduino bằng Telegram Bot mà không cần bất kỳ phần cứng bổ sung nào
Điều khiển Arduino bằng Telegram Bot mà không cần bất kỳ phần cứng bổ sung nào

Có rất nhiều việc bạn có thể làm với Arduino, nhưng bạn đã bao giờ nghĩ đến việc điều khiển Arduino của mình bằng bot Telegram chưa? BẠN SẼ CẦN GÌ:

  • Arduino UNO
  • Node.js đã được cài đặt trên PC của bạn
  • Một số thiết bị có thể điều khiển (Chúng tôi sử dụng đèn LED trên bo mạch của Arduino ở chân 13 ở đây, nhưng hãy thoải mái hỏi về bất kỳ điều gì bạn muốn làm trong phần bình luận)

Bước 1: Cài đặt Node.js trên PC của bạn

Cài đặt Node.js trên PC của bạn
Cài đặt Node.js trên PC của bạn

Node.js là một trình chạy JavaScript, nhưng đừng lo lắng nếu bạn không có kiến thức nền tảng về lập trình. Tôi đã chuẩn bị những gì bạn cần và bạn có thể tải chúng xuống. Trong dự án này, chúng tôi sẽ sử dụng Node.js cho:

  1. Tạo bot Telegram
  2. Điều khiển Arduino

CÀI ĐẶT NODE. JS:

Truy cập trang tải xuống Node.js chính thức và tải xuống gói trình cài đặt mới nhất dựa trên hệ điều hành của bạn.

* Hãy nhớ số phiên bản mới nhất như đã đề cập ở đầu trang tải xuống, chúng tôi sẽ sử dụng nó trong bước tiếp theo.

Sau khi tải xuống gói và cài đặt nó, bạn nên kiểm tra xem Node.js đã được cài đặt hoàn chỉnh hay chưa.

KIỂM TRA ĐỂ XEM TRỌN GÓI ĐƯỢC CÀI ĐẶT CÓ HOÀN TOÀN KHÔNG:

Nếu bạn đang sử dụng cửa sổ, hãy mở CMD và nếu bạn đang sử dụng thiết bị đầu cuối mở macOS và nhập:

nút -v

Bây giờ bạn sẽ thấy phiên bản mà bạn đã truy cập trên trang tải xuống Node.js, được in tại đây.

Nếu không, tôi đặt một số hướng dẫn bên dưới để thử lại:

  • các cửa sổ
  • hệ điều hành Mac

Bước 2: Phần Arduino

Phần Arduino
Phần Arduino

Trong bước này, điều duy nhất bạn cần làm là tải lên phần sụn Arduino IDE tích hợp sẵn trên Arduino Uno của bạn.

Quan trọng: Bạn cần cập nhật Arduino IDE của mình lên phiên bản do Arduino phát hành mới nhất.

Nhập thư viện dữ liệu công ty:

Menu trên cùng >> Tệp >> Ví dụ >> Firmata >> StandardFirmata

Xác minh và tải lên mã trên Arduino:

1. Menu trên cùng >> Phác thảo >> Xác minh / Biên dịch

2. Menu trên cùng >> Phác thảo >> Tải lên

Tất cả đã được làm xong.

Bước 3: Nhận mã thông báo Bot Telegram

Nhận mã thông báo Bot Telegram
Nhận mã thông báo Bot Telegram

Mở Telegram và tìm kiếm @BotFather hoặc nhấp vào đây để mở bot này trên telegram.

  1. Nhập / newbot và nhấn enter
  2. Chọn tên cho bot của bạn
  3. Chọn tên người dùng cho bot của bạn. Nó phải kết thúc bằng 'bot'
  4. Bây giờ bot sẽ gửi cho bạn một số thông tin bao gồm cả mã thông báo truy cập API của bạn. Viết nó ra, chúng tôi sẽ sử dụng mã thông báo này trong các bước tiếp theo

Bước 4: Tạo một dự án Node.js

TẠO DỰ ÁN NODE. JS MỚI

Để tạo dự án Node.js và cài đặt các mô-đun, chúng ta cần sử dụng terminal, do đó nếu bạn đang sử dụng Windows, hãy sử dụng CMD và trong trường hợp sử dụng macOS, hãy sử dụng Terminal cho tất cả các bước bên dưới.

1. Tạo một thư mục ở đâu đó cho dự án

2. Đĩa CD (Thay đổi Thư mục) vào thư mục được tạo gần đây. Ví dụ: nếu bạn đặt tên thư mục đó là 'TelegramBot' và đặt nó trên máy tính để bàn, hãy viết điều này vào thiết bị đầu cuối và nhấn enter:

cd Desktop / TelegramBot

3. Để tạo dự án Node.js, hãy nhập lệnh sau:

npm init

4. Trả lời một số câu hỏi bao gồm tên, mô tả, giấy phép, v.v. nếu bạn không biết phải trả lời gì, chỉ cần nhấn enter. Trong trường hợp này, từ giữa dấu ngoặc đơn sẽ được sử dụng làm giá trị mặc định.

5. Bây giờ bạn sẽ thấy tệp 'package.json' được tạo trong thư mục của mình và điều này có nghĩa là bạn đã tạo dự án Node.js thành công.

Bước 5: Mã hóa

Chúng tôi cần viết một số mã ở đây. Hãy mô tả một số thư viện đã sử dụng:

  1. Node Telegram Bot API để xử lý các yêu cầu API telegram bot.
  2. Nền tảng Johnny-Five để kết nối với Arduino.

Tất cả những gì bạn cần biết về các thư viện này có thể được tìm thấy trong các trang web được liên kết của họ. chúng tôi chỉ sử dụng chúng trong mã của mình nhưng tài liệu đầy đủ về chúng có trên blog của họ.

Tôi sử dụng Microsoft Visual Studio Code để chỉnh sửa mã. nhưng bạn có thể sử dụng bất kỳ cái nào khác mà bạn thích.1. Mở phần mềm chỉnh sửa mã và tạo một tệp có tên 'index.js' (hoặc bất kỳ thứ gì bạn đã nhập trong phần điểm nhập của bước tạo dự án Node.js) trong thư mục liên quan.

2. Viết mã:

var five = demand ("johnny-five"); let TelegramBot = request ('node-telegram-bot-api'); const token = '###############################################'; const bot = new TelegramBot (mã thông báo, {polling: true}); var board = new five. Board (); const answerCallbacks = {};

bot.on ("message", function (msg) {

const callback = answerCallbacks [msg.chat.id]; if (callback) {xóa answerCallbacks [msg.chat.id]; return callback (msg); }});

board.on ("sẵn sàng", function () {

var led = new five. Led (13);

bot.on ('message', (msg) => {

const chatId = msg.chat.id; const text = msg.text; if (text == '/ start') {start (chatId, đã dẫn); }}); });

bắt đầu chức năng (chatId, đã dẫn) {

bot.sendMessage (chatId, "Bảng điều khiển 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') { dẫn ra(); } }) }); }

function getKeyboardOptions () {

const options = {"reply_markup": {resize_keyboard: true, "inline_keyboard":

trả lại các tùy chọn;

}

3. Thay thế giá trị của thuộc tính mã thông báo bằng giá trị bạn đã viết ra trong bước tạo bot

4. Lưu mã

5. Mở terminal và nhập lệnh sau:

npm i - lưu johnny-five node-telegram-bot-api

6. Sau khi cài đặt mô-đun, trong khi Arduino của bạn được kết nối với cổng USB, trong thiết bị đầu cuối, hãy nhập lệnh sau:

node index.js

7. Bạn sẽ thấy một cái gì đó như:

1534514872949 Có sẵn /dev/cu.usbmodem1411

1534514872957 Đã kết nối /dev/cu.usbmodem1411 1534514876660 Khởi tạo lại bản sao >>

8. Mở telegram và tìm kiếm tên người dùng bot của bạn (hoặc mở nó từ BotFather) và nhập lệnh sau:

/bắt đầu

9. Bạn sẽ thấy một bảng điều khiển có thể điều khiển đèn LED Arduino tích hợp với các lệnh 'Bật' và 'Tắt', nếu bạn đủ may mắn;)

Đề xuất: