INHOUDSOPGAWE:

Outomatiese greep met behulp van 'n lasersensor en stemopdragte: 5 stappe (met foto's)
Outomatiese greep met behulp van 'n lasersensor en stemopdragte: 5 stappe (met foto's)

Video: Outomatiese greep met behulp van 'n lasersensor en stemopdragte: 5 stappe (met foto's)

Video: Outomatiese greep met behulp van 'n lasersensor en stemopdragte: 5 stappe (met foto's)
Video: Автомобильный генератор для генератора с самовозбуждением с использованием ДИОДА 2024, Julie
Anonim
Image
Image
Die lys van onderdele
Die lys van onderdele

Om voorwerpe vas te gryp wat vir ons eenvoudig en natuurlik lyk, is eintlik 'n komplekse taak. Die mens gebruik die gevoel van sig om die afstand te bepaal van die voorwerp wat hy wil gryp. Die hand gaan outomaties oop wanneer dit naby die voorwerp is wat vasgryp, en dan sluit dit vinnig om die voorwerp goed vas te gryp. Ek het hierdie tegniek op 'n vereenvoudigde manier in hierdie mini -projek gebruik, maar in plaas van die kamera het ek 'n lasersensor gebruik om die afstand van die voorwerp van die gryp en stemopdragte vir beheer te bepaal.

Stap 1: Die lys met onderdele

Die lys van onderdele
Die lys van onderdele

In hierdie klein projek benodig u slegs 'n paar van die onderstaande dele. As kontroleerder het ek Arduino mega 2560 gebruik, maar u kan ook UNO of enige ander Arduino gebruik. As afstandsensor gebruik ek 'n VL53L0X lasersensor met 'n goeie akkuraatheid (ongeveer 'n paar milimeter) en tot 2 meter. In hierdie projek kan u enige grijper en servo toets, maar u moet dit van 'n afsonderlike kragbron voorsien, byvoorbeeld: 'n 5V-kragtoevoer of 'n LiPo-battery (7.4V of 11.1V) deur 'n afskakelomskakelaar wat die spanning verminder tot 5V.

Onderdele benodig vir hierdie projek:

  • VL53L0X Laser ToF -sensor x1
  • Digitale servo x1
  • Arduino mega 2560 x1
  • Robotmetaalgrijper x1
  • Broodbord x1
  • Taktiele drukknop x1
  • Bluetooth HC-06
  • Weerstand 10k x1
  • Kragtoevoer 5V/2A

Uitgebreide weergawe:

  1. CJMCU-219 stroommonitorsensormodule x1
  2. WS2812 RGB LED bestuurderontwikkelingsraad x1

Stap 2: Aansluiting van elektroniese onderdele

Aansluiting van elektroniese onderdele
Aansluiting van elektroniese onderdele
Aansluiting van elektroniese onderdele
Aansluiting van elektroniese onderdele
Aansluiting van elektroniese onderdele
Aansluiting van elektroniese onderdele

Die eerste figuur toon al die nodige verbindings. Op die volgende foto's kan u die volgende stappe sien om individuele modules aan te sluit. Aan die begin was die drukknoppie verbind met pen 2 van Arduino, dan servo na pen 3 en laastens die VL53L0X laserafstandsensor via I2C -bus (SDA, SCL).

Die verbindings van elektroniese modules is die volgende:

VL53L0X Lasersensor -> Arduino Mega 2560

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

Servo -> Arduino Mega 2560

Sein (oranje draad) - 3

Servo -> 5V/2A kragtoevoer

  • GND (bruin draad) - GND
  • VCC (rooi draad) - 5V

Drukknop -> Arduino Mega 2560

  • Speld 1 - 3.3 of 5V
  • Speld 2 - 2 (en deur die 10k weerstand na die grond)

Bluetooth (HC -06) -> Arduino Mega 2560

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

Stap 3: Arduino Mega Code

Arduino Mega -kode
Arduino Mega -kode

Ek het die volgende voorbeeld Arduino -programme voorberei wat by my GitHub beskikbaar is:

  • VL53L0X_gripper_control
  • Voice_VL53L0X_gripper_control

Die eerste program met die naam "VL53L0X_gripper_control" vervul die taak om 'n voorwerp wat deur die VL53L0X lasersensor opgespoor is, outomaties vas te gryp. Voordat u die monsterprogram saamstel en oplaai, moet u seker maak dat u "Arduino Mega 2560" gekies het as die doelplatform soos hierbo getoon (Arduino IDE -> Tools -> Board -> Arduino Mega of Mega 2560). Die Arduino -program kyk in die hooflus - "void loop ()" of die nuwe lesing van lasersensor gekom het (funksie readRangeContinuousMillimeters ()). As die afstand wat gelees word vanaf die sensor "distance_mm" groter is as die waarde "THRESHOLD_CLOSING_DISTANCE_FAR" of minder as "THRESHOLD_CLOSING_DISTANCE_NEAR", begin die servo te sluit. In ander gevalle begin dit oopmaak. In die volgende deel van die program, in die funksie "digitalRead (gripperOpenButtonPin)", word die toestand van die drukknop voortdurend beheer en as dit ingedruk word, sal die grijper oopmaak ten spyte daarvan dat dit gesluit word weens die nabyheid van die voorwerp (afstand_mm is minder as THRESHOLD_CLOSING_DISTANCE_NEAR).

Met die tweede program "Voice_VL53L0X_gripper_control" kan u die grijper met stemopdragte beheer. Die stemopdragte word deur die BT Voice Control for Arduino -app van Google Play verwerk en verder via bluetooth na Arduino gestuur. Die Arduino -program kyk in die hooflus - "void loop ()" of die nuwe opdrag (karakter) vanaf Android -app via bluetooth gestuur is. As daar 'n inkomende karakter van Bluetooth -reeks is, lees die program die reeksdata totdat dit aan die einde van die steminstruksie "#" kom. Dan begin dit met die uitvoering van die 'void processInput ()' - funksie, en afhangende van die stemopdrag word 'n spesifieke beheerfunksie genoem.

Stap 4: Toets outomatiese gryp

Toets outomatiese gryp
Toets outomatiese gryp
Toets outomatiese gryp
Toets outomatiese gryp

Die video van 'Stap 1' toon toetse van robotgrijper gebaseer op die program uit die vorige afdeling 'Arduino Mega Code'. Hierdie video wys hoe dit outomaties oopmaak as die voorwerp daar naby is, en gryp dit dan as dit binne die bereik van die gryp is. Die terugvoer van die laserafstandsensor wat hier gebruik word, is duidelik sigbaar in die verdere deel van die video as ek die bottel vorentoe en agtertoe skuif, wat 'n vinnige reaksie en verandering van die grypbeheer veroorsaak.

Stap 5: Stem geaktiveerde outomatiese greep

Image
Image
Epilog Challenge 9
Epilog Challenge 9

In die volgende stap in die ontwikkeling van hierdie projek het ek stembeheer daarby gevoeg. Danksy die stemopdrag kan ek die sluiting, opening en snelheid van die grijper beheer. Stembeheer is in hierdie geval baie handig as u die grypgreep wat die voorwerp hou, oopmaak. Dit vervang die knoppie en laat die gryp op die mobiele robot maklik beheer.

As u van hierdie projek hou, vergeet dan nie om te stem en skryf in die kommentaar wat u in die volgende pos sou wou sien as 'n verdere verbetering van hierdie projek:) Kyk na my ander projekte rakende robotika, besoek net:

  • facebook
  • youtube
  • my webwerf

Aanbeveel: