Isi kandungan:
- Bekalan
- Langkah 1: Kumpulkan Bekalan
- Langkah 2: Sambungan Modul NRF Dengan Arduino
- Langkah 3: Mari Kita Mengekodkan
- Langkah 4: Catatan Pengarang
Video: Jadikan Gerakan Drone Anda Dikendalikan dalam Langkah $ 10: 4
2024 Pengarang: John Day | [email protected]. Diubah suai terakhir: 2024-01-30 11:09
Instruksional ini adalah panduan untuk mengubah Drone R / C anda menjadi Drone Dikendalikan Gerak dengan harga di bawah $ 10!
Saya adalah orang yang sangat terinspirasi oleh filem Sci-Fi dan berusaha menjadikan teknologi yang ditunjukkan dalam filem ini dalam kehidupan nyata. Projek ini adalah inspirasi dari dua filem seperti itu: "STAR WARS: The Empire Strikes Back" dan "Project Almanac". Dalam kedua-dua filem itu, anda melihat objek terbang (X-wing Starship & Drone R / C) yang dikendalikan oleh pergerakan tangan. Ini memberi inspirasi kepada saya untuk membuat sesuatu yang serupa …
Jelas saya tidak memiliki sayap X, jadi, sayangnya, saya harus bekerjasama dengan Mini R / C Quadcopter saya.
Jadi rencananya adalah - akan ada skrip pemprosesan gambar yang berjalan di komputer riba saya yang akan terus mencari tangan saya dan mengesan kedudukannya dalam bingkai video. Setelah mendapat koordinat tangan, ia akan menghantar isyarat masing-masing ke drone dan ini akan dilakukan menggunakan Arduino yang disambungkan ke komputer riba bersama dengan Modul Transceiver NRF24L01 2.4GHz yang dapat berkomunikasi secara langsung dengan papan penerima Drone R / C mana-mana..
Bekalan
- Komputer riba / Desktop dengan Webcam dan Python dipasang. (Saya menggunakan komputer riba W indows saya dengan kamera web terbina dalam dan menjalankan Python 2.7.14)
- Mana-mana Drone R / C yang berjalan pada Frekuensi 2.4Ghz. (JJRC H36 dalam kes saya)
- Arduino UNO bersama dengan Kabel Pengaturcaraannya. (Saya menggunakan klonnya kerana lebih murah)
- Modul Pemancar Tanpa Wayar Antena NRF24L01 2.4GHz. (Saya membeli ini dari sini dengan harga hanya ₹ 99 ($ 1,38))
- 3.3V Adapter Board untuk Modul Tanpa Wayar 24L01. (Saya membeli ini dari sini dengan harga hanya ₹ 49 ($ 0,68))
- Wayar Pelompat Lelaki hingga Perempuan x7
Langkah 1: Kumpulkan Bekalan
Langkah 2: Sambungan Modul NRF Dengan Arduino
Sekarang kerana anda mempunyai semua bahagian, mari kita mulakan dengan memasang Modul NRF dengan Arduino.
- Pertama, masukkan modul NRF dalam slot yang disediakan pada penyesuai. Anda boleh merujuk gambar di atas untuknya.
-
Selepas itu, bawa kabel Male to Female dan sambungkan penyesuai NRF ke Arduino seperti berikut: (Rujuk Gambarajah Litar di atas)
- NRF Adapter Pin - Arduino Pin
- VCC - 5v
- GND - GND
- CE - Pin Digital 5
- CSN - Pin Analog 1
- SCK - Pin Digital 4
- MO - Pin Digital 3
- MI - Pin Analog 0
- IRQ - Tidak digunakan
- Setelah sambungan selesai, sambungkan Arduino ke PC anda menggunakan Kabel USB Pengaturcaraan Arduino dan anda hampir selesai.
Langkah 3: Mari Kita Mengekodkan
Sekarang di sini bermula bahagian yang sukar… !!!
Saya sendiri belum membuat keseluruhan kod. Sebagai gantinya, saya telah mengambil sebahagian kod dari pembangun yang berbeza dan menyatukan semuanya menjadi satu dengan sedikit tweak. Oleh itu, penghargaan yang sewajarnya kepada semua pencipta asal diberikan lebih awal.
Anda boleh memuat turun semua kod yang dilampirkan di sini, dan membuatnya berfungsi. Atau anda boleh pergi ke Github Repository saya, di mana saya akan sentiasa mengemas kini kod terkini untuk penjejakan yang lebih baik.
Penjejakan Tangan:
Pengelaskan Haar Cascade digunakan untuk penjejakan tangan dalam projek ini. Haar Cascade dilatih dengan meletakkan gambar positif daripada sekumpulan gambar negatif. Dan data terlatih ini biasanya disimpan dalam fail ".xml". Anda mungkin mendapat fail Pengelaskan hampir semua perkara di internet atau anda juga boleh membuat fail anda sendiri seperti ini. Untuk projek ini, kerana kami perlu menjadikannya terkawal dengan gerakan tangan, saya menggunakan pengkelasan penumbuk bernama "closed_frontal_palm.xml" yang dibuat oleh Aravind Nambissan untuk pengesanan tangan saya. Anda boleh menguji kod ini dengan menjalankan kod "hand_live.py" di repo saya.
Memilih Kod NRF24 yang sesuai dengan Drone anda:
Oleh itu, menurut pengeluar dan model drone anda, anda boleh merujuk ke repositori Github - "nrf24_cx10_pc" yang dibuat oleh Perry Tsao untuk memilih kod Arduino yang sesuai untuk dijalankan yang akan sesuai dengan frekuensinya. Dia telah membuat tutorial yang bagus untuk mengawal Drone CX10 melalui PC.
Semasa saya menggunakan drone JJRC H36, saya merujuk ke repositori Github lain - "nrf24_JJRC_H36_pc" yang merupakan garpu repo Perry Tsao yang dibuat oleh Lewis Cornick untuk mengendalikan JJRC H36 melalui PC.
Bersedia Arduino:
Saya membuat repo Lewis ke Github saya yang boleh anda klon jika anda menggunakan drone yang sama. Anda perlu memuat naik kod "nRF24_multipro.ino" sekali di Arduino Uno anda untuk menjadikannya berpasangan dengan Drone anda setiap kali kami menjalankan skrip Python kami.
Menguji Komunikasi Bersiri:
Di repo yang sama, anda mungkin juga menemui kod "serial_test.py" yang dapat digunakan untuk menguji skrip Komunikasi Serial Python dengan Arduino dan jika drone anda berpasangan atau tidak. Jangan lupa menukar port COM dalam kod mengikut port COM papan Arduino anda.
Mengintegrasikan Segala-galanya dalam Satu Kod:
Oleh itu, saya menggabungkan semua kod ini oleh pembangun yang berbeza dan membuat kod saya sendiri "handserial.py". Sekiranya anda melakukan perkara yang sama seperti yang saya lakukan dengan drone yang sama, maka anda boleh terus menjalankan kod ini dan kemudian anda dapat mengawal drone anda dengan hanya menggerakkan penumbuk anda di udara. Kod pertama menjejaki kepalan dalam bingkai video. Bergantung pada koordinat Y penumbuk, kod tersebut menghantar nilai pendikit ke drone menjadikannya naik atau turun dan sama bergantung pada koordinat X kepalan tangan, kod tersebut menghantar nilai aileron ke drone membuatnya ke kiri atau kanan.
Langkah 4: Catatan Pengarang
Terdapat 4 perkara yang ingin saya sebutkan mengenai projek ini:
- Seperti yang dinyatakan sebelum ini, kod ini tidak dibuat sepenuhnya oleh saya, tetapi saya mengusahakannya secara berterusan dan akan mengemas kini kod untuk penjejakan yang lebih baik di Github Repository saya. Oleh itu, untuk sebarang pertanyaan atau kemas kini, anda boleh mengunjungi repositori atau ping saya di Instagram.
- Pada masa ini, kami menggunakan kamera web komputer riba yang tidak memungkinkan untuk memiliki perspektif pandangan drone, tetapi jika diperlukan, kamera yang dipasang di drone juga dapat digunakan untuk tujuan pengesanan. Ini akan membantu mendapatkan pandangan yang lebih baik dan kawalan yang lebih baik.
- Untuk projek ini, saya menggunakan drone JJRC H36 yang merupakan salah satu drone paling murah yang terdapat di pasaran oleh itu ia tidak mempunyai kestabilan giroskopik. Itulah sebabnya anda mungkin merasakan gerakan dalam video goyah, tetapi jika anda menggunakan drone berkualiti dengan kestabilan yang baik, anda tidak akan menghadapi masalah ini.
- Saya ingin melihat-lihat Computer Vision dan drone drone, oleh itu saya memulakan projek ini. Tetapi setelah mengusahakan penglihatan komputer, saya merasakan bahawa bukan penyelesaian terbaik untuk mengendalikan drone. Oleh itu, saya merancang untuk membuat sejenis peranti jenis sarung tangan dengan sensor Gyro untuk mengawal drone pada masa akan datang. Oleh itu, nantikan kemas kini…
Sekiranya anda menyukai tutorial ini, sila suka dan kongsi dan pilihlah juga.
Itu sahaja buat masa ini.. Sampai jumpa lagi …
Disyorkan:
Jadikan Komputer Anda Mengucapkan Apa Yang Anda Taipkan Dengan Notepad: 3 Langkah
Jadikan Komputer Anda Mengucapkan Apa Yang Anda Ketikkan Dengan Notepad: Berikut adalah satu kod menarik yang dibuat oleh kami untuk menjadikan komputer anda menyebut apa yang anda taipkan. Kami akan menggunakan notepad untuk membuatnya. Mari mulakan
Rover Dikendalikan Gerakan Menggunakan Accelerometer dan Pasangan Pemancar-Penerima RF: 4 Langkah
Gesture Controlled Rover Menggunakan Accelerometer dan RF Transmitter-Receiver Pair: Hai, Pernah mahu membina rover yang boleh anda jalani dengan isyarat tangan yang mudah tetapi tidak pernah dapat mengumpulkan keberanian untuk menceburkan diri dalam selok-belok pemprosesan gambar dan menghubungkan kamera web dengan anda mikrokontroler, apatah lagi
Jadikan Alexa Bisu Telefon Anda Semasa Anda Tidur: 6 Langkah
Jadikan Alexa Bisukan Telefon Anda Semasa Tidur: Buat alexa mematikan telefon anda semasa tidur menggunakan IFTTT dan alat gema
Cara Mendapatkan Muzik Dari Laman Web HANYA (Haha) (Selagi Anda Boleh Mendengarnya, Anda Boleh Mendapatkannya Ok Baiklah Jika Ia Dimasukkan dalam Kilat Anda Mungkin Tidak Mampu) DIEDIT !!!!! Maklumat Tambahan: 4 Langkah
Cara Mendapatkan Muzik Dari Laman Web HANYA (Haha) (Selagi Anda Boleh Mendengarnya, Anda Boleh Mendapatkannya … Ok Baiklah Jika Ia Dimasukkan dalam Kilat Anda Mungkin Tidak Mampu) DIEDIT !!!!! Maklumat Tambahan: jika anda pernah pergi ke laman web dan memainkan lagu yang anda suka dan mahukannya, inilah petunjuk untuk tidak salah saya sekiranya anda mengacaukan sesuatu (satu-satunya cara ia akan berlaku adalah jika anda mula menghapus barang tanpa sebab ) Saya dapat mendapatkan muzik untuk
Jadikan Komputer Anda Menjadi Pelayan dalam 10 Minit (Perisian percuma): 5 Langkah
Jadikan Komputer Anda Menjadi Pelayan dalam 10 Minit (Perisian percuma): Ini merangkumi cara menyiapkan komputer anda (menjalankan Windows) dengan cepat sebagai pelayan. Ini akan membolehkan anda menghoskan laman web anda sendiri dari komputer anda dan membolehkan anda membuat laman web dengan 'butang' yang membolehkan anda mengawal perkara di rumah anda (robot, kamera