Raspberry Pi Điều Khiển LED qua Bluetooth

Hướng dẫn này sẽ chỉ bạn cách lập trình Raspberry Pi để điều khiển LED thông qua Bluetooth hoặc BLE.

Hướng dẫn này cung cấp hướng dẫn cho cả hai module.

Chúng ta sẽ sử dụng Bluetooth Serial Monitor App trên smartphone để gửi lệnh đến Raspberry Pi.

Các lệnh này bao gồm:

Raspberry Pi LED Bluetooth

Linh Kiện Cần Thiết

1×Raspberry Pi 5
1×HC-05 Bluetooth Module
1×(Thay thế) HM-10 BLE Module
1×LED Kit
1×LED (red)
1×LED Module
1×Điện trở 220 ohm
1×breadboard
1×Dây nối Jumper
1×(Khuyến nghị) Screw Terminal Block Shield for Raspberry Pi
1×(Khuyến nghị) Raspberry Pi Prototyping Base Plate & Breadboard Kit
1×(Khuyến nghị) HDMI Touch Screen Monitor for Raspberry Pi

Or you can buy the following kits:

1×DIYables Sensor Kit (30 sensors/displays)
1×DIYables Sensor Kit (18 sensors/displays)

Về LED và Bluetooth Module

Nếu bạn chưa quen thuộc với LED và Bluetooth Module (sơ đồ chân, cách hoạt động, cách lập trình ...), các hướng dẫn sau có thể giúp bạn học:

Sơ Đồ Kết Nối

  • Nếu bạn muốn điều khiển LED thông qua Bluetooth, HC-05 Bluetooth module nên được sử dụng cùng với sơ đồ kết nối dưới đây.
Raspberry Pi LED Bluetooth sơ đồ đấu dây

This image is created using Fritzing. Click to enlarge image

  • Nếu bạn muốn điều khiển LED thông qua BLE, HM-10 BLE module nên được sử dụng cùng với sơ đồ kết nối dưới đây.
Raspberry Pi LED ble sơ đồ đấu dây

This image is created using Fritzing. Click to enlarge image

Code Raspberry Pi - điều khiển LED qua Bluetooth/BLE

Code này hoạt động cho cả HC-05 Bluetooth module và HM-10 BLE module. Có thể áp dụng cho cả hai.

Các Bước Nhanh

  • Đảm bảo bạn đã cài đặt Raspbian hoặc hệ điều hành tương thích với Raspberry Pi khác trên Pi của mình.
  • Đảm bảo Raspberry Pi của bạn được kết nối với cùng mạng nội bộ như PC của bạn.
  • Đảm bảo Raspberry Pi của bạn được kết nối với internet nếu bạn cần cài đặt một số thư viện.
  • Nếu đây là lần đầu tiên bạn sử dụng Raspberry Pi, xem Raspberry Pi - Cài Đặt Phần Mềm
  • Kết nối PC của bạn với Raspberry Pi qua SSH bằng SSH client tích hợp trên Linux và macOS hoặc PuTTY trên Windows. Xem cách kết nối PC với Raspberry Pi qua SSH.
  • Đảm bảo bạn đã cài đặt thư viện RPi.GPIO. Nếu chưa, hãy cài đặt bằng lệnh sau:
sudo apt-get update sudo apt-get install python3-rpi.gpio
pip install pyserial
  • Tạo file Python script bluetooth_led.py và thêm code sau:
# Mã Raspberry Pi này được phát triển bởi newbiely.vn # Mã Raspberry Pi này được cung cấp để sử dụng công khai, không có ràng buộc. # Để xem hướng dẫn chi tiết và sơ đồ kết nối, vui lòng truy cập: # https://newbiely.vn/tutorials/raspberry-pi/raspberry-pi-control-led-via-bluetooth import serial import RPi.GPIO as GPIO from time import sleep # Define pins LED_PIN = 16 # GPIO 16 (LED pin) # Set up GPIO GPIO.setmode(GPIO.BCM) GPIO.setup(LED_PIN, GPIO.OUT) # Define serial port for Bluetooth communication bluetooth = serial.Serial('/dev/ttyS0', baudrate=9600, timeout=1) # Main program try: bluetooth.flushInput() # Clear any existing data in the input buffer while True: bluetooth.write(b"Raspberry Pi here, command me!\n") if bluetooth.inWaiting() > 0: command = bluetooth.readline().decode('utf-8').strip() # Read until newline character if command == "LED OFF": GPIO.output(LED_PIN, GPIO.LOW) # Turn off LED bluetooth.write(b"LED is turned OFF\n") # Report action to smartphone app elif command == "LED ON": GPIO.output(LED_PIN, GPIO.HIGH) # Turn on LED bluetooth.write(b"LED is turned ON\n") # Report action to smartphone app # Add a delay to avoid excessive looping sleep(0.1) except KeyboardInterrupt: pass finally: GPIO.cleanup() bluetooth.close()
  • Lưu file và chạy Python script bằng cách thực hiện lệnh sau trong terminal:
python3 bluetooth_led.py
  • Tải và cài đặt Bluetooth Serial Monitor App trên smartphone của bạn.
  • Sau khi code được upload, mở Bluetooth Serial Monitor App trên smartphone và chọn Classic Bluetooth hoặc BLE tùy thuộc vào module bạn đang sử dụng.
Bluetooth serial monitor app
  • Kết nối Bluetooth App với HC-05 Bluetooth module hoặc HM-10 BLE module.
Bluetooth serial monitor pairing
  • Nhập "ON" hoặc "OFF" và nhấn nút Send.
Bluetooth serial monitor app
  • Kiểm tra trạng thái LED trên board Raspberry Pi. Nó sẽ ON hoặc OFF.
  • Chúng ta cũng có thể quan sát trạng thái LED thông qua Bluetooth App.
  • Xem kết quả trên Android App.
Bluetooth serial monitor app

Bạn có thể thắc mắc làm thế nào Raspberry Pi có thể hiểu được toàn bộ lệnh? Ví dụ, khi chúng ta gửi lệnh "OFF", làm thế nào Raspberry Pi có thể phân biệt lệnh đó là "O", "OF" hay "OFF"?

Khi gửi một lệnh, Bluetooth App thêm ký tự xuống dòng ('\n') bằng cách chọn tùy chọn "newline" trên App. Raspberry Pi sẽ đọc dữ liệu cho đến khi gặp ký tự xuống dòng. Ký tự xuống dòng đóng vai trò như một dấu phân cách lệnh.

Nếu bạn thấy Bluetooth Serial Monitor app hữu ích, hãy cân nhắc đánh giá 5 sao trên Play Store. Chúng tôi sẽ rất cảm kích! Cảm ơn bạn!

Video Tutorial

Việc sản xuất video tốn rất nhiều thời gian. Nếu video hướng dẫn hữu ích cho việc học của bạn, hãy đăng ký kênh YouTube để ủng hộ. Nếu nhu cầu đủ cao, chúng tôi sẽ cố gắng làm thêm nhiều video.