دوشنبه , ۲۸ آبان ۱۳۹۷
خانه / تکنولوژی اطلاعات / پینگ پنگ ساحلی !

پینگ پنگ ساحلی !

برای نمایش هر داده ای به یک نمایش دهنده نیاز هست. این نمایشگر بسته به نوع داده می تواند سایزهای مختلف و کیفیت های مختلف را همراه داشته باشد. مثلا برای نمایش تصویر یک گل می توانیم از یک نمایشگر ساده با تعداد پیکسل کم و تک رنگ استفاده کنیم، اما کیفیت تصویر نمایش داده شده نیز بسیار پایین خواهد بود. و شاید در سایزهای کوچک نمایشگر حتی تصویر گل به وضوح قابل مشاهده نباشد.

2-bit-flowerبرای مثال اگر 4 سری لامپ LED معمولی را کنار هم قرار دهیم و یک مربع 4*4 درست کنیم فضایی به اندازه 2.5 سانتی متر طول و 2.5 سانتی متر عرض اشغال کرده ایم و اگر با خاموش و روشن کردن لامپ ها تصویری ایجاد کنیم تصویر واضحی نخواهد بود (16ppi). اما در همین اندازه شاهد هستیم که ساعتهای مچی، موزیک پلیرها و ابزارهای الکترونیکی دیگر تصاویر با کیفیتی بصورت کاملا رنگی ارائه می دهند. نکته آنجاست که در این نمایشگر ها تعداد پیکسل ها بسیار بیشتر است و به جای 4*4 دارای 10*10 یا حتی 200*200 پیکسل می باشند.  مثلا در ساعت اپل تعداد پیکسل ها 320 در 400 تخمین زده می شود که کیفیتی معادل 332 تا 385 پیکسل در اینچ را شامل می شود. البته این پیکسل ها از نوع لامپ های LED نیست و از تکنولوژی کریستال مایع یا همان LCD بهره می برند. شبکیه چشم انسان قادر است تا وضوح 320-380 پیکسل در اینچ مربع را از فاصله بین 25-40 سانتی متر تشخیص دهد و این حداکثر میزان توانایی چشم خواهد بود. پس اگر از این LCD ها برای تابلوهای تبلیغاتی بزرگ در بزرگراه ها استفاده کنیم بعلت فاصله زیادی که چشم با آنها دارد اصلا پیکسلهای ریز به چشم نمی آیند و عملا هیچ کارایی نخواهند داشت و تنها هزینه ساخت را بالا خواهند برد. برای همین منظور در تابلوهای تبلیغاتی شهری از همین LED های معمولی و یا حتی LED های با سایز بزرگتر و کیفیت بهتر استفاده می شود تا شاهد کاهش هزینه در تولید و نیز کاهش هزینه در نگهداری و تعمیر باشیم.

large-led-screen
حال در نظر بگیرید در واگن مترو برای نمایش مسیر ایستگاه ها نیاز به یک نمایشگر داریم. از آنجاییکه در هر واگن در دو طرف تعداد زیادی درب خروج نصب هست و معمولا محل نصب نقشه ها بالای درب های خروج می باشد اگر بخواهیم از نمایشگرهای با کیفیت بالا استفاده کنیم، هزینه های خرید و نگهداری افزایش چشمگیری پیدا کرده و البته کاربرد مفید دیگری به جز نمایش دائمی محل ایستگاه ها نخواهند داشت بنابر این می توانیم از نمایشگر تک پیکسلی و با کیفیت پایین استفاده کنیم. یعنی تنها تعدادی LED را بر روی نقشه کاغذی به صورت پشت سر هم وصل کنیم و در ایستگاه مورد نظر چراغ مربوط به ایستگاه را روشن کنیم. تازه با همین نمایشگر ساده می توانیم انواع اطلاع رسانی را داشته باشیم. مثلا با روش و خاموش کردن به ترتیب چراغ ها در طول مسسیر جهت حرکت قطار را نشان دهیم و یا با چشمک زدن نمودن چراغ ها 20 ثانیه قبل از رسیدن به ایستگاه به مسافران اطلاع دهیم و کارهای متنوع دیگر…

پس نمایشگرهای کم کیفیت لزوما به معنی کم کاربرد بودن و یا نداشتن کیفیت مطرح نبوده بلکه در کنترل هزینه های تولید و نگهداری نقش بسزایی دارند. با این مقدمه سری بزنیم به آنچه که در 4 هفته گذشته گذشت.
استاد راهنمای بنده سال گذشته یک پروژه بازی پینگ پنگ ساحلی طراحی نموده و یک تیم از انواع و اقسام بچه ها را جمع کرده تا این پروژه آماده اجرا شود. این پینگ پنگ ساحلی که در زمین والیبال ساحلی برگزار می شود از دو بازیکن که مقابل یکدیگر قرار می گیرند و با خود یک راکت بزرگ از جنس فوم حمل می کنند برگزار می شود. در مرکز هر یک از این راکتهای بازی یک عدد تبلت سرفیس پرو 2 مایکروسافت نصب شده و بازیکنان محیط بازی را در داخل تبلت ها مشاهده می کنند.

beach-pong-paddle

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

Beach-Pong-Kinects

از آنجایی که این بازی در محیط باز ساحلی و در شب اجرا میشد و بازیکنان هم افراد عادی شهر بودند و تعداد زیادی تماشاچی به تماشای بازی می آمدند می بایست تدابیری اندیشیده می شد که تماشاچی ها شاهد حرکت توپ بین بازیکنها باشند و بتوانند در جریان بازی قرار بگیرند. برای این منظور دو راهکار انتخاب شده بود. یکی نصب ویدئو پروژکتور برای نمایش محیط بازی از بالا (TopSide) و یکی استفاده از یک نمایشگر با کیفیت پایین ولی به اندازه کافی بزرگ بر روی شن های ساحل و دقیقا بین دو بازیکن تا موقعیت توپ را نمایش دهد.

Beach-Pong-Old-Tv

ویدئو پروژکتوری که حرکت بازیکنان و توپ را در یک تصویر از تلویزیونی قدیمی نمایش می دهد

یک تیم دو نفره از دوستان بر روی پروژه نمایشگر زمینی قریب به دو ماه کار کردند. آنها باید 20 رشته از چراغهای معروف به چراغهای درخت کریسمس را که در هر رشته 10 عدد لامپ LED سه رنگ وجود داشت به یکدیگر متصل می کردند و با آردوینو Arduino محل توپ را کنترل می کردند. 25 روز قبل در حالیکه تنها یک هفته به زمان برگزاری مراسم مانده بود استاد از پروژه چراغهای LED ناامید شده بود و از من درخواست کرد که به بچه ها کمک کنم و مشکل را پیدا و حل کنم. از آنجایی که من اصلا جزء گروه سخت افزار و توسعه سخت افزاری نبودم (جزء توسعه نرم افزاری هم نبودم 😉 ولی تقریبا هر کمکی از دستم براومد انجام دادم ) علیرغم میل باطنی به گروه ملحق شدم و بعد از یک روز کار به این نتیجه رسیدیم که بعلت آسیب سخت افزاری که به ترانزیستورهای کنترل کننده چراغهای درخت کریسمس رسیده استفاده از آنها امکان پذیر نیست. به استاد گفتم که از نظر من این مشکل قابل حل نیست اما من میتونم یک نسخه ساده تر از این رو درست کنم و کار رو راه بندازم. استاد که از حرف من خیلی خوشش نیومد پرسید چه کسی میتونه تو این زمینه کمک کنه و من گفتم یک مهندس الکترونیک. از بچه های دانشکده الکترونیک کمک بگیرید. ساعت 6 بعد از ظهر به خانه برگشتم و بعد از یک استراحت ساعت حدود 8 به آزمایشگاه در دانشگاه برگشتم و یک بسته LED آبی رنگ و مقاومت و مقداری سیم و یک آردوینو از آزمایشگاه به خانه آوردم و تا ساعت حدود 1 شب یک نمونه کوچک از آن چیزی که تو ذهن داشتم رو درست کردم. (همین تصویر پایین)

led-light-02
یعنی هم بصورت سخت افزاری LED ها را کنار هم گذاشتم و هم کدنویسی توابع برای کنترل سرعت و موقعیت رو بر مبنای یک ماتریس 5*5 انجام دادم. از این دسترنج با موبایل فیلم و عکس گرفتم و همون شب برای استاد ایمیل کردم… فردا صبحش وقتی ایمیلم رو چک کردم دیدم استاد پاسخ خوبی داده ولی گفته امروز منتظر یک مهندس الکترونیک هست تا مشکل سیستم قبلی رو برطرف کنه… ضمنا قرار بود همون روز کل پروژه رو در محل اجرای پروژه بصورت آزمایشی تست کنیم تا برای آخر هفته آماده باشیم… من صبح به ساحل رفتم و با بقیه دوستان کمک کردیم و محل آزمایش رو آماده سازی کردیم. استاد رسید و پرسید از وضعیت چراغ ها خبر داری؟ گفتم با توجه به کسی که من دیدم داشت روی پروژه کار میکرد، قطعن مشکل چراغها برطرف نخواهد شد.
گفت پیشنهادت چیه، گفتم رو ایده من بعنوان پلن B کار کنیم. گفت اگر بارون بیاد، گفتم من ضد اب بودن پروژه ام رو ضمانت می کنم. گفت نور LED های معمولی کمه و دیده نمیشه و اینجا بود که من هسته ایده ام رو رو کردم و گفت LED ها به تنهایی نور زیادی ندارند و باید حباب داشته باشند، برای حبابشون از توپ پینگ پنگ استفاده می کنیم که با زمینه بازی هم خوانی دارد. گفت وسایلش رو نداریم. گفتم محل خرید قطعات رو می دونم و میتونم تهیه کنم. گفت چقدر زمان میخواهی؟ گفتم یک روز! گفت پس چرا اینجا وایسادی؟! گفتم البته 1 نفر هم نیرو میخواهم کمکم کنه. گفت قبول. به یکی از بچه ها که ماشین داشت گفت ببرش هر جایی که میخواهد. به خودم هم گفت هرچی میخواهی بخر. اینجا بود که کار شروع شد و من به همراه دوستانم که کمکم کردن طی 1 روز یک مانیتور با سایز 4 متر و 60 سانت عرض و 4 متر طول با تعدا 168 لامپ LED و استفاده از 168 توپ پینگ پنگ بعنوان حباب ساختیم. از آنجایی که سایز نمایشگر خیلی بزرگ بود و ما هم فرصت کافی نداشتیم، کار رو بصورت 4 تکه بر روی قطعات فوم ساختیم و در روز تست 4 تکه را به هم متصل کردیم…

توضیحات فنی نحوه ساخت رو تو پست قبلی (اینجا) شرح دادم… عکسهایی که در ادامه هست مربوط به نحوه پیاده سازی از آزمایشگاه تا روز اجرای پروژه هست…

پ.ن.فنی: موقعیت توپ به صورت مقدار X,Y از طریق پروتوکل OSC به کامپیوتری که به آردوینوی LED های متصل هست فرستاده میشه و ما با دریافت داده ها و تطبیق موقعیت نسبت به روشن و خاموش کردن لامپ ها اقدام می کنیم.

LED-10

نصب و تست در آزمایشگاه شب قبل از برنامه – هر 6 ردیف فوم یک بخش را تشکیل می دهند

برای دیدن بقیه عکس ها به ادامه مطلب بروید


LED-11

LED-12

LED-13

LED-14

در حال گذاشتن فوم ها زیر ماسه – برای اینکه نور LED ها بیشتر بشه توپ پینگ پنگ رو سوراخ کردیم و بعنوان حباب روی لامپ ها گذاشتیم که تو شب نورشون خیلی قشنگ بود.

LED-15-1

چون در 4 بخش ساخته بودیم نیاز بود که اتصال بین ردیف ها یک به یک بررسی شوند تا وقتی ماسه روی فوم ها ریخته میشه قطعی یا اتصال کوتاه ایجاد نشود.LED-17

اینجا هم مزرعه توپ پینگ پنگ ماست 🙂 وجب به وجب زیر این ماسه ها سیم رد شده چون این توپ ها بصورت یک شبکه توری از زیر ماسه ها به همدیگر بافته شده اند… LED-18

من در حال تست توپ ها هستم. یک قطعی کوچک باعث میشد کل ردیف یا کل ستون توپ ها قطع شده و نیاز داشت تمامی اتصالات در ردیف یا ستون مجدد بررسی شود. زیر پای من تمامی سیستم کنترلی قرار دارد. LED-19

نمایی از توپ ها در شبLED-20

بعضی وقتها که سرعت حرکت توپ زیاد بود و یا Pocket Loss داشتیم دیتای اشتباهی دریافت می کردیم و چراغ ها همزمان روشن می شد. این مشکل در نسخه بعدی حل شد و در تست بهار سیستم بهتری ارائه خواهیم داد.LED-Controllerاین هم سیستم کنترلر با آردوینو مگا – سیم های همه سطرها و ستون ها شماره گذاری شده بود و استفاده از برد بورد برای کنترل راحت تر شماره سیم ها بود

همچنین بررسی کنید

مقایسه ساده نحوه محاسبه در گوگل و ولفرام آلفا

بدون شک ولفرام آلفا یکی از بهترین سیستم هایی هست که من تو ۷-۸ سال …

۲ نظرها

  1. سلام
    الان وقتی توپ پرتاب میشه، در مسیر حرکتش لامپ ها روی زمین روشن میشن؟

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

This site uses Akismet to reduce spam. Learn how your comment data is processed.