فهرست مطالب:

دماسنج RGB با استفاده از PICO: 6 مرحله
دماسنج RGB با استفاده از PICO: 6 مرحله

تصویری: دماسنج RGB با استفاده از PICO: 6 مرحله

تصویری: دماسنج RGB با استفاده از PICO: 6 مرحله
تصویری: آموزش کار با برد Raspbbery pi pico 2024, نوامبر
Anonim
Image
Image

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

مرحله 1: اجزاء

تغذیه نوار RGB با ترانزیستور و منبع تغذیه
تغذیه نوار RGB با ترانزیستور و منبع تغذیه
  • PICO ، موجود در mellbell.cc (17 دلار)
  • نوار LED 1 متری RGB
  • 3 ترانزیستور TIP122 دارلینگتون ، بسته 10 عددی در ebay (3.31 دلار)
  • 1 درایور PCA9685 16 کاناله 12 بیتی PWM ، موجود در ebay (2.12 دلار)
  • منبع تغذیه 12 ولت
  • 3 مقاومت 1k اهم ، یک بسته 100 در ebay (0.99 دلار)
  • تخته نان ، موجود در ebay (2.30 دلار)
  • نر - سیمهای جهنده زن ، بسته نرم افزاری 40 در ebay (0.95 دلار)

مرحله 2: تغذیه نوار RGB با ترانزیستورها و منبع تغذیه

تغذیه نوار RGB با ترانزیستور و منبع تغذیه
تغذیه نوار RGB با ترانزیستور و منبع تغذیه
تغذیه نوار RGB با ترانزیستور و منبع تغذیه
تغذیه نوار RGB با ترانزیستور و منبع تغذیه
تغذیه نوار RGB با ترانزیستور و منبع تغذیه
تغذیه نوار RGB با ترانزیستور و منبع تغذیه

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

پس چگونه کار می کنند؟ در واقع بسیار ساده است. همه LED های نوار LED به طور موازی به هم متصل شده اند و مانند یک LED RGB بزرگ عمل می کنند. و برای اجرای آن ، فقط باید نوار را به منبع تغذیه جریان قوی 12 ولت متصل کنید.

برای کنترل نوار LED با میکروکنترلر ، باید منبع تغذیه را از منبع کنترل جدا کنید. از آنجا که نوار LED به 12 ولت احتیاج دارد ، و میکروکنترلر ما نمی تواند این ولتاژ خروجی زیادی را ارائه دهد ، و به همین دلیل است که ما یک منبع تغذیه جریان قوی 12 ولت خارجی را وصل می کنیم ، در حالی که سیگنال های کنترل را از PICO خود ارسال می کنیم.

همچنین ، میزان جذب فعلی هر سلول RGB زیاد است ، زیرا هر LED موجود در آن - LED های قرمز ، سبز و آبی - برای کار به 20mA نیاز دارد ، این بدان معناست که ما برای روشن شدن یک سلول RGB تنها به 60mA نیاز داریم. و این بسیار مشکل ساز است ، زیرا پین های GPIO ما فقط می توانند حداکثر 40 میلی آمپر در هر پین ارائه دهند و اتصال مستقیم نوار RGB به PICO باعث سوختن آن می شود ، بنابراین لطفاً این کار را نکنید.

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

بیایید ابتدا با سود جاری بیشتر آشنا شویم. سود فعلی از ویژگی های ترانزیستورها است به این معنی که جریان عبوری از ترانزیستور در آن ضرب می شود و معادله آن به شکل زیر است:

جریان بار = جریان ورودی * افزایش ترانزیستور.

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

اکنون نوار LED را به منبع تغذیه خارجی خود ، ترانزیستور و البته PICO خود متصل می کنیم.

  • پایه (ترانزیستور) → D3 (PICO)
  • جمع کننده (ترانزیستور) → B (نوار LED)
  • امیتر (ترانزیستور) → GND
  • +12 (نوار LED) → +12 (منبع تغذیه)

فراموش نکنید که GND PICO را به منبع تغذیه متصل کنید

مرحله 3: کنترل رنگ نوار LED RGB

کنترل رنگ نوار LED RGB
کنترل رنگ نوار LED RGB
کنترل رنگ نوار LED RGB
کنترل رنگ نوار LED RGB
کنترل رنگ نوار LED RGB
کنترل رنگ نوار LED RGB

ما می دانیم که PICO ما دارای یک پین PWM (D3) است و این بدان معناست که نمی تواند 16 LED را بطور طبیعی کنترل کند. به همین دلیل ما ماژول PCA9685 16 کاناله 12 بیتی PWM I2C 16 کاناله را معرفی می کنیم که به ما امکان می دهد پین های PWM PICO را گسترش دهیم.

اول از همه ، I2C چیست؟

I2C یک پروتکل ارتباطی است که تنها شامل 2 سیم برای برقراری ارتباط با یک یا چند دستگاه با آدرس آدرس دستگاه و ارسال داده ها است.

دو نوع دستگاه وجود دارد: یکی دستگاه اصلی است که مسئول ارسال اطلاعات است و دیگری دستگاه برده است که داده ها را دریافت می کند. در اینجا خروجی پین ماژول PCA9685 آمده است:

  • VCC → این قدرت خود هیئت مدیره است. حداکثر 3-5 ولت
  • GND pin این پین منفی است و برای تکمیل مدار باید به GND وصل شود.
  • V+ → این یک پین برق اختیاری است که در صورت اتصال هر کدام از آنها به ماژول خود ، نیرو را برای آنها تامین می کند. اگر از سرویس دهنده ها استفاده نمی کنید ، می توانید آن را قطع کنید.
  • پین ساعت SCL ial سریال ، و آن را به SCL PICO متصل می کنیم.
  • پین SDA → Serial Data ، و ما آن را به SDA PICO متصل می کنیم.
  • پین خروجی OE enable فعال است ، این پین LOW فعال است ، هنگامی که پین LOW باشد همه خروجی ها فعال هستند ، هنگامی که HIGH است همه خروجی ها غیرفعال هستند. و این پین اختیاری برای فعال یا غیرفعال کردن سریع پین های ماژول استفاده می شود.

16 پورت وجود دارد ، هر پورت دارای V+، GND ، PWM است. هر پین PWM کاملاً مستقل اجرا می شود و برای سرویس ها تنظیم شده است ، اما می توانید به راحتی از آنها برای LED استفاده کنید. هر PWM می تواند 25 میلی آمپر جریان را کنترل کند ، بنابراین مراقب باشید.

اکنون که می دانیم پین های ماژول ما چیست و چه کار می کند ، اجازه دهید از آن برای افزایش تعداد پین های PWM PICO استفاده کنیم تا بتوانیم نوار LED RGB خود را کنترل کنیم.

ما قصد داریم از این ماژول به همراه ترانزیستورهای TIP122 استفاده کنیم ، و به این ترتیب باید آنها را به PICO خود متصل کنید:

  • VCC (PCA9685) → VCC (PICO).
  • GND (PCA9685) GND.
  • SDA (PCA9685) D2 (PICO).
  • SCL (PCA9685) → D3 (PICO).
  • PWM 0 (PCA9685) AS BASE (اولین TIP122).
  • PWM 1 (PCA9685) AS BASE (TIP122 دوم).
  • PWM 2 (PCA9685) AS BASE (سوم TIP122).

فراموش نکنید که GND PICO را با GND منبع تغذیه وصل کنید. و مطمئن شوید که پین PCA9685 VCC را با +12 ولت منبع تغذیه متصل نکنید وگرنه خراب می شود

مرحله 4: رنگ نوار LED RGB را بسته به خواندن سنسور کنترل کنید

بسته به خواندن سنسور ، رنگ نوار LED RGB را کنترل کنید
بسته به خواندن سنسور ، رنگ نوار LED RGB را کنترل کنید
بسته به خواندن سنسور ، رنگ نوار LED RGB را کنترل کنید
بسته به خواندن سنسور ، رنگ نوار LED RGB را کنترل کنید

این آخرین مرحله در این پروژه است و با آن پروژه ما از "احمق" به باهوش بودن و داشتن توانایی رفتار بسته به محیط خود تبدیل می شود. برای انجام این کار ، ما قصد داریم PICO خود را با سنسور دمای LM35DZ وصل کنیم.

این سنسور دارای ولتاژ خروجی آنالوگ است که بستگی به دمای اطراف آن دارد. از 0v متناظر با 0 درجه سانتیگراد شروع می شود و ولتاژ برای هر درجه بالای 0c 10mV افزایش می یابد. این جزء بسیار ساده است و فقط 3 پا دارد و آنها به شرح زیر متصل می شوند:

  • VCC (LM35DZ) → VCC (PICO)
  • GND (LM35DZ) → GND (PICO)
  • خروجی (LM35DZ) → A0 (PICO)

مرحله 5: کد نهایی

کد نهایی
کد نهایی
کد نهایی
کد نهایی

اکنون که همه چیز را به PICO متصل کرده ایم ، اجازه دهید برنامه نویسی آن را شروع کنیم تا LED ها بسته به دما تغییر رنگ دهند.

برای این کار ، ما به موارد زیر نیاز داریم:

یک سازنده متغیری با نام "tempSensor" با مقدار A0 که خواندن آن را از سنسور دما دریافت می کند

یک متغیر صحیح به نام "sensorReading" با مقدار اولیه 0. این متغیری است که خواندن سنسور خام را ذخیره می کند

یک متغیر شناور با نام "ولت" با مقدار اولیه 0. این متغیری است که مقدار خواندن خام سنسور تبدیل شده را به ولت ذخیره می کند

یک متغیر شناور به نام "temp" با مقدار اولیه 0. این متغیری است که قرائت ولتاژ سنسور تبدیل شده را ذخیره کرده و آن را به دما تبدیل می کند

یک متغیر صحیح به نام "mapped" با مقدار اولیه 0. این مقدار PWM را که ما متغیر temp را در آن ترسیم می کنیم ذخیره می کند و این متغیر رنگ نوار LED را کنترل می کند

با استفاده از این کد ، PICO داده های سنسور دما را می خواند ، آن را به ولت ، سپس به سلسیوس تبدیل می کند و در نهایت درجه سانتیگراد را به مقدار PWM که توسط نوار LED ما قابل خواندن است ، ترسیم می کند و این دقیقاً همان چیزی است که ما به آن نیاز داریم.

مرحله ششم: تمام شدی

Image
Image

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

شما در حال حاضر دارای یک دماسنج LED بسیار زیبا هستید که وقتی به آن نگاه می کنید به طور خودکار دما را به شما می گوید ، که حداقل می توان گفت: P

در صورت داشتن هرگونه پیشنهاد یا بازخورد ، نظر خود را بنویسید و فراموش نکنید که ما را در فیس بوک دنبال کنید یا از ما در mellbell.cc دیدن کنید تا مطالب بسیار جذاب تری داشته باشید.

توصیه شده: