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, Srpanj
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 predmeta 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: Popis 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 točnost (oko nekoliko milimetara) i dometa je 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.

Dijelovi potrebni u ovom projektu:

  • VL53L0X Laserski ToF osjetnik x1
  • Digitalni servo x1
  • Arduino mega 2560 x1
  • Robot hvataljka za metal x1
  • Oglasna ploča x1
  • Taktilni gumb x1
  • Bluetooth HC-06
  • Otpornik 10k x1
  • Napajanje 5V/2A

Proširena verzija:

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

Korak 2: Spajanje elektroničkih dijelova

Spajanje elektroničkih dijelova
Spajanje elektroničkih dijelova
Spajanje elektroničkih dijelova
Spajanje elektroničkih dijelova
Spajanje elektroničkih dijelova
Spajanje elektroničkih 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 gumb -> 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 GitHubu:

  • VL53L0X_kontrola_grippera
  • Glas_VL53L0X_kontrola_grippera

Prvi program pod nazivom "VL53L0X_gripper_control" izvršava zadatak automatskog hvatanja objekta koji je detektirao 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 ()" je li došlo do novog očitanja s 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 gumba stalno se kontrolira i ako se pritisne, hvataljka će se otvoriti unatoč 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 naredbe 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 serijskog programa, program će čitati serijske podatke sve dok ne naiđe na kraj glasovne upute "#". Zatim započ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 temelju programa iz prethodnog odjeljka "Arduino Mega Code". Ovaj video prikazuje kako se automatski otvara kada je objekt blizu njega, 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 naredbi mogu kontrolirati zatvaranje, otvaranje i brzinu hvataljke. Glasovna kontrola u ovom slučaju vrlo je korisna pri otvaranju hvataljke koja drži predmet. Zamjenjuje gumb i omogućuje jednostavno upravljanje hvataljkom postavljenom na mobilnog robota.

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

  • facebook
  • youtube
  • moju web stranicu

Preporučeni: