با تشکر از: http://jeonlab.wordpress.com/
از آنجایی که مقالهای را در وبلاگ todbot خواندهام ، چند Wii Nunchacks از ebay خریدم. یادم نیست چقدر برای آنها پرداخت کردم، اما بسیار ارزان تر از خرید تخته های شتاب سنج بود. با کتابخانه خواندن دادههای nunchuck که توسط todbot به اشتراک گذاشته شد (با تشکر!)، من به راحتی میتوانم دادههای شتابسنج Wii Nunchuck و همچنین وضعیت جوی استیک و دو دکمه را بخوانم.
من در مورد چگونگی استفاده از آن مفید فکر کرده ام و با دو سروو تست کرده ام ، اما فرصتی برای ادامه پروژه ای که مدت طولانی روی میز من است را نداشتم.
اخیراً وقتی در خانه یک قاب عکس را به دیوار آویزان می کنم، ایده ای به ذهنم می رسد که از Wii Nunchuck مفیدتر استفاده کنم. این سطح الکترونیکی مانند سطح حبابی (یا سطح روح ) با استفاده از شتابسنج برد سازگار با Wii Nunchuck و Arduino، JeonLab mini v1.3 است. چرا JeonLab mini؟ زیرا 1) به اندازه کافی کوچک است که در یک کیس کوچک ادغام شود. 2) پس از بارگیری برنامه، رابط FTDI مورد نیاز نیست. و 3) از آنجایی که قرار است از یک منبع تغذیه کوچک استفاده کنم، به مدار رگولاتور 5 ولت نیازی ندارم. این یک آردوینو مینیمال است، بنابراین می توانید به راحتی آن را روی یک قطعه کوچک از نمونه اولیه بورد بسازید.
کاری که این تراز آردوینو انجام می دهد این است که با نمایش LED نشان دهد که سطح یا لبه (مثلاً قاب عکس یا میز) تراز است یا خیر. در صورت تراز بودن، LED مرکزی قرمز روشن می شود، در غیر این صورت بسته به سمتی که کج شده باشد، LED چپ یا راست روشن می شود. شبیه به سطح حباب کار می کند، بنابراین اگر به سمت چپ کج شود LED سبز سمت راست روشن می شود. من این روش را دوست دارم، اما اگر دوست ندارید، میتوانید برنامه را تغییر دهید و آن را از طریق برد FTDI بارگذاری کنید که میتواند در گوشه سمت راست بالای مینی برد JeonLab همانطور که در تصویر نشان داده شده است وصل شود.
در مراحل بعدی، کل نمودار مدار و کدهای آردوینو را برای این پروژه پیدا خواهید کرد.
مرحله 1: نمودار مدار
برای مشاهده در اندازه کامل، روی دکمه "i" در گوشه سمت چپ بالای نمودار کلیک کنید.
مدار بسیار ساده است. یک برد حداقلی سازگار با آردوینو، JeonLab mini v1.3 در سمت چپ نمودار وجود دارد. همانطور که می بینید، اگر یک تراشه ATmega328P با بوت لودر آردوینو دارید، یک تشدید کننده سرامیکی 16 مگاهرتزی و چند مقاومت و خازن می توانند جایگزین آن شوند. هیچ رابط FTDI تعبیه نشده است، بنابراین برای بارگذاری برنامه به یک برد خارجی FTDI یا کابل FTDI-USB نیاز دارید. اما این چیز بزرگی نیست و برای کاهش کل اندازه خوب است.
برد شتاب سنج از یک Wii Nunchuck شکسته است و می تواند از طریق رابط I2C ارتباط برقرار کند: 3.3 ولت، GND، پین داده (SDA) به پایه ورودی آنالوگ آردوینو 4، و پایه ساعت (SCL) به پایه ورودی آنالوگ آردوینو 5.
پین های دیجیتال 5 تا 9 برای روشن کردن LED ها استفاده می شود تا نشان دهد که در کدام جهت کج شده است. پین دیجیتال 10 معمولاً از طریق یک مقاومت 10k پایین کشیده می شود و با فشار دادن سوئیچ کالیبراسیون بالا می رود و پین را به V+ وصل می کند.
پس از چند آزمایش، تصمیم گرفتم از یک باتری با اندازه 12 ولت A23 و یک رگولاتور 3.3 ولت استفاده کنم تا 3.3 ولت را برای شتاب سنج و آردوینو تامین کنم.