Manufaktur industri
Industri Internet of Things | bahan industri | Pemeliharaan dan Perbaikan Peralatan | Pemrograman industri |
home  MfgRobots >> Manufaktur industri >  >> Manufacturing Technology >> Proses manufaktur

Rover Kecil Berbasis Arduino: Buat Robot Otonom Sendiri

Komponen dan Perlengkapan

Alat dan Mesin yang Diperlukan

Aplikasi dan Layanan Online

Tentang Proyek Ini

Latar Belakang

Keponakan saya (9 tahun) dan keponakannya (7 tahun) sangat antusias ketika melihat video robot penghindar rintangan yang pernah saya buat beberapa waktu lalu.

Tutorial untuk robot itu sayangnya tidak akan hadir karena berasal dari sebelum hard drive saya rusak dan saya menemukan manfaatnya backup serta DropBox, GitHub, dll. :)

Jadi, saya memutuskan untuk mencoba menciptakan sesuatu yang sedikit edukatif dan menyenangkan. Saya menyederhanakan mainan saya sebanyak mungkin dan muncul dengan rover kecil ini.

Bodi adalah kotak yang semula berisi stik kepiting. Ternyata ukurannya sangat sempurna. (Terima kasih Ayah telah memakan itu dengan kardusnya :D ) Wadah margarine juga mungkin ukurannya pas.

Sebagai penafian, saya akan menjelaskan di sini bagaimana kami membangun robot-robot ini dan kami biarkan anak-anak melakukan hampir semua pekerjaan sendiri. Saya dengan cara apapun tidak merekomendasikan melakukan hal ini. Ini terserah Anda sebagai orang tua / wali / bibi / paman / biara... yang bertanggung jawab untuk menentukan apakah setiap anak dapat dipercaya dengan berbagai tugas. Meskipun tidak benar-benar diperlukan, anak-anak diberi kacamata pelindung saat bekerja pada robot. Kotak yang kami gunakan terbuat dari plastik yang sangat lunak jadi saya biarkan keponakan dan keponakannya memotongnya sendiri setelah briefing tentang bahaya mengarahkan penis carpet ke diri sendiri atau anggota tubuh mereka.Unsur untuk lubang LED, kami menggunakan obor bor listrik nirkabel kecil untuk membatasi potensi cedera.

Saya senang melaporkan bahwa kotak pertolongan pertama yang saya siapkan masih tidak terpakai. :)

Tapi untuk mengulangi, ANDA adalah orang dewasa!

Rangkaian

Saya membuat rangkaian sedikit lebih rumit dari yang mungkin dengan menghubungkan kedua servo seperti yang saya lakukan.

Untuk anak-anak... Saya selalu mengatakan itu tapi 'anak-anak' termasuk kakak saya (35 tahun) dan Ibu saya (65 tahun), keduanya menikmati sore Robot-dan-Kraft sepertinya anak-anak sebenarnya. :)

Untuk penonton saya, saya mencetak gambar pada halaman A4 mencoba menjaga skala papan roti 1:1 dengan dunia nyata dan memberikan semua kabel jumper dengan warna dan panjang yang benar.

Setelah rangkaian dirakit, cukup muat program ke Arduino. Saya menyertakan komentar dalam kode untuk membantu Anda menyesuaikan kode sedikit, jika perlu. Jika semuanya terhubung dengan benar, servo harus mulai berputar dan LED akan berkedip. Dan jika Anda menaruh tangan di depan sensor, satu servo akan berhenti dan yang lain akan berputar ke arah lain sejenak.

Semua siap!

Pengaturan

Saatnya untuk mengambil 'bodi' Anda dan membuat lubang di dalamnya.

Di depan, tandai posisi sensor Anda dan potong lubang 'mata'.

Di sisi, ukur dengan baik di mana Anda ingin roda berada dan potong lubang di sisi, di tepi bawah kotak, cukup besar untuk servo muat tetapi cukup kecil sehingga bracket pemasangan tidak lolos.

Gunakan bor kecil, bor 2 lubang kecil untuk LED.

Di bawah kotak, ke arah belakang, pasang roda castor (atau leempelkan dengan lem panas).

Sekarang Anda siap untuk menempatkan semua hal di dalam kotak, dan leempelkan semuanya di tempat.

Pasang roda pada servo setelah lem mengeras.

Masukkan baterai dan lihat rover kecil bergerak di sekitar kamar secara acak sampai baterai habis. Atau Anda bosan dengan kebisingan. Atau anjing mendapatkannya! :D

Kode

  • LittleRover
LittleRoverArduino
#include <Servo.h> /* Jika Anda memiliki sensor dengan hanya 3 pin, Komentari baris 6 dan komentari baris 7 */ //int distanceR = A0; //Trigger pin int distance = 6; //Trigger pin int pingDelay = 10; //panjang pulsa sensor ultrasonik int distanceR = A0; //Echo pin int led1 = 8, led2 = 9; //LEDs Servo leftPower; Servo rightPower; unsigned long flashTime; unsigned long nextSensorTime; float obstacleDist = 0.0f; void setup() { //Serial.begin(115200); leftPower.attach(3); rightPower.attach(5); leftPower.write(90); rightPower.write(90); pinMode(led1, OUTPUT); pinMode(led2, OUTPUT); delay(1000); } void loop() { LEDs(); /* Ini mencegah sensor mengeboros baterai terlalu cepat dengan membatasi pemeriksaan 5 kali per detik Anda dapat meningkatkan angka ini untuk pemeriksaan lebih jarang tetapi kemudian mungkin menabrak dinding... */ if(millis() - nextSensorTime > 200){ nextSensorTime = millis(); /* Saya melakukan 2 pembacaan di sini karena kadang-kadang sensor bingung dan tidak mengembalikan apa-apa... */ float reading1 = TakeReading(); delay(100); float reading2 = TakeReading(); Serial.println(reading1); Serial.println(reading2); //Kemudian kita mengambil jarak terbesar untuk obstacleDist obstacleDist = reading1 >= reading2 ? reading1 : reading2; //Jika jarak kurang dari 10cm, belok, jika tidak, lurus. if(obstacleDist < 10.0f){ //Serial.println("turn"); turn(); }else{ //Serial.println("forward"); forward(); } } } void LEDs(){ if(millis() - flashTime > 1000) flashTime = millis(); if(millis() - flashTime < 500){ digitalWrite(led1, LOW); digitalWrite(led2, HIGH); }else if(millis() - flashTime > 500){ digitalWrite(led1, HIGH); digitalWrite(led2, LOW); } } void forward(){ /* Jika Anda menemukan robot Anda bergerak mundur, tukarkan 135 dan 45. */ leftPower.write(135); rightPower.write(45); } void turn(){ /* Jika Anda ingin robot Anda belok ke arah lain, Komentari baris 92-93 di bawah ini dan komentari 95-96 */ //leftPower.write(90); //rightPower.write(135); leftPower.write(45); rightPower.write(90); delay(350); } float TakeReading(){ unsigned long echo = 0; float result = 0.0f; pinMode(distance, OUTPUT); digitalWrite(distance, LOW); delayMicroseconds(2); digitalWrite(distance, HIGH); delayMicroseconds(pingDelay); digitalWrite(distance, LOW); pinMode(distanceR, INPUT); digitalWrite(distanceR, HIGH); echo = pulseIn(distanceR,HIGH,38000); result = echo/58.138; return result; } 

Skematik

littlerover_87IypZOgwm.fzz

Proses manufaktur

  1. Membangun Rover Windows IoT Core dengan Raspberry Pi 2 – Panduan Pemula hingga Lanjutan
  2. Buat Sendiri Game Serangan UFO dengan Arduino UNO & Tampilan MAX7219
  3. Proyek Dadu Digital Arduino: Buat Generator Angka Acak berbasis LCD
  4. Efek Api Berbasis Air: Proyek Arduino UNO + Neopixel Stick
  5. 3D RGB Arduclock – Jam LED Bluetooth dengan RTC
  6. Pemantau Kesehatan Sungai: Sistem Kualitas Air Berbasis Arduino
  7. Bangun Iron Man Arduino: Komponen, Sensor, dan Panduan Langkah demi Langkah
  8. Permainan Joystick Interaktif dengan Arduino dan Umpan Balik LED
  9. Find Me: Pelacak Item Cerdas dengan Arduino dan Bluetooth
  10. Buat Lengan Robot Berbasis Arduino dan Cetak 3D – Panduan Langkah demi Langkah