بچههای من میخواستند برای بازی Minecraft یک ماوس کنترلشده با سر داشته باشند - آنها میخواستند سر خود را حرکت دهند و میدان دید حرکت کند. من به این نتیجه رسیدم که این چالشی است که نمی توانم در برابر آن مقاومت کنم، بنابراین تصمیم گرفتم با استفاده از یک آردوینو و یک تراشه ژیروسکوپ یک ماوس کنترل شده با حرکت بسازم.
اجزاء
A-Star 32U4 Micro – یک کلون کوچک آردوینو لئوناردو
برد برک آوت LSM9DS0 – یک ژیروسکوپ، شتاب سنج و مغناطیس سنج ترکیبی
مبدل سطح منطقی 3.3 ولت به 5 ولت
مقاومت 10k
سوئیچ دکمه فشاری
تخته نواری
من نمونهسازی را با Arduino Uno شروع کردم، اما این قابلیت را ندارد که همزمان با قابلیت بارگذاری سیستمافزار از طریق USB، یک کنترلکننده HID باشد. من سعی کردم حسگرها را از طریق پورت سریال بخوانم، اما این شبیه به یک ماوس واقعی نیست، زیرا شما همیشه به یک نرم افزار مشتری نیاز دارید که در حال اجرا باشد، که نه ظریف است و نه همیشه راحت است. با این حال، آردوینو لئوناردو این توانایی را دارد که به عنوان یک ماوس یا صفحه کلید عمل کند، بنابراین من تصمیم گرفتم از یکی از آنها استفاده کنم. در واقع، چیزی که من تصمیم گرفتم از آن استفاده کنم، شبیه سازی آن بود. یک برد کلون فوقالعاده به نام A-Star 32U4 Micro وجود دارد که کوچک است – فقط 1 اینچ در 0.6 اینچ، و نیمی از قیمت آن است، بنابراین یک برنده برای این پروژه است.
برای ژیروسکوپ، تراشه LSM9DS0 را انتخاب کردم که ترکیبی از ژیروسکوپ، شتاب سنج و مغناطیس سنج است و به من این امکان را می دهد که در تشخیص حرکت کمی پیچیده تر باشم. من امکاناتی برای ساخت بردهای مدار خودم یا تراشههای نصب سطحی ندارم، بنابراین آن را روی برد برد خریدم.
LSM9DS0 با خروجی های 3.3 ولت کار می کند، اما پردازنده به ورودی های 5 ولت نیاز دارد، بنابراین یک مبدل سطح منطقی برای خطوط SCL و SDA نیز مورد نیاز است.
در نهایت، ایده خوبی است که بتوانید عملکرد ماوس دستگاه را بدون جدا کردن آن از برق خاموش و روشن کنید – به این ترتیب اگر اشتباهی مرتکب شدید، میتوانید بدون اینکه ویژگی ماوس فعال شود، دوباره آن را برنامهریزی کنید.