-
-
-
Tổng tiền thanh toán:
-
Lập trình mBot Mega với Raspberry Pi bằng Python
08/08/2024
Để sử dụng Raspberry Pi giao tiếp với mBot Mega cần đảm bảo điều khiển động cơ của nó và lấy dữ liệu đầu ra của các cảm biến. Trước tiên, bạn cần cập nhật chương trình cơ sở của mBot Mega trên mBlock 5 lên chương trình cơ sở trực tuyến, sau đó kết nối nó với Raspberry Pi.
Tiến hành kết nối mBot Mega với Raspberry Pi
Để biết chi tiết về cách cập nhật chương trình cơ sở, hãy xem Cập nhật chương trình cơ sở của mBot Mega.
Chuẩn bị Raspberry Pi
Sau đây là một số bước để kết nối thành công mBot Mega với Raspberry Pi:
1. Phương pháp kết nối đầu tiên: Phương pháp GPIO
Kết nối Raspberry Pi và MegaPi bằng cáp hoặc đầu nối cái 2,54 mm (xem hình ảnh để tham khảo)
Sử dụng cáp hoặc đầu nối cá 2,54mm để kết nối Raspberry Pi và MegaPi
Mẹo: Khi bạn kết nối Raspberry Pi và MegaPi bằng đầu nối cái 2,54mm, bạn chỉ cần một bộ pin để cấp nguồn cho cả hai.
Trước tiên, trong Raspberry Pi, hãy tắt lời nhắc đăng nhập từ Desktop > Menu > Preferences > Raspberry Pi Configuration.
Tiến hành tắt lời nhắc đăng nhập
- Nếu bạn đang sử dụng Raspberry 3 B+, vì chức năng Bluetooth chiếm cổng ttyAMA0, bạn có hai cách để giải quyết vấn đề này.
a. Vô hiệu hóa Bluetooth pi3 và khôi phục UART0/ttyAMA0 qua GPIO 14&15
b. Chuyển đổi chức năng Bluetooth pi3 để sử dụng mini-UART(ttyS0) và khôi phục UART0/ttyAMA0 qua GPIO 14&15.
- Ở đây, tôi vô hiệu hóa Bluetooth pi3 làm ví dụ
a. Tìm kiếm pi3-disable-bt trong tệp /boot/overlays/README, nó sẽ chỉ cho bạn cách vô hiệu hóa Bluetooth; nếu bạn muốn chuyển đổi Bluetooth sang mini-UART(ttyS0), bạn có thể tìm kiếm pi3-miniuart-bt.
Tiến hành vô hiệu hóa Bluetooth pi3
b. Sửa đổi tệp /boot/config.txt. Ở cuối tệp, thêm nội dung sau.
#Enable uart
enable_uart=1
dtoverlay=pi3-disable-bt
c. Khởi động lại Raspberry Pi
d. Mở Terminal và nhập lệnh sau:
sudo systemctl disable hciuart
e. Bây giờ bạn có thể sử dụng ttyAMA0 làm UART qua GPIO 14&15
- Cài đặt thư viện python cho Makeblock
# pip3 install makeblock
- Nhập mã ban đầu cho Python
from time import sleep
from makeblock import MegaPi,SerialPort
megapi = MegaPi.connect(SerialPort.connect("/dev/ttyAMA0"))
- Biên dịch mã của bạn bằng Python
2. Phương pháp kết nối thứ hai: Phương pháp kết nối cáp USB
a. Kết nối mBot Mega với máy tính và cập nhật chương trình cơ sở trực tuyến (47.01.101) trên mBlock.
Mẹo: Khi bạn kết nối Raspberry Pi và MegaPi bằng cáp, bạn cần sử dụng hai bộ pin khác nhau để cấp nguồn cho từng bộ.
Tiến hành kết nối máy tính với mBot Mega bằng cách cập nhật chương trình cơ sở trực tuyến trên mBlock.
Vui lòng kết nối mBot Mega với máy tính trước và cập nhật lên chương trình cơ sở trực tuyến trên mBlock.
- Cài đặt thư viện python cho Makeblock
# pip3 cài đặt makeblock
- Nhập mã ban đầu cho Python
from time import sleep
from makeblock import MegaPi,SerialPort
megapi = MegaPi.connect()
# hoặc megapi = MegaPi.connect(SerialPort.connect("/dev/ttyUSB0"))
Mẹo: Khi sử dụng kết nối USB, có hai cách để kết nối với cổng nối tiếp USB.
- Phương pháp 1: Không chỉ định cổng nối tiếp—: MegaPi.connect(), MegaPi.connect() kết nối với cổng nối tiếp USB theo mặc định.
- Phương pháp 2: Chỉ định cổng nối tiếp: MegaPi.connect(SerialPort.connect("/dev/ttyUSB0")), không nhất thiết phải là ttyUSB0, tùy thuộc vào điều kiện thực tế.
- Biên dịch mã của bạn bằng Python
Một số nội dung liên quan để tham khảo:
Sơ đồ nguồn mở của Megapi:
- http://t.hk.uy/kPk
- http://t.hk.uy/kPn
Để điều khiển các cảm biến và động cơ trên mBot Mega bằng Raspberry Pi, trước tiên bạn cần cài đặt thư viện tương ứng.
- Để điều khiển cảm biến tránh chướng ngại vật và cảm biến theo đường và công tắc tác động, hãy sử dụng thư viện: https://gist.github.com/xeecos/ceeb8fd83cc15b4e83b713bb75a982fd
- Để điều khiển mô-đun LED RGB, hãy sử dụng thư viện: https://gist.github.com/xeecos/0a326e03f44633fed726867b0e71a3fe
- Để điều khiển động cơ, hãy sử dụng thư viện: https://gist.github.com/xeecos/5fa6cb5876a8c9449562d8026942fff1/revisions
Các tin khác
- 8 bộ lắp ghép STEAM bằng gỗ cho bé từ 1 tuổi mẹ nên tham khảo ngay 02/02/2024
- Khám phá cửa hàng đồ chơi giáo dục chất lượng, uy tín hàng đầu 01/02/2024
- Top 5 đồ chơi giáo dục sớm giúp trẻ làm quen với lập trình, công nghệ 31/01/2024
- Tổng hợp 4 lợi ích hàng đầu của đồ chơi giáo dục thông minh 30/01/2024
- Tổng hợp đồ chơi giáo dục cho bé giúp phát triển toàn diện 29/01/2024
- Gợi ý 5 đồ chơi giáo dục Montessori tự làm sáng tạo cho trẻ mầm non 13/01/2024
- Tổng hợp 4 cách làm đồ chơi STEAM cho trẻ mầm non sáng tạo nhất 11/01/2024