Съдържание:

Автоматично захващане с помощта на лазерен сензор и гласови команди: 5 стъпки (със снимки)
Автоматично захващане с помощта на лазерен сензор и гласови команди: 5 стъпки (със снимки)

Видео: Автоматично захващане с помощта на лазерен сензор и гласови команди: 5 стъпки (със снимки)

Видео: Автоматично захващане с помощта на лазерен сензор и гласови команди: 5 стъпки (със снимки)
Видео: ЗАПРЕЩЁННЫЕ ТОВАРЫ с ALIEXPRESS 2023 ШТРАФ и ТЮРЬМА ЛЕГКО! 2024, Юли
Anonim
Image
Image
Списъкът на частите
Списъкът на частите

Хващането на предмети, които ни се струват прости и естествени, всъщност е сложна задача. Човекът използва зрението за зрение, за да определи разстоянието от обекта, който иска да хване. Ръката автоматично се отваря, когато е в непосредствена близост до обекта, който се хваща и след това се затваря бързо, за да хване добре обекта. Използвах тази техника по опростен начин в този мини проект, но вместо камерата използвах лазерен сензор за оценка на разстоянието на обекта от грайфера и гласови команди за управление.

Стъпка 1: Списък на частите

Списъкът на частите
Списъкът на частите

В този малък проект ще ви трябват само няколко от изброените по -долу части. Като контролер използвах Arduino mega 2560, но можете да използвате и UNO или всеки друг Arduino. Като сензор за разстояние използвах лазерен сензор VL53L0X, който има добра точност (около няколко милиметра) и обхват до 2 метра. В този проект можете да използвате за тестване на всеки грайфер и серво, но трябва да го захранвате от отделен източник на захранване, например: 5V захранване или LiPo батерия (7.4V или 11.1V) чрез понижаващ преобразувател, който намалява напрежението към 5V.

Необходими части в този проект:

  • VL53L0X Лазерен ToF сензор x1
  • Цифрово серво x1
  • Arduino мега 2560 x1
  • Робот за захващане на метал x1
  • Платформа x1
  • Тактилен бутон x1
  • Bluetooth HC-06
  • Резистор 10k x1
  • Захранване 5V/2A

Разширена версия:

  1. CJMCU-219 Модул на сензора за текущ монитор x1
  2. WS2812 RGB LED Driver Development Board x1

Стъпка 2: Свързване на електронни части

Свързване на електронни части
Свързване на електронни части
Свързване на електронни части
Свързване на електронни части
Свързване на електронни части
Свързване на електронни части

Първата фигура показва всички необходими връзки. На следващите снимки можете да видите следващите стъпки за свързване на отделни модули. В началото бутонът беше свързан към щифт 2 на Arduino, след това серво към щифт 3 и накрая към лазерния сензор за разстояние VL53L0X чрез I2C шина (SDA, SCL).

Връзките на електронните модули са следните:

Лазерен сензор VL53L0X -> Arduino Mega 2560

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

Серво -> Arduino Mega 2560

Сигнал (оранжев проводник) - 3

Серво -> 5V/2A захранване

  • GND (кафяв проводник) - GND
  • VCC (червен проводник) - 5V

Бутон -> Arduino Mega 2560

  • Пин 1 - 3.3 или 5V
  • Пин 2 - 2 (и през 10k резистора към земята)

Bluetooth (HC -06) -> Arduino Mega 2560

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

Стъпка 3: Мега код на Arduino

Мега код на Arduino
Мега код на Arduino

Подготвил съм следните примерни програми на Arduino, налични в моя GitHub:

  • VL53L0X_gripper_control
  • Voice_VL53L0X_gripper_control

Първата програма, наречена "VL53L0X_gripper_control", изпълнява задачата за автоматично захващане на обект, открит от лазерния сензор VL53L0X. Преди да компилирате и качите примерната програма, уверете се, че сте избрали „Arduino Mega 2560“като целева платформа, както е показано по -горе (Arduino IDE -> Инструменти -> Board -> Arduino Mega или Mega 2560). Програмата Arduino проверява в главния цикъл - "void loop ()" дали е дошло новото отчитане от лазерния сензор (функция readRangeContinuousMillimeters ()). Ако разчитаното разстояние от сензора "distance_mm" е по -голямо от стойността "THRESHOLD_CLOSING_DISTANCE_FAR" или по -малко от "THRESHOLD_CLOSING_DISTANCE_NEAR", тогава сервото започва да се затваря. В други случаи той започва да се отваря. В следващата част на програмата, във функцията "digitalRead (gripperOpenButtonPin)", състоянието на бутона се контролира постоянно и ако се натисне, грайферът ще се отвори, въпреки че е затворен поради близостта на обекта (разстояние_мм е по -малко от THRESHOLD_CLOSING_DISTANCE_NEAR).

Втората програма "Voice_VL53L0X_gripper_control" ви позволява да управлявате грайфера с помощта на гласови команди. Гласовите команди се обработват от приложението BT Voice Control for Arduino от Google Play и по -нататък се изпращат по bluetooth до Arduino. Програмата Arduino проверява в основния цикъл - "void loop ()" дали новата команда (символ) е изпратена от приложението за Android чрез bluetooth. Ако има някакъв входящ знак от bluetooth сериал, програмата чете серийните данни, докато не срещне края на гласовата инструкция "#". След това започва изпълнението на функцията "void processInput ()" и в зависимост от гласовата команда се извиква специфична контролна функция.

Стъпка 4: Тестване на автоматично захващане

Тестване на автоматично захващане
Тестване на автоматично захващане
Тестване на автоматично захващане
Тестване на автоматично захващане

Видеоклипът от „Стъпка 1“показва тестове на грайфер на робот въз основа на програма от предишния раздел „Arduino Mega Code“. Този видеоклип показва как се отваря автоматично, когато обектът е близо до него и след това хваща този обект, ако е в обсега на грайфера. Обратната връзка от използвания тук лазерен сензор за разстояние е ясно видима в по -нататъшната част на видеото, когато премествам бутилката напред и назад, което причинява бърза реакция и смяна на управлението на грайфера.

Стъпка 5: Автоматично захващане с гласово активиране

Image
Image
Предизвикателство Epilog 9
Предизвикателство Epilog 9

В следващата стъпка в развитието на този проект добавих гласов контрол към него. Благодарение на гласовата команда мога да контролирам затварянето, отварянето и скоростта на грайфера. Гласовото управление в този случай е много полезно при отваряне на грайфера, който държи обекта. Той замества бутона и позволява лесно управление на грайфера, поставен на мобилния робот.

Ако харесвате този проект, не забравяйте да гласувате и напишете в коментара какво бихте искали да видите в следващата публикация като допълнително подобрение на този проект:) Разгледайте и другите ми проекти, свързани с роботиката, просто посетете:

  • facebook
  • youtube
  • моя уебсайт

Препоръчано: