Мазмұны:

Leap Motion басқарылатын қашықтан іздеу және жою роботы: 5 қадам
Leap Motion басқарылатын қашықтан іздеу және жою роботы: 5 қадам

Бейне: Leap Motion басқарылатын қашықтан іздеу және жою роботы: 5 қадам

Бейне: Leap Motion басқарылатын қашықтан іздеу және жою роботы: 5 қадам
Бейне: Титаниктің құпиясы: олар айсбергті қалай байқамады?! Ең егжей-тегжейлі оқиға! 2024, Қараша
Anonim
Image
Image

Leap Motion #3D Jam бағдарламасына жазылуымның бір бөлігі ретінде мен Raspberry Pi негізінде іздеу/құтқару роботын басқаратын сымсыз қимылды құруға қуаныштымын. Бұл жоба сымсыз 3D қол қимылдарын физикалық заттарды басқару мен өзара әрекеттесу үшін қолдануға болатын минималистік мысалды көрсетеді және ұсынады.

Бұл жоба Raspberry Pi -де танымал WebIOPi IoT құрылымын қолданатындықтан, оны Raspberry Pi -мен байланыстыруға болатын кез келген сенсор/аппараттық құралдар/электрониканы басқару және интерфейс үшін оңай кеңейтуге болады.

Мен ойлағандай, кейбір ықтимал сценарийлер басқа жобалаушылар осы жобаны келесі негізге қою үшін қолдана алады:

1. Қашықтан қимылмен басқарылатын бомбаны жою роботы (мүмкін OWI қолын және т.

2. Дәрігердің қашықтықтан хирургиялық операциясы

3. Қимылмен басқарылатын интерактивті өнер көрмелері немесе білім мазмұны

4. Шексіз басқа мүмкіндіктер/интеграция (мен қиялмен шектелгенмін:))

1 -қадам: Шолу

WebIOPi Framework түсінігі
WebIOPi Framework түсінігі

Бұл жоба пайдаланушыға компьютерге қосылған Leap Motion арқылы 3D қол қимылдарын қолдана отырып роботты интерактивті басқаруға мүмкіндік береді.

Робот бортында Raspberry Pi-де USB веб-камерасы бар, ол веб-шолғышта көруге болатын пайдаланушыға тікелей бейне жібереді. Бұл веб -бетке енгізілген LeapMotion JavaScript кітапханасы қол қимылдарын өңдейді және басқару сигналдарын роботқа қайтарады, содан кейін ол сәйкесінше қозғалады.

Роботтағы Raspberry Pi оған қосылған USB WiFi кілті көмегімен қосылу нүктесі (AP режимі) ретінде конфигурацияланған. Бұл біздің компьютерлерге/құрылғыларға Raspberry Pi -ге тікелей қосылуға және веб -бет арқылы басқаруға мүмкіндік береді. Raspberry Pi -ді клиенттік режимде жұмыс істеуге конфигурациялауға болады, онда ол ДК/Құрылғылар бұрыннан қосылған Wi -Fi маршрутизаторының AP -ге сымсыз қосылады.

Бұл жоба Raspberry Pi үшін танымал IoT негізі болып табылатын WebIOPi -ге (https://webiopi.trouch.com/) негізделген. Weaved IoT жиынтығын қолдану арқылы (немесе маршрутизатордағы порт жіберу арқылы) бұл роботты қашықтан басқаруға және/немесе әлемнің кез келген нүктесінен деректерді алуға болады.

Жобаны құру үшін келесі компоненттер пайдаланылды:

  1. Raspberry Pi B (100% алға Raspberry Pi B+үйлесімді)
  2. Logitech USB веб -камерасы (кіші 1.3 мегапиксель)
  3. L293D мотор драйвері IC және Breakout Shield
  4. Raspberry Pi үшін USB WiFi Dongle
  5. Raspberry Pi үшін USB қуат банкі
  6. Сыртқы 4V/1.5A робот моторын басқаруға арналған батарея

2 -қадам: жобаны құру

WebIOPi орнату, реттелетін кодты жазу және веб -камераны конфигурациялау:

WebIoPi орнату нұсқаулары, негіз негіздері және көптеген мысалдар жоба бетінде мына жерде орналасқан:

Веб -бетке енгізілген LeapMotion функцияларын алу үшін Raspberry Pi -де GPIO әрекеттері іске қосылады, біз мұнда егжей -тегжейлі берілген макростарды қолдандық:

Мен сонымен қатар жоғарыда аталған процесс туралы кейбір жазбаларды жаздым, оларды тіркеуден табуға болады.

Веб -камераны орнату және конфигурациялау

Біз MJPG-Streamer бағдарламасын Raspberry Pi-ден Pi-ге қосылған USB веб-камерасы арқылы шолғышқа жіберу үшін қолданамыз. MJPG-Streamer-ді Raspberry Pi-де жұмыс істеу үшін https://blog.miguelgrinberg.com/post/how-to-build-… көрсетілген нұсқауларды орындаңыз.

Raspberry Pi -ді AP/хотспот ретінде конфигурациялау

Raspberry Pi-ді хост ретінде орнату үшін мына жерде берілген нұсқауларды орындаңыз: https://elinux.org/RPI-Wireless-Hotspot. Мен Raspberry Pi -дің статикалық IP -ін 192.168.42.1 деп конфигурацияладым, бұл Pi AP режиміне қосылғаннан кейін браузерге енгіземіз.

WebIOPi, MJPG-Streamer және WiFi хотспот қызметі жүктеу кезінде автоматты түрде іске қосылатын етіп конфигурацияланған, бұл бізге веб-шолғышты тікелей ашуға және ол іске қосылғаннан кейін роботқа қосылуға мүмкіндік береді. Репода қол жетімді rc.local файлы веб -камераны жүктеу кезінде іске қосу үшін қолданылады.

3 -қадам: құрастыру/сымдар бойынша нұсқаулық

Raspberry Pi -дің 4 GPIO -сы, яғни GPIO 9, 11, 23 және 24, L293D мотор драйвері IC -ге қосылған, ол Webiopi құрылымы қызмет ететін веб -беттен макро сұраныстарды алғаннан кейін қозғалтқыштарды басқарады. USB WiFi кілті мен USB Logitech веб -камерасы Raspberry Pi -де қол жетімді 2 USB портына қосылған. 5V 4000 Mah Power банкі Pi -ге негізгі қуат береді. Қозғалтқыштарды басқару үшін 4В 1.5А қорғасын қышқылының аккумуляторы қолданылады.

Ескерту: Мен пайдаланатын қуат банкінің максималды шығыс тогы 1000 Мах болғандықтан, қозғалтқыштарды басқару үшін сыртқы қорғасын қышқылының батареясын қолдануға тура келді. Егер сізде> = 2000Mah беретін қуат банкі болса, сіз қозғалтқыштарды 5В рельсінен тікелей Pi -де басқара аласыз (мен мұны қуатты қозғалтқыштар үшін ұсынбаймын)

LeapMotion Javascript API, WebIOPi және MJPG-Streamer жобасының 3 негізгі бөлімшелері және олардың негізгі жұмыс/қондырғысы төменде қысқаша сипатталған.

4 -қадам: WebIOPi Framework түсіну

Браузерде көрсетілетін фронталь HTML (Файл атауы: index.html) & Javascript тілдерінде жазылған, ал GPIO -ді басқаратын артқы жағы Python -да жазылған (Файл атауы: script.py). WebIOPi негізіне негізделген теңшелетін WebApp құру туралы егжей -тегжейлі ескертулер Bitbucket репо жазбасында тіркелген.

Python сценарийінде анықталған реттелетін макростар HTML файлынан іске қосылуы мүмкін.

Мысалы: webiopi (). CallMacro («go_forward»); Бұл қозғалтқыштың екеуін де алға қарай жылжыту процесін басқаратын Python сценарийінде анықталған go_forward макросына арнайы қоңырау.

Файлдар Pi -де сақталатын каталог иерархиясы бекітілген суретте көрсетілген.

Робот қалтасында келесі ішкі қалталар бар:

  • html: index.html бар
  • python: құрамында script.py бар
  • mjpg-streamer-r63: құрастыру файлдары бар және веб-камераны іске қосу үшін орындалатын

MJPG-Streamer: USB веб-камерасынан тікелей бейне ағыны әдепкі бойынша Pi 8080 портында жұмыс істейді. Ағынды қолмен қарау үшін веб -камераны қосқаннан кейін шолғышта RASPBERRYPI_IP: 8080 тармағына өтіңіз.

LeapMotion коды:

LeapMotion SDK -те берілген мысалдардан алынған код үзінділері index.html файлына ендірілген. LeapMotion -тың leap.js файлын Raspberry Pi -дегі жоба каталогындағы html қалтасына қосу керек.

LeapMotion жіберген palmPosition параметрі Raspberry Pi -де қандай макросты іске қосу керектігін анықтау үшін қолданылады.

5 -қадам: Жобаны іске қосу

Raspberry Pi -ді қосып, шамамен бір минут күтіңіз. Сіз RaspberryPi жаңа қосылу нүктесін көресіз. Осы нүктеге қосылыңыз және шолғышта осы тұрақты IP мекенжайын ашыңыз: 192.168.42.1:8000. 8000 - WebIOPi әдепкі порты.

Raspberry Pi -ді жергілікті WiFi желісіне қосылу нүктесі ретінде көрсетілудің орнына қосылу ретінде конфигурациялауға болады. Содан кейін сіз Raspberry Pi -ге маршрутизатор тағайындаған динамикалық IP -ді анықтауыңыз керек, содан кейін Bot -пен ойнау үшін оны шолғышта басыңыз.

Егер сізге көмек қажет болса немесе жоба бойынша сұрақтарыңыз болса, пікір қалдыра аласыз. Бақытты секіру!

Барлық бастапқы кодтар қосылды. Егер сізге жобаның кез келген бөлігінде көмек қажет болса, пікір қалдыра аласыз. Бақытты секіру!

Ұсынылған: