Raspberry Pi Cảm Biến Siêu Âm LCD
Hướng dẫn này sẽ chỉ bạn cách sử dụng Raspberry Pi để đo khoảng cách từ cảm biến siêu âm và hiển thị kết quả trên LCD I2C.
Linh Kiện Cần Thiết
| 1 | × | Raspberry Pi 5 | ||
| 1 | × | LCD I2C | ||
| 1 | × | Cảm Biến Siêu Âm | ||
| 1 | × | Dây Cầu Nối | ||
| 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ề Cảm Biến Siêu Âm và LCD
Nếu bạn chưa quen thuộc với cảm biến siêu âm và LCD (bao gồm sơ đồ chân, cách hoạt động và cách lập trình), những hướng dẫn sau có thể giúp bạn:
Sơ Đồ Đấu Nối

This image is created using Fritzing. Click to enlarge image
Code Raspberry Pi
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 khác cho Raspberry Pi.
- Đảm bảo Raspberry Pi của bạn được kết nối với cùng mạng cục bộ với PC.
- Đảm bảo Raspberry Pi của bạn được kết nối internet nếu cần cài đặt thư viện.
- Nếu đây là lần đầu bạn sử dụng Raspberry Pi, hãy xem Raspberry Pi - Cài Đặt Phần Mềm
- Kết nối PC với Raspberry Pi thông qua SSH sử dụng SSH client có sẵn 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
- Trước khi sử dụng LCD I2C với Raspberry Pi, chúng ta cần kích hoạt giao diện I2C trên Raspberry Pi. Xem Cách kích hoạt giao diện I2C trên Raspberry Pi
- Cài đặt thư viện LCD I2C bằng cách chạy lệnh sau:
pip install lcddriver
- Tạo file script Python ultrasonic_lcd.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-ultrasonic-sensor-lcd
from gpiozero import DistanceSensor
from lcddriver import lcd
from time import sleep
# GPIO pins for ultrasonic sensor
TRIGGER_PIN = 16
ECHO_PIN = 20
# I2C address 0x27, 16 columns, 2 rows
LCD = lcd()
# Create ultrasonic sensor instance
ultrasonic_sensor = DistanceSensor(trigger=TRIGGER_PIN, echo=ECHO_PIN)
def display_distance(distance):
LCD.lcd_clear()
LCD.lcd_display_string(f"Distance: {distance:.2f} m", 1)
try:
while True:
distance = ultrasonic_sensor.distance
display_distance(distance)
sleep(0.5) # Sleep for 500 milliseconds
except KeyboardInterrupt:
pass
finally:
LCD.lcd_clear()
- Lưu file và chạy script Python bằng cách thực thi lệnh sau trong terminal:
python3 ultrasonic_lcd.py
Script chạy trong vòng lặp vô hạn liên tục cho đến khi bạn nhấn Ctrl + C trong terminal.
Giải Thích Code
Hãy xem giải thích từng dòng trong phần comment của source code!
※ Lưu ý:
- Nếu LCD không hiển thị gì, hãy xem Xử lý sự cố LCD I2C.
- Code được cung cấp chỉ cho mục đích giáo dục. Cảm biến siêu âm rất nhạy cảm với nhiễu, vì vậy nếu bạn dự định sử dụng trong ứng dụng thực tế, bạn nên lọc nhiễu từ cảm biến siêu âm. Xem cách lọc nhiễu cho cảm biến siêu âm để biết thêm thông tin.
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.