فهرست مطالب:

Geek Spinner: 14 مرحله (همراه با تصاویر)
Geek Spinner: 14 مرحله (همراه با تصاویر)

تصویری: Geek Spinner: 14 مرحله (همراه با تصاویر)

تصویری: Geek Spinner: 14 مرحله (همراه با تصاویر)
تصویری: Ответы на вопросы///Чистка Астаны 1 2024, جولای
Anonim
Image
Image
گیک اسپینر
گیک اسپینر
گیک اسپینر
گیک اسپینر
گیک اسپینر
گیک اسپینر

اسپیدرهای فیجت سرگرم کننده هستند و این روزها می توانید آن را در هر پیشخوان خروجی تنها با چند دلار پیدا کنید ، اما اگر بتوانید دستگاه خود را بسازید چطور؟ و LED داشت؟ و آیا می توانید آن را طوری برنامه ریزی کنید که هر چیزی را که می خواهید بیان کند یا نشان دهد؟ اگر جالب به نظر می رسد ، این پروژه برای شما است.

من همیشه علاقه مند بودم که از LED های چشمک زن استفاده کنم تا بچه ها به برنامه نویسی علاقه مند شوند. ساده ترین پروژه با میکروکنترلر آردوینو روشن و خاموش کردن یک LED است. سپس آنها را می بینید که چقدر سریع می تواند چشمک بزند قبل از اینکه به طور مداوم روشن شود (حدود 12 میلی ثانیه). سپس LED را به جلو و عقب تکان می دهید و می توانید دوباره چشمک بزنید! این پدیده "دوام بینایی" (POV) نامیده می شود و نحوه عملکرد این پروژه است. این می تواند به بحث در مورد نحوه عملکرد چشم و سرعت فوق العاده رایانه ها منجر شود.

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

مرحله 1: قطعات ، ابزارها و لوازم را جمع آوری کنید

Image
Image
قطعات ، ابزارها و لوازم را جمع آوری کنید
قطعات ، ابزارها و لوازم را جمع آوری کنید

همیشه ناامید کننده است که در نیمه راه کار را طی کنید و متوجه شوید چیزی را از دست داده اید. این قسمت هایی است که من سعی کرده ام و به خوبی کار می کنم. با مسئولیت خود جایگزین کنید:

بیل مواد =================

  • 1 ea ، PCB بنفش ، با محبت در ایالات متحده توسط OSH Park تولید شده است
  • 1 ea ، Attiny 84 ، Atmel ATTINY84A-PU ،
  • 1 ea، Tactile switch، TE 1825910-6،
  • 1 ea، Slide Switch SPDT Through Hole ، C&K JS202011AQN ،
  • 1 ea ، نگهدارنده باتری ، Linx BAT-HLD-001-THM ،
  • 8 ea ، LED 3 میلی متری قرمز 160 مکد ، Wurth 151031SS04000 ،
  • 8 ea ، 330 اهم 1/8W ، Stackpole CF18JT330R ،
  • 1 ea ، درپوش 0.1 uF ، KEMET C320C104M5R5TA ،
  • 1 ea ، سوئیچ مغناطیسی ، Melexis MLX92231LUA-AAA-020-SP ،
  • 1 ea ، 608 Skateboard Bearing ،
  • 1 ea ، آهنربای کمیاب کمیاب 2 میلی متر در 1 میلی متر ،
  • 2 کلاه چاپ سه بعدی (فایل STL پیوست شده است).
  • 1 ea ، باتری CR2032 ، Panasonic BSP یا معادل آن ،

ابزارها و ملزومات: برای کارگاه هایم ، از SparkFun's Beginner's ToolKit استفاده می کنم که همه چیز مورد نیاز شما را به جز موچین دارد:

  • آهن لحیم کاری.
  • SolderWire
  • پلیرهای برش دار (من 5 دلار Hakko CHP170 را دوست دارم!)
  • بافندگی لحیم کاری
  • چسب فوق العاده

برنامه نویسی Attiny (مرحله 4 ، در صورت خرید این دستگاه به عنوان یک کیت لازم نیست):

  • آردوینو (لطفاً از کلون های چینی ارزان خودداری کنید و از تولیدکنندگان منبع باز ایالات متحده خود پشتیبانی کنید).

    • تخته قرمز SparkFun
    • مترو آدافروت
    • آردوینو UNO
  • سپر برنامه نویسی AVR
  • آداپتور Pogo (در صورت برنامه نویسی با تراشه نصب شده).
  • USB A-B استاندارد برای Uno ، USB Mini برای Redboard یا USB Micro برای مترو.

یک کیت برای این پروژه در Tindie.com (به جز باتری) موجود است. خرید کیت در زمان و هزینه سفارش از چندین فروشنده مختلف صرفه جویی می کند و از حداقل حق بیمه سفارش PCB جلوگیری می کند. همچنین ، برنامه نویسی Attiny بی اهمیت نیست و اگر این کیت را خریداری کنید ، از قبل برنامه ریزی شده است. شما همچنین به من در توسعه و اشتراک پروژه های دیگر در کارگاه های آموزشی من کمک خواهید کرد!

مرحله 2: مقاومت ضروری است

مقاومت ضروری است
مقاومت ضروری است
مقاومت ضروری است
مقاومت ضروری است
مقاومت ضروری است
مقاومت ضروری است

ما فرض می کنیم که شما تجربه تولید کیت دارید. اگر برای لحیم کاری به کمک احتیاج دارید ، به www.sparkfun.com/tutorials/213 سر بزنید تا برس بزنید یا نظاره گر Geek Girl در https://www.youtube.com/embed/P5L4Gl6Q4Xo باشید. من همچنین یک کیت مناسب برای مبتدیان در https://www.tindie.com/products/3447/ دارم.

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

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

مرحله 3: کد؟

کد؟
کد؟
کد؟
کد؟
کد؟
کد؟
کد؟
کد؟

اگر کیت من را خریداری کرده اید ، تراشه از قبل برنامه ریزی شده است و می تواند به مرحله بعدی بروید.

بله ، این پروژه نیاز به کد دارد. و اگر توجه می کردید ، در مرحله 1 به شما گفتم برنامه نویسی Attiny بی اهمیت نیست. من از آردوینو استفاده می کنم ، محیط برنامه نویسی ، برنامه نویس AVR من ، و یک تکه تکه pogo pin است.

تراشه را می توان قبل از لحیم کاری در محل (عکس 2) یا پس از لحیم شدن در محل با استفاده از سربرگ ISP در پایین PCB برنامه ریزی کرد (عکس 3). در هر صورت ، برنامه نویسی به شرح زیر است:

  • محیط برنامه نویسی آردوینو را بارگیری کنید.
  • پشتیبانی از Attiny 85 را از هر کدام نصب کنید:

    • https://highlowtech.org/؟p=1695 (Arduino Tiny)
    • https://github.com/SpenceKonde/ATTinyCore (Attiny Core)
  • بارگذاری "طرح آردوینو به عنوان ISP": [فایل] -> [مثالها] -> [آردوینو به عنوان ISP].
  • محافظ برنامه نویسی AVR را وصل کرده و کابل روبان را در موقعیت Attiny84 قرار دهید
  • در صورت استفاده از آداپتور Pogo ، آن را روی سربرگ ISP روی برد قرار دهید. پدهای مثبت و منفی علامت گذاری شده اند تا بتوانید سرصفحه را به درستی جهت دهید.
  • در صورت استفاده از تراشه ، آن را با پین یک به طرف اتصال USB وارد کنید.
  • تراشه صحیح را انتخاب کنید:

    • Arduino Tiny: "Attiny 84 @ 8 Mhz"
    • Attiny Core: "Attiny 24/44/84"

      • تراشه "Attiny 84"
      • 8 مگاهرتز (داخلی)
      • پین نقشه برداری "در جهت عقربه های ساعت"
  • برنامه نویس ، [Tools] -> [Programmer] -> [Arduino as ISP] را انتخاب کنید
  • تنظیم فیوزهای برنامه نویسی ، [Tools] -> [Burn Bootloader]
  • طرح پیوست شده را بارگذاری کنید ، [فایل] -> [بارگذاری با استفاده از برنامه نویس]

بزرگترین منبع خطاهایی که من دریافت می کنم شامل تراز نکردن صحیح پین ها است.

مرحله 4: آن را خرد کنید

آن را تراشه کنید
آن را تراشه کنید
آن را تراشه کنید
آن را تراشه کنید
آن را تراشه کنید
آن را تراشه کنید
آن را تراشه کنید
آن را تراشه کنید

اکنون که تراشه شما دارای کد روی آن است ، می توانید آن را نصب کنید. جهت تراشه DIP ("بسته داخلی دوگانه") معمولاً یا با یک سوراخ مجاور پین یک ، یا یک دیوات در انتهای تراشه حاوی پین یک نشان داده می شود ، همانطور که در اینجا مورد است.

  • با فشار دادن آنها روی سطح صاف ، سیم ها را تا 90 درجه خم کنید (عکس 1 و 2).
  • تراشه را با علامت روی PCB تراز کرده و تراشه را وارد کنید (عکس 3).
  • یک پین را در طرف مقابل بچسبانید و بررسی کنید که هر دو تراشه در برابر PCB صاف باشد و جهت درست باشد. بعد از این درست کردنش واقعا سخت می شود. در این مورد به من اعتماد کنید
  • پس از اطمینان از صحیح بودن آن ، سنجاق های باقی مانده را لحیم کنید و سپس آنها را صاف کنید.

مرحله 5: سوئیچ و خازن

سوئیچ و خازن
سوئیچ و خازن
سوئیچ و خازن
سوئیچ و خازن

دکمه فشار در کنار IC و خازن در طرف دیگر قرار می گیرد.

  • دکمه فشاری را در جای خود فشار دهید (مطمئن شوید که در جهت درست قرار دارد).
  • آن را در جای خود لحیم کنید.
  • سیم ها را از پشت جدا کنید.

خازن جهت گیری ندارد ، اما اگر خط نوشتاری را کنار بگذارید ، دوستان شما می دانند که از چه ارزشی استفاده کرده اید.

مرحله 6: سوئیچ و نگهدارنده باتری

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

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

نگهدارنده باتری دارای علامت گذاری است تا جهت را نشان دهد ، اما واقعاً مهم نیست. با این حال ، نسبت به سیمهای معمولی به گرمای کمی بیشتری نیاز دارد ، و شما باید مطمئن شوید که صاف نشسته است تا باتری را در موقعیت خود نگه دارد (تصویر 4).

مرحله 7: LED ها

LED ها
LED ها
LED ها
LED ها
LED ها
LED ها
LED ها
LED ها

پروژه مناسبی وجود ندارد که حداقل یک LED را شامل نشود. این هشت دارد!

سرب مثبت مثبت است (آند). روی صفحه ابریشم یک علامت "+" وجود دارد و پد آن مربع است. اگر هر هشت کار را یکجا انجام می دهید ، آنها را بالا نگه دارید تا مطمئن شوید همه جهت گیری ها درست است.

  • روی هر LED یک سرب را لحیم کنید.
  • جهت گیری و صاف بودن آنها را بررسی کنید (تصویر 3).

    اگر اینطور نیست ، با انگشت شست خود را روی قاب فشار دهید و سرب را دوباره گرم کنید تا در موقعیت خود قرار گیرد (تصویر 4)

  • بقیه را لحیم کنید
  • سرنخ ها را ببندید.

مرحله 8: بررسی کنید

Image
Image
زمان چرخش
زمان چرخش

در این مرحله ، ما هنوز می توانیم LED ها را بررسی کرده و خاموش کنیم:

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

عیب یابی:

  • در صورت عدم وجود چراغ LED:

    • مطمئن شوید که باتری شما خوب است و جهت گیری درستی دارد.
    • آیا تراشه خود را برنامه ریزی کردید؟ آیا جهت گیری درستی دارد؟ داره گرم میشه؟
    • آیا LED ها به درستی جهت گیری شده اند؟ از سلول سکه در سراسر اتصالات لحیم کاری شده برای آزمایش آنها استفاده می کنید؟
  • اگر سوئیچ باعث چشمک زدن LED ها نمی شود:

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

مرحله 9: زمان چرخش

زمان چرخش
زمان چرخش
زمان چرخش
زمان چرخش
زمان چرخش
زمان چرخش

یاتاقان با لحیم کردن مورد به پد بزرگ در جای خود ثابت می شود. این کار به صبر و گرمای زیادی نیاز دارد:

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

مرحله 10: آیا این یک انقلاب است؟

Image
Image
آیا این یک انقلاب است؟
آیا این یک انقلاب است؟
آیا این یک انقلاب است؟
آیا این یک انقلاب است؟

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

  • نوشته روی صورت دستگاه با یاتاقان مطابقت با صفحه ابریشم روبرو است (عکس 1).
  • ارتفاع را دقیقاً بالای بلبرینگ (جایی که آهنربا در درپوش قرار دارد) تنظیم کنید.
  • یک سرب را لحیم کنید
  • قد و طعم غذا را بررسی کنید.
  • سرنخ های باقی مانده را لحیم کنید.
  • سرنخ ها را ببندید.

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

مرحله 11: قانون متعادل سازی

قانون متعادل سازی
قانون متعادل سازی
قانون متعادل سازی
قانون متعادل سازی

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

مرحله 12: شما عملیاتی هستید

Image
Image
اما صبر کنید، بیشتر وجود دارد. به به
اما صبر کنید، بیشتر وجود دارد. به به

با آهن ربا و سنسور خود ، می توانید هیبت فوق العاده Geek Spinner خود را بررسی کنید. حالت چرخنده با LED نشان داده می شود که هنگام روشن شدن یا بعد از فشار یک دکمه (D0 - D7) روشن می شود. با فشردن دکمه حالت تغییر می کند (فیلم را ببینید).

حالت های int = 8 ؛ // تعداد حالت های موجود

// 0 -> متن "سلام جهان!" // 1 -> RPM // 2 -> زمان در ثانیه // 3 -> تعداد چرخش // 4 -> تعداد چرخش (مجموع) // 5 -> الگوی "پد لیلی" // 6 -> شکل 1 (قلب) // 7 -> شکل 2 (لبخند)

مرحله 13: اما صبر کنید ، چیزهای بیشتری وجود دارد. به به

اما صبر کنید، بیشتر وجود دارد. به به
اما صبر کنید، بیشتر وجود دارد. به به
اما صبر کنید، بیشتر وجود دارد. به به
اما صبر کنید، بیشتر وجود دارد. به به
اما صبر کنید، بیشتر وجود دارد. به به
اما صبر کنید، بیشتر وجود دارد. به به

الگوهای "قلب" و "لبخند" با استفاده از نمودار قطبی ایجاد شده است تا نشان دهد هشت قسمت در هر 5 درجه چرخش چگونه به نظر می رسد.

با دست:

  • تصویر با وضوح کامل را بارگیری و چاپ کنید (تصویر 1).
  • بلوک ها را برای ایجاد تصویر خود پر کنید (تصویر 2).
  • در امتداد شعاعی ، با شروع 0 ، بایت را با استفاده از سیاه = 1 ، سفید = 0 محاسبه کنید.

    شعاع اول قلب 1 ، 0 ، 0 ، 0 ، 0 ، 0 ، 0 ، 0 است ، بنابراین بایت = 0b100000000 ؛

  • تا پایان کار ادامه دهید (نکته ، اگر تصویر شما متقارن است ، فقط باید نیمی از آن را انجام دهید).
  • بایت های خود را در بخش "textAndShapes.h" طرح زیر "shape_1 " یا "shape_2 " بچسبانید.

استفاده از پایتون:

  • پایتون را نصب کنید.
  • کتابخانه Image Python را نصب کنید.
  • اسکریپت پیوست "readGraph.py" را بارگیری کنید.
  • بارگیری تصویر با وضوح کامل (تصویر 1).
  • تصویر را در ویرایشگر مورد علاقه خود (GIMP یا MS Paint) باز کنید.
  • از دستور "Fill" با رنگ سیاه انتخاب شده برای پر کردن بخشهایی که می خواهید روشن شوند استفاده کنید (تصویر 2).
  • تصویر را در همان فهرست اسکریپت "readGraph.py" ذخیره کرده و نام فایل را در اسکریپت تغییر دهید تا با آن مطابقت داشته باشد:

im = Image.open ('heart.png')

اسکریپت را اجرا کرده و خروجی را در بخش "textAndShapes.h" طرح زیر "shape_1 " یا "shape_2 " بچسبانید

در هر صورت ، می توانید خلقت خود (تصویر و کد) را در نظرات به اشتراک بگذارید!

مرحله 14: اعتبارات و اندیشه های نهایی

اعتبارات و اندیشه های نهایی
اعتبارات و اندیشه های نهایی

مطمئناً من به تنهایی به این موضوع فکر نکرده ام. نه با یک شوت از راه دور.

  • اولین تجربه عملی من با POV با پروژه ای از نیک سایر به نام POV Twirlie بود: https://www.tindie.com/products/nsayer/pov-twirlie/. (من همچنین از آداپتور pogo استفاده می کنم).
  • فکر "LED + Fidget spinner = POV" بعد از دیدن دستورالعمل های Techydiy در مغز من ظاهر شد
  • هر زمان که ایده فوق العاده ای دارید ، کسی قبلاً آن را انجام داده است: https://www.instructables.com/id/POV-Arduino-Fidget-Spinner/. لحیم کاری روی سطح کاری است که می توانم انجام دهم ، اما واقعاً برای مبتدیان مناسب نیست. کد او نیز کمی بالاتر از من بود ، اما من از ایده های او در مورد نمایش RPM و شمارش استفاده کردم.
  • من قادر به درک و استفاده از قطعات کد POV ساعت Reger-men برای نمایش متن بودم:

هیچ پروژه ای هرگز کامل یا کامل نیست. در اینجا برخی از افکار من در آینده وجود دارد:

  • تراز: برگه های داده به ندرت اطلاعاتی در مورد وزن اجزا دارند ، بنابراین حتی نمی توان بدون ایجاد آن حتی یک حدس آگاهانه در مورد ترازو نیز انجام داد. بدیهی است که باتری سنگین ترین قطعه است. من سوراخ هایی را در هر انتهای آن اضافه کردم تا بتوانم وزن را در صورت نیاز برای متعادل کردن آن اضافه کنم.
  • در جهت عقربه های ساعت؟ اگر متوجه شده اید ، متن فقط در صورتی صحیح نمایش داده می شود که در جهت ساعت بچرخید. چرخاندن جهت دیگر یک تصویر آینه ایجاد می کند. افزودن سنسور یا آهنربا هال دوم به شما امکان می دهد جهت چرخش را بدست آورید (پروژه شان این کار را انجام داد).
  • رنگ؟ استفاده از LED های قابل برنامه ریزی RGB به شما امکان می دهد رنگ ها را انجام دهید. هرچند معمولاً روی سطح نصب می شوند.

توصیه شده: