Съдържание:

Виртуални графити: 8 стъпки
Виртуални графити: 8 стъпки

Видео: Виртуални графити: 8 стъпки

Видео: Виртуални графити: 8 стъпки
Видео: Графити и стрийт арт в България 2024, Юли
Anonim
Виртуални графити
Виртуални графити

Виждал съм няколко виртуални системи за графити в мрежата, но не можах да намеря никаква информация за това как да го направя (макар че вижте страницата с последните връзки). Мислех, че ще бъде чудесно за моите работилници за графити, затова направих сам и публикувах всичко необходимо, за да си направите тук! Характеристики * всички с отворен код и хардуер, * цена <£ 100 без проектора и компютъра, * открива дюзата на консервата натиск и разстояние от екрана, * моделите боя капят, ако се движите твърде бавно! Бележки * тази инструкция е на доста високо ниво, но моля, уведомете ме, ако съм пропуснал нещо важно, * компютърната настройка е за Linux. Ако го накарате да работи на други системи, моля, публикувайте вашите инструкции! Умения, които ще ви трябват * дървообработване, за да направите дървения заден проекционен екран, * електронни схеми и програмиране на микроконтролери Atmel AVR (или arduino), * можете да инсталирате някои библиотеки на вашия компютър, за да позволят на обработката да говори с wiimote.

Стъпка 1: Как работи

Как работи
Как работи

* Кутията за пръскане има инфрачервен светодиод, който свети през екрана на проектора и се вижда от камерата на wiimote. * Wiimote изпраща координатите X и Y на кутията към компютъра чрез Bluetooth радиовръзка. * Компютърът изпълнява проста програма за рисуване, която използва проектор, за да "нарисува" линиите, докато рисувате с кутията. Той също така се грижи за картографирането на камерата на wiimote към екрана с помощта на 4 -точкова система за калибриране. * Спреят също може да открие разстоянието си от екрана и налягането на дюзата: колкото по -далеч сте, толкова по -голяма е изтеглената точка, колкото по -силно натискате дюзата, толкова по -непрозрачна става боята.

Стъпка 2: Компонентите

Компонентите
Компонентите

Ето всички битове, от които се нуждаете, за да се съберете:

* компютър - трябва да бъде около 1,4 Ghz, bluetooth и usb порт, * среда за обработка, * софтуер за виртуални графити, изтегляне от стъпката "настройка на компютъра", * nintendo wiimote - купувайте втора ръка от ebay, * проектор - ще трябва бъдете ярки, ако планирате да използвате през деня или вътре с включени светлини, * екран за задно прожектиране - направете си, * виртуална кутия за пръскане - направете си, * приемник за виртуална спрей - направете сами. вграден usb-> сериен) £ 21 * радио rx/tx двойка £ 9 * компоненти за строителна кутия за пръскане £ 18 плюс опционален корпус £ 12 * допълнителен корпус за приемник £ 8 * nintendo wiimote - купете втора ръка от ebay £ 20

Стъпка 3: Екран за задно прожектиране

Заден проекционен екран
Заден проекционен екран

Екранът трябва да бъде точното количество прозрачност! Ако не е достатъчно прозрачен, изображението няма да се види и инфрачервеният светодиод няма да се вижда от камерата на wiimote. Ако е прекалено прозрачен, проекторът ще заслепи и изображението ще се измие. (Въпреки че вижте последната страница за начини за смекчаване на това).

Използвах ликра, която е разтеглива, за да я разтегна, за да стане по -прозрачна. В момента го държа с фиксатори за палци, но преминавам към велкро, когато получа достъп до шевна машина. Направих дървена рамка с помощта на работилница и дърводелец (благодаря Лу!) Трябваше ми да се срути, за да мога да я транспортирам на мотора си. Ако правите такъв за фиксирано място, ще бъде по -лесно да го направите. Просто го направете при съотношение 4: 3 и достатъчно твърдо, за да останете изправени. Открих, че хората са склонни да натискат доста материал на екрана, така че трябва да е малко здрав.

Стъпка 4: Кутия за пръскане

Спрей
Спрей
Спрей
Спрей

Това е най -сложната част от проекта и отне най -дълго време, за да се оправи. Добрата новина е, че не се нуждаете от всички тези неща, за да накарате една забавна система да работи. Най -простото нещо е просто да получите верига с превключвател, инфрачервен светодиод и резистор. Когато натиснете превключвателя, светодиодът светва и се вижда и проследява от камерата на wiimote.

Тази версия е по -усъвършенствана, защото измерва и разстоянието от екрана и налягането на дюзата. И двете неща са важни, когато всъщност рисувате със спрей. Исках да направя система за обучение, затова беше важно системата да бъде възможно най -„реална“(в рамките на моите граници на разходите). Схемата е доста проста. Разгледайте приложената електрическа схема, за да се уверите сами. Нуждаете се от основни умения за запояване и за да можете да поставите схема на veroboard. Също така трябва да се чувствате доволни от програмирането на микроконтролери. Изграждане на схема от нулата срещу използване на опция 1 на платка arduino: ако искате да използвате дъска arduino в кутия за пръскане. Използвайте arduino както е и намалете наполовина скоростта на предаване на радио tx в кода на spraycan. вариант 2: искате да спестите пари, но нямате програмист за предпазители. Изградете платката и използвайте 16MHz външен кристал. Наполовина скоростта на предаване, както в опция 1. Опция 3: искате да спестите още повече пари и имате програматор за предпазители. Изградете дъската, но пропуснете външния кристал. Използвайте програмиста за предпазители, за да настроите atmel да използва своя вътрешен часовник. Вярвам, че този паралелен програмист „направи си сам“ще ви позволи да програмирате предпазители. Използвам olimex програмист. Преглед на схемата Микроконтролерът измерва изхода от острия 2d120x сензор за разстояние (чудесна информация за този сензор тук) и линейния потенциометър. Той също така измерва изхода на LED PWM потенциометъра. Това се използва за регулиране на светлинния изход на светодиода. Инфрачервеният светодиод, който използвам, е 100mA, а пиковата дължина на вълната е 950nm (идеално за wiimote). Микроконтролерът използва PWM, за да мига светодиода много бързо. Ние използваме мощен MOSFET на IRF720, така че микрото да не изгори изхода му. Също така исках да добавя капацитет за по -ярък светодиод в бъдеще. Има светодиод за състоянието, който мига всеки път, когато пакет от данни се излъчва по радиото. Ако всичко работи добре, тази лампичка трябва да мига на около 15Hz. И накрая, модулът за радиопредавател е прикрепен към пин 3 (цифров пин 1 за arduino) на микроконтролера, така че да можем да изпратим информацията, която измерваме, до компютъра. Също така се нуждаете от антена, прикрепена към платката на приемника. Използвах жица с дължина 12 см. Това е половината от препоръчаното на тази отлична информационна страница. Програмиране на микроконтролера След като изградите веригата, ще трябва да качите програмата (приложена). Използвам среда за програмиране/библиотеки arduino. Можете да компилирате това с arduino IDE и след това да го програмирате, както обикновено правите. Моята схема е опростена с помощта на вътрешния 8MHz часовник на микро. Ако използвате това, ще трябва да настроите настройките на предпазителите, за да използвате вътрешния 8MHz калибриран RC: 1111 0010 = 0xf2 Това означава, че ще трябва да имате програмист, който може да пише предпазители../avrdude -C./avrdude.conf -V -p ATmega168 -P/dev/ttyACM0 -c stk500v2 -U lfuse: w: 0xf2: m Ако нямате такъв вид програмист (кажете просто имате arduino платка), просто използвайте 16MHz кристал между щифтове 9 и 10 и всичко трябва да работи (непроверено - може да се нуждаете от кондензатор). Също така ще трябва да промените програмния код, така че предавателният обмен да се намали наполовина. Просто исках да увелича максимално светлинната мощност, без да препичам светодиода, така че взривих няколко и в крайна сметка получих средно 120ma равенство. Ако имате мултицет, можете да регулирате това доста лесно, в противен случай просто регулирайте потенциометъра да е доста висок, но не докрай! Можете също така да проверите аналоговите входове на щифтове 26, 27 и 28 на PWM регулиращия потенциометър, сензора за разстояние и потенциометъра на дюзата. Ако имате обхват, можете да проверите импулсния ход, излизащ от щифт 3 в радио TX модула. Проверете pwm изхода на светодиода на щифт 11. Можете да използвате камера на мобилен телефон (или повечето CCD камери), за да видите инфрачервения светодиод да се включва, когато натиснете бутона на дюзата.

Стъпка 5: Приемник на спрей

Приемник за спрей
Приемник за спрей
Приемник за спрей
Приемник за спрей

Ако отивате на обикновения спрей може да се насочите, тогава нямате нужда от тази част.

В противен случай просто използвам платка arduino, като радиоприемникът е включен в пина 2. Това улеснява получаването на данните в компютър чрез USB -> сериен чип на платката arduino. Ако щях да направя персонализирана схема, вероятно щях да използвам FTDI USB -> серийна UART платка за оценка. Също така се нуждаете от антена, прикрепена към платката на приемника. Използвах жица с дължина 12 см. Това е половината от препоръчаното на тази отлична информационна страница. Заредете скицата graffitiCanReader2.pde в arduino. С включена кутия трябва да видите светодиодите за състоянието на кутията и платката на приемника да мигат бързо. Всеки път, когато светодиодът на консервата мига, се изпраща пакет с данни. Всеки път, когато светодиодът на платката на приемника мига, се получава валиден пакет данни. Ако не виждате това, значи има нещо с радиовръзката. Нещо, което трябва да опитате, е да свържете TX на кутията към RX на приемника с парче тел. Ако това не работи, вероятно имате несъответствие в скоростта на предаване на виртуални проводници (вижте кода). Ако приемем, че имате много мигащи събития на платката на приемника, трябва да можете да наблюдавате това на вашия USB сериен порт. Ако наблюдавате серийния порт (обикновено /dev /ttyUSB0) на 57600, трябва да видите данни, изхвърлящи като Got: FF 02 Got: FF 03… Първото число е налягане, а второто е разстояние. Сега можете да стартирате обработка и да използвате тази информация, за да правите красиви снимки! Заредете приложената скица за обработка (canRadioReader.pde). Стартирайте програмата и проверете изхода на програмата. Трябва да получавате честота (която ви казва колко актуализации в секунда получава приемникът - определено искате това да е поне 10Hz). Също така ще получите измерване на разстоянието и дюзата. Тествайте кутията, като преместите потенциометъра на дюзата и като преместите част от картата пред сензора за разстояние. Ако всичко работи, преминете към следващата стъпка - подготовка на компютъра за разговор с wiimote!

Стъпка 6: Компютърна настройка: Обработка и Wiimote

Компютърна настройка: Обработка и Wiimote
Компютърна настройка: Обработка и Wiimote

Основното ни тук е получаване на обработка, разговор с wiimote. Тези инструкции са специфични за Linux, но всички те трябва да работят на mac и windows с известно проучване как да се обработят данните на wiimote. След като инсталирах обработка, намерих някои инструкции във форума, но все пак имах някои проблеми. Ето какво трябваше да направя:

  1. инсталиране на обработка
  2. инсталирайте библиотеки bluez: sudo apt-get инсталирайте 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, за да накарам бутоните и сензорната лента да работят. Приложеният код/скица просто чертае кръг, където първият инфрачервен източник е намерен от wiimote.

За да проверите вашия bluetooth, натиснете бутоните един и два на wiimote, след това опитайте $ hcitool сканиране на терминала. Трябва да видите открития nintendo wiimote. Ако не го направите, ще трябва да разгледате допълнително настройката на Bluetooth. Ако всичко е наред, заредете програмата wiimote_sensor.pde (приложена) и я стартирайте. В долната част на състоянието на екрана трябва да видите: BlueCove версия 2.1.0 на bluez се опитва да намери wii Натиснете бутоните 1 и 2 на wiimote. След като бъде открит, размахвайте инфрачервения източник (спрей) около него. Трябва да видите червен кръг след вашето движение! Уверете се, че това работи, преди да продължите. Ако не можете да го накарате да работи, потърсете във форума за обработка.

Стъпка 7: Настройване на всичко

Настройване на всичко
Настройване на всичко

Изтеглете софтуера virtualGraffiti по -долу. Извлечете го в директорията си за скици и след това следвайте тези стъпки!

* захранване с пулверизатор, проверете състоянието Светодиодната лампа мига. * включете компютъра, включете приемника на спрей, * екран за настройка и проектор, * проверете дали светодиодът за състоянието на приемника на спрей мига, * започнете обработката и заредете програмата 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 за улесняване на wiimote при обработка, Jochen Zaunert за код за извършване на калибриране, екип за обработка, екипаж на arduino, Lou за дърводелска помощ и всички онези, които изследват, правят и след това публикувайте своите открития онлайн! Системи на други хора * Току -що намерих https://friispray.co.uk/, със софтуер с отворен код и как * тази система позволява използването на шаблони: готино! https://www.wiispray.com/, без код или как * виртуалната система за графити на yrwall, без код или как. Идеите за проучване * използвайте 2 wiimotes, за да направите 3D проследяване на обема и да премахнете сензора за разстояние в кутията: https://www.cl.cam.ac.uk/~sjeh3/wii/. Това би било добре, защото в момента сензорът за разстояние е най -слабата част на системата. Това би означавало също, че можем да използваме подходящ екран за задно прожектиране за по -ярки изображения. * използвайте wiimote в кутията, за да откриете ъгъла на пулверизатора. Това би добавило реализъм към модела с пръскаща боя.

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