Mục lục:

Raspberry Pi, Android, IoT và Bluetooth Powered Drone: 7 bước (có hình ảnh)
Raspberry Pi, Android, IoT và Bluetooth Powered Drone: 7 bước (có hình ảnh)

Video: Raspberry Pi, Android, IoT và Bluetooth Powered Drone: 7 bước (có hình ảnh)

Video: Raspberry Pi, Android, IoT và Bluetooth Powered Drone: 7 bước (có hình ảnh)
Video: 5 Dự Án Nổi Bật với Raspberry Pi trong năm 2022 2024, Tháng bảy
Anonim
Raspberry Pi, Android, IoT và Drone hỗ trợ Bluetooth
Raspberry Pi, Android, IoT và Drone hỗ trợ Bluetooth
Raspberry Pi, Android, IoT và Drone hỗ trợ Bluetooth
Raspberry Pi, Android, IoT và Drone hỗ trợ Bluetooth
Raspberry Pi, Android, IoT và Drone hỗ trợ Bluetooth
Raspberry Pi, Android, IoT và Drone hỗ trợ Bluetooth
Raspberry Pi, Android, IoT và Drone hỗ trợ Bluetooth
Raspberry Pi, Android, IoT và Drone hỗ trợ Bluetooth

Sử dụng Raspberry Pi cho logic trên bo mạch, máy tính di động nhỏ gọn này sẽ tạo một cổng cục bộ phát video trong thời gian thực đồng thời tạo ổ cắm Bluetooth để đọc các giá trị được gửi bởi một ứng dụng Android tùy chỉnh. Ứng dụng đồng bộ hóa với máy bay không người lái và sử dụng thông tin đầu vào của người dùng để gửi hướng dẫn đến máy bay không người lái ngay lập tức.

Dự án này khá khó để làm từ đầu. Hy vọng rằng những thông tin sau đây sẽ cung cấp cái nhìn sâu sắc cho nhiều ứng dụng bay không người lái. Tất cả phần mềm và thiết kế mạch liên quan đến dự án này đều được cung cấp. Hãy tự do sửa đổi và chia sẻ mã theo ý thích của bạn. Vui lòng sử dụng thông tin được cung cấp một cách có trách nhiệm và đừng ngại để lại bình luận bên dưới.

Bước 1: Phần cứng

Phần cứng
Phần cứng
Phần cứng
Phần cứng
Phần cứng
Phần cứng
Phần cứng
Phần cứng

Dưới đây là danh sách phần cứng mà tôi đã sử dụng.

  • Raspberry Pi 3 Mô hình B
  • Mô-đun máy ảnh Raspberry PI
  • Trình điều khiển động cơ L298N
  • 2, Động cơ DC
  • Bàn phím, Màn hình bất kỳ, Chuột, Cáp Ethernet và Cáp HDMI (cho pi)
  • Thẻ MicroSD 8GB
  • Vít, Băng, vv.
  • 2 bánh xe
  • Thiết bị Bluetooth Android (Điện thoại của tôi)
  • 2, 18650 ô
  • Bộ điều chỉnh 5 Volt
  • Một máy tính để lập trình ứng dụng trên

A Raspberry Pi: Đối với độ phân giải luồng cao hơn (hoặc cho người mới bắt đầu), tôi muốn giới thiệu phiên bản mới nhất của kiểu B trong khi các phiên bản nhỏ gọn hơn có thể sử dụng Model A + mới nhất hoặc Pi Zero (Phiên bản máy ảnh). Hãy nhớ rằng nếu bạn sử dụng raspberry pi zero, bạn sẽ cần một khóa Bluetooth và / hoặc Wi-Fi cho nó. Hướng dẫn này sẽ giả sử bạn sử dụng Raspberry Pi 3 B.

Trình điều khiển động cơ: Tôi đã sử dụng L298N, mặc dù bất kỳ trình điều khiển động cơ nào cũng hoạt động. Chỉ cần đảm bảo rằng nó có thể xử lý điện áp và dòng điện động cơ của bạn.

2 Động cơ DC: Đảm bảo rằng chúng có thể chịu được trọng lượng của máy bay không người lái của bạn.

Thân máy: Được sử dụng để giữ tất cả các thành phần bên trong. Thông thường, nhựa cứng hoặc nhôm là vật liệu bền, nhẹ để sử dụng. Để có kết quả tối ưu, thậm chí có thể sử dụng Máy in 3D.

Nguồn điện: Nó hầu như luôn là quyết định khó khăn nhất khi lựa chọn các bộ phận. Pin được yêu cầu phụ thuộc vào hiện tại. Đối với các ứng dụng được cấp nguồn thấp (như 1 hoặc 2 ampe), pin 9v là đủ. Đối với cường độ dòng điện cao hơn, tôi khuyên bạn nên sử dụng pin Lithium Ion 18650 hoặc pin Lithium Polymer vì chúng nhẹ, có thể chứa nhiều năng lượng cho kích thước của chúng và có thể sạc lại được.

2 Bánh xe: Chỉ cần đảm bảo rằng Bánh xe của bạn có cùng kích thước lỗ với trục của động cơ. Đồng thời đảm bảo rằng đường kính của Bánh xe đủ lớn cho máy bay không người lái của bạn. Vì chúng có nhiều biến thể và thiết kế có thể có cho dự án này, chúng có nhiều loại và kích cỡ bánh xe khác nhau để sử dụng.

Bộ điều chỉnh điện áp: Cần có bộ điều chỉnh 5 volt để cung cấp năng lượng cho pi thông qua pin. Tôi đã sử dụng bộ chuyển đổi DC-DC LM2596.

Hầu hết các sản phẩm trong các liên kết đã được sử dụng trong dự án này và là những giao dịch tốt nhất mà tôi có thể tìm thấy vào thời điểm đó.

Bây giờ bạn đã có mọi thứ mình cần, hãy thiết lập số pi.

Bước 2: Thiết lập Raspberry Pi

Thiết lập Raspberry Pi
Thiết lập Raspberry Pi
Thiết lập Raspberry Pi
Thiết lập Raspberry Pi
Thiết lập Raspberry Pi
Thiết lập Raspberry Pi

Bước này sẽ hướng dẫn bạn cách thiết lập Raspberry Pi để bạn có thể bắt đầu viết mã. Nếu bạn đã có thiết lập pi với Raspbian, đừng ngại chuyển sang bước tiếp theo.

Trước tiên, bạn cần tải xuống hệ điều hành cho mâm xôi. Nhận NOOBS nếu bạn là người mới bắt đầu. Nếu bạn đã có kinh nghiệm đáng chú ý với raspberry pi, thì bạn có thể quan tâm đến Raspbian. Tôi sẽ giả định rằng bạn đang sử dụng NOOBS cho hướng dẫn này.

Trong khi tải xuống, hãy định dạng thẻ SD của bạn bằng SD Formatter.

Bây giờ Giải nén và sao chép nội dung tải xuống vào thư mục gốc của thẻ SD của bạn. Root đơn giản có nghĩa là nó không nằm trong bất kỳ thư mục nào. Nếu một thư mục mới được tạo để chứa tất cả các tệp đã giải nén, hãy sao chép qua tệp đó.

Tiếp theo gắn thẻ SD vào pi. Trong khi chèn, nó phải "nhấp" vào hoặc chỉ ngồi bên trong phần dưới cùng của số pi.

Cắm chuột và bàn phím của bạn vào pi. Sau đó cắm cáp HDMI vào pi từ màn hình. Cuối cùng cắm bộ chuyển đổi ổ cắm 3 amp micro USB vào pi. Mặc dù nên sử dụng ổ cắm trên tường, tôi đã sử dụng máy tính xách tay của mình làm nguồn điện (USB từ máy tính xách tay của tôi sang Micro USB trên pi).

Hãy để số pi làm việc của nó. Nếu được nhắc, hãy chọn Raspbian và để nó cài đặt. Làm theo hướng dẫn trong trình cài đặt. Có thể mất một lúc để hoàn thành. Nếu mọi thứ diễn ra suôn sẻ, bạn sẽ thấy một màn hình máy tính để bàn tương tự như ở trên.

Cắm cáp Ethernet từ bộ định tuyến của bạn vào pi. Sau đó, mở dòng lệnh (Biểu tượng "hộp" màu đen ở trên cùng của màn hình). Bạn sẽ cần cập nhật pi thông qua mạng có dây để kết nối nó với mạng không dây.

Sau đó nhấp vào biểu tượng Cáp trên đầu màn hình. Nhập chi tiết mạng của bạn khi được nhắc.

Nhập chính xác văn bản vào dòng tiếp theo như được hiển thị và nhấn enter. Điều này sẽ cập nhật số pi. Nó có thể mất một thời gian. Cứ để nó làm công việc của nó.

sudo apt-get cập nhật

Sau đó nhập mã vào dòng tiếp theo. Điều này cũng sẽ mất một thời gian. Đừng làm bất cứ điều gì cho đến khi nó hoàn thành.

sudo apt-get dist-upgrade

Bây giờ bạn sẽ có thể ngắt kết nối cáp Ethernet, nhấp vào biểu tượng không dây ở đầu màn hình, nhập thông tin mạng của bạn và cuối cùng kết nối với mạng của bạn qua không dây.

Bây giờ, hãy mã hóa bộ phận của máy bay không người lái xử lý các chuyển động.

Bước 3: Xử lý các chuyển động (Máy chủ Bluetooth)

Xử lý các chuyển động (Máy chủ Bluetooth)
Xử lý các chuyển động (Máy chủ Bluetooth)

Để xử lý các chuyển động, ngôn ngữ lập trình "Python 3" được sử dụng. Các tin nhắn yêu cầu robot di chuyển sẽ được gửi qua Bluetooth từ ứng dụng.

Đầu tiên, bạn cần cài đặt thư viện Bluetooth. Nhập các lệnh sau để làm như vậy.

sudo apt-get cập nhật

sudo apt-get cài đặt bluetooth

sudo apt-get install bluez

sudo apt-get install python-bluez

Bây giờ từ màn hình nền, hãy nhấp vào biểu tượng menu bắt đầu, sau đó là Lập trình, rồi đến Python 3. Sau đó, từ thanh công cụ, nhấp vào Tệp, mới. Một cửa sổ mới sẽ xuất hiện.

Sao chép nội dung của tệp đính kèm "bluetoothpi.rtf" vào cửa sổ.

Trên thanh công cụ, nhấp vào Tệp, Lưu dưới dạng. Lưu nó trong thư mục / home / pi / Desktop / dưới dạng styles.py.

Bây giờ để kiểm tra mã, hãy nhấp vào biểu tượng Bluetooth ở góc trên bên phải của màn hình. Ghép nối pi raspberry với thiết bị Android của bạn. Tải xuống ứng dụng có tên BlueTerm trên thiết bị Android của bạn. Sau đó, trong dòng lệnh, hãy nhập đoạn mã sau được in đậm. Điều này sẽ thực thi mã python.

sudo python /home/pi/Desktop/movements.py

Dòng chữ "Đang chờ kết nối" sẽ xuất hiện trên pi.

Khởi động BlueTerm và nhấp vào biểu tượng tùy chọn và sau đó là nút "tìm kiếm kết nối".

Trên ứng dụng, tên mâm xôi pi của bạn sẽ xuất hiện. Bấm vào nút có tên của số pi. Văn bản "Kết nối được chấp nhận từ" sẽ xuất hiện trên số pi theo sau là địa chỉ của nó. Bây giờ bất cứ điều gì bạn nhập vào điện thoại, sẽ được hiển thị trong số pi.

Bạn đã mã hóa thành công ổ cắm máy chủ Bluetooth của riêng mình!

Bước 4: Ứng dụng Android (Ứng dụng khách Bluetooth)

Ứng dụng Android (Ứng dụng khách Bluetooth)
Ứng dụng Android (Ứng dụng khách Bluetooth)
Ứng dụng Android (Ứng dụng khách Bluetooth)
Ứng dụng Android (Ứng dụng khách Bluetooth)
Ứng dụng Android (Ứng dụng khách Bluetooth)
Ứng dụng Android (Ứng dụng khách Bluetooth)
Ứng dụng Android (Ứng dụng khách Bluetooth)
Ứng dụng Android (Ứng dụng khách Bluetooth)

Tải xuống Android Studio tại đây. Cài đặt nó và làm theo các hướng dẫn được cung cấp trong trình cài đặt.

Bắt đầu một dự án mới. Tạo một hoạt động trống được gọi là MainActivity.

Sao chép nội dung của tệp đính kèm "Logic.txt" trong tệp (tab) "MainActivity.java". Điều này chứa tất cả logic đằng sau ứng dụng. Bạn có thể cần thay đổi tên thiết bị của mình ở cuối tệp.

Sau đó sao chép nội dung của tệp "GUI" trong tệp (tab) "activity_main.xml". Điều này chứa một GUI rất đơn giản cho ứng dụng.

Bây giờ bạn sẽ cần nhập các nút mũi tên (hình ảnh) vào ứng dụng. Giải nén tệp đính kèm Arrows.zip. Ở bên trái của android studio, mở cấu trúc tệp để xem ứng dụng, res, bản đồ nhỏ. Sao chép hình ảnh mũi tên (tệp PNG), nhấp chuột phải vào bản đồ nhỏ của tệp và dán ảnh vào tệp, giữ nguyên tên của các mũi tên. Nó sẽ giống như hình ảnh khi hoàn thành.

Cuối cùng sao chép nội dung của tệp "Manifest" vào tệp (tab) "AndroidManifest.xml" của bạn.

Để kiểm tra ứng dụng, bạn sẽ cần chạy nó trên thiết bị của mình. Để thực hiện việc này, bạn sẽ cần đặt thiết bị ở chế độ nhà phát triển và bật gỡ lỗi USB. Đối với hầu hết các thiết bị, bạn sẽ cần phải đi tới "Cài đặt", "Giới thiệu về điện thoại", cuộn xuống dưới cùng và nhấp vào "Số bản dựng" bảy lần cho đến khi bạn thấy thông báo "Bạn hiện là nhà phát triển!" Quay lại và bây giờ bạn sẽ thấy tab "Tùy chọn nhà phát triển". Nhấp vào nó và bật gỡ lỗi USB.

Kết nối thiết bị Android của bạn với máy tính qua USB, nhấp vào biểu tượng chạy trên Android Studio và chọn thiết bị của bạn.

Trên pi, bắt đầu mã python được tạo ở bước 3 bằng cách nhập lệnh in đậm:

sudo python /home/pi/Desktop/movements.py

Sau đó nhấp vào nút kết nối trong ứng dụng. Khi được kết nối, một số mũi tên sẽ xuất hiện trên ứng dụng. Bất cứ khi nào bạn nhấp vào một, nó sẽ cập nhật trạng thái "di chuyển" của pi.

Sẽ ổn nếu nền của ứng dụng gặp lỗi. Điều này sẽ được khắc phục sau.

Bạn vừa tạo ứng dụng của riêng mình và Ứng dụng khách Bluetooth.

Bước 5: Kết nối phần cứng

Kết nối phần cứng
Kết nối phần cứng
Kết nối phần cứng
Kết nối phần cứng
Kết nối phần cứng
Kết nối phần cứng

Hàn các kết nối trong sơ đồ trên. Gắn cả mô-đun máy ảnh vào pi nữa.

Chạy ứng dụng và thực thi tệp moving.py. Nếu các động cơ chuyển động chính xác khi sử dụng ứng dụng, hãy thoải mái đặt tất cả các thành phần vào một lớp vỏ hoàn thiện cho máy bay không người lái. Bạn có thể cần phải sửa đổi mã các giá trị "CAO" và "THẤP" để nó di chuyển chính xác.

Trong bước tiếp theo, chúng tôi sẽ thêm tính năng phát trực tuyến của máy bay không người lái.

Bước 6: Truyền trực tuyến

Truyền trực tuyến
Truyền trực tuyến
Truyền trực tuyến
Truyền trực tuyến
Truyền trực tuyến
Truyền trực tuyến

Có nhiều cách để phát trực tuyến video bằng Pi, nhưng sử dụng uv4l cho đến nay là cách dễ nhất mà hầu như không có độ trễ.

Chỉ cần một lưu ý nhỏ, nếu bạn đã đặt máy bay không người lái của mình lại với nhau và không thể kết nối nó với màn hình và bàn phím, bạn sẽ cần phải SSH vào máy bay không người lái của mình. Để thực hiện việc này, hãy tải xuống Putty trên máy tính của bạn. Mở nó và nhập địa chỉ IP của mâm xôi của bạn (tìm địa chỉ IP bằng cách gõ lệnh ifconfig). Nó sẽ nhắc bạn nhập tên người dùng và mật khẩu. Tên người dùng và mật khẩu mặc định lần lượt là pi và raspberry. Bây giờ bất cứ điều gì bạn nhập vào hộp lệnh sẽ giống như nhập lệnh trực tiếp vào máy bay không người lái.

thiết lập uv4l

Nhập lệnh này:

sudo nano /etc/apt/sources.list

Thêm dòng sau vào dòng cuối cùng của tệp.

deb https://www.linux-projects.org/listing/uv4l_repo/raspbian/ jessie main

Thoát và lưu tệp bằng cách nhấn Ctrl-X rồi nhập Có.

Sau đó gõ dòng sau và nhấn enter.

sudo apt-get cập nhật

thì đây:

sudo apt-get install uv4l uv4l-raspicam

Nhập từng dòng lệnh sau. Chờ cho nó hoàn thành công việc của nó trước khi nhập vào dòng tiếp theo.

sudo apt-get install uv4l-raspicam-extras

khởi động lại dịch vụ sudo uv4l_raspicam

sudo rpi-update

sudo apt-get install uv4l-server uv4l-uvc uv4l-xscreen uv4l-mjpegstream uv4l-dummy uv4l-raspidisp

sudo apt-get install uv4l-webrtc

sudo apt-get install uv4l-xmpp-bridge

sudo apt-get install uv4l-raspidisp-extras

Sau đó, tất cả những gì bạn phải làm là nhập lệnh sau để bắt đầu phát trực tuyến (thay thế "raspberrypi" bằng địa chỉ IP của mâm xôi / Tên máy chủ trong mạng của bạn)

cvlc https:// raspberrypi: 8080 / stream / video.mjpeg

Điều này sẽ bắt đầu phát trực tuyến video trong thời gian thực trên cổng 8080. Luồng sẽ được nhìn thấy trong nền ứng dụng của bạn ngay bây giờ. Để xem luồng trong bất kỳ trình duyệt nào, hãy nhập URL này (trong đó "raspberrypi" là địa chỉ IP máy bay không người lái của bạn).

https:// raspberrypi: 8080 / stream / video.mjpeg

Xin chúc mừng, bạn đã hoàn thành máy bay không người lái do thám của mình.

Bước 7: Lái xe

Lật công tắc nguồn và bắt đầu khám phá.

Nếu bạn muốn biết cách làm món khác, hãy hỏi tôi và tôi sẽ xem tôi có thể làm gì.

Nếu bạn có bất kỳ câu hỏi nào, hãy bình luận bên dưới và tôi sẽ cố gắng hết sức để giải đáp.

Cảm ơn vì đã đọc!

Đề xuất: