Isi kandungan:

Bot Bot Anjing: Lego Robot Rover Dengan Kamera Web: 17 Langkah (dengan Gambar)
Bot Bot Anjing: Lego Robot Rover Dengan Kamera Web: 17 Langkah (dengan Gambar)

Video: Bot Bot Anjing: Lego Robot Rover Dengan Kamera Web: 17 Langkah (dengan Gambar)

Video: Bot Bot Anjing: Lego Robot Rover Dengan Kamera Web: 17 Langkah (dengan Gambar)
Video: cocok nih buat nakut nakutin maling😁 2024, Julai
Anonim
Image
Image

Inilah cara membuat robot Lego yang dapat anda kendalikan dari mana-mana skrin melalui wifi. Ia juga mempunyai kamera web sehingga anda dapat melihat ke mana arah anda dan lampu LED untuk mata! Ini adalah projek yang bagus untuk dilakukan dengan anak-anak anda kerana mereka boleh membuat pembinaan logo dan anda boleh melibatkan mereka dalam sebilangan besar elektronik yang mereka sukai. Terdapat banyak fleksibiliti dalam bagaimana anda melaksanakan projek ini, dan ini bermakna anda dengan mudah boleh dipotong dan direka semula lagi. Saya merasa berguna, ketika saya buntu untuk memulakannya semula. Sebaik sahaja anda melakukan ini beberapa kali, ia cukup mudah dan cepat dibina semula dari bawah ke atas. Perkara yang hebat adalah bahawa anda tidak perlu risau untuk "memecahkan" apa-apa kerana anda akan mengembangkan kemahiran untuk membina semula dengan mudah.

Apa yang kamu perlu

  • Raspberry Pi B +
  • Kit asas dan motor
  • Plat asas Lego
  • Lekap kekuatan industri
  • Gerudi
  • Pisau kraf
  • Peralatan pematerian
  • Kad SD
  • Pembaca kad SD
  • Kit pengawal motor
  • 2 LED
  • Webcam berharga pertengahan (anda boleh mencuba yang murah)
  • PC dan tablet / telefon
  • Penghala Wifi yang anda akses admin
  • Banyak bahagian Lego
  • Pengecas telefon kecemasan
  • 4 wayar lompat masing-masing dengan sekurang-kurangnya 1 terminal wanita
  • 4 bateri AA (boleh dicas semula baik)

Langkah 1: Sediakan Pangkalan

Saya bermula dengan asas dan 2 motor seperti motor ini di Amazon

Ambil pangkalan perspex dan lekatkan plat asas Lego yang nipis ke atasnya. Saya menggunakan gam kekuatan industri untuk ini yang mengering dalam beberapa minit dan sangat kuat. Apabila gam terpaku, potong pelat asas Lego yang berlebihan sehingga mengikut garis pelat dasar perspex. kemudian gerudi lubang melalui plat Lego yang sepadan dengan pangkalan perspex. Saya menggerudi lubang ketika dan memerlukannya. Anda kini mempunyai asas untuk membina struktur Lego.

Langkah 2: Pasang Roda

Pasang Roda
Pasang Roda

Sekarang pasangkan roda. Ikuti arahan pengeluar di sini. Roda yang saya beli mempunyai semua arahan dalam bahasa Cina, yang saya tidak boleh baca, tetapi agak mudah untuk mengetahui dari gambar. Setelah dipasang pasangkan wayar ke motor dengan gumpalan pateri kecil.

Langkah 3: Pasang Roda ke Pangkalan

Pasang Roda ke Pangkalan
Pasang Roda ke Pangkalan

Seterusnya pasangkan roda ke plat bawah, anda boleh menggerudi lubang di dasar jika anda memerlukan. Anda mungkin akan mengetahui menjelang akhir projek yang anda mahukan wayar yang dipimpin melalui pangkalan di tempat lain, tetapi anda selalu dapat menggerudi lubang baru dan berpindah kemudian.

Langkah 4: Sediakan Pi

Sediakan Pi
Sediakan Pi

Sekarang siapkan PI. Saya menggunakan model B + dengan dongle wifi USB. Saya menggunakan gambar desktop penuh berdasarkan Debian Jessie yang boleh anda muat turun dari laman Raspbian Pi. Perlu membuat kad SD dari awal, dan menyimpan gambar cakera dengan mudah kerana anda boleh memulakannya semula dengan mudah. Anda mungkin perlu melakukan sedikit googling untuk mengetahui cara membuat imej cakera pada PC anda. Saya membuat gambar saya menggunakan Ubuntu seperti ini: Klik kanan pada gambar cakera dan pilih "buka dengan penulis gambar cakera". Tulis gambar ke kad SD. Imej cakera agak kecil, jadi jika anda mempunyai kad SD yang lebih besar (misalnya: 30GB) anda boleh menggunakan perisian partition seperti GParted untuk menggunakan semua ruang yang ada. Setelah anda mengetahui cara melakukannya, ia akan memakan masa kira-kira 5 minit, dan sangat bernilai seolah-olah anda mengacaukan perisian, anda boleh memasangnya semula.

Langkah 5: Pasang Papan Pengawal

Pasang Papan Pengawal
Pasang Papan Pengawal

Seterusnya anda memerlukan papan pengawal motor. Saya menggunakan kit dari RyanTek. Ia dilengkapi dengan panduan pematerian yang sangat baik, tetapi saya rasa anda juga boleh mendapatkannya sebelum disolder. Sekiranya anda belum melakukan pematerian sebelumnya, jangan risau, ambil perlahan-lahan dan berlatih sedikit sebelum anda memulakan papan motor.

Sekarang, pasangkan pek bateri (dengan 4 bateri AA) dan motor ke papan pengawal kemudian pasangkan papan pengawal ke pin GPIO Pi. Sekali lagi papan pengawal akan memberi anda lebih banyak maklumat. Jangan risau untuk memasukkan wayar motor yang betul ke slot yang betul, selagi ia tidak dihubungkan ke slot kuasa DC. Saya tidak melekatkan atau menyekat Pi atau Bateri ke papan Lego kerana ini memberi anda lebih banyak kelonggaran semasa merancang badan Lego. Anda juga boleh mengubah reka bentuk anda dengan mudah semasa anda mengikutinya.

Langkah 6: Mula Membina Badan Lego

Mula Membina Badan Lego
Mula Membina Badan Lego
Mula Membina Badan Lego
Mula Membina Badan Lego

Sekarang masanya untuk membina beberapa Lego. Pada ketika ini anda boleh melibatkan anak-anak yang sangat muda, asalkan mereka dapat memegang sepotong Lego! Kami bermula dengan hanya perumahan persegi sehingga semuanya berfungsi kemudian menjadi lebih berani dengan bot anjing. Perkara yang hebat di sini ialah anda dapat membina semula badan robot sebanyak yang anda mahukan. Mulakan dengan membuat rumah untuk Pi. Ingatlah untuk meninggalkan ruang untuk port USB dan kabel kuasa. Bina sedikit kelonggaran ke mana-mana perumahan yang anda bina. Tidak apa-apa untuk perkara-perkara yang bergemuruh dan anda tidak boleh terlalu tepat dengan Lego.

Kami menggunakan tingkap Lego untuk menyediakan akses ke port USB yang anda perlukan kemudian.

Langkah 7: Sediakan Pi

Ini adalah masa yang tepat untuk memulakan Pi, dan membuat robot bergerak.

Saya telah membangunkan kod yang akan digunakan untuk projek ini di Git hub. Baca saya di halaman git hub membawa anda petunjuk mengenai cara memasang semua perisian di Pi, tetapi saya juga akan membawa anda melalui langkah-langkah di sini.

Mula-mula mulakan Pi, dengan memasang kabel kuasa. Anda perlu menyambungkan kabel HDMI ke TV dan menggunakan papan kekunci dan tetikus USB. Perkara pertama ialah menyambung ke Wifi anda. anda melakukannya dengan mengklik ikon di kanan atas desktop Raspian dan membuktikan perinciannya. Setelah disambungkan ke Wifi, anda boleh melakukan yang lain dari baris arahan, jadi jika anda mahu, anda boleh menyambung ke Pi menggunakan ssh, tetapi buat masa ini, kerana kami disambungkan ke TV, kami dapat membuka terminal dari desktop Raspian.

Langkah 8: Pasang Perisian pada Pi

Buka terminal pada Pi dan ketik perintah berikut.

sudo apt-get kemas kini

Ini mengemas kini Raspian dengan perisian terkini.

Seterusnya, pasang perisian kamera web

sudo apt-get install install

Anda juga perlu mengkonfigurasi gerakan pada ketika ini. Saya telah menyenaraikan perkara yang perlu dikemas kini di mana fail di halaman github. Terdapat juga petunjuk tentang mendapatkan kamera web yang berfungsi pada Pi anda. Ketahui tetapannya dan bermain-main dengannya setelah anda selesa dengan penyediaannya.

sudo apt-get install python-dev python-pip

Ini memasang perpustakaan Python dan juga pengurus pembungkusan perisian python.

sudo pip install 'pubnub> = 4.1.2'

Ini memasang Pubnub, perisian yang menguruskan pemesejan antara panel kawalan dan robot tanpa wayar anda.

Diperlukan beberapa saat untuk memasang bahagian ini, kemudian pergi dan buat secawan teh !!

Langkah 9: Pasang Perisian Robot

Sekarang anda telah memasang semua bahagian perisian yang bergantung, sudah waktunya untuk memasang kod yang diperlukan untuk menjalankan robot.

klon git

ini akan membuat folder lego-robot di direktori utama anda.

Sebelum anda dapat menjalankan kod robot, anda perlu membuat akaun PubNub dan mendapatkan kunci penerbitan dan langganan. anda boleh melakukan ini dengan mengikuti arahan memulakan sekarang di PubNub. Setelah anda siap, anda perlu membuka dua fail:

  • lego-robot / pelayan / keys.py
  • lego-robot / klien / kunci.js

dan ganti kunci pub dan sub dengan kunci yang anda dapat dari papan pemuka pubnub.

Perhatikan bahawa nilai saluran boleh menjadi apa sahaja, asalkan sesuai dengan klien dan pelayan.

Langkah 10: Pasang Perisian Pengawal dan Periksa Semuanya Berfungsi

Pasang Perisian Pengawal dan Periksa Semuanya Berfungsi
Pasang Perisian Pengawal dan Periksa Semuanya Berfungsi
Pasang Perisian Pengawal dan Periksa Semuanya Berfungsi
Pasang Perisian Pengawal dan Periksa Semuanya Berfungsi

Pada PC, klon kod hub git dengan cara yang sama seperti yang kita lakukan pada robot.

git klon

Anda mungkin tidak memasang git pada PC anda. Sekiranya tidak, sila ikuti arahan di git hub.

Anda juga mempunyai pilihan untuk memuat turun kod sebagai fail zip, walaupun saya menyarankan untuk memasang GIT dan menyalin fail dengan mengklon repositori.

anda perlu mengemas kini fail lego-robot / client / keys.js dengan kunci penerbitan dan langganan peribadi anda.

Setelah selesai, buka fail lego-robot / client / buttons.html di penyemak imbas web. Anda sekarang seharusnya dapat mengawal robot anda menggunakan butang kawalan.

Gambar rajah di atas menunjukkan apa yang berlaku:

  • Apabila anda mengklik butang, mesej dihantar ke pubnub (menggunakan kunci penerbitan anda)
  • PubNub kemudian meneruskan kepada robot yang…
  • Adakah mendengar (menggunakan kunci langganan) untuk mesej
  • Robot kemudian diterjemahkan menjadi tindakan.

Saya menggunakan pubNub sebagai percuma, cepat (masa nyata) dan sangat memudahkan penghantaran dan penerimaan mesej menggunakan API yang sangat bagus.

Anda boleh menggali kod pelanggan dan pelayan dan melihat mesej yang dihantar menggunakan kekunci sederhana seperti "ke depan" dan "ke belakang".

Terdapat juga alat kawalan gaya joystick di lego-robot / client / joystick.html.

Saya akan meningkatkan pengawal ini, dan menambahkan yang baru sepanjang masa, jadi jika anda ingin mengemas kini perisian, anda boleh menggunakan perintah "git pull". Jangan ragu untuk menyumbang ke git repositori dan membuat kawalan yang lebih mesra pengguna.

Sekarang anda semua sudah bersedia untuk memeriksa pergerakannya OK. Di terminal Pi, ubah direktori menjadi lego-robot / pelayan dan ketik:

sudo python robot.py

ini memulakan skrip python untuk mendengar pesanan masuk dari Pubnub.

Sekarang cuba tekan beberapa butang pada pengawal, anda akan melihat respons ini diterima di Terminal Pi (seperti yang ditunjukkan dalam gambar di atas) dan robot.py menerjemahkan mesej ini ke pergerakan dengan memetakannya ke isyarat pada Pi GPIO.

Anda seharusnya dapat menggerakkan robot.

Langkah 11: Sediakan Kamera Web dan Lampu LED

Sediakan Kamera Web dan Lampu LED
Sediakan Kamera Web dan Lampu LED
Sediakan Kamera Web dan Lampu LED
Sediakan Kamera Web dan Lampu LED

Anda boleh menggunakan mana-mana kamera web yang serasi dengan linux (kebanyakan daripadanya). Saya akan mencari yang pertengahan (kira-kira £ 15) kerana saya mencuba yang sangat murah dan tidak dapat memperoleh gambaran yang jelas daripadanya. Langkah pertama adalah membongkar kamera web sehingga anda hanya mempunyai papan asas dan kamera.

Sekiranya anda ingin memasang lampu, kemudian ambil lampu LED dan sambungkan dua wayar lompat ke setiap terminal. Saya menggunakan wayar lompat yang mempunyai terminal wanita di satu hujungnya supaya anda boleh memasangkannya dengan mudah ke pin Pis GPIO nanti. Hujung wayar yang lain yang perlu anda lepaskan, untuk melepaskan terminal. Anda boleh menyolder di sini juga untuk membuat sambungan yang selamat. Saya juga menggunakan beberapa bungkus penyusutan panas, yang boleh anda gunakan untuk menutupi setiap wayar, walaupun saya tidak akan bimbang untuk membuat pekerjaan yang terlalu baik sehingga anda gembira kerana semuanya berfungsi, maka anda dapat menyelesaikan dan memperbaiki. Sebaiknya gunakan perintang untuk menghentikan LED anda daripada membakar.

Terdapat arahan terperinci di sini yang memperincikan cara memasang LED.

Seperti yang ditunjukkan dalam gambar, saya menggunakan blok Lego dengan lubang di dalamnya sebagai cara mudah untuk memasang LED ke kepala robot.

Langkah 12: Buat Kepala Dengan Cam-Nose dan Lampu

Buat Kepala dengan Cam-Nose dan Lampu
Buat Kepala dengan Cam-Nose dan Lampu
Buat Kepala dengan Cam-Nose dan Lampu
Buat Kepala dengan Cam-Nose dan Lampu
Buat Kepala Dengan Nose-cam dan Lampu
Buat Kepala Dengan Nose-cam dan Lampu

Buat penutup kepala untuk kamera. Saya tidak akan terlalu spesifik di sini kerana sudah waktunya anda kreatif. Walau bagaimanapun, anda perlu membina kamera. Bot anjing menyatukan kamera ke hidungnya dan memiliki mata sebagai LED. Pastikan anda meninggalkan lubang di bahagian belakang kepala untuk mengarahkan wayar keluar.

Langkah 13: Lengkapkan Badan

Lengkapkan Badan
Lengkapkan Badan
Lengkapkan Badan
Lengkapkan Badan
Lengkapkan Badan
Lengkapkan Badan

Sekarang anda gembira kerana bot anjing bergerak pada dasarnya anda boleh membuat perumahan untuk pek bateri. Saya menggunakan sebungkus 4 bateri AA (disediakan dengan roda dan alas) dan pek pengecas telefon kecemasan. Bateri AA adalah untuk motor DC untuk roda dan pek telefon bimbit adalah untuk Pi. Adalah idea yang baik untuk menjadikan bateri mudah diakses kerana anda perlu mengaksesnya untuk mengecas dan mengganti.

Setelah anda bahagia, letakkan bumbung di atas Pi. Saya tidak terlalu risau menyembunyikan wayar dan litar, kerana itu adalah sebahagian daripada gambar robot. Bagaimanapun semuanya bergantung kepada anda ketika ini. Anda mungkin ingin mempertimbangkan seberapa berat bot anda, semakin berat semakin perlahan.

Langkah 14: Pasang Kepala

Pasang Kepala
Pasang Kepala
Pasang Kepala
Pasang Kepala
Pasang Kepala
Pasang Kepala

Sudah tiba masanya untuk menghubungkan semuanya.

Sambungkan plumbum USB Webcam ke bahagian depan bot, menggunakan lubang akses yang anda buat. Anda boleh mengikat wayar ke robot dengan membuat beberapa perumahan Lego. Saya juga memendekkan kabel USB dengan memotong dan menyoldernya semula, tetapi hanya melakukan ini jika anda benar-benar mempunyai keinginan untuk menyatukan 4 wayar kecil bersamaan. Mungkin lebih mudah untuk membeli plumbum USB pendek dan sambungkan semula ke bahagian belakang kamera.

Anda juga perlu menyambungkan lampu LED ke pin Pis GPIO yang tidak diambil oleh pengawal papan motor. Ini adalah pin GPIO 20 dan 21 dan dua pin tanah ganti yang berdekatan. Gunakan pin tanah ganti yang berdekatan. Sekiranya lampu tidak berfungsi, cuba ubah tanah bulat dengan output GPIO. Untuk mengetahui pin mana yang hendak disambungkan ke google gambarajah GPIO yang baik.

Langkah 15: Uji LED dan Nose Cam

Uji LED dan Nose Cam
Uji LED dan Nose Cam

Untuk memulakan jenis perisian kamera web:

gerakan sudo

Pastikan juga anda telah memulakan skrip robot.py (seperti yang diperincikan dalam arahan sebelumnya):

sudo python robot.py

Anda sekarang seharusnya boleh menggunakan suis lampu pada alat kawalan untuk menghidupkan dan mematikan lampu.

Kamera web harus disiarkan di alamat IP Pis anda pada port 8080, jadi misalnya masukkan perkara berikut ke dalam penyemak imbas web anda.

192.168.1.2:8081

Saya menjumpai alamat IP IP dengan masuk ke penghala saya sebagai pentadbir dan melihat peranti yang dilampirkan. Petunjuk mengenai cara melakukan ini biasanya terdapat di bahagian belakang penghala, atau merujuk kepada arahan penghala anda secara dalam talian.

anda boleh meneroka tetapan konfigurasi perisian gerakan, seperti yang dijelaskan pada langkah sebelumnya. Saya mendapati bahawa kadangkala streaming berhenti, tetapi secara amnya ia berfungsi dengan baik.

Anda boleh mengakses aliran video ini dari apa sahaja yang menjalankan penyemak imbas yang disambungkan ke rangkaian Wifi anda.

Langkah 16: Selesai

Akses dalam talian

Anda sekarang seharusnya dapat mengawal robot dari penyemak imbas di PC. Namun bagus untuk dapat mengawal bot dari mana-mana peranti sentuh seperti Ipad atau telefon.

Untuk melakukan ini, anda perlu menghoskan fail klien (butang.html dll) di pelayan web.

Saya mulakan dengan memasang pelayan web pada Pi, yang berfungsi dengan baik. Namun lebih mudah untuk hanya memuat naik fail HTML ke pelayan web lain. Saya hanya menyalin fail HTML ke akaun host biru awam saya. Anda mungkin mahu melindungi akses fail ke fail ini kerana ia mengandungi sub-kunci pub ke saluran pub nub anda. Setelah anda melakukan ini, anda boleh mengakses alat kawalan dari mana-mana peranti, bahkan dari luar rumah anda.

Permulaan automatik

Perkara lain yang berguna ialah mengemas kini skrip / etc / rc.local pada raspberry Pi anda; menambah dua baris berikut:

  • gerakan sudo
  • nohup sudo python /home/pi/lego-robot/server/robot.py &

Ini akan dijalankan setiap kali Pi dimulakan, jadi anda tidak perlu menjalankan perintah secara manual.

Langkah 17: Bersenang-senang

Berseronok !
Berseronok !

Itu sahaja.

Jangan ragu untuk memberikan komen jika anda buntu dan jika anda ingin memperbaiki mana-mana perisian, sila menyumbang ke repositori github. Saya akan terus mengusahakan projek ini dan berikut adalah beberapa idea:

  • Pengawal gaya "trak besar" di mana anda memprogramkan urutan perintah seperti "kiri 10, maju 6, belakang 2 …" dan kemudian tekan "jalankan" dan robot menjalankan perintah.
  • Leher memiringkan, supaya anda dapat melihat ke atas dengan kamera web
  • Pembesar suara yang menerjemahkan teks dari pengawal ke pertuturan
  • Alat kawalan suara

Sorakan

Peter

Disyorkan: