فهرست مطالب:

گرافیتی مجازی: 8 مرحله
گرافیتی مجازی: 8 مرحله

تصویری: گرافیتی مجازی: 8 مرحله

تصویری: گرافیتی مجازی: 8 مرحله
تصویری: خدا چه شکلی است؟ (از دید هوش مصنوعی) #shorts 2024, جولای
Anonim
گرافیتی مجازی
گرافیتی مجازی

من چندین سیستم گرافیتی مجازی در وب دیده ام اما هیچ اطلاعاتی در مورد نحوه ایجاد آن پیدا نکردم (اگرچه صفحه پیوندهای نهایی را ببینید). من فکر می کردم برای کارگاه های گرافیتی من عالی خواهد بود ، بنابراین خودم آن را تهیه کردم و همه چیزهایی را که برای ساختن آنها نیاز دارید در اینجا منتشر کرده ام! ویژگی ها * همه منبع باز و سخت افزار ، * هزینه <100 پوند بدون احتساب پروژکتور و کامپیوتر ، * نازل قوطی را تشخیص می دهد فشار و فاصله از صفحه ، * مدل ها اگر خیلی آهسته حرکت می کنند ، چکه می کنند! اگر از سیستم های دیگر استفاده می کنید ، لطفاً دستورالعمل های خود را ارسال کنید! مهارتهایی که برای ساخت صفحه نمایش چوبی پشتی ، * مدارهای الکترونیکی و برنامه نویسی Atmel AVR micro controllers (یا arduino) نیاز دارید * قادر به نصب برخی از آنها هستید کتابخانه های موجود در رایانه شما به پردازش اجازه می دهد تا با wiimote صحبت کند.

مرحله 1: چگونه کار می کند

چگونه کار می کند
چگونه کار می کند

* قوطی اسپری دارای LED مادون قرمز است که از طریق صفحه پروژکتور می درخشد و توسط دوربین wiimote قابل مشاهده است. * wiimote مختصات X و Y قوطی را از طریق پیوند رادیویی بلوتوث به رایانه ارسال می کند. * رایانه یک برنامه نقاشی ساده اجرا می کند که از پروژکتور برای "نقاشی" خطوط هنگام کشیدن با قوطی استفاده می کند. همچنین از نگاشت دوربین wiimote به صفحه با استفاده از سیستم کالیبراسیون 4 نقطه مراقبت می کند. * اسپری همچنین می تواند فاصله آن از صفحه نمایش و فشار نازل را تشخیص دهد: هرچه دورتر باشید نقطه بزرگتر کشیده می شود ، هرچه نازل را بیشتر فشار دهید ، نقطه رنگ مات تر می شود.

مرحله 2: اجزاء

اجزاء
اجزاء

در اینجا همه چیزهایی که برای جمع شدن نیاز دارید آورده شده است:

* کامپیوتر - باید حدود 1.4 گیگاهرتز باشد ، بلوتوث و یک درگاه USB ، * محیط پردازش ، * نرم افزار virtualGraffiti ، بارگیری از مرحله "راه اندازی رایانه" ، * nintendo wiimote - خرید دست دوم از ebay ، * پروژکتور - لازم است اگر قصد دارید در طول روز یا داخل خانه با چراغ های روشن استفاده کنید ، * صفحه نمایش عقب - خودتان بسازید ، * اسپری مجازی - خودتان بسازید ، * اسپری مجازی می توانید گیرنده - خودتان بسازید. هزینه * آردوینو برای گیرنده قوطی (ساخته شده در usb-> سریال) components 21 * رادیو rx/tx جفت £ 9 * اجزای اسپری ساختمان می تواند £ 18 بعلاوه محفظه اختیاری £ 12 * محوطه اختیاری برای گیرنده £ 8 * nintendo wiimote - خرید دست دوم از ebay £ 20

مرحله 3: صفحه نمایش پروجکشن عقب

صفحه نمایش پروجکشن عقب
صفحه نمایش پروجکشن عقب

صفحه باید فقط میزان مناسب بینایی را داشته باشد! اگر به اندازه کافی شفاف نباشد ، تصویر دیده نمی شود و LED مادون قرمز برای دوربین wiimote قابل مشاهده نخواهد بود. اگر بیش از حد شفاف باشد ، پروژکتور کور می شود و تصویر پاک می شود. (اگرچه راههای کاهش این مشکل را در صفحه آخر ببینید).

من از لیکور استفاده کردم که کشدار است بنابراین می توانم آن را بکشم تا شفاف تر شود. در حال حاضر من آن را با گیره شست نگه می دارم ، اما وقتی به چرخ خیاطی دسترسی پیدا می کنم ، از رشته Velcro فارغ التحصیل می شوم. من با کمک یک کارگاه و یک نجار یک چهارچوب چوبی درست کردم (ممنون لو!) من نیاز داشتم تا خراب شود تا بتوانم آن را با دوچرخه ام حمل کنم. اگر در حال ساختن یک مکان ثابت هستید ، تهیه آن آسان تر خواهد بود. فقط کافی است آن را با نسبت تصویر 4: 3 بسازید و آنقدر سفت باشید که قائم بمانید. من متوجه شده ام که مردم تمایل دارند مواد صفحه را کمی منصفانه فشار دهند ، بنابراین باید کمی محکم باشد.

مرحله 4: قوطی اسپری

قوطی اسپری
قوطی اسپری
قوطی اسپری
قوطی اسپری

این پیچیده ترین بخش پروژه است و طولانی ترین زمان طول کشید تا درست شود. خبر خوب این است که شما برای کارکردن یک سیستم سرگرم کننده به همه این موارد نیاز ندارید. ساده ترین کار این است که مدار را با سوئیچ و LED مادون قرمز و مقاومت دریافت کنید. وقتی کلید را فشار می دهید ، LED روشن می شود و توسط دوربین wiimote دیده و ردیابی می شود.

این نسخه پیشرفته تر است ، زیرا فاصله از صفحه نمایش و فشار نازل را نیز اندازه گیری می کند. هر دوی این موارد هنگامی که در واقع با اسپری نقاشی می کنید مهم هستند. من می خواستم یک سیستم آموزشی بسازم ، بنابراین مهم بود که سیستم را تا حد امکان "واقعی" (در محدوده هزینه هایم) بسازم. مدار بسیار ساده است. به نمودار مدار پیوست نگاه کنید تا خودتان ببینید. شما نیاز به مهارت های لحیم کاری اولیه دارید و می توانید مدار را روی ورود برد قرار دهید. همچنین ، باید از برنامه نویسی میکروکنترلرها احساس رضایت کنید. ساختن مدار از ابتدا در مقابل استفاده از برد آردوینو گزینه 1: اگر می خواهید از برد آردوینو در اسپری استفاده کنید. از آردوینو به صورت فعلی استفاده کنید و نرخ baud رادیو tx را در کد اسپری به نصف برسانید. گزینه 2: می خواهید پول نقد ذخیره کنید اما برنامه نویس فیوز ندارید. برد را بسازید و از کریستال خارجی 16 مگاهرتز استفاده کنید. نرخ باود را در گزینه 1 به نصف برسانید. گزینه 3: می خواهید پول بیشتری پس انداز کنید و یک برنامه نویس فیوز دارید. تخته را بسازید ، اما کریستال خارجی را حذف کنید. از برنامه نویس فیوز برای تنظیم اتمسفر برای استفاده از ساعت داخلی آن استفاده کنید. من معتقدم این برنامه نویس موازی DIY به شما امکان برنامه ریزی فیوزها را می دهد. من از برنامه نویس olimex استفاده می کنم. نمای کلی مدار میکروکنترلر خروجی سنسور فاصله تیز 2d120x (اطلاعات فوق العاده در مورد این سنسور در اینجا) و پتانسیومتر خطی را اندازه گیری می کند. همچنین خروجی پتانسیومتر LED PWM را اندازه گیری می کند. این برای تنظیم خروجی نور LED استفاده می شود. LED IR مورد استفاده من 100 میلی آمپر است و حداکثر طول موج 950 نانومتر است (ایده آل برای wiimote). میکروکنترلر از PWM برای چشمک زدن سریع LED استفاده می کند. ما از mosfet power IRF720 استفاده می کنیم تا میکرو خروجی خود را نسوزاند. همچنین می خواستم ظرفیت یک LED روشن تر را در آینده اضافه کنم. یک LED وضعیت وجود دارد که هر بار که یک بسته داده از رادیو پخش می شود چشمک می زند. اگر همه چیز خوب کار می کند ، این چراغ باید در حدود 15 هرتز چشمک بزند. در نهایت ، ماژول فرستنده رادیویی به پین 3 (پین دیجیتال 1 برای آردوینو) میکروکنترلر متصل شده است تا بتوانیم اطلاعاتی را که در حال اندازه گیری هستیم به کامپیوتر ارسال کنیم. شما همچنین نیاز به یک آنتن متصل به برد گیرنده دارید. من از یک تکه سیم به طول 12 سانتی متر استفاده کردم. این نصف چیزی است که در این صفحه اطلاعات عالی توصیه می شود. برنامه ریزی میکروکنترلر پس از ساختن مدار ، باید برنامه را بارگذاری کنید (پیوست شده است). من از محیط برنامه نویسی arduino/libaries استفاده می کنم. می توانید این را با arduino IDE کامپایل کنید و سپس آن را طبق معمول برنامه ریزی کنید. مدار من با استفاده از کلاک داخلی 8 مگاهرتز میکرو ساده تر شده است. اگر از این مورد استفاده می کنید ، باید تنظیمات فیوز را برای استفاده از RC داخلی کالیبره شده 8 مگاهرتز تنظیم کنید: 1111 0010 = 0xf2 این بدان معناست که شما باید یک برنامه نویس داشته باشید که بتواند فیوزها را بنویسد../avrdude -C./avrdude.conf -V -p ATmega168 -P/dev/ttyACM0 -c stk500v2 -U lfuse: w: 0xf2: m اگر این نوع برنامه نویس ندارید (بگویید فقط آردوینو دارید فقط از یک کریستال 16 مگاهرتز بین پایه های 9 تا 10 استفاده کنید و همه باید کار کند (بدون آزمایش - ممکن است به خازن نیاز داشته باشید). شما همچنین باید کد برنامه را طوری تغییر دهید که باود فرستنده به نصف برسد. آزمایش بعد از اینکه همه چیز را با هم جمع کردید و برنامه بارگیری شد ، باید روشنایی LED IR را تنظیم کنید. من فقط می خواستم خروجی نور را بدون تست کردن LED به حداکثر برسانم ، بنابراین چند مورد را منفجر کردم و با میانگین قرعه کشی 120ma به پایان رسیدم. اگر مولتی متر دارید ، می توانید آن را به راحتی تنظیم کنید ، در غیر این صورت فقط پتانسیومتر را بسیار بالا تنظیم کنید ، اما نه تا آخر! همچنین می توانید ورودی های آنالوگ را در پین 26 ، 27 و 28 پتانسیومتر تنظیم PWM ، سنسور فاصله و پتانسیومتر نازل بررسی کنید. اگر محدوده ای دارید می توانید قطار پالس را که از پین 3 وارد ماژول TX رادیو می شود بررسی کنید. خروجی pwm LED را در پین 11 بررسی کنید. می توانید از دوربین تلفن همراه (یا اکثر دوربین های CCD) برای دیدن روشن شدن LED IR با فشار دادن دکمه نازل استفاده کنید.

مرحله 5: گیرنده قوطی اسپری

گیرنده قوطی اسپری
گیرنده قوطی اسپری
گیرنده قوطی اسپری
گیرنده قوطی اسپری

اگر از اسپری ساده استفاده می کنید ، نیازی به این قطعه ندارید.

در غیر این صورت ، من فقط از یک برد آردوینو استفاده می کنم ، در حالی که گیرنده رادیو به پین 2 متصل شده است. این امر باعث می شود که داده ها از طریق تراشه USB -> سریال روی برد آردوینو به کامپیوتر وارد شوند. اگر قصد داشتم یک مدار سفارشی بسازم ، احتمالاً از یک صفحه ارزیابی FARTI USB -> Serial UART استفاده می کردم. شما همچنین نیاز به یک آنتن متصل به برد گیرنده دارید. من از یک تکه سیم به طول 12 سانتی متر استفاده کردم. این نصف چیزی است که در این صفحه اطلاعات عالی توصیه می شود. طرح graffitiCanReader2.pde را در آردوینو بارگذاری کنید. با روشن شدن قوطی ، باید LED های وضعیت روی قوطی و برد گیرنده را به سرعت چشمک بزنید. هر بار که LED قوطی چشمک می زند ، یک بسته داده ارسال می شود. هر بار که LED صفحه گیرنده چشمک می زند ، یک بسته داده معتبر دریافت می شود. اگر این را نمی بینید ، پیوند رادیویی مشکلی دارد. چیزی که باید امتحان کنید اتصال TX قوطی به RX گیرنده با یک تکه سیم است. اگر این کار نمی کند ، احتمالاً ناسازگاری در نرخ baud سیم مجازی دارید (کد را ببینید). با فرض اینکه چشمک زدن زیادی روی برد گیرنده در جریان است ، باید بتوانید این مورد را بر روی پورت سریال usb خود نظارت کنید. اگر پورت سریال (معمولاً /dev /ttyUSB0) را در 57600 کنترل می کنید ، باید داده هایی مانند Got: FF 02 Got: FF 03 را مشاهده کنید. به به عدد اول فشار و دومی فاصله است. اکنون می توانید پردازش را اجرا کرده و از این اطلاعات برای ایجاد تصاویر زیبا استفاده کنید! طرح پردازش پیوست شده را بارگذاری کنید (canRadioReader.pde). برنامه را شروع کرده و خروجی برنامه را بررسی کنید. شما باید یک فرکانس دریافت کنید (این به شما می گوید که گیرنده چند بار در ثانیه دریافت می کند - شما قطعا می خواهید این حداقل 10 هرتز باشد). همچنین اندازه گیری فاصله و نازل را دریافت خواهید کرد. با حرکت پتانسیومتر نازل و حرکت دادن یک تکه کارت در جلوی سنسور فاصله ، قوطی را آزمایش کنید. اگر همه چیز کار می کند ، به مرحله بعدی بروید - آماده کردن رایانه برای صحبت با wiimote!

مرحله 6: راه اندازی کامپیوتر: پردازش و Wiimote

راه اندازی رایانه: پردازش و Wiimote
راه اندازی رایانه: پردازش و Wiimote

اصلی ما در اینجا پردازش صحبت با wiimote است. این دستورالعمل ها مربوط به لینوکس است ، اما همه آنها باید در مک و ویندوز با برخی تحقیقات در مورد چگونگی پردازش داده های wiimote کار کنند. پس از نصب پردازش ، دستورالعمل هایی را در انجمن پیدا کردم ، اما هنوز مشکلاتی داشتم. در اینجا کاری است که باید انجام می دادم:

  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 (من از alpha-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 یافت می شود.

برای بررسی بلوتوث خود ، دکمه های یک و دو را در wiimote فشار دهید ، سپس $ hcitool scan را در ترمینال امتحان کنید. باید مشاهده کنید wiimote نینتندو شناسایی شده است. در غیر اینصورت باید تنظیمات بلوتوث خود را بیشتر بررسی کنید. اگر همه چیز خوب است ، برنامه wiimote_sensor.pde (ضمیمه شده) را بارگیری کرده و آن را راه اندازی کنید. در قسمت وضعیت پایین صفحه باید ببینید: BlueCove نسخه 2.1.0 در bluez در تلاش برای یافتن wii دکمه های 1 و 2 را در wiimote فشار دهید. پس از تشخیص ، منبع مادون قرمز خود (قوطی اسپری) را در مقابل آن تکان دهید. شما باید یک دایره قرمز در پی حرکت خود ببینید! قبل از حرکت مطمئن شوید که این کار می کند. اگر نمی توانید کار کنید ، انجمن پردازش را جستجو کنید.

مرحله 7: تنظیم همه چیز

تنظیم همه چیز
تنظیم همه چیز

نرم افزار virtualGraffiti را در زیر بارگیری کنید. آن را در فهرست اسکچ بوک خود استخراج کنید و سپس این مراحل را دنبال کنید!

* قوطی اسپری را روشن کنید ، وضعیت چراغ LED را بررسی کنید. * رایانه را روشن کنید ، گیرنده اسپری را وصل کنید ، * صفحه تنظیم و پروژکتور ، * بررسی کنید که LED وضعیت گیرنده اسپری چشمک می زند ، * پردازش را شروع کرده و برنامه virtualGraffiti را بارگذاری کنید ، * بررسی کنید که نشانگر سریال RX و TX را دریافت کرده اید LED ها روی برد آردوینو چشمک می زنند ، * هر دو دکمه را روی 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 لینوکس: 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 برای ردیابی حجم سه بعدی و حذف حسگر فاصله در قوطی استفاده کنید: https://www.cl.cam.ac.uk/~sjeh3/wii/. این خوب است زیرا سنسور فاصله در حال حاضر ضعیف ترین قسمت سیستم است. همچنین به این معنی است که می توانیم از یک صفحه نمایش مناسب برای تصاویر واضح تر استفاده کنیم. * از یک wiimote در قوطی برای تشخیص زاویه اسپری قوطی استفاده کنید. این امر به مدل رنگ اسپری واقع گرایی می بخشد.

توصیه شده: