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

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

    الگوریتمی که می‌تواند تصاویر بدون انعکاس تهیه کندReviewed by رامتین اردشیری فر on Aug 13Rating: 4.5

    بازتاب تصویر در شیشه

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

    Google And MIT Algorithm

    برای استفاده از این الگوریتم باید چند فریم تصویر از زوایای نزدیک به هم گرفته شوند، تا الگوریتم سطوحی که دارای مانع یا بازتاب است را شناسایی و حذف کند.

    هنوز اطلاعاتی در مورد این الگوریتم که به صورت برنامه یا محصولی که بتوان آن را خریداری کرد منتشر نشده است. اما استفاده از این الگوریتم در اپلیکیشن دوربین گوشی‌های هوشمند یا دوربین‌های عکاسی دور از انتظار نیست. از این پس به راحتی می‌توانید از داخل هواپیما عکس گرفته و آن را در اینستاگرم با کیفیت بیشتری به اشتراک بگذارید!


    iphone 6

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

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


    اما پیدا کردن دلایل اصلی کند شدن گوشی های هوشمند،اصلا کار ساده ای نیست مخصوصا که سیستم عامل های Android و iOS از پایه با هم تفاوت دارند و همین تفاوت، کار را سخت تر می کند.

    اخیرا شواهدی پیدا شده که علت کاهش سرعت گوشی های آیفون ۶ و ۶اس را توضیح می دهد.اگر به یاد داشته باشید سال گذشته شرکت اپل، طرحی را برای تعمیر رایگان ایفون های ۶ و ۶اس که به دلایل نامعلومی به طور ناگهانی خاموش می شدند، راه اندازی کرده بود. پس از مدتی مشخص شد که تعداد گوشی های مشکل دار بیشتر از تعدادی است که اپل تصور کرده بود.پس آن ها به جای تعویض رایگان باتری، تصمیم گرفتند با بروز رسانی سیستم عامل مشکل را حل کنند.با انتشار بروزرسانی نسخه ی ۱۰٫۲٫۱ مشکل ۸۰ درصد گوشی های خراب حل شد! اپل در بروز رسانی خود با تغییر مدیریت باتری ایفون ۶ و ۶اس توانسته بود مشکل را حل کند اما چگونه؟
    یکی از کاربران Reddit به اسم ۹to5Mac، توانسته معمای حل مشکل باتری آیفون توسط بروزرسانی سیستم عامل را حل کند.طبق یافته های او،اپل با پایین آوردن بیشترین میزان کِلاک پردازنده و در نتیجه پایین اوردن حداکثر توان پردازشی پردازنده توانسته فشار وارده بر باتری را کاهش دهد و مشکل خاموش شدن ناگهانی آیفون ۶ را حل کند.

    این ادعا با تست هایی که از آیفون های تعمیر شده با بروز رسانی سیستم عامل،انجام شده قابل اثبات است.به طوری که در حالت عادی آیفون ۶ در نرم افزار GeekBench امتیاز ۱۴۷۱/۲۴۷۶ را کسب می کند.اما ایفون های تعمیر شده با بروز رسانی سیستم عامل،امتیاز۸۳۹/۱۳۷۷ را کسب میکنند.

    در نتیجه اگر مشکل آیفون ۶ شما با تعویض باتری حل شده است،گوشی شما چیزی از توان پردازنده اش را از دست نداده، اما اگرمشکل خاموش شدن گوشی شما با بروز رسانی سیستم عامل رفع شده است متاسفانه مقداری از قدرت پردازنده دستگاهتان کم شده تا دیگر خاموش نشود!

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

    اولین داروی پیشگیری از ایدز ساخته شدReviewed by رامتین اردشیری فر on Sep 12Rating: 4.5

    Truvada pill HIV

    شاید در عصر حاضر قادر به درمان ویروس HIV نباشیم، اما  پیشگیری از آن با استفاده از دارویی جدید به نام Truvada امکان پذیر است. بر طبق نتایج به دست آمده از آزمایش، این دارو موفقیتی %۱۰۰ درصدی داشته است.

    محققان به ۶۵۷ نفر که در خطر آلوده شدن به ویروس HIV بودند، قرص‌هایی برای پیشگیری از ایدز به نام Truvada دادند و به نتایج قابل توجهی دست یافتند: بعد از ۲.۵ سال ، هیچ شخصی به ویروس HIV مبتلا نشده بود. هرچند این دارو عوارض جانبی مانند استخوان درد و برخی مشکلات کلیوی به دنبال داشت.

    موسسه غذا و داروی ایالات متحده‌ی آمریکا در جولای ۲۰۱۲ این قرص را تایید کرده بود، اما تا به الآن در حال طی مراحل آزمایشی در آفریقا، آسیا، آمریکای شمالی و چند ایالت استرالیا بوده است.

    زمانی که فردی این دارو را مصرف کند؛ دو ماده ضد ویروس به نام‌های tenofovir و emtricitabine از عملکرد ویروس جلوگیری خواهند کرد. البته عملکرد این دو ماده در صورت مصرف مداوم کپسول Truvada موفق خواهد بود.

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

    علت اینکه برخی از افراد مخالف مصرف این دارو هستند، این است که مصرف آن می تواند به استفاده کنندگان، امنیت کاذب دهد و همچنین ویروس HIV  را در برابر تاثیرات این دارو مقاوم کند.

    منابع: THE NEW YORK TIMES


    Snapdragon 845

    در مراسم Technology Summit امسال کمپانی Qualcomm جدیدترین پردازنده خود یعنی Snapdragon 845 را معرفی کرد. گفته شده که این پردازنده نسبت به مدل های قبلی ۲۵% سریع تر است. زیرا از هشت هسته Kryo 385 که در فرکانس ۲٫۸۰Ghz کلاک شده اند بهره می گیرد.

    این چیپ ست که بر پایه کورتکس ARM بوده و با فرایند تولید نسل دوم ۱۰ نانومتری LLP ساخته شده است. همچنین تا ۸GB مموری LPDDR4X را ساپورت می کند. ۴ هسته از این پردازنده برای عملکرد آن و ۴ هسته دیگر برای بهبود کارایی آن طراحی شده اند. اگر که چیپ ست گرافیکی Adreno 630 هم onboard باشد عملکرد گرافیکی تا ۳۰% افزایش می یابد.

    برای طرفداران دوربین ها باید وعده داد که دستگاه های حاوی Snapdragon 845 می توانند با کیفیت ۴K HDR در ۶۰fps بصورت ثابت فیلم برداری کنند. همچنین می تواند کیفیت ۱۰۸۰p را با ۲۴۰fps و برای ۷۲۰p تا ۴۸۰fps را فیلم برداری کنند که در نوع خود خارق العاده است.

    برای هوش مصنوعی دستگاه ها، کمک پردازنده Hexagon 685 DSP بر روی چیپ Snapdragon 845 حضور دارد تا نقش هوش مصنوعی را برای برخی قسمت های دستگاه ها مانند دوربین،صدا ها،بازی ها و … اجرا کند. همچنین این کمک پردازنده می تواند برای شبکه های عصبی ای که API Google در Andriod Oreo 8.1 آورده نقش مهمی داشته باشد.

    قسمت وایرلس این چیپ ست شامل مودم جدید X20 LTE است که می تواند تا ۱٫۲Gbps سرعت دانلود داشته باشد. این مقدار ۲۰% از مودم X16 بیشتر است.

    در پردازنده Snapdragon 845 مصرف باتری کاهش یافته است و همچنین از Quick Charge 4+ را به مجموعه اضافه می کند. با افزودن این قابلیت باتری در ۱۵ دقیقه تا نصف پر می شود.

    در ادامه باید گفت که این پردازنده از WiFi 802.11 ac و WiFiad مولتی گیگابایتی استفاده می کند که در باند ۶۰Ghz کار می کند. همچنین Bluetooth 5 به عنوان مزیتی دیگر در این پردازنده حاضر است که با استفاده از آن دستگاه می تواند فایل های صوتی را در چند دستگاه بصورت همزمان پخش و به اشتراک بگذارد. همچنین این پردازنده از چندین سیستم های مسیریابی مانند GPS، GlONASS، Beidou، Galileo، QZSS و SBAS پشتیبانی می کند.

    انتظار می رود که دستگاه های شامل Snapdragon 845 در نیمه اول ۲۰۱۸ رونمایی شوند.

    جلسه‌ی پنجم آموزش برنامه نویسی DSP  قسمت اول از  معرفی میکروکنترلرهای ساخته‌ی TI(میکروکنترلرهای ۱۶ بیتی و زمان حقیقی ۳۲ بیتی) ، در این جلسه میخواهیم مرور کلی داشته باشیم به تولیدات شرکت ti بپردازیم و ببینیم این شرکت چه MCU هایی را تولید می کنه. آموزش برنامه نویسی DSP

    معرفی MCUهای ساخت شرکت TI‌‌ (پارت اول از معرفی پروسسورهای ساخت شرکت TI)

    فیلم آموزش برنامه نویسی DSP جلسه پنجم

    جلسه بعدی                      جلسه قبلی

    مطلب آموزشی مرتبط : آموزش میکروکنترلر PIC

    مدرس فیلم ها : آقای مهندس حسین فروزانی (با مجوز آقای مهندس فروزانی کانال تلگرامی مجموعه ایشان @CHIPKADE)

    دیگر جلسات این آموزش

    درمان معلولیت جسمی با استفاده از امواج مغزیReviewed by رامتین اردشیری‌فر on Oct 10Rating: 4.5

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

    بیمار مورد آزمایش یک فرد ۲۶ ساله بود که هیچ جنبشی در اندام تحتانی خود به دلیل آسیب دیدن ستون فقراتش در پنج سال گذشته نداشته است. او تنها قادر به حس نیاز به تخلیه مثانه بوده است.

    هدف محققان این بود که به بیمار اجازه دهند با استفاده از امواج مغزی خود و بدون استفاده از جراحی بتواند کنترل ارادی روی پاهای خود داشته باشد. برای رسیدن به این امر پژوهشگران یک رابط مغز-کامپیوتر توسعه دادند که از کلاه الکترو‌انسفالوگرام (EEG) جهت خوانش الگوهای فعالیت مغزی در هنگام تفکر بیمار به راه رفتن، استفاده کردند.

    الکترو انسفالوگرام(eeg)الکتروانسفالوگرام سیگنالهای الکتریکی مغز را با استفاده از ۲۱ الکترود که به ترتیب خاصی در سطح سر نصب می شوند ثبت می کند. این الکترودها به کمک نوارهای ارتجاعی در کنار هم نگه داشته شده و مانند یک کلاه روی سر قرار می گیرند. (اطلاعات بیشتر در ویکی پدیا)

    در قدم بعدی، به بیمار آموزش داده شد که چگونه می‌تواند یک آواتار را در محیط واقعیت مجازی از طریق مغزش به حرکت درآورد. سپس الکترود‌هایی در اطراف زانو‌ها قرار داده شد که با دریافت سیگنال‌ها از مغز (با استفاده از کلاه EEG) و دور زدن قسمت آسیب دیده نخاع، موجب تحریک عضلات پا می‌شد.  برای شروع تمرین در واقعیت، ابتدا شخص مورد آزمایش در ۵ سانتی متری زمین به حالت تعلیق نگه داشته شده بود. این کار اجازه حرکت پا‌ ها را بدون تحمل وزن بیمار امکان پذیر می‌کرد.

    Disability therapy using brain waves

    در بیستمین جلسه تمرین و بعد از ۱۹  هفته،  بیمار با استفاده از سیستمی که از افتادن او به کمک طناب‌ها جلوگیری می‌کرد؛ توانست بر روی زمین ۳.۶۶متر راه برود.

    پژوهشگران جزییات این تحقیق را در مجله مهندسی عصبی و توان بخشی ( Journal of Neuroengineering and Rehabilitation) منتشر کرده اند.

    سری تایتان شامل بهترین و گران ترین محصولات کمپانی Nvidia است. آخرین مدل از این سری Titan V GPU نام دارد که قوی ترین کارت گرافیک جهان تاکنون می باشد. این گرافیک برای افرادی مناسب است که با دستگاه های یاد گیرنده و هوش مصنوعی سر و کار دارند.

    کمپانی Nvidia ادعا دارد که این محصول شان قوی ترین کارت گرافیک در جهان است. این GPU با معماری پیشرفته Volta GPU ساخته می شود. مدیر عامل این کمپانی، Jensen Huang، اعلام کرد که :” با Titan V ما Volta را در دسترس دانشمندان و محققان قرار می دهیم. برای دیدن اکتشافات آن ها هیجان زده ایم.”

    این کارت گرافیک از بهترین تکنولوژی های Nvidia تشکیل شده است.تکنولوژی هایی از قبیل معماری ۱۲  نانومتری Volta که از حافظه ۱۲GB HBM2 بهره می برد. ۲۱٫۱ میلیارد ترانزیستور که قابلیت عملکرد ۱۱۰ ترافلاپ را دارند در آن تعبیه شده است. این مقدار ۹ برابر آخرین مدل این کمپانی است.

    برای خریداران این ابر کارت گرافیک قیمت به شدت بالای ۲۹۹۹$ در نظر گرفته شده است. این دستگاه بیشتر برای سازندگان و دانشمندانی  مناسب است که برای کارهای پژوهشی و طراحی خود به ظرفیت گرافیکی بالا و قدرت زیاد نیاز دارند.

    کامپیوتر خود را با استفاده از آردوینو و با حرکات دست کنترل کنید

    کنترل کامپیوتر با حرکات دست با کمک آردوینو و ماژول اولتراسونیک

    تکنیک Leap motion

    اخیرا کامپیوترها و لپ تاپ های کنترل شونده با اشارات ، محبوبیت زیادی پیدا کرده اند. این تکنیک Leap motion  نامیده شده است که ما را قادر می سازد عملکردهای بخصوصی را روی لپ تاپ یا کامپیوترمان به سادگی با تکان دادن دست در جلوی آن کنترل کنیم .این کار بسیار جالب و هیجان انگیز است اما لپ تاپ های مجهز به این سیستم بسیار گران قیمت هستند.بنابراین ما در این پروژه لپ تاپ/کامپیوتر کنترل شونده با اشاره خودمان را با تلفیق قدرت آردوینو و زبان برنامه نویسی پایتون می سازیم .

    ما از دو سنسور اولتراسونیک برای تشخیص موقعیت دست ها و کنترل یک برنامه مدیا پلیر(VLC) استفاده می کنیم. البته این تنها برای نمایش عملکرد دستگاه است و هنگامی که پروژه را به طور کامل فرا گرفتید می توانید هر برنامه ای را تنها با تغییر چند خط کد به شکل دلخواه خود کنترل کنید .

    پیش نیاز ها:

    در این پروژه فرض بر این است که شما نرم افزار پایتون و کتابخانه سریال آن را نصب کرده اید و پروژه های ساده ای مانند ال ای دی چشمک زن را با استفاده از آن با موفقیت پیاده سازی کرده اید .

    اگر با با بردهای آردوینو آشنا نیستید :  بردهای آردوینو Arduino

    ایده کلی پروژه  :

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

    مطلب مرتبط: متر دیجیتال با ماژول HY-SRF05 و AVR

    اتصالات مدار کنترل کامپیوتر با حرکات دست با آردوینو و ماژول اولتراسونیک  :

    کنترل کامپیوتر با حرکات دست با کمک آردوینو و ماژول اولتراسونیک

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

    کنترل کامپیوتر با حرکات دست با کمک آردوینو و ماژول اولتراسونیک

    کنترل کامپیوتر با حرکات دست با کمک آردوینو و ماژول اولتراسونیک

    پروگرام کردن آردوینو :

    آردوینو باید برنامه ریزی شود تا بتواند فاصله بین دست و سنسور را اندازه بگیرد . کد کامل برنامه در انتهای صفحه آورده شده است ; و توضیحات بخش های مختلف کد در زیر قابل مشاهده است .

    با اندازه گیری فاصله می توان اعمال مختلفی را با اشاره انجام داد برای مثال در این برنامه ۵ عملکرد به عنوان نمونه برنامه ریزی شده است .

    عملکرد ۱:

    با قرار دادن هر دو دست در مقابل سنسور در فاصله “دور” از پیش تعیین شده ویدیو در VLC player پخش یا متوقف می شود .

    عملکرد ۲ :

    با قرار دادن دست راست در مقابل سنسور در فاصله “دور”از پیش تعیین شده ویدیو یک مرحله Fast Forward می شود .

    عملکرد ۳:

    با قراردادن دست چپ در مقابل سنسور در فاصله “دور” از پیش تعیین شده ویدیو یک مرحله Rewind می شود .

    عملکرد ۴:

    با قرار دادن دست راست در مقابل سنسور در فاصله “نزدیک” از پیش تعیین شده و حرکت دست به سمت سنسور ویدیو FastForward می شود و با دور کردن دست ویدیو Rewind  می شود .

    عملکرد ۵:

    با قرار دادن دست چپ در مقابل سنسور در فاصله “نزدیک” از پیش تعیین شده و حرکت آن به سمت سنسور شدت صدا زیاد و با دور کردن دست شدت صدا کم می شود .

    ارتباط سریال بین آردوینو و پایتون در baud rate 9600 صورت می گیرد .

    const int trigger1 = 2; //Trigger pin of 1st Sesnor
    const int echo1 = 3; //Echo pin of 1st Sesnor
    const int trigger2 = 4; //Trigger pin of 2nd Sesnor
    const int echo2 = 5;//Echo pin of 2nd Sesnor
    void setup() {
    Serial.begin(9600);
    
    pinMode(trigger1, OUTPUT);
    pinMode(echo1, INPUT);
    pinMode(trigger2, OUTPUT);
    pinMode(echo2, INPUT);
    }

    ما باید هر بار قبل از نتیجه گیری و اجرای یک عملکرد فاصله بین دست و سنسور را اندازه گیری کنیم .بنابراین این کار دفعات متعددی تکرار خواهد شد پس آن را به عنوان یک تابع تعریف می کنیم به نام calculate_distance() که فراخوانی آن فاصله بین دست و سنسور را برمیگرداند .

    /*###Function to calculate distance###*/
    void calculate_distance(int trigger, int echo)
    {
    digitalWrite(trigger, LOW);
    delayMicroseconds(2);
    digitalWrite(trigger, HIGH);
    delayMicroseconds(10);
    digitalWrite(trigger, LOW);
    
    time_taken = pulseIn(echo, HIGH);
    dist= time_taken*0.034/2;
    if (dist>50)
    dist = 50;
    }

    درون حلقهmain فاصله را چک می کنیم و بر اساس آن یکی از عملکردهای ذکر شده در بالا را انجام می دهیم .

    قبل از آن از دو متغییر به نام های distL  و  distR استفاده می کنیم که مقادیر آن ها با فاصله بدست آمده  به روزرسانی می شود .

    calculate_distance(trigger1,echo1);
    distL =dist; //get distance of left sensor
    
    calculate_distance(trigger2,echo2);
    distR =dist; //get distance of right sensor

    از آنجایی که اکنون فاصله هر دو سنسور را داریم می توانیم آن ها را با مقادیر از پیش تعیین شده مقایسه کنیم و به نتیجه گیری بپردازیم .برای مثال اگر هر دو دست در فاصله ۴۰ سانتی متری قرار داشته باشند ویدیو را پخش یا متوقف می کنیم .

    برای این کار کلمه “Play/Pause” از طریق پورت سریال فرستاده می شود .

    if ((distL >40 && distR>40) && (distL <50 && distR<50)) //Detect both hands
    {Serial.println("Play/Pause"); delay (500);}

    اگر تنها دست راست در مقابل سنسور باشد آنگاه ویدیو را یک مرحله fast forward می کنیم و اگر تنها دست چپ در مقابل سنسور باشد یک مرحله rewind . براساس عملکرد “Rewind” یا “Forward” از طریق پورت سریال فرستاده می شود .

    if ((distL >40 && distL<50) && (distR ==50)) //Detect Left Hand
    {Serial.println("Rewind"); delay (500);}
    
    if ((distR >40 && distR<50) && (distL ==50)) //Detect Right Hand
    {Serial.println("Forward"); delay (500);}

    برای کنترل دقیق شدت صدا و زمان فیلم از شیوه ی متفاوتی استفاده می کنیم تا از تحریک ناخواسته جلوگیری شود . برای کنترل شدت صدا باید دستمان را تقریبا در فاصله ۱۵سانتی متری از سنسور قرار دهیم و بعد از آن با دور یا نزدیک کردن دست می توان شدت صدا را کم یا زیاد کرد. براساس دستور کلمه “Vup” یا “Vdown” از طریق پورت سریال فرستاده خواهد شد .

    //Lock Left - Control Mode
    if (distL>=13 && distL<=17)
    {
     delay(100); //Hand Hold Time
     calculate_distance(trigger1,echo1);
     distL =dist;
     if (distL>=13 && distL<=17)
     {
     Serial.println("Left Locked");
     while(distL<=40)
     {
     calculate_distance(trigger1,echo1);
     distL =dist;
     if (distL<10) //Hand pushed in 
     {Serial.println ("Vup"); delay (300);}
     if (distL>20) //Hand pulled out
     {Serial.println ("Vdown"); delay (300);}
     }
     }
    }

    میتوانیم از همین شیوه در سنسور سمت راست  برای جلو و عقب بردن ویدیو نیز استفاده کنیم . که در این حالت اگر دست راستمان ر از سنسور دور کنیم ویدیو rewind و اگر به آن نزدیک کنیم ویدیو fast forward خواهد شد . در این حالت نیز با توجه دستور مورد نظر کلمه “Rewind” یا “Forward” از طریق پورت سریال ارسال خواهد شد .

    شما اکنون می توانید کد کامل کامپیوتر کنترل شونده با اشاره دست را در پایین صفحه مطالعه کنید و آن را در IDEآردوینو کپی کنید.

    برنامه نویسی پایتون :

    برنامه پایتون این پروژه بسیار ساده است .  تنها باید یک ارتباط سریال در baud rate درست با آردوینو برقرار کنیم و سپس چند عمل ساده کیبردی انجام دهیم .اولین مرحله برای پایتون نصب pyautogui است . از پیروی از دستورات زیر اطمینان حاصل کنید زیرا برنامه بدون ماژول pyautogui کار نخواهد کرد .

    نصب ماژول pyautogui برای ویندوز :

    برای نصب pyautogui مراحل زیر را دنبال کنید . نصب این ماژول در سیستم عامل های دیگر نیز تقریبا مشابه می باشد . مطمئن شوید که دستگاه شما به اینترنت متصل است و سپس مراحل زیر را دنبال کنید

    مرحله ۱ :

    Cmd را باز کنید و آدرس را به محلی که در آن پایتون را نصب کرده اید تغییر دهید . در حالت عادی دستور باید به شکل زیر باشد

    cd C:Python27

     مرحله ۲ :

    در دایرکتوری پایتون از دستور  python –m pip install –upgrade استفاده کنید تا pip خود را بروز رسانی کنید .pip ابزاری در پایتون است که به ما در نصب راحت ماژول ها کمک می کند . بعد از بروزرسانی pip به مرحله بعد بروید .

    python –m pip install –upgrade pip

    مرحله ۳ :

    با استفاده از دستور “python –m pip install pyautogui” ماژول pyautogui را نصب کنید . اگر نصب موفقیت آمیز باشد پیغامی مانند زیر روی صفحه نمایش داده می شود

    python –m pip install –upgrade pip

    کنترل کامپیوتر با حرکات دست با کمک آردوینو و ماژول اولتراسونیک

    اکنون که ماژول های pyautogui و pyserial روی سیستم نصب هستند می توانیم به سراغ برنامه پایتون برویم . کد کامل پایتون در انتهای مطلب آورده شده است و در زیر توضیحات قسمت به قسمت کد ارائه شده است .

    ابتدا ۳ ماژول موردنیاز برای این پروژه را import میکنیم که pyautogui , serial python , time هستند .

    import serial #Serial imported for Serial communication
    import time #Required to use delay functions
    import pyautogui

    سپس ارتباط با آردوینو را از طریق پورت COM برقرار می کنیم . در کامپیوتر من آردوینو به COM 18 متصل است . با استفاده از Device Manager پورت COM متصل به آردوینو خود را پیدا کنید و با توجه به آن خط آخر کد زیر را اصلاح کنید .

    ArduinoSerial = serial.Serial('com18',9600) #Create Serial port object called arduinoSerialData
    time.sleep(2) #wait for 2 seconds for the communication to get established

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

    while 1:
     incoming = str (ArduinoSerial.readline()) #read the serial data and print it as line
     print incoming
     
     if 'Play/Pause' in incoming:
     pyautogui.typewrite(['space'], 0.2)
    
    if 'Rewind' in incoming:
     pyautogui.hotkey('ctrl', 'left')
    
    if 'Forward' in incoming:
     pyautogui.hotkey('ctrl', 'right')
    
    if 'Vup' in incoming:
     pyautogui.hotkey('ctrl', 'down')
     
     if 'Vdown' in incoming:
     pyautogui.hotkey('ctrl', 'up')

    همان طور که مشاهده می کنید برای فشار دادن یک دکمه به طور مجازی و از داخل برنامه از دستور “pyautogui.typewrite([‘space’], ۰٫۲)” استفاده می کنیم که برای مثال دکمه فاصله را به مدت ۰٫۲ ثانیه فشار می دهد . اگر شما به میانبر هایی(hot key) مانند  ctrl+S نیاز دارید می توانید از دستور pyautogui.hotkey(‘ctrl’, ‘s’)” استفاده کنید .

    من از این ترکیب های دکمه ها استفاده کرده ام به این دلیلد که در VLC کار میکنند . شما می توانید آن ها را به هرچیزی که دوست دارید تغییر دهید و هر چیزی را در کامپیوتر خود کنترل کنید .

    کنترل کامپیوتر با حرکات دست در عمل :

    با توجه به توضیحات بالا اتصالات مدار را برقرار کنید و کد آردوینو را روی بورد آپلود نمایید .سپس از اسکریپت پایتون زیر استفاده کنید و برنامه را روی لپ تاپ خود باز کنید .

    اکنون می توانید هر ویدیویی را با استفاده از VLC پخش کنید ومانند ویدیوی زیر با استفاده از دست خود آن را کنترل کنید .

    کنترل کامپیوتر با حرکات دست با آردوینو و ماژول اولتراسونیک

    امیدوارم که این پروژه را به خوبی متوجه شده باشید و از کار با آن لذت برده باشید . این تنها یک پیش نمایش است و شما میتوانید با استفاده از خلاقیت خود کار های جالب تری را با استفاده از این پروژه انجام دهید .

    خوشحال میشم نظراتتون رو در مورد این پروژه و مفید بودن آن بدانیم .

    سورس کد کنترل کامپیوتر با حرکات دست با آردوینو :

    Arduino Code:
    
    /*
     * Program for gesture control VLC Player
     * Controlled uisng Python
     * Code by B.Aswinth Raj
     * Dated: 11-10-2017
     * Website: www.circuitdigest.com
     * translator site https:melec.ir
     */
    
    const int trigger1 = 2; //Trigger pin of 1st Sesnor
    const int echo1 = 3; //Echo pin of 1st Sesnor
    const int trigger2 = 4; //Trigger pin of 2nd Sesnor
    const int echo2 = 5;//Echo pin of 2nd Sesnor
    
    long time_taken;
    int dist,distL,distR;
    
    void setup() {
    Serial.begin(9600); 
     
    pinMode(trigger1, OUTPUT); 
    pinMode(echo1, INPUT); 
    pinMode(trigger2, OUTPUT); 
    pinMode(echo2, INPUT); 
    }
    
    /*###Function to calculate distance###*/
    void calculate_distance(int trigger, int echo)
    {
    digitalWrite(trigger, LOW);
    delayMicroseconds(2);
    digitalWrite(trigger, HIGH);
    delayMicroseconds(10);
    digitalWrite(trigger, LOW);
    
    time_taken = pulseIn(echo, HIGH);
    dist= time_taken*0.034/2;
    if (dist>50)
    dist = 50;
    }
    
    void loop() { //infinite loopy
    calculate_distance(trigger1,echo1);
    distL =dist; //get distance of left sensor
    
    calculate_distance(trigger2,echo2);
    distR =dist; //get distance of right sensor
    
    //Uncomment for debudding
    /*Serial.print("L=");
    Serial.println(distL);
    Serial.print("R=");
    Serial.println(distR);
    */
    
    //Pause Modes -Hold
    if ((distL >40 && distR>40) && (distL <50 && distR<50)) //Detect both hands
    {Serial.println("Play/Pause"); delay (500);}
    
    calculate_distance(trigger1,echo1);
    distL =dist;
    
    calculate_distance(trigger2,echo2);
    distR =dist;
    
    //Control Modes
    //Lock Left - Control Mode
    if (distL>=13 && distL<=17)
    {
     delay(100); //Hand Hold Time
     calculate_distance(trigger1,echo1);
     distL =dist;
     if (distL>=13 && distL<=17)
     {
     Serial.println("Left Locked");
     while(distL<=40)
     {
     calculate_distance(trigger1,echo1);
     distL =dist;
     if (distL<10) //Hand pushed in 
     {Serial.println ("Vup"); delay (300);}
     if (distL>20) //Hand pulled out
     {Serial.println ("Vdown"); delay (300);}
     }
     }
    }
    
    //Lock Right - Control Mode
    if (distR>=13 && distR<=17)
    {
     delay(100); //Hand Hold Time
     calculate_distance(trigger2,echo2);
     distR =dist;
     if (distR>=13 && distR<=17)
     {
     Serial.println("Right Locked");
     while(distR<=40)
     {
     calculate_distance(trigger2,echo2);
     distR =dist;
     if (distR<10) //Right hand pushed in
     {Serial.println ("Rewind"); delay (300);}
     if (distR>20) //Right hand pulled out
     {Serial.println ("Forward"); delay (300);}
     }
    }
    }
    
    delay(200);
    }
    
    Python Code:
    
    import serial #Serial imported for Serial communication
    import time #Required to use delay functions
    import pyautogui
    
    ArduinoSerial = serial.Serial('com18',9600) #Create Serial port object called arduinoSerialData
    time.sleep(2) #wait for 2 seconds for the communication to get established
    
    while 1:
     incoming = str (ArduinoSerial.readline()) #read the serial data and print it as line
     print incoming
     
     if 'Play/Pause' in incoming:
     pyautogui.typewrite(['space'], 0.2)
    
    if 'Rewind' in incoming:
     pyautogui.hotkey('ctrl', 'left')
    
    if 'Forward' in incoming:
     pyautogui.hotkey('ctrl', 'right')
    
    if 'Vup' in incoming:
     pyautogui.hotkey('ctrl', 'down')
    
    
    if 'Vdown' in incoming:
     pyautogui.hotkey('ctrl', 'up')
    
    incoming = "";

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

    منبع : circuitdigest

    راکت مدیر عامل آمازون با قابلیت استفاده‌ی مجددReviewed by رامتین اردشیری فر on Nov 27Rating: 4.5

    new shepard launch

    جف بزوس (مدیر عامل فروشگاه اینترنتی آمازون و مالک آژانس فضایی بلو اوریجین)  سرانجام توانست اولین راکت جهان را با قابلیت استفاده مجدد پس از پرتاب تا ارتفاع صد کیلومتری زمین بسازد و از ایلان ماسک، مدیر عامل شرکت فضایی خصوصی Space X پیشی بگیرد.

    Blue Origin یک شرکت فضایی خصوصی متعلق به جف بزوس، مدیر عامل آمازون، است. شرکت بلو اوریجین سرمایه خود را از بخشی از ثروت  جف بزوس تأمین می‌کند.  این شرکت از ایلان ماسک و شرکت Space X برای معرفی راکت با قابلیت استفاده‌ی مجدد سبقت گرفته و به تازگی وسیله‌ی نقلیه‌ی فضایی New Shepard (را که متشکل از راکت BE-3 و کپسولی برای حمل سرنشینان است به ارتفاع ۱۰۰.۵ کیلومتری که فضای زیر جو است، پرتاب کرده است. این موشک به افتخار «آلن شپرد»، این نام را به خود گرفته است، او نخستین آمریکایی بود که در سال ۱۹۶۱ توانست به فضا برود، البته او صرفا به یک ارتفاع زیرمداری صعود کرد.

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

    البته ایلان ماسک و شرکت او (Space X) فصد ساخت راکتی را دارند که بتواند فضاپیما ها را به ارتفاعی بیش از صد کیلومتری زمین ببرد (از جو زمین خارج شود) و دوباره فرود آید. هر چند راکت شرکت Space X (فالکون ۹) در ارتفاع ۸۰ کیلومتری از فضاپیما جدا می‌شود، اما به دلیل سرعت بالای ۱۰ ماخی آن هنگام جدا شدن نسبت به سرعت ۳.۷ ماخی راکت نیوشپرد باعث می‌شود تا فالکون ۹ به ارتفاع ۱۴۵ کیلومتری زمین صعود کند و از آن ارتفاع بر روی زمین فرود آید.  به همین دلیل فالکون ۹ تا به حال موفق به فرود سالم بر روی زمین نشده است. هرچند بیش از این در سال ۲۰۱۳ شرکت Space X موفق به ارسال یک راکت تا ارتفاع ۷۴۴ متری زمین به نام Grasshopper شده بود که به سلامت به روی زمین فرود آمده بود.

    پیشران فضاپیمای New Shepard طوری طراحی شده است تا بتواند بصورت عمودی فرود بیاید. یعنی می‌توان بارها از آن استفاده‌ی دوباره کرد. در پرتاب اخیر، واحد پیشران تنها ۱.۴ متر دورتر از نقطه‌ی هدف فرود آمد. کپسول حامل انسان‌ها هم در ارتفاع بالا از پیشران جدا می‌شود و سپس با استفاده از تعدادی چتر، به سمت زمین فرود می‌آید. این کپسول قابلیت استفاده‌ی مجدد را نیز دارد. مسافران درون کپسول می‌توانند به مدت ۴ دقیقه بی‌وزنی را تجربه کنند.

    بروزرسانی:

    در تاریخ ۳۰ آذر ۱۳۹۴ (۲۱.۱۲.۲۰۱۵ میلادی) اسپیس اکس نیز پس از پرتاب موشک فالکون ۹ به فضا، موفق به فرود آوردن آن بر روی زمین شد.

    در تاریخ ۲۰ فروردین ۱۳۹۵ (۸.۴.۲۰۱۶ میلادی) موشک فالکون ۹ اسپیس اکس با موفقیت روی سکوی شناور (نوع خاصی کشتی بدون سرنشین خودکار) فرود آمد.

© تمامی حقوق مطالب برای وبسایت آلفا باکس محفوظ است و هرگونه کپی برداری بدون ذکر منبع ممنوع و شرعا حرام می باشد.
قدرت گرفته از : بک لینکس