Ia mendapat sedikit panas, musim panas dan semua itu. Saya mempunyai peminat Cina di atas meja saya, tetapi saya bekerja di hujung meja besar saya yang baru, dan peminat hampir selalu bertiup, dan mengubahnya setiap kali agak sedih. Jadi hari ini kita akan melakukan peminat dengan matlamat automatik pada sasaran.
Jadi, kita perlu menjejaki kedudukan sasaran, dengan mengambil kira situasi di atas meja, supaya peminat tidak bertujuan objek lain. Sudah tentu, tentu saja, anda boleh mengambil komputer kecil pi raspberry dengan kamera, dan menggunakan perpustakaan penglihatan mesin untuk mengenali pergerakan atau baju T yang terang.
Tetapi ini adalah tugas yang agak sukar, dan lembaga itu sendiri kos lebih daripada 10 kali lebih mahal daripada platform arduino, yang tidak dapat menampung kamera. Tetapi di samping kamera, ada cara lain untuk menentukan sasaran, contohnya, sensor jarak ultrasonik sen.
Sebaik sahaja saya melihat di Internet satu "radar" projek yang menarik berdasarkan arduino dan sensor ini. Projek itu sendiri tidak berguna, tetapi idea itu sendiri indah - untuk memutarkan sensor jarak dan mengimbas ruang, terikat pada sudut putaran.
Mari kita ulangi projek ini untuk keseronokan, dan kemudian kita akan teruskan.
Ini bermakna sensor mesti diputar, untuk ini servo model yang biasa digunakan (yang tidak tahu, servo ialah motor dengan gearbox dan maklum balas kepada sudut, iaitu, kita boleh menetapkan sudut putaran itu, dan ia akan menghidupkannya).
Janganlah pintar, dan cabut sensor menggunakan cincin dari ruang basikal.
Kami memasang litar di atas papan roti.
Itu sahaja, ia masih lagi untuk memuat turun firmware dalam arduino. Versi ini menggunakan perpustakaan yang lebih pantas.
Anda boleh memuat turun sumber-sumber di halaman projek, pautan boleh didapati dalam keterangan di bawah video. Di sana anda akan dapati semua arahan terperinci, khususnya artikel besar bagi mereka yang mula-mula mengambil arduino. Secara umum, kami memuatkan firmware ke papan dan radar kami datang ke kehidupan. Sekarang di komputer anda perlu menjalankan program yang akan menerima data dari radar (ia juga dalam folder projek, tetapi anda memerlukan persekitaran pemprosesan untuk memulakannya, anda boleh memuat turunnya di laman web rasmi).
Kami memulakannya, dan di sini anda perlu mengkonfigurasi hanya satu saat - nombor port yang mana arduino disambungkan. Ini adalah nombor yang sama yang dipilih dalam program ide arduino, hanya kita mesti masukkan secara manual.
Kami mula.
Itu saja, radar kami berfungsi hebat dan memaparkan jarak ke halangan yang dijumpai. Seperti yang anda dapat lihat, ia berfungsi dengan ketepatan yang mencukupi untuk bukan sahaja mengesan sasaran besar dalam bentuk seseorang atau kepala, tetapi ia juga mengatasi apa-apa perkara kecil yang boleh menjadi bidang keseluruhan untuk eksperimen yang menarik. Jadi, sementara semua orang bersenang-senang dengan pi raspberry, saya memutuskan untuk mencabar diri saya dan mengajar sistem yang benar-benar buta untuk mengenali sasaran dan mensasarkannya. Ini akan menjadi projek mudah yang boleh diulang walaupun dengan bantuan kit starter arduino. Mari kita lakukan dan fikirkan algoritma kerja.
Oleh itu, keupayaan sistem adalah terhad. Kami hanya mendapat jarak dari radar, tetapi kita tahu sudut mana setiap dimensi sepadan dengan. Perkara pertama yang menjadi perhatian adalah membina peta ruang kerja. Iaitu, kita membuat satu pas dan ingat pada sudut apa jarak itu. Sekarang, dalam pas seterusnya, kita dapat mencari perbezaan untuk setiap sudut mengikut peta kami. Dan dengan itu kita dapat melihat objek baru yang akan menentang latar belakang nilai yang sudah diketahui. Sekarang anda perlu mengajar sistem untuk menentukan matlamat. Mari cuba pilihan ini: kami akan mempertimbangkan bilangan mata yang dibezakan yang terletak satu demi satu, iaitu, dalam kehidupan, ini akan menjadi kawasan tertentu yang mengimbas radar.
Kami akan mempertimbangkan matlamat - kawasan itu lebih besar daripada saiz tertentu. Ini segera menyaring semua bunyi pengukuran. Saya juga mencadangkan untuk memaafkan sistem untuk beberapa ralat semasa mengimbas satu kawasan, kerana sensor ultrasonik tidak sempurna.
Radar dapat mengenali kawasan besar, iaitu, ia mengetahui sudut permulaan rantau ini dan sudut akhirnya dalam sistem koordinatnya. Ia tetap hanya untuk mengira bahagian tengah kawasan ini dan mengarahkan radar di sana, dan jangan lagi bergerak. Ini akan menjadi mod pemegangan.
Kami akan terus mengukur jarak dan jika titik diukur tiba-tiba meninggalkan jarak penglihatan radar, maka selepas itu kami akan beralih ke mod carian sasaran. Itulah yang tidak faham, komputer tidak lagi diperlukan di sini, arduino akan melakukan semuanya dengan sendirinya. Ia cukup hanya untuk kuasa dari bekalan kuasa 5 volt. Perisian teguh dalam folder projek, terdapat sekumpulan tetapan yang boleh dimainkan dan dikonfigurasikan untuk diri sendiri.
Jadi, kita mulakan sistem. Pertama, penentukuran bergerak dari tepi ke tepi. Sistem ini mengingati jarak dalam pelbagai penentukuran dalam sistem koordinatnya. Kemudian kerja-kerja bermula dengan serta-merta, kita mengimbas kawasan tersebut, jika kita melihat sasaran, maka kita mencari saiz sudutnya dan bertujuan di tengah. Ia berfungsi seperti jam dan bertujuan hampir di pusat sasaran.
Dengan cara ini, semua kelewatan masa boleh dikonfigurasikan, khususnya, waktu antara kehilangan matlamat dan permulaan imbasan baru, jika tidak, anda juga akan berfikir bahawa sistem melambatkan - tidak seperti itu, anda hanya menetapkannya. Secara umum, otak untuk peminat bersedia, mari kita mengumpul besi.
Kipas ini dibeli oleh aliexpress kira-kira 5 tahun lalu. Ia padat, powered by USB dan hebat untuk projek ini. Anda juga boleh mencari penggemar usb dalam harga tetap atau barangan isi rumah.
Mari kita lihat peminat ini dan lihat sama ada terdapat ruang bebas dalam kesnya yang boleh dibendung dengan elektronik sendiri.
Arduino nano, sayangnya, tidak sesuai di sini, tetapi terdapat arduino pro mini, perkara yang sama, tetapi lebih kecil dan tanpa pengaturcara di atas kapal, tetapi ia sangat sesuai.
Dan mengapa tidak mengawal kuasa untuk peminat dengan arduino dan membuang butang asli? Tidak ada ruang yang cukup, relay tidak akan sesuai, jadi kami akan menggunakan transistor kesan medan.
Dia masih memerlukan dua perintang 100 ohm dan 10 kOhm. Kami keluarkan butang sepenuhnya supaya ia tidak mengganggu. Rajah rajah sambungan akan kelihatan seperti ini:
Mari sambungkan pencari pelbagai dengan kabel dari cakera keras.
Kami juga mempunyai kapasitor di litar, tidak perlu, tetapi sangat diingini, memandangkan pemacu servo memberikan lonjakan semasa yang cukup ketara untuk usb, dan ini dapat menjejaskan pengukuran jarak.
Untuk memuat turun firmware dalam pro mini, anda memerlukan pengaturcara luaran, ia membebankan orang Cina seperti kaleng bir dan menghubungkan seperti ini:
Anda tidak perlu melakukan apa-apa lagi, klik butang muat turun, dan beban tegasan seperti biasa ke papan nano.Perumahan ditutup dan semua wayar keluar melalui lubang dari suis.
Seterusnya, anda perlu menetapkan servo. Ia telah memutuskan untuk menggantung kipas di rak, dan melampirkan servo ke sudut.
Untuk mengelakkan sudut berputar, kami menggunakan pita bermagnet, tetapi elastik dari kamera basikal akan lebih baik.
Ruang untuk sensor perlu sedikit berkembang. Betulkan pada skru yang datang dengan servo.
Sentuhan akhir, segalanya, menghidupkan dan menunggu penentukuran untuk lulus dan menikmati kipas homing.
Perkara yang sangat lucu ternyata. Ia pada asalnya diilhamkan sebagai mock-up, tetapi terima kasih kepada orang Cina dan petak kosong yang besar di dalam peminat, ia mungkin membuat peranti siap dengan wayar dan sangkut yang hampir tidak menonjol, yang sangat menyenangkan. Dengan cara ini, jika peminat tidak dapat menemui sasaran untuk beberapa waktu, ia naik di tengah dan mematikan. Untuk menghidupkannya, anda hanya perlu mengangkat tangan anda, dan peminat bersedia untuk menyasar sasaran dan menyejukkannya lagi.
Servo itu ternyata plastik murah, kotak gearnya digantung, jadi pergerakan itu berkedut, tetapi apa yang boleh saya lakukan. Pada halaman projek terdapat pautan ke servo yang lebih baik, ia mempunyai kotak gear logam. Projek itu ternyata cukup menarik dan menarik, kerana kesederhanaannya - satu sensor, satu pemacu, tetapi sebagai hasilnya, penuh homing pada peta wilayah dan kawalan sentuh.
Terima kasih atas perhatian anda. Lihat awak tidak lama lagi!
Video: