جدول المحتويات:

الكتابة على الجدران الافتراضية: 8 خطوات
الكتابة على الجدران الافتراضية: 8 خطوات

فيديو: الكتابة على الجدران الافتراضية: 8 خطوات

فيديو: الكتابة على الجدران الافتراضية: 8 خطوات
فيديو: ميزة روووعة في هواتف شاومي استخدمها من الان ( لوز اللوز #7 ) 2024, يوليو
Anonim
كتابات افتراضية
كتابات افتراضية

لقد رأيت بعض أنظمة الكتابة على الجدران الافتراضية على الويب ولكن لم أتمكن من العثور على أي معلومات منشورة حول كيفية إنشاء واحدة (على الرغم من الاطلاع على صفحة الروابط النهائية). اعتقدت أنه سيكون أمرًا رائعًا بالنسبة إلى ورش الكتابة على الجدران الخاصة بي ، لذلك صنعت واحدة بنفسي ونشرت كل ما تحتاجه لصنع بنفسك هنا! الميزات * جميع المصادر المفتوحة والأجهزة ، * التكلفة <100 جنيه إسترليني باستثناء جهاز العرض والكمبيوتر ، * يكتشف فوهة العلبة الضغط والمسافة من الشاشة ، * نماذج الطلاء تقطر إذا تحركت ببطء شديد! ملاحظات * هذا التوجيه مرتفع جدًا ، لكن من فضلك أخبرني إذا فاتني شيء مهم ، * إعداد الحوسبة لنظام Linux. إذا كنت تعمل على أنظمة أخرى ، فالرجاء نشر تعليماتك! المهارات التي ستحتاجها * عمل الخشب لإنشاء شاشة عرض خلفية خشبية ، * دوائر إلكترونية وبرمجة وحدات تحكم Atmel AVR الصغيرة (أو اردوينو) ، * تكون قادرًا على تثبيت بعض المكتبات الموجودة على جهاز الكمبيوتر الخاص بك للسماح للمعالجة بالتحدث إلى wiimote.

الخطوة 1: كيف يعمل

كيف تعمل
كيف تعمل

* يمكن أن يحتوي البخاخ على مصباح LED بالأشعة تحت الحمراء يضيء من خلال شاشة جهاز العرض ويمكن رؤيته بواسطة كاميرا wiimote. * يرسل wiimote إحداثيات X و Y للعبوة إلى الكمبيوتر عبر رابط راديو بلوتوث. * يقوم الكمبيوتر بتشغيل برنامج رسم بسيط يستخدم جهاز عرض "لرسم" الخطوط كما ترسم بالعلبة. كما أنه يعتني بتعيين كاميرا wiimote على الشاشة باستخدام نظام معايرة من 4 نقاط. * يمكن أن يكتشف الرذاذ أيضًا بعده عن الشاشة وضغط الفوهة: كلما ابتعدت كلما زادت النقطة المرسومة ، كلما ضغطت على الفوهة بشدة ، أصبحت نقطة الطلاء أكثر تعتيمًا.

الخطوة 2: المكونات

المكونات
المكونات

إليك كل الأجزاء التي تحتاجها للجمع:

* الكمبيوتر - يجب أن يكون حوالي 1.4 جيجا هرتز ، وبلوتوث ومنفذ USB ، * بيئة المعالجة ، * برنامج VirtualGraffiti ، التنزيل من خطوة "إعداد الكمبيوتر" ، * nintendo wiimote - شراء اليد المستعملة من ebay ، * جهاز العرض - ستحتاج إلى كن ساطعًا إذا كنت تخطط للاستخدام أثناء النهار أو في الداخل مع إضاءة الأضواء ، * شاشة الإسقاط الخلفية - اصنع بنفسك ، * علبة الرش الافتراضية - اصنع بنفسك ، * مستقبل علبة الرش الافتراضي - تكلف * اردوينو لمستقبل العلبة (المدمج في USB-> المسلسل) 21 جنيهًا إسترلينيًا * زوج راديو rx / tx 9 جنيه إسترليني * مكونات لرذاذ البناء يمكن 18 جنيهًا إسترلينيًا بالإضافة إلى حاوية اختيارية 12 جنيهًا إسترلينيًا * حاوية اختيارية لجهاز الاستقبال 8 جنيهات إسترلينية * نينتندو ويموتي - اشترِ اليد المستعملة من ebay 20 جنيهًا إسترلينيًا

الخطوة الثالثة: شاشة الإسقاط الخلفية

شاشة الإسقاط الخلفي
شاشة الإسقاط الخلفي

يجب أن تكون الشاشة هي المقدار المناسب للرؤية الكاملة! إذا لم تكن شفافة بدرجة كافية ، فلن يتم رؤية الصورة ولن يكون مؤشر LED بالأشعة تحت الحمراء مرئيًا لكاميرا wiimote. إذا كان شفافًا للغاية ، فسيؤدي ذلك إلى إصابة جهاز العرض بالعمى وتختفي الصورة. (على الرغم من الاطلاع على الصفحة الأخيرة لمعرفة طرق التخفيف من هذا).

لقد استخدمت ليكرا ، وهو قابل للتمدد حتى أتمكن من مده لجعله أكثر شفافية. في الوقت الحالي ، أمسكها بمسامير الإبهام ، لكنني أتخرج إلى الفيلكرو عندما أحصل على آلة الخياطة. لقد صنعت إطارًا خشبيًا بمساعدة ورشة عمل ونجار (شكرًا لو!) كنت بحاجة إلى الانهيار حتى أتمكن من نقله على دراجتي. إذا كنت تقوم بعمل واحد لمكان ثابت ، فسيكون من الأسهل القيام به. فقط اجعلها بنسبة عرض إلى ارتفاع 4: 3 ، وقاسية بما يكفي لتبقى منتصبة. لقد وجدت أن الناس يميلون إلى الضغط على مادة الشاشة قليلاً لذا يجب أن تكون متينة بعض الشيء.

الخطوة 4: علبة الرش

عبوة رش. بخاخ
عبوة رش. بخاخ
عبوة رش. بخاخ
عبوة رش. بخاخ

هذا هو الجزء الأكثر تعقيدًا في المشروع واستغرق وقتًا أطول حتى يتم تصحيحه. الخبر السار هو أنك لست بحاجة إلى كل هذه الأشياء لجعل نظام المرح يعمل. أبسط شيء هو مجرد الحصول على دائرة بمفتاح ، و LED بالأشعة تحت الحمراء ومقاوم. عندما تضغط على المفتاح ، يضيء مؤشر LED ويتم رؤيته وتتبعه بواسطة كاميرا wiimote.

هذا الإصدار أكثر تقدمًا ، لأنه يقيس أيضًا المسافة من الشاشة وضغط الفوهة. كلا هذين الأمرين مهمين عندما تكون في الواقع رش الطلاء. كنت أرغب في إنشاء نظام تدريب ، لذلك كان من المهم جعل النظام "حقيقيًا" قدر الإمكان (ضمن حدود التكلفة الخاصة بي). الدائرة بسيطة جدا. ألق نظرة على مخطط الدائرة المرفق لترى بنفسك. أنت بحاجة إلى مهارات لحام أساسية وأن تكون قادرًا على وضع دائرة على اللوح الخشبي. أيضًا ، يجب أن تشعر بالسعادة ببرمجة وحدات التحكم الدقيقة ، وبناء دائرة من نقطة الصفر مقابل استخدام لوحة اردوينو الخيار 1: إذا كنت تريد استخدام لوحة اردوينو في علبة الرش. استخدم arduino كما هو وقلل معدل الباود الخاص بالراديو TX إلى النصف في كود spraycan. الخيار 2: تريد توفير النقود ولكن ليس لديك مبرمج مصهر. قم ببناء اللوحة واستخدم بلورة خارجية بتردد 16 ميجاهرتز. قم بتخفيض معدل الباود إلى النصف كما في الخيار 1. الخيار 3: تريد توفير المزيد من النقود ولديك مبرمج مصهر. قم ببناء اللوحة ، ولكن تجاهل البلورة الخارجية. استخدم مبرمج المصهر لضبط الأتميل لاستخدام ساعته الداخلية. أعتقد أن مبرمج DIY المتوازي سيسمح لك ببرمجة الصمامات. أستخدم مبرمج olimex. نظرة عامة على الدائرة يقيس الميكروكونترولر الإخراج من مستشعر المسافة الحاد 2d120x (معلومات رائعة عن هذا المستشعر هنا) ومقياس الجهد الخطي. كما أنه يقيس ناتج مقياس الجهد LED PWM. يستخدم هذا لضبط خرج ضوء LED. إن IR LED الذي أستخدمه هو 100mA وطول موجة الذروة 950 نانومتر (مثالي لـ wiimote). يستخدم المتحكم الدقيق PWM ليومض مؤشر LED بسرعة كبيرة. نحن نستخدم موسفيت IRF720 power بحيث لا يحرق الميكرو خرجه. كما كنت أرغب في إضافة سعة لمصباح LED أكثر إشراقًا في المستقبل. يوجد مؤشر LED للحالة يومض في كل مرة يتم فيها بث حزمة بيانات على الراديو. إذا كان كل شيء يعمل بشكل جيد ، فيجب أن يومض هذا الضوء عند حوالي 15 هرتز. أخيرًا ، يتم توصيل وحدة الإرسال اللاسلكي بالدبوس 3 (الدبوس الرقمي 1 لـ arduino) من وحدة التحكم الدقيقة حتى نتمكن من إرسال المعلومات التي نقيسها إلى الكمبيوتر. تحتاج أيضًا إلى هوائي متصل بلوحة الاستقبال. لقد استخدمت قطعة من الأسلاك بطول 12 سم. هذا هو نصف ما هو موصى به في صفحة المعلومات الممتازة هذه. برمجة المتحكم الدقيق بعد إنشاء الدائرة ، ستحتاج إلى تحميل البرنامج (مرفق). أستخدم بيئة برمجة / مكتبات اردوينو. يمكنك ترجمة هذا باستخدام Arduino IDE ، ثم برمجته كما تفعل عادةً. أصبحت دائري أكثر بساطة باستخدام الساعة الداخلية 8 ميجا هرتز للمايكرو. إذا كنت تستخدم هذا ، فستحتاج إلى ضبط إعدادات المصهر لاستخدام RC 8MHz المعايرة الداخلية: 1111 0010 = 0xf2 وهذا يعني أنك ستحتاج إلى مبرمج يمكنه كتابة الصمامات../avrdude -C./avrdude.conf -V -p ATmega168 -P / dev / ttyACM0 -c stk500v2 -U lfuse: w: 0xf2: m إذا لم يكن لديك هذا النوع من المبرمجين (لنفترض أن لديك اردوينو فقط لوحة) ، ما عليك سوى استخدام بلورة 16 ميجا هرتز بين المسامير 9 و 10 ويجب أن تعمل جميعها (لم يتم اختبارها - قد تحتاج إلى مكثف). ستحتاج أيضًا إلى تعديل رمز البرنامج بحيث ينخفض الباود بجهاز الإرسال إلى النصف. الاختبار بعد تجميع كل ذلك معًا وتحميل البرنامج ، تحتاج إلى ضبط سطوع IR LED. أردت فقط زيادة ناتج الضوء إلى الحد الأقصى دون تحميص مؤشر LED ، لذا فجرت عددًا قليلًا وانتهى بي الأمر بمتوسط رسم يبلغ 120 مللي أمبير. إذا كان لديك مقياس متعدد يمكنك ضبطه بسهولة تامة ، وإلا فقط اضبط مقياس الجهد ليكون مرتفعًا جدًا ولكن ليس تمامًا! يمكنك أيضًا التحقق من المدخلات التناظرية على المسامير 26 و 27 و 28 من PWM لضبط مقياس الجهد ومستشعر المسافة ومقياس جهد الفوهة. إذا كان لديك نطاق ، فيمكنك التحقق من خروج قطار النبض من الدبوس 3 في وحدة الإرسال اللاسلكي. تحقق من إخراج pwm لمصباح LED على الطرف 11. يمكنك استخدام كاميرا الهاتف المحمول (أو معظم كاميرات CCD) لمشاهدة IR LED قيد التشغيل عند الضغط على زر الفوهة.

الخطوة 5: علبة الرذاذ المتلقي

علبة الرذاذ المتلقي
علبة الرذاذ المتلقي
علبة الرذاذ المتلقي
علبة الرذاذ المتلقي

إذا كنت تسير في طريق الرش البسيط ، فلن تحتاج إلى هذا الشيء.

بخلاف ذلك ، أستخدم لوحة اردوينو فقط ، مع توصيل مستقبل الراديو بالدبوس 2. وهذا يجعل من السهل الحصول على البيانات في الكمبيوتر عبر شريحة USB -> التسلسلية على لوحة اردوينو. إذا كنت بصدد إنشاء دائرة مخصصة ، فربما أستخدم FTDI USB -> لوحة تقييم UART التسلسلية. تحتاج أيضًا إلى هوائي متصل بلوحة الاستقبال. لقد استخدمت قطعة من الأسلاك بطول 12 سم. هذا نصف ما هو موصى به في صفحة المعلومات الممتازة هذه. قم بتحميل رسم graffitiCanReader2.pde في اردوينو. مع تشغيل العلبة ، يجب أن ترى مؤشرات LED الخاصة بالحالة على العلبة وتومض لوحة جهاز الاستقبال بسرعة. في كل مرة تومض فيها لمبة LED ، يتم إرسال حزمة بيانات. في كل مرة يومض مؤشر LED للوحة جهاز الاستقبال ، يتم استلام حزمة بيانات صالحة. إذا كنت لا ترى هذا ، فهناك شيء يتعلق بوصلة الراديو. شيء ما يجب تجربته هو توصيل TX للعلبة بـ RX لجهاز الاستقبال بقطعة من السلك. إذا لم ينجح ذلك ، فمن المحتمل أن يكون لديك عدم تطابق في معدل البث بالباود الخاص بـ virtualwire (انظر الكود). بافتراض وجود الكثير من الوميض على لوحة جهاز الاستقبال ، يجب أن تكون قادرًا على مراقبة هذا على منفذ USB التسلسلي. إذا كنت تراقب المنفذ التسلسلي (عادةً / dev / ttyUSB0) عند 57600 ، يجب أن ترى البيانات تتدفق مثل Got: FF 02 Got: FF 03… الرقم الأول هو الضغط ، والثاني هو المسافة. يمكنك الآن إجراء المعالجة واستخدام هذه المعلومات لعمل صور جميلة! قم بتحميل رسم المعالجة المرفق (canRadioReader.pde). ابدأ البرنامج وتحقق من إخراج البرنامج. يجب أن تحصل على تردد (يخبرك بعدد التحديثات التي يحصل عليها المتلقي في الثانية - فأنت بالتأكيد تريد أن يكون هذا على الأقل 10 هرتز). كما ستحصل على قياس المسافة والفوهة. اختبر العلبة عن طريق تحريك مقياس جهد الفوهة وتحريك قطعة من البطاقة أمام مستشعر المسافة. إذا كان كل شيء يعمل ، فانتقل إلى الخطوة التالية - تجهيز الكمبيوتر للتحدث إلى wiimote!

الخطوة 6: إعداد الكمبيوتر: المعالجة و Wiimote

إعداد الكمبيوتر: المعالجة و Wiimote
إعداد الكمبيوتر: المعالجة و Wiimote

هدفنا الرئيسي هنا هو معالجة التحدث إلى wiimote. هذه التعليمات خاصة بـ Linux ، ولكن يجب أن تعمل جميعها على نظام Mac و windows مع بعض البحث حول كيفية معالجة بيانات 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 (استخدمت beta-5) ووضعه في./processing/libraries/Loc/library/
  9. قم بتنزيل Loc.zip وفك الضغط إلى./processing/libraries/Loc/lll/

ثم استخدمت رمزًا مستوحى من Classiclll لتشغيل الأزرار وشريط المستشعر. يرسم الكود / الرسم المرفق دائرة حيث تم العثور على مصدر الأشعة تحت الحمراء الأول بواسطة wiimote.

للتحقق من البلوتوث الخاص بك ، اضغط على الزرين الأول والثاني على wiimote ، ثم جرب مسح $ hcitool في الجهاز. يجب أن تشاهد جهاز nintendo wiimote الذي تم اكتشافه. إذا لم تكن بحاجة إلى إلقاء نظرة أكثر على إعداد البلوتوث الخاص بك. إذا كان كل شيء جيدًا ، فقم بتحميل برنامج wiimote_sensor.pde (المرفق) وابدأ تشغيله. في الجزء السفلي من الحالة من الشاشة ، يجب أن ترى: إصدار BlueCove 2.1.0 على bluez يحاول العثور على wii اضغط على الزرين 1 و 2 على wiimote. بعد اكتشافه ، قم بتلويح مصدر الأشعة تحت الحمراء (علبة الرذاذ) أمامه. يجب أن ترى دائرة حمراء بعد حركتك! تأكد من أن هذا يعمل قبل الانتقال. إذا لم تتمكن من تشغيله ، فابحث في منتدى المعالجة.

الخطوة 7: الإعداد الكامل

إعداد كل شيء
إعداد كل شيء

قم بتنزيل برنامج VirtualGraffiti أدناه. استخرجه في دليل كراسة الرسم ثم اتبع هذه الخطوات!

* قم بتشغيل علبة الرش ، تحقق من وميض ضوء LED للحالة. * قم بتشغيل الكمبيوتر ، وجهاز استقبال علبة الرش ، * شاشة الإعداد وجهاز العرض ، * تحقق من أن مؤشر LED لحالة جهاز استقبال علبة الرش يومض ، * ابدأ المعالجة وقم بتحميل برنامج VirtualGraffiti ، * تحقق من حصولك على كل من مؤشر RX و TX التسلسلي تومض مصابيح LED على لوحة اردوينو ، * اضغط على كلا الزرين على wiimote ، * قم بمعايرة 4 نقاط عند المطالبة (ضع علبة الرش على كل هدف بدوره ، ثم اضغط على الفوهة حتى تتحول الكتابة إلى اللون الأحمر). * استمتع!

الخطوة الثامنة: الموارد ، الروابط ، الشكر ، الأفكار

الروابط فيما يلي الروابط التي كانت لا تقدر بثمن في جعل هذا المشروع يعمل: معلومات 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 # Wavelengths معايرة 4 نقاط: https://www.zaunert.de/jochenz/wii/Thanks! بدون نشر الكثير من الأشخاص لأعمالهم ، كان هذا المشروع أكثر صعوبة وأكثر تكلفة. شكراً جزيلاً لجميع الطاقم مفتوح المصدر ، والأشخاص الذين اخترقوا wiimote ، و Classiclll لجعل wiimote سهل الاستخدام مع المعالجة ، و Jochen Zaunert للتعليمات البرمجية للقيام بالمعايرة ، وطاقم المعالجة ، وطاقم اردوينو ، و Lou لمساعدة النجارة ، وجميع أولئك الذين يستكشفون ، ويجعلون ثم نشر النتائج التي توصلوا إليها على الإنترنت! https://www.wiispray.com/ ، بدون رمز أو نظام howto * yrwall الافتراضي للكتابة على الجدران ، لا يوجد رمز أو howto. أفكار للاستكشاف * استخدم 2 wiimotes للقيام بتتبع الحجم ثلاثي الأبعاد والتخلص من مستشعر المسافة في العلبة: https://www.cl.cam.ac.uk/~sjeh3/wii/. سيكون هذا جيدًا لأن مستشعر المسافة هو حاليًا أضعف جزء في النظام. قد يعني ذلك أيضًا أنه يمكننا استخدام شاشة عرض خلفية مناسبة للحصول على صور أكثر وضوحًا. * استخدم wiimote في العلبة لاكتشاف زاوية علبة الرش. هذا من شأنه أن يضيف الواقعية إلى نموذج الطلاء بالرش.

موصى به: