Daftar Isi:
- Langkah 1: Langkah 1: Bahan yang Dibutuhkan
- Langkah 2: Langkah 2: Menyiapkan/Mendapatkan Kode untuk Roomba
- Langkah 3: Langkah 3: Menyiapkan Sensor Tebing/Lampu LED
- Langkah 4: Langkah 4: Memeriksa Hambatan
- Langkah 5: Langkah 5: Merencanakan
Video: Proyek Roomba MATLAB: 5 Langkah
2024 Pengarang: John Day | [email protected]. Terakhir diubah: 2024-01-30 09:57
Rencana saat ini yang dimiliki NASA untuk penjelajah Mars adalah menjadi pengumpul data dan berkeliaran di sekitar Mars, mengumpulkan sampel tanah untuk dibawa kembali ke Bumi sehingga para ilmuwan dapat melihat apakah ada bentuk kehidupan sebelumnya di planet ini. Selain itu, rover mengirimkan kembali gambar ke para ilmuwan, sehingga mereka dapat membantu menavigasi rover dan memperbaiki masalah apa pun yang mungkin ada.
Ide kelompok kami untuk proyek kami adalah agar rover melakukan hal yang sama dengan rover NASA yang akan meninggalkan bumi pada tahun 2020, tetapi juga untuk memetakan geografi daratan. Roomba akan dapat merasakan tebing dan berhenti sendiri sebelum jatuh, dan kemudian kembali, berbalik, dan mengubah arahnya sehingga tidak akan jatuh dan rusak. Ide kami yang lain yang diintegrasikan ke dalam proyek kami adalah agar roomba dapat memplot landmark yang dilihatnya, dan menunjukkan plot setiap kali loop selesai dan jalurnya telah dijalankan.
Instruksi ini untuk siapa saja yang ingin membuat jenis kode yang sama untuk roomba mereka.
Langkah 1: Langkah 1: Bahan yang Dibutuhkan
Anda akan perlu:
- Sebuah kamar
- MATLAB
- File ini untuk menjalankan roomba
- Permukaan datar
- Permukaan meja untuk bertindak sebagai "tebing"
Langkah 2: Langkah 2: Menyiapkan/Mendapatkan Kode untuk Roomba
Layar Anda akan terlihat seperti ini setelah Anda memasukkan file.
Langkah 3: Langkah 3: Menyiapkan Sensor Tebing/Lampu LED
Kode ini akan memberi tahu roomba Anda sudut yang tepat untuk berbelok, memeriksa info baterai, memberi tahu roomba Anda seberapa cepat untuk pergi, dan untuk memeriksa seseorang melalui kamera roomba. Itu juga akan berbunyi bip jika mengidentifikasi seseorang, dan berhenti sendiri sebelum turun dari tebing.
% coba rob.setLEDDigits('') x=0; y=0; theta=0; hambatan = ; siklus = 1; AngCorr = @(x)x + 3.059.*x.^0.4205; %Fungsi untuk mengoreksi sudut belok saat rob.getBatteryInfo.percent > 15 rob.setLEDDigits('') rob.setDriveVelocity(0.1) %Pergi %Periksa Orang jika AA_checkperson(rob) rob.beep end %Periksa Sensor Tebing jika AA_cliffcheck(rob)) rob.stop rob.setLEDDigits('Cliff') pause(0.5) rintangan(siklus) = 2; AA_cliffbeep(rob) %Back Up Dan Putar rob.moveDistance(-.15) rob.turnAngle(30) end
Langkah 4: Langkah 4: Memeriksa Hambatan
Kode ini akan mendapatkan roomba untuk memeriksa barang-barang di sekitarnya, dan akan memeriksa bump sensor untuk memastikannya berhenti sebelum merusak dirinya sendiri.
%Periksa Sensor Cahaya jika AA_lightcheck(rob) rob.stop rob.setLEDDigits('Wall') pause(0.5) obstacle(cycle) = 1; %Wall AA_wallbeep(rob) %Back Up Dan Putar rob.moveDistance(-.15) rob.turnAngle(30) end %Periksa Bump Sensor jika AA_bumpcheck(rob) rob.stop rob.setLEDDigits('Wall') pause(0.5) rintangan(siklus) = 1; %Wall AA_wallbeep(rob) %Back Up Dan Putar rob.moveDistance(-.15) rob.turnAngle(30) end %Jika tidak ada jika kosong(rintangan) rintangan(siklus) = 0; elseif panjang(rintangan) < siklus rintangan(siklus) = 0; akhir
Langkah 5: Langkah 5: Merencanakan
Kode ini akan memberi tahu roomba Anda untuk merencanakan apa yang ditemuinya dalam perjalanannya. Plot seperti ini akan muncul setelah roomba berhenti.
%Dapatkan Posisi d = rob.getDistance; jika siklus == 1 theta(siklus) = 0; x(siklus) = d.*cosd(theta(siklus)); % total jarak yang ditempuh dalam x y(siklus) = d.*sind(theta(siklus)); % total jarak yang ditempuh dalam y else theta(cycle) = theta(cycle-1) + rob.getAngle; x(siklus) = d.*cosd(theta(siklus)) + x(siklus-1); % total jarak yang ditempuh dalam x y(siklus) = d.*sind(theta(siklus)).*d + y(siklus-1); % total jarak tempuh pada akhir y %Kondisi rusak jika rob.getButtons.clean break end %Peningkatan siklus siklus = siklus + 1; akhiri rob.stop untuk i = 1:siklus jika rintangan(i) == 1 %Plot dinding(x(i), y(i), 'Penanda', 'persegi', 'PenandaEdgeColor', 'r') elseif rintangan (i) == 2 %Cliff plot(x(i), y(i), 'Marker', 'o', 'MarkerEdgeColor', 'k') teks akhir(.9, 0.9, sprintf('Square = Wall \nLingkaran = Tebing'), 'Unit', 'dinormalisasi') tahan %Distress Signal sementara rob.beep benar jeda(3) jika rob.getButtons.clean break end end % catch % rob.stop % end
Direkomendasikan:
Cara Membuat RADAR Menggunakan Arduino untuk Proyek Sains - Proyek Arduino Terbaik: 5 Langkah
Cara Membuat RADAR Menggunakan Arduino untuk Proyek Sains | Proyek Arduino Terbaik: Hai teman-teman, dalam instruksi ini saya akan menunjukkan kepada Anda bagaimana membuat sistem radar luar biasa yang dibangun menggunakan arduino nano, proyek ini sangat ideal untuk proyek sains dan Anda dapat dengan mudah membuatnya dengan investasi dan peluang yang sangat sedikit jika memenangkan hadiah besar untuk
Proyek Mars Roomba UTK: 4 Langkah
Mars Roomba Project UTK: DISCLAIMER: INI HANYA AKAN BEKERJA JIKA ROOMBA DITETAPKAN DENGAN CARA YANG SANGAT KHUSUS, INSTRUCTABLE INI DIBUAT DAN DIMAKSUDKAN UNTUK DIGUNAKAN OLEH MAHASISWA DAN FAKULTAS UNIVERSITAS TENNESSEE Kode ini digunakan untuk menyiapkan Roomba untuk dijalankan secara lokal tertulis dan s
10 Proyek Dasar Arduino untuk Pemula! Buat Setidaknya 15 Proyek Dengan Satu Papan!: 6 Langkah
10 Proyek Arduino Dasar untuk Pemula! Buat Setidaknya 15 Proyek Dengan Satu Papan!: Proyek Arduino & Papan Tutorial; Termasuk 10 proyek Arduino dasar. Semua kode sumber, file Gerber, dan lainnya. Tidak ada SMD! Solder mudah untuk semua orang. Komponen yang mudah dilepas dan diganti. Anda dapat membuat setidaknya 15 proyek dengan satu
Proyek Roomba: 5 Langkah (dengan Gambar)
Proyek Roomba: Instruksi ini dibuat untuk memenuhi persyaratan proyek Makecourse di University of South Florida (www.makecourse.com). Instruksi ini akan mencakup semua langkah dan komponen yang diperlukan untuk merakit proyek Roomba saya
Pembakar Bertenaga USB! Proyek Ini Dapat Membakar Melalui Plastik / Kayu / Kertas (Proyek yang menyenangkan Juga Harus Kayu yang Sangat Halus): 3 Langkah
Pembakar Bertenaga USB! Proyek Ini Dapat Membakar Plastik/ Kayu / Kertas (Proyek Menyenangkan Juga Harus Kayu Sangat Halus): JANGAN MEMBUAT INI MENGGUNAKAN USB!!!! saya menemukan bahwa itu dapat merusak komputer Anda dari semua komentar. komputer saya baik-baik saja tho. Gunakan pengisi daya telepon 600ma 5v. saya menggunakan ini dan berfungsi dengan baik dan tidak ada yang rusak jika Anda menggunakan steker pengaman untuk menghentikan daya