Sadržaj:

Automatsko hvatanje pomoću laserskog senzora i glasovnih naredbi: 5 koraka (sa slikama)
Automatsko hvatanje pomoću laserskog senzora i glasovnih naredbi: 5 koraka (sa slikama)

Video: Automatsko hvatanje pomoću laserskog senzora i glasovnih naredbi: 5 koraka (sa slikama)

Video: Automatsko hvatanje pomoću laserskog senzora i glasovnih naredbi: 5 koraka (sa slikama)
Video: Лазерный МФУ Pantum M7100DW - современный помощник для дома и офиса 2024, Juli
Anonim
Image
Image
Popis dijelova
Popis dijelova

Hvatanje objekata koji nam se čine jednostavnim i prirodnim, zapravo je složen zadatak. Čovjek pomoću osjetila vida određuje udaljenost od objekta koji želi uhvatiti. Ruka se automatski otvara kada je u neposrednoj blizini predmeta koji se hvata, a zatim se brzo zatvara kako bi dobro uhvatila predmet. Ovu sam tehniku pojednostavljeno upotrijebio u ovom mini projektu, ali umjesto kamere koristio sam laserski senzor za procjenu udaljenosti objekta od hvataljke i glasovne naredbe za kontrolu.

Korak 1: Lista dijelova

Popis dijelova
Popis dijelova

U ovom malom projektu trebat će vam samo nekoliko dolje navedenih dijelova. Kao kontroler koristio sam Arduino mega 2560, ali možete koristiti i UNO ili bilo koji drugi Arduino. Kao senzor udaljenosti koristio sam laserski senzor VL53L0X koji ima dobru preciznost (oko nekoliko milimetara) i dometa do 2 metra. U ovom projektu možete koristiti za testiranje bilo koje hvataljke i servo, ali trebali biste je napajati iz zasebnog izvora napajanja, na primjer: napajanje od 5 V ili LiPo baterija (7,4 V ili 11,1 V) kroz stepenasti pretvarač koji smanjuje napon na 5V.

Delovi potrebni za ovaj projekat:

  • VL53L0X Laser ToF senzor x1
  • Digitalni servo x1
  • Arduino mega 2560 x1
  • Robot hvataljka za metal x1
  • Oglasna ploča x1
  • Taktilno dugme x1
  • Bluetooth HC-06
  • Otpornik 10k x1
  • Napajanje 5V/2A

Proširena verzija:

  1. CJMCU-219 Modul senzora monitora struje x1
  2. WS2812 RGB LED upravljačka ploča za razvoj upravljačkih programa x1

Korak 2: Spajanje elektroničkih dijelova

Povezivanje elektronskih dijelova
Povezivanje elektronskih dijelova
Povezivanje elektronskih dijelova
Povezivanje elektronskih dijelova
Povezivanje elektronskih dijelova
Povezivanje elektronskih dijelova

Prva slika prikazuje sve potrebne veze. Na sljedećim fotografijama možete vidjeti sljedeće korake povezivanja pojedinih modula. Na početku je gumb bio spojen na pin 2 Arduina, zatim servo na pin 3 i na kraju laserski senzor udaljenosti VL53L0X putem I2C sabirnice (SDA, SCL).

Priključci elektroničkih modula su sljedeći:

VL53L0X Laserski senzor -> Arduino Mega 2560

  • SDA - SDA
  • SCL - SCL
  • VCC - 5V
  • GND - GND

Servo -> Arduino Mega 2560

Signal (narančasta žica) - 3

Servo -> 5V/2A Napajanje

  • GND (smeđa žica) - GND
  • VCC (crvena žica) - 5V

Pritisnite dugme -> Arduino Mega 2560

  • Pin 1 - 3.3 ili 5V
  • Pin 2 - 2 (i kroz 10k otpornik na masu)

Bluetooth (HC -06) -> Arduino Mega 2560

  • TXD - TX1 (19)
  • RXD - RX1 (18)
  • VCC - 5V
  • GND - GND

Korak 3: Arduino Mega kod

Arduino Mega kod
Arduino Mega kod

Pripremio sam sljedeće uzorke Arduino programa koji su dostupni na mom GitHub -u:

  • VL53L0X_gripper_control
  • Voice_VL53L0X_gripper_control

Prvi program pod nazivom "VL53L0X_gripper_control" ispunjava zadatak automatskog hvatanja objekta koji je otkrio laserski senzor VL53L0X. Prije sastavljanja i učitavanja uzorka programa, provjerite jeste li odabrali "Arduino Mega 2560" kao ciljnu platformu kao što je prikazano gore (Arduino IDE -> Alati -> Ploča -> Arduino Mega ili Mega 2560). Program Arduino provjerava u glavnoj petlji - "void loop ()" da li je došlo do novog očitanja sa laserskog senzora (funkcija readRangeContinuousMillimeters ()). Ako je udaljenost očitana od senzora "distance_mm" veća od vrijednosti "THRESHOLD_CLOSING_DISTANCE_FAR" ili manja od "THRESHOLD_CLOSING_DISTANCE_NEAR", tada se servo zatvara. U drugim slučajevima počinje se otvarati. U sljedećem dijelu programa, u funkciji "digitalRead (gripperOpenButtonPin)", stanje tipke se stalno kontrolira i ako se pritisne, hvataljka će se otvoriti uprkos tome što je zatvorena zbog blizine objekta (udaljenost_mm je manja od THRESHOLD_CLOSING_DISTANCE_NEAR).

Drugi program "Voice_VL53L0X_gripper_control" omogućuje vam upravljanje hvataljkom pomoću glasovnih naredbi. Glasovne komande obrađuje aplikacija BT Voice Control za Arduino s Google Playa i dalje šalje putem Bluetootha na Arduino. Program Arduino provjerava u glavnoj petlji - "void loop ()" je li nova naredba (znak) poslana iz Android aplikacije putem bluetootha. Ako postoji bilo koji dolazni znak iz bluetooth serije, program čita serijske podatke sve dok ne naiđe na kraj glasovne upute "#". Zatim počinje izvršavanje funkcije "void processInput ()" i ovisno o glasovnoj naredbi poziva se određena kontrolna funkcija.

Korak 4: Testiranje automatskog hvatanja

Testiranje automatskog hvatanja
Testiranje automatskog hvatanja
Testiranje automatskog hvatanja
Testiranje automatskog hvatanja

Videozapis iz "Koraka 1" prikazuje testove hvataljke robota na osnovu programa iz prethodnog odjeljka "Arduino Mega Code". Ovaj video prikazuje kako se automatski otvara kada mu je objekt blizu, a zatim hvata ovaj objekt ako je nadohvat hvataljke. Povratne informacije od laserskog senzora udaljenosti koji se ovdje koristi jasno su vidljive u daljnjem dijelu videozapisa kada pomaknem bočicu naprijed i natrag što uzrokuje brzu reakciju i promjenu kontrole hvataljke.

Korak 5: Glasovno aktivirano automatsko hvatanje

Image
Image
Epilog izazov 9
Epilog izazov 9

U sljedećem koraku u razvoju ovog projekta dodao sam mu glasovno upravljanje. Zahvaljujući glasovnoj komandi, mogu kontrolirati zatvaranje, otvaranje i brzinu hvataljke. Glasovna kontrola u ovom slučaju vrlo je korisna pri otvaranju hvataljke koja drži predmet. Zamjenjuje dugme i omogućuje jednostavno upravljanje hvataljkom postavljenom na mobilnog robota.

Ako vam se sviđa ovaj projekat, ne zaboravite glasati i u komentar napišite šta biste htjeli vidjeti u sljedećem postu kao dodatno poboljšanje ovog projekta.) Pogledajte moje druge projekte vezane za robotiku, samo posjetite:

  • facebook
  • youtube
  • moju web stranicu

Preporučuje se: