Mục lục:
- Bước 1: Raspberry PI và Xbee RC Transmitter
- Bước 2: Định cấu hình Raspberry Pi UART
- Bước 3: Viết tập lệnh Python để đọc giá trị của bộ điều khiển trò chơi
- Bước 4: Kết luận
- Bước 5: Kết nối Raspberry Pi Zero với XBee Radio
Video: Raspberry Pi + Xbee RC Transmitter: 5 bước
2024 Tác giả: John Day | [email protected]. Sửa đổi lần cuối: 2024-01-30 13:35
Tài liệu hướng dẫn này sẽ chỉ cho bạn những gì tôi đã làm để tạo bộ phát Raspberry Pi Zero + Xbee RC của riêng mình
Bước 1: Raspberry PI và Xbee RC Transmitter
Bước 2: Định cấu hình Raspberry Pi UART
Này đó!
Raspberry Pi (tất cả các biến thể) đều cực kỳ linh hoạt và hiện là nền tảng của một hệ sinh thái gồm nhiều tiện ích bổ sung dễ hàn giúp những thiết bị này THỰC SỰ trở nên tiện dụng. Thật không may, một điều mà Raspberry Pi đang thiếu (hiện tại) là bảng đột phá hoặc giao diện GPIO chìa khóa trao tay cho đài XBee (ZigBee). Thiết bị XBee là một cách tuyệt vời để giao tiếp giữa tất cả các loại thiết bị mà không cần nhiều giao thức cắt và phân đoạn hoặc định dạng dữ liệu, đồng thời rất dễ dàng tích hợp các thiết bị USB và gửi dữ liệu của chúng đến các thiết bị từ xa khác. Để bắt đầu, hãy bắt đầu với bất kỳ phiên bản nào của Raspberry Pi. Trong Có thể hướng dẫn này, tôi đã sử dụng Raspberry Pi số 0 và định cấu hình bảng điều khiển nối tiếp để giải phóng UART bằng cách sử dụng Có thể hướng dẫn này.
Bước 3: Viết tập lệnh Python để đọc giá trị của bộ điều khiển trò chơi
Bit mã Python này phản ứng với các sự kiện do người điều khiển trò chơi đưa ra và truyền giá trị của đầu vào trên điều khiển đã tạo ra sự kiện đó. Mã này sẽ gửi dữ liệu nhanh như tốc độ truyền được đặt trên bộ đàm XBee. Trong ví dụ này, bộ đàm được đặt thành 57600 nhưng có thể được đặt thành tốc độ truyền cao nhất. Bộ điều khiển trò chơi là bộ điều khiển trò chơi USB của Logitech. Mã được sử dụng dưới đây:
nhập pygame
nhập nối tiếp
sOut = ""
ser = serial. Serial {
port = '/ dev / ttyAMA0', baudrate = 57600, parity = serial. PARITY_NONE, stopbits = serial. STOPBITS_ONE, bytesize = serial. EIGHTBITS, thời gian chờ = 1
}
pygame.init ()
xong = Sai
trong khi hoàn tất == false:
cần điều khiển = pygame.joystick.joystick (0)
cần điều khiển.init ()
QUY TRÌNH #EVENT
cho sự kiện trong pygame.event.get ():
if event.type == pygame. JOYAXISMOTION:
sOut = "Axis:" + str (event.axis) + "; Giá trị:" + str (event.value)
in (sOut)
ser.write (sOut)
ser.flush ()
sOut = ""
if event.type == pygame. JOYHATMOTION:
sOut = "Hat: + str (event.hat) +"; Giá trị: "+ str (event.value)
in (sOut)
ser.write (sOut)
ser.flush ()
sOut = ""
if event.type == pygame. JOYBUTTONDOWN:
sOut = "Nút xuống:" + str (event.button)
in (sOut)
ser.write (sOut)
ser.flush ()
sOut = ""
if event.button == 8:
print ("Thoát")
xong = Đúng
if event.type == pygame. JOYBUTTONUP:
sOut = "Nút Lên:" + str (event.button)
in (sOut)
ser.write (sOut)
ser.flush ()
sOut = ""
ser.close ()
pygame.quit ()
Bước 4: Kết luận
Bản dựng cuối cùng của việc này sử dụng pin điện thoại phụ để cung cấp năng lượng cho Raspberry Pi, cung cấp năng lượng cho bộ điều khiển trò chơi XBee và Logitech. Trong một dự án tương lai, tôi sẽ thêm một vỏ nhựa được tạo chân không để bao bọc Raspberry PI Zero, XBee Radio và nguồn điện, tất cả đều được gắn vào bộ điều khiển trò chơi trong một gói gọn gàng, đẹp mắt. Cấu trúc bộ phát RC này giúp bạn dễ dàng gửi dữ liệu điều khiển đến bất kỳ thứ gì. Trong lần xây dựng tiếp theo, tôi sẽ gửi dữ liệu đến một robot hexapod mà tôi đã giải cứu khỏi Goodwill. Hy vọng bạn thấy hướng dẫn này hữu ích. Tòa nhà hạnh phúc!
Bước 5: Kết nối Raspberry Pi Zero với XBee Radio
Như thể hiện trong sơ đồ, kết nối chân Pi GPIO 1 (3.3v) với chân XBee 1. Kết nối chân Pi GPIO 6 (Gnd) với chân XBee 10 và chân Pi GPIO 8 (TX) với chân XBee 3 (Din). Bạn cũng có thể sử dụng bảng đột phá XBee sẽ yêu cầu bạn kết nối chân Pi GPIO 2 (5v) với chân 5v trên bảng đột phá
Đề xuất:
Cách tải mã MicroPython vào XBee 3: 18 bước (có hình ảnh)
Cách tải mã MicroPython vào XBee 3: MicroPython là ngôn ngữ lập trình lấy cảm hứng từ Python 3.0, hoạt động trên vi điều khiển, chẳng hạn như XBee 3. MicroPython có thể giúp giảm số lượng nguồn cung cấp và sự cồng kềnh tổng thể của dự án của bạn và làm cho mọi thứ dễ dàng hơn rất nhiều . Tuy nhiên, tôi thấy