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

Pathfinder: Kit Proyek Arduino UNO – Komponen & Perlengkapan

Komponen dan Perlengkapan

Alat dan Mesin yang Diperlukan

Aplikasi dan Layanan Online

Tentang Proyek Ini

Sinopsis

Kertas ini mewakili desain Robot Menghindari Halangan dengan kemampuan mendeteksi objek dalam jalurnya dan menavigasi di sekitar objek tersebut dengan membuat keputusan yang tepat. Ini menunjukkan unit robotik berdasarkan Arduino UNO dan Adafruit Motor Shield di mana kode ditulis dalam perangkat lunak Arduino IDE. Penghindaran halangan adalah salah satu faktor kunci yang signifikan untuk mengembangkan robot mobile. Penerapan Sensor Jarak Ultrasonik yang ditempatkan pada Mikro-Servo Motor menghasilkan lebih banyak presisi untuk mendeteksi objek di sekitar. Robot yang dirancang ini berbeda dari robot lain yang tersedia karena integrasi Buzzer Magnetik dan LED RGB Diffused CC yang mengakibatkan kemampuan untuk mengindikasikan proses deteksi objek dan mengontrol kecepatan Motor DC Gear dalam 4 jenis situasi. Sebagai robot otonom, potensi untuk maneuver melalui kondisi tidak diketahui tanpa menciptakan dampak apa pun telah dieksekusi. Selain itu, teknologi yang dirancang ini dapat digunakan untuk operasi militer dan bantuan kemanusiaan dengan meningkatkan kapasitas deteksi objek di lingkungan yang beragam.

Multimedia

Interpretasi

Library yang disertakan dalam kode blok adalah sebagai berikut:

AFMotor.h
Servo.h

Koneksi yang ditetapkan dalam kode inline adalah sebagai berikut:

define BuzzPIN A0
define TrigPIN A1
define EchoPIN A2
define LEDBPIN A3
define LEDGPIN A4
define LEDRPIN A5
define DCMROFF 25

Program yang diantisipasi dalam arsitektur robot adalah sebagai berikut:

Semua operasi akan dilakukan secara otonom tanpa kebutuhan kontrol eksternal apa pun.

Proyek ini menyajikan detail penting untuk merancang robot mobile yang diimplementasikan dengan kemampuan menghindari halangan, menavigasi sendiri, dan mengindikasikan gerakan motor DC gear dengan menyala warna selektif dari LED RGB diffused CC dalam 4 situasi berbeda. Robot yang dirancang menunjukkan variasi dari robot menghindari halangan lain dalam hal indikasi cahaya-suara, kontrol kecepatan motor, dan teknik manuver intensif dengan mendeteksi halangan dalam jangkauan 180 derajat di depan robot; yang merupakan tugas yang sulit untuk digabungkan melalui pemrograman yang tepat. Robot dibangun pada platform Arduino UNO Rev3 dengan bantuan perangkat lunak Arduino IDE v1.8.5 untuk integrasi kode assembly yang tepat untuk mendapatkan fungsi yang diperlukan. Integrasi itu membuat robot mampu melakukan operasi yang diperlukan tanpa interaksi manusia dan dengan akurasi yang cukup. Dengan pengembangan lebih lanjut dengan menggabungkan kamera siaran dan teknologi nirkabel, robot ini dapat digunakan secara efektif untuk operasi militer untuk mendeteksi berbagai jenis aktivitas sedangkan unit dasarnya dapat berguna untuk membantu manusia dengan gangguan penglihatan atau pendengaran untuk memberi tahu lokasi objek di sekitar.

Youth Zest Project Showcase

Kode

ProgramArduino

Program assembly, untuk mengatur mesin otonom ini sesuai kebutuhan.

#include <AFMotor.h> // Tambahkan library kit Adafruit Motor Shield untuk Arduino.
#include <Servo.h> // Tambahkan library Servo Motor.
#define BuzzPIN A0 // Tetapkan PIN A0 sebagai BuzzPIN.
#define TrigPIN A1 // Tetapkan PIN A1 sebagai TrigPIN.
#define EchoPIN A2 // Tetapkan PIN A2 sebagai EchoPIN.
#define LEDBPIN A3 // Tetapkan PIN A3 sebagai LEDBPIN.
#define LEDGPIN A4 // Tetapkan PIN A4 sebagai LEDGPIN.
#define LEDRPIN A5 // Tetapkan PIN A5 sebagai LEDRPIN.
#define DCMROFF 25 // Ini mengatur Offset untuk membedakan dua Motor Traksi DC.
AF_DCMotor M1 (1, MOTOR12_64KHZ); // Buat DCMotor #1 menggunakan output M1, Set ke frekuensi PWM 64kHz.
AF_DCMotor M2 (2, MOTOR12_64KHZ); // Buat DCMotor #2 menggunakan output M2, Set ke frekuensi PWM 64kHz.
Servo SER1; // Buat objek Servo untuk mengontrol Servo.
int Search (void) {
  float Duration = 0.0;
  float CM = 0.0;
  digitalWrite (TrigPIN, LOW);
  delayMicroseconds (2);
  digitalWrite (TrigPIN, HIGH);
  delayMicroseconds (10);
  digitalWrite (TrigPIN, LOW);
  Duration = pulseIn (EchoPIN, HIGH);
  CM = (Duration/58.8);
  return CM;
}
int RightDistance, LeftDistance;
float Distance = 0.00;
void setup () {
  pinMode (BuzzPIN, OUTPUT);
  pinMode (TrigPIN, OUTPUT);
  pinMode (EchoPIN, INPUT);
  pinMode (LEDBPIN, OUTPUT);
  pinMode (LEDGPIN, OUTPUT);
  pinMode (LEDRPIN, OUTPUT);
  SER1.attach (10);
}
void loop () {
  SER1.write (80);
  delay (100);
  Distance = Search ();
  if (Distance < 30) {
    digitalWrite (BuzzPIN, HIGH);
    digitalWrite (LEDBPIN, LOW);
    digitalWrite (LEDGPIN, LOW);
    digitalWrite (LEDRPIN, HIGH);
    M1.setSpeed (100);
    M2.setSpeed (100);
    ChangePath ();
  } else if ((Distance >= 30) && (Distance < 60)) {
    digitalWrite (BuzzPIN, LOW);
    digitalWrite (LEDBPIN, HIGH);
    digitalWrite (LEDGPIN, LOW);
    digitalWrite (LEDRPIN, LOW);
    M1.setSpeed (150);
    M2.setSpeed (150);
    Forward ();
  } else if ((Distance >= 60) && (Distance < 90)) {
    digitalWrite (BuzzPIN, LOW);
    digitalWrite (LEDBPIN, LOW);
    digitalWrite (LEDGPIN, HIGH);
    digitalWrite (LEDRPIN, LOW);
    M1.setSpeed (200);
    M2.setSpeed (200);
    Forward ();
  } else {
    digitalWrite (BuzzPIN, LOW);
    digitalWrite (LEDBPIN, HIGH);
    digitalWrite (LEDGPIN, HIGH);
    digitalWrite (LEDRPIN, HIGH);
    M1.setSpeed (250);
    M2.setSpeed (250);
    Forward ();
  }
}
void ChangePath () {
  Stop ();
  Backward ();
  Stop ();
  SER1.write (12);
  delay (500);
  RightDistance = Search ();
  delay (500);
  SER1.write (160);
  delay (1000);
  LeftDistance = Search ();
  delay (500);
  SER1.write (80);
  delay (500);
  CompareDistance ();
}
void CompareDistance () {
  if (RightDistance > LeftDistance) {
    TurnRight ();
  } else if (LeftDistance > RightDistance) {
    TurnLeft ();
  } else {
    TurnAround ();
  }
}
void Forward () {
  M1.run (FORWARD);
  M2.run (FORWARD);
}
void Backward () {
  M1.run (BACKWARD);
  M2.run (BACKWARD);
  delay (500);
}
void TurnRight () {
  M1.run (BACKWARD);
  M2.run (FORWARD);
  M1.setSpeed (100+DCMROFF);
  delay (300);
}
void TurnLeft () {
  M1.run (FORWARD);
  M2.run (BACKWARD);
  M2.setSpeed (100+DCMROFF);
  delay (300);
}
void TurnAround () {
  M1.run (FORWARD);
  M2.run (BACKWARD);
  M2.setSpeed (100+DCMROFF);
  delay (700);
}
void Stop () {
  M1.run (RELEASE);
  M2.run (RELEASE);
  delay (100);
}

Bagian dan Enclosure Kustom

Chassis

Chassis robot, untuk mengatur mesin otonom ini sesuai kebutuhan.

Skematik

Diagram rangkaian, untuk mengatur mesin otonom ini sesuai kebutuhan.

Proses manufaktur

  1. Menguasai Sintaks Netlist SPICE: Penamaan Komponen, Elemen Pasif & Aktif, dan Definisi Sumber
  2. Sirkuit Terpadu (IC): Chip Kompak dan Canggih yang Menggerakkan Elektronik Modern
  3. Mentransfer Data Suhu dan Kelembaban antara Dua Arduino menggunakan Firebase
  4. Proyek Dadu Digital Arduino: Buat Generator Angka Acak berbasis LCD
  5. Sistem Sensor Suhu Multi-Posisi untuk Integrasi Rumah Cerdas
  6. Pengontrol USB Game Arduino DIY – Buat Gamepad Tinggi Performa Sendiri
  7. Kit Proyek MOSMusic: MOSFET, Arduino, dan Lainnya
  8. Memahami Mikroelektronika: Ilmu Elektronika Kecil
  9. Komponen Esensial Mesin Bor: Gambaran Umum Komprehensif
  10. Komponen Utama Mesin Pembakaran Dalam