Mục lục:

Autonomous Drone: 7 bước
Autonomous Drone: 7 bước

Video: Autonomous Drone: 7 bước

Video: Autonomous Drone: 7 bước
Video: US Testing New Super Advanced Autonomous Stealth Drones 2024, Tháng bảy
Anonim
Autonomous Drone
Autonomous Drone
Autonomous Drone
Autonomous Drone

Trong dự án này, bạn sẽ tìm hiểu quá trình xây dựng và cấu hình một máy bay không người lái, trước khi chuyển sang điều tra chuyến bay tự hành bằng Mission Planner và MATLAB.

Xin lưu ý rằng hướng dẫn này chỉ nhằm mục đích hướng dẫn. Sử dụng máy bay không người lái có thể rất nguy hiểm đối với những người xung quanh và có thể khiến bạn gặp rắc rối nghiêm trọng với pháp luật nếu sử dụng không thích hợp hoặc không đúng chỗ. Đảm bảo bạn tuân thủ tất cả các luật và quy định xung quanh việc sử dụng máy bay không người lái. Hơn nữa, các mã được cung cấp trên GitHub vẫn chưa được kiểm tra đầy đủ, vì vậy hãy đảm bảo bạn có các mã dự phòng khác để tránh làm mất hoặc làm hỏng máy bay không người lái của mình.

Bước 1: Danh sách bộ phận

Đối với dự án này, bạn sẽ cần một số phần. Trước khi tiếp tục với phần còn lại của dự án này, hãy đảm bảo mua các thành phần sau và tải tệp xuống để in 3D và cắt laser các bộ phận tùy chỉnh.

Các bộ phận đã mua

Khung: Bánh xe lửa DJI F450

www.buildyourowndrone.co.uk/dji-f450-flam…

PDB: Matek PDB-XT60

www.unmannedtechshop.co.uk/matek-pdb-xt60…

Động cơ x4: Emax 2205s 2300kv

www.unmannedtechshop.co.uk/rs2205-s-races…

Cánh quạt x4: Gemfan Carbon / Nylon 5030

hobbyking.com/en_us/gemfan-propeller-5x3-…

ESCs x4: Little Bee 20A 2-4S

hobbyking.com/en_us/favourite-little-bee-…

Bộ điều khiển máy bay: Navio 2 (với ăng-ten GPS / GNSS và mô-đun nguồn)

Raspberry Pi 3B

thepihut.com/collections/raspberry-pi/pro…

Máy phát: FRSKY TARANIS X9D +

www.unmannedtechshop.co.uk/frsky-taranis-…

Máy thu: FrSky XSR 2.4 Ghz ACCST

hobbyking.com/en_us/xsr-eu-lbt.html?_st…

Pin: Bộ pin Lipo TATTU 1800mAh 14.8V 45C 4S1P

www.unmannedtechshop.co.uk/tattu-1800mah-…

Bộ sạc pin: Bộ sạc / cân bằng Turnigy Accucell-6 50W 6A

hobbyking.com/en_us/turnigy-accucell-6-50…

Nguồn cung cấp cho bộ sạc: Nguồn cung cấp RS 12V DC

uk.rs-online.com/web/p/plug-in-power-supp…

Túi pin: Gói sạc Lithium Polymer Hobby King

hobbyking.com/en_us/lithium-polymer-charg…

Đầu nối chuối

www.amazon.co.uk/gp/product/B013ZPUXZS/re…

Bộ định tuyến WiFi: TP-LINK TL-WR802N

www.amazon.co.uk/TP-LINK-TL-WR802N-Wirele…

Thẻ Micro SD: SanDisk 32GB

www.amazon.co.uk/SanDisk-microSDHC-Memory…

Standoffs / Spacers: Nylon M2.5 Thread

thepihut.com/products/adafruit-black-nylon…

Máy tính xách tay

Ties cáp

Velcro Strap

Co nhiệt

Bộ phận in 3D

Vỏ Raspberry Pi / Navio 2 (Trên và dưới)

Hộp đựng pin (Hộp và Nắp)

Bộ phận cắt bằng laser

Lớp điện tử x2

Bước 2: 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

Giai đoạn xây dựng và phần cứng:

  1. Lắp ráp khung quadrotor F450 và vỏ pin được in ở giữa (đảm bảo thêm các miếng đệm M2.5 * 5mm)
  2. Gắn các động cơ vào khung.
  3. Hàn các đầu nối chuối vào ESC và dây động cơ.
  4. Hàn các ESC và mô-đun nguồn vào PDB. Lưu ý: Đảm bảo không sử dụng đầu ra 5V của PDB (nó sẽ không cung cấp đủ điện).
  5. Thêm lớp cắt laser đầu tiên lên trên cùng của khung F450 bằng cách sử dụng miếng đệm nam-nữ M2.5 * 10mm; và gắn PDB và mô-đun nguồn vào lớp này. Lưu ý: đảm bảo đặt các bộ phận sao cho dây đủ dài với tất cả các động cơ.
  6. Kết nối ESC với động cơ và sử dụng dây buộc zip để cố định dây vào khung.
  7. Gắn Navio2 vào Raspberry Pi và đặt nó vào vỏ đã in.
  8. Thêm lớp cắt laser thứ hai lên trên lớp đầu tiên và gắn vỏ Raspberry-Navio bằng các miếng dính hai mặt.
  9. GPS có thể được dán trên đầu vỏ, tuy nhiên ở đây nó đã được đặt trên một lớp thứ ba khác nằm trên vỏ Raspberry-Navio như trong hình, nhưng hoàn toàn phụ thuộc vào người chế tạo nó. Sau đó, chỉ cần kết nối GPS với Navio.
  10. Cố định bộ thu trên đầu lớp thứ hai bằng cách sử dụng miếng dính hai mặt. Kết nối các ESC và dây thu vào các chân Navio. Bộ thu chiếm cột chân đầu tiên và sau đó động cơ chiếm bốn cột tiếp theo. Lưu ý: Mặt trước của máy bay không người lái được xác định bởi động cơ nào được gắn vào trước. Cho dù bạn chọn hướng phía trước nào, hãy đảm bảo rằng các động cơ được kết nối trong hình khi bắt đầu bước này.
  11. Thêm cánh quạt. Bạn nên để các cánh quạt đến cuối, tức là sau khi hoàn thành phần phần mềm và luôn đảm bảo rằng bạn thực hiện các biện pháp phòng ngừa an toàn khi các cánh quạt đang bật để đề phòng trường hợp xảy ra sự cố.

Bước 3: Phần mềm

Phần mềm
Phần mềm
Phần mềm
Phần mềm

Giai đoạn phần mềm: (Tham khảo tài liệu Navio2)

  1. Nhận Hình ảnh Emlid Raspbian mới nhất từ tài liệu Navio2.
  2. Tải xuống, giải nén và chạy Etcher với quyền quản trị viên.
  3. Chọn tệp lưu trữ có hình ảnh và ký tự ổ đĩa thẻ sd.
  4. Nhấp vào “Flash!”. Quá trình này có thể mất vài phút. (Video ví dụ)
  5. Bây giờ để định cấu hình truy cập WiFi, chúng ta cần chỉnh sửa tệp wpa_supplicant.conf nằm trên thẻ SD. Chỉnh sửa nó để làm cho nó trông giống như hình ảnh đầu tiên ở trên cùng của bước này. Lưu ý: ssid là tên của TP-Link khi nó xuất hiện trong máy tính của bạn. Cách tốt nhất để tìm ssid chính xác cho TP-Link của bạn là kết nối máy tính xách tay của bạn với TP-Link và sau đó chạy lệnh bên dưới trên cửa sổ đầu cuối:

Đối với cửa sổ: netsh wlan hiển thị hồ sơ

Đối với mac: mặc định đọc /Library/Preferences/SystemConfiguration/com.apple.airport.preferences | grep SSIDString

psk là mật khẩu được cung cấp trên thẻ đi kèm với TP-Link.

  1. Tháo thẻ SD và đặt nó vào Raspberry Pi và cấp nguồn cho nó.
  2. Để kiểm tra xem Raspberry Pi có được kết nối với TP-Link hay không, bạn có thể sử dụng bất kỳ ứng dụng nào có sẵn hiển thị tất cả các thiết bị được kết nối với mạng của bạn.
  3. Cần phải đặt địa chỉ IP cố định cho các thiết bị được kết nối với TP-Link của bạn để bạn không cần phải thay đổi địa chỉ IP trên mã bạn viết mỗi lần. Bạn chỉ có thể làm như vậy bằng cách mở tplinkwifi.net (tất nhiên là trong khi bạn được kết nối với TP-Link). Nhập Tên người dùng: admin và Mật khẩu: admin. Chuyển đến “DHCP” trong menu bên trái màn hình, sau đó chọn “Đặt trước địa chỉ” từ menu thả xuống. Thêm Địa chỉ MAC của thiết bị bạn muốn gán địa chỉ IP. Ở đây trạm mặt đất (Máy tính xách tay) đã được gán địa chỉ IP là 192.168.0.110 và Raspberry Pi 192.168.0.111.
  4. Bây giờ chúng ta cần tải xuống MAVProxy từ liên kết sau.
  5. Bây giờ, hãy tạo một tệp.bat giống như hình thứ hai ở đầu bước này và đảm bảo rằng bạn sử dụng đường dẫn tệp nơi lưu mavproxy.exe trên máy tính xách tay của bạn. Bạn sẽ cần chạy tệp này (bằng cách nhấp đúp vào tệp) mỗi khi bạn muốn kết nối với máy bay không người lái của mình.
  6. Để Raspberry Pi giao tiếp với MAVProxy, một tệp phải được chỉnh sửa trên Pi.
  7. Nhập sudo nano / etc / default / arducopter vào thiết bị đầu cuối Linux của Raspberry Pi đang lưu trữ chế độ lái tự động Navio2.

  8. Dòng trên cùng của tệp mở ra sẽ có nội dung là TELEM1 =”- A udp: 127.0.0.1: 14550”. Điều này cần được thay đổi để nó trỏ đến địa chỉ IP của PC của bạn.
  9. Cài đặt Mission Planner và chuyển đến phần Thiết lập lần đầu tiên.

Bước 4: Thiết lập lần đầu tiên

Để kết nối với UAV của bạn, hãy làm theo quy trình sau:

  1. Chạy cả tệp.bat MAVProxy của bạn và Công cụ lập kế hoạch sứ mệnh.
  2. Kết nối pin với UAV của bạn và đợi khoảng 30-60 giây. Điều này sẽ giúp nó có thời gian để kết nối với mạng không dây.
  3. Nhấp vào nút kết nối ở trên cùng bên phải của Mission Planner. Trong hộp thoại đầu tiên xuất hiện, nhập 127.0.0.1 và nhấp vào OK. Trong hộp tiếp theo, nhập số cổng 14551 và bấm OK. Sau vài giây Mission Planner sẽ kết nối với MAV của bạn và bắt đầu hiển thị dữ liệu đo từ xa trong bảng điều khiển bên trái.

Khi bạn thiết lập UAV lần đầu tiên, cần phải định cấu hình và hiệu chỉnh các thành phần phần cứng nhất định. Tài liệu ArduCopter có hướng dẫn kỹ lưỡng về cách định cấu hình loại khung, hiệu chuẩn la bàn, hiệu chuẩn điều khiển vô tuyến, hiệu chuẩn gia tốc kế, thiết lập chế độ máy phát rc, hiệu chuẩn ESC và cấu hình phạm vi động cơ.

Tùy thuộc vào cách bạn đã gắn Raspberry Pi của mình trên máy bay không người lái, có thể cần thay đổi hướng bảng trong bảng kế hoạch nhiệm vụ. Điều này có thể được thực hiện bằng cách điều chỉnh tham số Định hướng bo mạch (AHRS_ORIENTATION) trong danh sách tham số nâng cao trong tab Cấu hình / Điều chỉnh trong Công cụ lập kế hoạch nhiệm vụ.

Bước 5: Chuyến bay đầu tiên

Chuyến bay đầu tiên
Chuyến bay đầu tiên
Chuyến bay đầu tiên
Chuyến bay đầu tiên

Sau khi phần cứng và phần mềm đã sẵn sàng, đã đến lúc chuẩn bị cho chuyến bay đầu tiên. Chúng tôi khuyến nghị rằng trước khi thử bay tự động, UAV nên được bay bằng tay bằng cách sử dụng bộ truyền tín hiệu để có cảm nhận về việc xử lý máy bay và khắc phục mọi sự cố có thể tồn tại.

Tài liệu ArduCopter có một phần rất chi tiết và đầy đủ thông tin về chuyến bay đầu tiên của bạn. Nó thảo luận về các chế độ bay khác nhau đi kèm với ArduCopter và những gì mỗi chế độ này thực hiện. Đối với chuyến bay đầu tiên, chế độ ổn định là chế độ máy bay thích hợp nhất để sử dụng.

ArduCopter có nhiều tính năng an toàn được tích hợp sẵn. Một trong những tính năng này là kiểm tra An toàn trước cánh tay, ngăn máy bay trang bị vũ khí nếu phát hiện bất kỳ vấn đề nào. Hầu hết các hoạt động kiểm tra này đều quan trọng trong việc giúp giảm nguy cơ rơi hoặc mất máy bay nhưng chúng có thể bị vô hiệu hóa nếu cần thiết.

Trang bị động cơ là khi chế độ lái tự động tác động sức mạnh vào các động cơ để cho phép chúng quay. Trước khi trang bị động cơ, điều cần thiết là máy bay phải ở trong khu vực thoáng đãng, cách xa mọi người hoặc chướng ngại vật hoặc trong một thao trường bay an toàn. Điều rất quan trọng là không có gì ở gần các cánh quạt, đặc biệt là các bộ phận cơ thể và những thứ khác sẽ bị hư hại bởi chúng. Khi mọi thứ đã rõ ràng và phi công hài lòng rằng có thể khởi động an toàn, các động cơ có thể được trang bị vũ khí. Trang này cung cấp một bộ hướng dẫn chi tiết về cách trang bị vũ khí cho máy bay. Sự khác biệt duy nhất giữa hướng dẫn đó và Navio2 nằm ở bước 7 trang bị vũ khí và bước 2 giải giáp vũ khí. Để đặt Navio2, cả hai gậy phải được ấn xuống và ở giữa trong vài giây (xem hình). Để tước vũ khí, cả hai gậy phải được giữ xuống và sang hai bên trong vài giây (xem hình).

Để thực hiện chuyến bay đầu tiên của bạn, hãy làm theo hướng dẫn này.

Sau chuyến bay đầu tiên, có thể cần phải thực hiện một số thay đổi. Miễn là phần cứng hoạt động đầy đủ và đã được thiết lập đúng cách, những thay đổi này chủ yếu sẽ ở dạng điều chỉnh PID. Hướng dẫn này có một số mẹo hữu ích để điều chỉnh quadcopter, tuy nhiên trong trường hợp của chúng tôi, chỉ cần giảm một chút độ lợi P là đủ để làm cho máy bay ổn định. Sau khi máy bay có thể bay được, bạn có thể sử dụng chức năng tự động dò tìm ArduCopter. Điều này sẽ tự động điều chỉnh các PID để cung cấp phản hồi nhanh nhất trong khi vẫn ổn định. Tài liệu ArduCopter cung cấp hướng dẫn chi tiết về cách thực hiện tự động dò tìm.

Nếu bạn gặp sự cố trong bất kỳ bước nào trong số này, hướng dẫn khắc phục sự cố có thể trợ giúp.

Bước 6: Chuyến bay tự hành

Image
Image

Người lập kế hoạch sứ mệnh

Bây giờ máy bay copter của bạn đã được điều chỉnh và có thể bay tốt trong điều khiển bằng tay, bạn có thể điều tra chuyến bay tự động.

Cách dễ nhất để thực hiện chuyến bay tự hành là sử dụng Mission Planner vì nó chứa nhiều thứ bạn có thể làm với máy bay của mình. Chuyến bay tự hành trong Mission Planner được chia thành hai loại chính; các nhiệm vụ được lên kế hoạch trước (chế độ tự động) và các nhiệm vụ trực tiếp (chế độ có hướng dẫn). Màn hình kế hoạch chuyến bay trong bảng kế hoạch nhiệm vụ có thể được sử dụng để lập kế hoạch chuyến bay bao gồm các điểm tham quan và các hành động cần thực hiện như chụp ảnh. Các điểm tham chiếu có thể được chọn theo cách thủ công hoặc công cụ điểm tham chiếu tự động có thể được sử dụng để tạo các nhiệm vụ khảo sát một khu vực. Sau khi một nhiệm vụ đã được lên kế hoạch và gửi đến máy bay không người lái, chế độ bay Tự động có thể được sử dụng để máy bay sẽ tự động thực hiện nhiệm vụ đã được lên kế hoạch trước. Đây là một hướng dẫn hữu ích về các nhiệm vụ lập kế hoạch.

Chế độ có hướng dẫn là một cách tương tác chỉ huy UAV thực hiện một số việc nhất định. Điều này được thực hiện bằng cách sử dụng tab hành động trong Mission Planner hoặc bằng cách nhấp chuột phải vào bản đồ. UAV có thể được ra lệnh thực hiện nhiều việc như cất cánh, quay lại để phóng và bay đến một vị trí đã chọn bằng cách nhấp chuột phải vào bản đồ tại vị trí mong muốn và chọn Bay Đến Đây.

Bệ an toàn là một điều quan trọng cần xem xét trong quá trình bay tự hành để đảm bảo rằng nếu sự cố xảy ra, máy bay không bị hư hỏng và người không bị thương. Mission Planner được tích hợp chức năng Hàng rào địa lý có thể được sử dụng để giới hạn nơi UAV có thể bay và ngăn nó bay quá xa hoặc quá cao. Có thể nên xem xét việc buộc UAV xuống đất trong vài chuyến bay đầu tiên của bạn như một phương án dự phòng khác. Cuối cùng, điều quan trọng là bạn phải bật bộ phát sóng vô tuyến của mình và kết nối với máy bay không người lái để nếu cần, bạn có thể chuyển từ chế độ bay tự động sang chế độ bay thủ công như ổn định hoặc giữ phím thay thế để UAV có thể được lái một cách an toàn hạ cánh.

MATLAB

Điều khiển tự động bằng MATLAB ít đơn giản hơn nhiều và yêu cầu một số kiến thức lập trình trước đó.

Các tập lệnh MATLAB real_search_polygon và real_search cho phép bạn tạo các nhiệm vụ được lên kế hoạch trước để tìm kiếm một đa giác do người dùng xác định. Tập lệnh real_search_polygon lập kế hoạch một đường dẫn qua đa giác do người dùng xác định trong khi tập lệnh real_search lập kế hoạch một đường dẫn qua hình chữ nhật tối thiểu bao gồm đa giác. Các bước để thực hiện việc này như sau:

  1. Mở Mission Planner và chuyển đến cửa sổ Flight Plan.
  2. Vẽ một đa giác trên vùng tìm kiếm mong muốn bằng công cụ đa giác.
  3. Lưu đa giác dưới dạng ‘search_area.poly’ trong cùng thư mục với tập lệnh MATLAB.
  4. Đi tới MATLAB và chạy real_search_polygon hoặc real_search. Đảm bảo chọn độ rộng đường dẫn mong muốn của bạn và thay đổi đường dẫn tệp trên dòng 7 thành đúng thư mục nơi bạn đang làm việc.
  5. Khi tập lệnh đã chạy và bạn hài lòng với đường dẫn được tạo, hãy quay lại Mission Planner.
  6. Nhấp vào Tải tệp WP ở phía bên phải và chọn tệp điểm tham chiếu ‘search_waypoints.txt’ mà bạn vừa tạo.
  7. Nhấp vào Viết WPs ở phía bên phải để gửi các điểm tham chiếu đến máy bay không người lái.
  8. Trang bị cho máy bay không người lái và cất cánh bằng tay hoặc bằng cách nhấp chuột phải vào bản đồ và chọn cất cánh.
  9. Khi ở độ cao hợp lý, hãy thay đổi chế độ thành tự động và máy bay không người lái sẽ bắt đầu nhiệm vụ.
  10. Sau khi nhiệm vụ kết thúc, hãy nhấp vào RTL trong tab hành động để đưa máy bay không người lái trở lại địa điểm khởi chạy.

Đoạn video ở đầu bước này là một mô phỏng trong Mission Planner của chiếc UAV đang tìm kiếm một khu vực.

Bước 7: Tầm nhìn

Thị giác
Thị giác

Nhiệm vụ của máy bay không người lái là bay qua những ngọn núi hoặc vùng hoang dã và phát hiện con người hoặc các vật thể bất thường và sau đó xử lý để xem liệu người đó có cần giúp đỡ hay không. Điều này lý tưởng sẽ được thực hiện bằng cách sử dụng một camera hồng ngoại đắt tiền. Tuy nhiên, do chi phí cao của máy ảnh hồng ngoại, thay vào đó, tính năng phát hiện hồng ngoại đang được giống bằng cách phát hiện tất cả các vật thể không phải màu xanh lá cây bằng máy ảnh Pi thông thường.

  1. ssh vào Raspberry Pi
  2. Trước hết, chúng ta cần cài đặt OpenCV trên Raspberry Pi. Hướng dẫn sau do pyimagesearch cung cấp là một trong những hướng dẫn tốt nhất hiện có trên internet.
  3. Tải xuống mã vào Raspberry Pi từ GitHub thông qua liên kết sau. Để tải mã xuống Raspberry Pi, bạn có thể tải tệp xuống máy tính của mình và sau đó chuyển nó sang Raspberry Pi.
  4. Để chạy mã, hãy chuyển đến thư mục chứa mã trong Raspberry Pi và sau đó chạy lệnh:

python colour_target_detection.py --conf conf.json

LIÊN TỤC SỬ DỤNG Mỗi khi khởi động lại raspberry pi, bạn cần chạy các lệnh sau:

sudo ssh [email protected] -X

nguồn ~ /.profile

workon cv

Sau đó tiếp tục với bước 4 ở trên.

Lưu ý quan trọng: KHÔNG phải tất cả các thiết bị đầu cuối đều có khả năng hiển thị video. Trên mac, sử dụng thiết bị đầu cuối XQuartz.

Đề xuất: