Мазмұны:

Виртуалды граффити: 8 қадам
Виртуалды граффити: 8 қадам

Бейне: Виртуалды граффити: 8 қадам

Бейне: Виртуалды граффити: 8 қадам
Бейне: Химиядан виртуалды лаборатория қалай жасаймыз. 2024, Шілде
Anonim
Виртуалды граффити
Виртуалды граффити

Мен интернетте граффитидің бірнеше виртуалды жүйесін көрдім, бірақ оны қалай жасау керектігі туралы жарияланған ақпаратты таба алмадым (соңғы сілтемелер бетін қараңыз). Граффитиге арналған шеберханалар үшін бұл өте жақсы болар еді деп ойладым, сондықтан мен оны өзім жасадым және осында өзіңіз жасауыңыз үшін қажет нәрсенің бәрін жарияладым! Мүмкіндіктері * барлық ашық көзі мен жабдықтары, * бағасы <100 фунт проектор мен компьютерді қоспағанда, * банка шүмегін анықтайды қысым мен экраннан қашықтық, * егер модельдер тым баяу қозғалса, тамшылап бояйды! Ескертулер * бұл нұсқаулық өте жоғары деңгей, бірақ егер маңызды нәрсені жіберіп алған болсам, маған хабарлаңыз, * есептеу қондырғысы Linux үшін. Егер сіз басқа жүйелерде жұмыс жасайтын болсаңыз, өз нұсқауларыңызды жіберіңіз! Сізге дағдылар қажет: ағаштың артқы проекциялау экранын жасау үшін ағаш өңдеу, * электронды схемалар және Atmel AVR микроконтроллерлерін бағдарламалау (немесе arduino), компьютердегі кітапханалар өңдеуге wiimote -пен сөйлесуге мүмкіндік береді.

1 -қадам: Бұл қалай жұмыс істейді

Ол қалай жұмыс істейді
Ол қалай жұмыс істейді

* Бүріккіште инфрақызыл жарық диоды бар, ол проектор экранынан жарқырайды және оны камераның камерасы көреді. * Wimimote банктің X және Y координаттарын bluetooth радио байланысы арқылы компьютерге жібереді. * Компьютерде банкамен сурет салу кезінде сызықтарды «бояу» үшін проекторды қолданатын қарапайым бояу бағдарламасы жұмыс істейді. Ол сондай -ақ 4 нүктелі калибрлеу жүйесін қолдана отырып, экранға wiimote камерасын түсіруге қамқорлық жасайды. * Бүріккіш сонымен қатар оның экраннан қашықтығын және саптаманың қысымын анықтай алады: сіз неғұрлым алыс болсаңыз, соғұрлым көп нүкте тартылады, саптаманы соғұрлым қатты бассаңыз, бояу нүктесі соғұрлым мөлдір болады.

2 -қадам: компоненттер

Компоненттер
Компоненттер

Міне, сізге жинау үшін қажет барлық биттер:

* компьютер - шамамен 1,4 ГГц, bluetooth және USB порты, * өңдеу ортасы, * virtualGraffiti бағдарламалық қамтамасыз етілуі, «компьютерді орнату» қадамынан жүктеу, * nintendo wiimote - ebay -ден екінші қолды сатып алу, * проектор - қажет Егер сіз күндіз немесе іште шамдар қосылып қолдануды жоспарласаңыз, жарқын болыңыз, * артқы проекция экраны - өзіңізді жасаңыз, * виртуалды бүріккіш - өзіңіз жасаңыз, * виртуалды бүріккіш қабылдағыш - өзіңіз жасаңыз. usb-> сериялы) £ 21 * радио rx/tx жұбы £ 9 * құрылысқа спрейге арналған компоненттер £ 18 плюс қосымша қоршаулар £ 12 * ресивер үшін қосымша қоршаулар £ 8 * nintendo wiimote - ebayден екінші қолмен сатып алу £ 20

3 -қадам: Артқы проекция экраны

Артқы проекция экраны
Артқы проекция экраны

Экран дәл көру көлемінде болуы керек! Егер ол жеткілікті мөлдір болмаса, сурет көрінбейді және инфрақызыл жарық диоды wiimote камерасына көрінбейді. Егер ол тым мөлдір болса, проектор соқыр болады және сурет жойылады. (Мұны азайту жолдары үшін соңғы бетті қараңыз).

Мен ликра қолдандым, ол созылады, сондықтан мен оны мөлдір ету үшін соза аламын. Қазіргі уақытта мен оны бармақпен ұстап тұрамын, бірақ мен тігін машинасына қол жеткізгенде велкроды бітіремін. Мен ағаш жақтауды шеберхана мен ағаш ұстасының көмегімен жасадым (Луға рахмет!) Мен оны велосипедпен тасымалдау үшін құлап қалдым. Егер сіз оны белгілі бір орынға жасасаңыз, оны жасау оңайырақ болады. Оны 4: 3 пропорциясында жасаңыз және тік тұру үшін жеткілікті қатаң. Мен адамдар экрандағы материалды біршама итеріп жіберетінін байқадым, сондықтан ол біршама қатал болуы керек.

4 -қадам: Спрей банкі

Спрей банкі
Спрей банкі
Спрей банкі
Спрей банкі

Бұл жобаның ең күрделі бөлігі және оны түзету үшін ең ұзақ уақыт қажет болды. Жақсы жаңалық - бұл қызықты жүйенің жұмыс істеуі үшін сізге бұл заттардың қажеті жоқ. Ең қарапайым нәрсе - коммутатор, инфрақызыл жарық диоды мен резисторы бар схеманы алу. Коммутаторды басқан кезде жарық диоды жанады және камераның камерасында көрінеді.

Бұл нұсқа жетілдірілген, себебі ол сонымен қатар экраннан қашықтықты және саптаманың қысымын өлшейді. Бұл екеуі де бояуды бүріккен кезде маңызды. Мен жаттығу жүйесін жасағым келді, сондықтан жүйені мүмкіндігінше «шынайы» ету маңызды болды (менің шығын шегінде). Схема өте қарапайым. Өзіңіз көру үшін бекітілген схемаға қараңыз. Сізге дәнекерлеудің қарапайым дағдылары қажет және веронаға тізбек орнатуға болады. Сондай -ақ, сіз микроконтроллерлерді бағдарламалауда бақытты сезінуіңіз керек: 1 -нұсқаны қолдана отырып, нөлден бастап схеманы құру: егер сіз спрей ыдысында ардуино тақтасын қолданғыңыз келсе. Ардуиноны бұрынғы күйінде қолданыңыз және шашыратқыш кодындағы tx радиосының беру жылдамдығын екі есе азайтыңыз. 2 нұсқа: сіз ақшаны үнемдегіңіз келеді, бірақ сақтандырғыш бағдарламашысы жоқ. Тақтаны құрастырыңыз және 16 МГц сыртқы кристалды қолданыңыз. 1 -нұсқадағыдай жылдамдықты екі есе азайтыңыз: 3 -нұсқа: сіз одан да көп ақшаны үнемдегіңіз келеді және сақтандырғыш бағдарламашысы бар. Тақтаны жасаңыз, бірақ сыртқы кристалды өткізіп жіберіңіз. Атмельді ішкі сағатын пайдалануға реттеу үшін сақтандырғыш бағдарламашыны қолданыңыз. Менің ойымша, бұл DIY параллель бағдарламашысы сақтандырғыштарды бағдарламалауға мүмкіндік береді. Мен Olimex бағдарламашысын қолданамын. Электр тізбегіне шолу Микроконтроллер 2d120x өткір сенсордан шығуды өлшейді (бұл сенсор туралы керемет ақпарат) және сызықтық потенциометр. Ол сонымен қатар жарық диодты PWM потенциометрінің шығуын өлшейді. Бұл жарық диодты жарықтандыруды реттеу үшін қолданылады. Мен қолданатын IR светодиоды 100 мА, ал толқын ұзындығы 950 нм (wiimote үшін өте қолайлы). Микроконтроллер жарық диодты өте тез жыпылықтау үшін PWM пайдаланады. Біз IRF720 қуатты мосфетін қолданамыз, ол микро шығуды өшірмеуі үшін. Сонымен қатар мен болашақта жарық диодты жарықтандыру қуатын қосқым келді. Мәліметтер пакеті радиода таратылған сайын жыпылықтайтын күй диодты шамы бар. Егер бәрі жақсы жұмыс істесе, бұл жарық шамамен 15 Гц жыпылықтауы керек. Ақырында, радио таратқыш модулі біз өлшейтін ақпаратты компьютерге жіберу үшін микроконтроллердің 3 істігіне (сандық түйреуіш 1) бекітілген. Сізге сонымен қатар ресивер тақтасына бекітілген антенна қажет. Мен ұзындығы 12 см болатын сымды қолдандым. Бұл тамаша ақпарат бетінде ұсынылатынның жартысы. Микроконтроллерді бағдарламалау Схеманы құрғаннан кейін сізге бағдарламаны жүктеу қажет болады (қоса берілген). Мен arduino бағдарламалау ортасын/libaries қолданамын. Сіз мұны arduino IDE көмегімен құрастыра аласыз, содан кейін оны әдеттегідей жасай аласыз. Менің схемам микро 8 МГц ішкі сағатын қолдану арқылы жеңілдетілген. Егер сіз мұны қолдансаңыз, сақтандырғыш параметрлерін ішкі 8 МГц калибрленген RC пайдалану үшін орнатуыңыз қажет: 1111 0010 = 0xf2 Бұл сізге сақтандырғыштарды жаза алатын бағдарламашының болуын білдіреді../avrdude -C./avrdude.conf -V -p ATmega168 -P/dev/ttyACM0 -c stk500v2 -U lfuse: w: 0xf2: m Егер сізде мұндай бағдарламашы болмаса (айталық, сізде тек arduino бар тақта), 9 және 10 түйреуіштер арасында 16 МГц кристалды қолданыңыз және бәрі жұмыс істеуі керек (тексерілмеген - сізге конденсатор қажет болуы мүмкін). Бағдарлама кодын түрлендіргіштің көлемі екі есе азайтылатындай етіп өзгерту қажет. Тестілеу Барлығын жинап, бағдарлама жүктелгеннен кейін, ИК жарық диодты жарықтылығын реттеу қажет. Мен жарық диодты тост етпестен жарық шығаруды барынша арттырғым келді, сондықтан мен бірнешеуін жарып жібердім және орташа мәні шамамен 120ма болды. Егер сізде мультиметр болса, оны оңай реттеуге болады, әйтпесе потенциометрді өте жоғары етіп реттеңіз, бірақ бәрібір! Сондай -ақ, PWM реттеу потенциометрінің 26, 27 және 28 түйреуіштеріндегі аналогтық кірістерді, қашықтық сенсоры мен саптаманың потенциометрін тексеруге болады. Егер сізде ауқымыңыз болса, 3 -ші істіктен шығатын импульстік пойызды радио TX модуліне тексере аласыз. Светодиодтың pwm шығысын 11 -істікшеде тексеріңіз. Ұялы телефон камерасын (немесе көптеген CCD камераларын) саңылау түймешігін басқан кезде ИҚ -диодты жарықдиодты қосуды көруге болады.

5 -қадам: Спрей қабылдағыш

Спрей қабылдағыш
Спрей қабылдағыш
Спрей қабылдағыш
Спрей қабылдағыш

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

Әйтпесе, мен 2 -ші істікшеге радио қабылдағыш қосылған arduino тақтасын қолданамын. Бұл деректерді компьютерге arduino тақтасындағы USB -> сериялық чипі арқылы алуды жеңілдетеді. Егер мен реттелетін схеманы жасағым келсе, мен FTDI USB -> сериялық UART бағалау тақтасын қолданар едім. Сізге сонымен қатар ресивер тақтасына бекітілген антенна қажет. Мен ұзындығы 12 см болатын сымды қолдандым. Бұл тамаша ақпарат бетінде ұсынылатынның жартысы. GraffitiCanReader2.pde эскизін arduino -ға жүктеңіз. Контейнер қосылған кезде, сіз банкадағы жарық диодты шамдар мен қабылдағыш тақтасының тез жыпылықтағанын көруіңіз керек. Жарық диодты жыпылықтаған сайын деректер пакеті жіберіледі. Қабылдағыш тақтасының жарық диоды жыпылықтаған сайын, жарамды деректер пакеті алынады. Егер сіз мұны көрмесеңіз, онда радио сілтемесі бар. Банктің TX сымын ресивердің RX -ке жалғау керек. Егер бұл жұмыс істемесе, онда сіз виртуалды сымның берілу жылдамдығына сәйкес келмеуіңіз мүмкін (кодты қараңыз). Егер сізде қабылдағыш тақтасында көп жарқыл бар деп ойласаңыз, сіз оны USB сериялық портынан бақылай аласыз. Егер сіз сериялық портты (әдетте /dev /ttyUSB0) 57600 -де бақылайтын болсаңыз, онда сіз Got: FF 02 Got: FF 03 сияқты деректердің шығып жатқанын көресіз… Бірінші сан - қысым, екіншісі - қашықтық. Енді сіз өңдеуге кірісе аласыз және бұл ақпаратты әдемі суреттер жасау үшін пайдалана аласыз! Қосылған өңдеу эскизін жүктеңіз (canRadioReader.pde). Бағдарламаны іске қосыңыз және бағдарламаның шығуын тексеріңіз. Сіз жиілікті алуыңыз керек (бұл ресивердің секундына қанша жаңартулар алатынын айтады - сіз бұл кем дегенде 10 Гц болғанын қалайсыз). Сонымен қатар сіз қашықтық пен саптаманы өлшей аласыз. Контейнерді саптама потенциометрін жылжыту арқылы және қашықтық датчигінің алдында картаның бір бөлігін жылжыту арқылы тексеріңіз. Егер бәрі жұмыс істесе, келесі қадамға өтіңіз - компьютерді wiimote -пен сөйлесуге дайындау!

6 -қадам: Компьютерді орнату: өңдеу және Wiimote

Компьютерді орнату: өңдеу және Wiimote
Компьютерді орнату: өңдеу және Wiimote

Біздің басты мақсатымыз - wiimote -пен сөйлесуді өңдеу. Бұл нұсқаулар Linux -ке тән, бірақ ол wiimote деректерін өңдеуге қалай алуға болатыны туралы зерттеулермен бірге Mac пен Windows -те жұмыс істеуі керек. Өңдеуді орнатқаннан кейін мен форумда бірнеше нұсқауларды таптым, бірақ менде әлі де проблемалар болды. Міне мен не істеуім керек еді:

  1. өңдеуді орнату
  2. bluez кітапханаларын орнатыңыз: sudo apt-get install bluez-utils libbluetooth-dev
  3. жасау./processing/libraries/Loc және./processing/libraries/wrj4P5
  4. bluecove-2.1.0.jar мен bluecove-gpl-2.1.0.jar жүктеп алып,./processing/libraries/wrj4P5/library/ қойыңыз
  5. wiiremoteJ v1.6 жүктеп,.jar қойыңыз./processing/libraries/wrj4P5/library/
  6. wrj4P5.jar жүктеңіз (мен альфа-11 қолдандым) және./processing/libraries/wrj4P5/library/ қойыңыз
  7. wrj4P5.zip жүктеп алып,./processing/libraries/wrj4P5/lll/ ішінен ашыңыз.
  8. Loc.jar жүктеңіз (мен бета-5 қолдандым) және./processing/libraries/Loc/library/ қойыңыз
  9. Loc.zip жүктеп алып,./processing/libraries/Loc/lll/ ішінен ашыңыз.

Содан кейін мен түймелер мен сенсорлық тақтаның жұмыс істеуі үшін Classiclll -ден алынған кодты қолдандым. Қосылған код/эскиз wimimote арқылы бірінші инфрақызыл көзі табылған шеңберді сызады.

Bluetooth -ды тексеру үшін, wiimote -те бір және екі батырманы басыңыз, содан кейін терминалда $ hcitool сканерлеп көріңіз. Сіз nintendo wiimote анықталғанын көруіңіз керек. Егер олай болмаса, bluetooth -дің параметрлерін әрі қарай қарау қажет болады. Егер бәрі жақсы болса, wiimote_sensor.pde (қоса берілген) бағдарламасын жүктеп, оны іске қосыңыз. Экранның төменгі күйінде сіз мынаны көресіз: Bluez -де BlueCove 2.1.0 нұсқасы wii табуға тырысады wiimote -те 1 және 2 түймелерін басыңыз. Оны анықтағаннан кейін инфрақызыл көзді (бүріккіш) оның алдында айналдырыңыз. Сіз қозғалысты бақылайтын қызыл шеңберді көруіңіз керек! Бұл әрекетті жалғастырмас бұрын жұмыс істейтініне көз жеткізіңіз. Егер сіз оны іске қоса алмасаңыз, өңдеу форумынан іздеңіз.

7 -қадам: бәрін реттеңіз

Барлығын реттеу
Барлығын реттеу

Төменде virtualGraffiti бағдарламалық жасақтамасын жүктеп алыңыз. Оны эскиз кітапшасының каталогына шығарыңыз, содан кейін мына қадамдарды орындаңыз!

* Бүріккішті қосуға болады, жарық диодты шамының жыпылықтағанын тексеріңіз. * компьютерді қосыңыз, спрей қабылдағышты қосыңыз, * орнату экраны мен проектор, * спрейдің қабылдағыш күйінің жарық диоды жыпылықтап тұрғанын тексеріңіз, * виртуалды граффити бағдарламасын өңдеңіз және жүктеңіз, * сізде RX және TX сериялық индикаторы бар екеніне көз жеткізіңіз. Светодиодтар arduino тақтасында жыпылықтайды, * wiimote -те екі түймені де басыңыз, * сұралған кезде 4 нүктелі калибрлеуді орындаңыз (спрейді кез келген нысанаға кезекпен салыңыз, содан кейін жазу қызыл түске боялғанша саптаманы басыңыз). * масайрау!

8 -қадам: Ресурстар, сілтемелер, рахмет, идеялар

Сілтемелер Бұл жобаның жұмысында баға жетпес сілтемелер: RF ақпараты: https://narobo.com/articles/rfmodules.html Arduino: www.arduino.cc Өңдеу: www.processing.org Өңдеу кезінде wii пайдалану: https://processing.org/discourse/yabb2/YaBB.pl? num = 1186928645/15 Linux: www.ubuntu.org Wiimote: https://www.wiili.org/index.php/Wiimote, https:// wiki.wiimoteproject.com/IR_Sensor#Толқын ұзындығы 4 нүктелік калибрлеу: https://www.zaunert.de/jochenz/wii/Рахмет! Егер көптеген адамдар өз жұмыстарын жарияламаса, бұл жоба әлдеқайда қиын және қымбат болар еді. Барлық ашық көзі бар экипажға, wiimote -ты бұзған адамдарға, Classiclll -ді өңдеуге қолдануды жеңілдеткені үшін, калибрлеу коды үшін Джохен Заунертке, өңдеу тобына, arduino экипажына, Лу ағаш ұстасына көмекке және барлығына зерттеушілерге үлкен рахмет. содан кейін өз нәтижелерін желіде жариялаңыз! Басқа адамдардың жүйелері * Мен тек қана https://friispray.co.uk/ таптым, ашық бастапқы бағдарламалық қамтамасыз етумен және қалай * бұл жүйе трафареттерді қолдануға мүмкіндік береді: керемет! https://www.wiispray.com/, код жоқ немесе қалай * yrwall виртуалды граффити жүйесі жоқ, код жоқ немесе қалай. Барлауға арналған идеялар * көлемді 3D бақылауды жасау үшін 2 виимотты қолданады және контейнердегі қашықтық сенсорынан бас тартады: https://www.cl.cam.ac.uk/~sjeh3/wii/. Бұл жақсы болар еді, себебі қашықтық сенсоры қазіргі уақытта жүйенің ең әлсіз бөлігі болып табылады. Бұл сонымен қатар біз жарқын суреттер үшін артқы проекциялау экранын қолдана алатынымызды білдіреді. * бүріккіштің бұрышын анықтау үшін контейнерде wimimote қолданыңыз. Бұл спрей бояу үлгісіне реализм қосады.

Ұсынылған: