راه‌اندازی LEDهای توان‌بالا + تنظیم رنگ یک LED

قسمت 41
مشاهده سایر جلسات آموزش
185 بازدید
۱۴۰۴-۰۹-۱۰
6 دقیقه
  • نویسنده: Arduino captain
  • درباره نویسنده: من کاپیتان آردوینو، اسمم میلاده و اینجا هستم تا تجربیاتم در رابطه با آردوینو رو با شما به اشتراک بزارم!

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

راه‌اندازی LEDهای پرجریان با ترانزیستور

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

پایه‌های آردوینو Uno و Mega فقط می‌توانند حداکثر ۴۰ میلی‌آمپر جریان بدهند.برای تأمین جریان لازم LED، از ترانزیستور به‌عنوان یک کلید الکترونیکی استفاده کنید. LED را طبق شکل 1 وصل کنید.

کدهای موجود در قسمت قبلی (قسمت 40) نیز قابل استفاده‌اند؛ فقط دقت کنید پینی از آردوینو که به بیس ترانزیستور وصل می‌کنید با شمارهٔ پینی که در برنامه استفاده شده یکسان باشد.

شکل 1: استفاده از ترانزیستور برای راه‌اندازی LEDهای پرجریان

شکل 1: استفاده از ترانزیستور برای راه‌اندازی LEDهای پرجریان

در شکل 1 یک فلش وجود دارد که منبع تغذیه +V را نشان می‌دهد. این منبع می‌تواند پین +5 ولت آردوینو باشد؛ این پین در صورت تأمین تغذیه از طریق USB حدود ۴۰۰ میلی‌آمپر جریان ارائه می‌دهد.

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

اگر LEDها جریان بیشتری نسبت به مقدار قابل‌تأمین از +5 ولت آردوینو نیاز داشته باشند، باید از یک منبع تغذیهٔ جدا از آردوینو برای راه‌اندازی LEDها استفاده کنید.

✅نکته

اگر از یک منبع تغذیهٔ خارجی استفاده می‌کنید، فراموش نکنید زمین (GND) آن را به زمین آردوینو وصل کنید.

وقتی ترانزیستور روشن باشد، جریان می‌تواند از collector به Emitter عبور کند و وقتی ترانزیستور خاموش است، جریان قابل‌توجهی از آن عبور نمی‌کند. آردوینو با استفاده از digitalWrite و قرار دادن ولتاژ یک پین روی وضعیت HIGH می‌تواند ترانزیستور را روشن کند. برای اینکه جریان زیادی وارد پین بیس ترانزیستور نشود، باید یک مقاومت بین پین آردوینو و بیس قرار دهید. مقدار معمول این مقاومت ۱ کیلو اهم است که حدود ۵ میلی‌آمپر جریان بیس فراهم می‌کند.

همچنین می‌توانید از آی‌سی‌های تخصصی مانند ULN2003A برای راه‌اندازی چند خروجی استفاده کنید؛ این آی‌سی شامل هفت درایور خروجی پرجریان (تا ۰٫۵ آمپر برای هر خروجی) است. مقدار مقاومتی که برای محدود کردن جریان LED استفاده می‌شود، با همان روشی که در قسمت قبلی گفته شد، محاسبه می‌شود.

اما باید توجه داشته باشید که ولتاژ منبع، کمی کاهش پیدا می‌کند، زیرا در ترانزیستور یک افت ولتاژ کوچک وجود دارد. این افت معمولاً کمتر از سه‌چهارم ولت است (مقدار دقیق آن را می‌توانید در ولتاژ اشباع Emitter/collector در دیتاشیت پیدا کنید. برای LEDهای پُرجریان (۱ وات یا بیشتر)، بهترین روش این است که از منبع جریان ثابت استفاده شود. مداری که جریان عبوری از LED را به طور فعال کنترل می‌کند.

روش‌های تأمین جریان بیش از ۴۰ میلی‌آمپر در تراشه ATmega

اگر برد شما از تراشه‌ی ATmega استفاده می‌کند، می‌توانید چند پایه پین را به‌صورت موازی به هم متصل کنید تا جریان بیشتری نسبت به محدودیت ۴۰ میلی‌آمپر برای هر پایه عبور دهد. شکل 2 نشان می‌دهد که چگونه می‌توان یک LED را طوری متصل کرد که بتواند با ۶۰ میلی‌آمپر جریان توسط دو پایه راه‌اندازی شود. در این شکل، LED از طریق مقاومت‌ها به زمین و از طریق پایه‌های ۲ و ۷ متصل است. هر دو پین باید در وضعیت LOW (پایین) قرار گیرند تا کل جریان ۶۰ میلی‌آمپر از LED عبور کند.

توجه داشته باشید که باید دو مقاومت جداگانه استفاده کنید؛ نباید برای هر دو پین از یک مقاومت مشترک استفاده شود.

شکل 2: افزایش جریان با اتصال موازی چند پین ATmega

شکل 2: افزایش جریان با اتصال موازی چند پین ATmega

این روش را می‌توان برای تأمین جریان (Source) هم استفاده کرد. به‌عنوان‌مثال، LED را برعکس کنید: پینی که به مقاومت‌ها وصل بود (کاتد) را به زمین و پین دیگر (آند) را به مقاومت‌ها وصل کنید. در این حالت LED با قرار دادن هر دو پین در وضعیت HIGH روشن می‌شود.

بهترین حالت این است که از پین‌هایی که کنار هم نیستند استفاده کنید تا فشار روی تراشه کاهش یابد. این روش برای هر پینی که باdigitalWrite کنترل می‌شود کار می‌کند، اما با analogWrite عمل نمی‌کند. اگر برای خروجی‌های آنالوگ (PWM) جریان بیشتری نیاز دارید، باید از ترانزیستورها استفاده کنید، همان‌طور که قبلاً توضیح داده شد.

✅نکته

این روش برای بردهای ۳۲ بیتی توصیه نمی‌شود.

تنظیم رنگ یک LED

فرض کنید می‌خواهید رنگ یک LED RGB را به‌صورت برنامه‌ای کنترل کنید.

شاید برای شما مفید باشد:
ساختار شرطی case در FPGA | آموزش FPGA قسمت یازدهم

LEDهای RGB دارای سه عنصر قرمز، سبز و آبی در یک پکیج هستند که یا آندها به هم متصل شده‌اند (به آن Common Anode می‌گویند) یا کاتدها به هم متصل شده‌اند (به آن Common Cathode می‌گویند). برای Common Anode، از سیم‌کشی شکل 3 استفاده کنید (آندها به +5 ولت متصل و کاتدها به پین‌ها وصل می‌شوند).

شکل 3: اتصالات RGB (آند مشترک – Common Anode)

شکل 3: اتصالات RGB (آند مشترک – Common Anode)

این اسکچ به‌صورت پیوسته رنگ‌ها را از طریق تغییر شدت عناصر قرمز، سبز و آبی در LED RGB تغییر می‌دهد:

رنگ یک LED RGB توسط شدت نسبی عناصر قرمز، سبز و آبی آن تعیین می‌شود. تابع اصلی در این برنامه (hueToRGB) مقدار رنگ (Hue) را که بین ۰ تا ۲۵۵ است، به رنگ متناظر بین قرمز تا آبی تبدیل می‌کند. طیف رنگ‌های قابل‌مشاهده معمولاً با یک چرخ رنگ (Color Wheel) نمایش داده می‌شود که شامل رنگ‌های اصلی و فرعی و گرادیان‌های بین آن‌ها است.

شاخه‌های چرخ رنگ که نشان‌دهنده شش رنگ اصلی و فرعی هستند، با شش دستور case در کد کنترل می‌شوند. اگر متغیر segment با شماره case مطابقت داشته باشد، کد مربوط به آن اجرا شده و مقادیر RGB برای آن رنگ تنظیم می‌شوند:

  • Segment 0 → قرمز
  • Segment 1 → زرد
  • Segment 2 → سبز
شاید برای شما مفید باشد:
استاندارد EMV Trace و قابلیت های جدید که به کارت های EMV اضافه می کند!

و به همین ترتیب ادامه می‌یابد.

اگر می‌خواهید شدت نور (Brightness) را نیز تنظیم کنید، می‌توانید مقدار متغیر brightness را کاهش دهید.

متغیر brightness در بازه‌ی ۰ تا ۲۵۵ تغییر می‌کند، همزمان با اینکه ورودی آنالوگ از ۰ تا ۱۰۲۳ تغییر می‌کند و باعث می‌شود شدت نور LED با افزایش مقدار افزایش یابد.

اطلاعات
185
0
0
اشتراک و حمایت
profile نویسنده: Arduino captain متخصص الکترونیک

من کاپیتان آردوینو، اسمم میلاده و اینجا هستم تا تجربیاتم در رابطه با آردوینو رو با شما به اشتراک بزارم!


ویراستار: محمد کبیر
مقالات بیشتر

slide

پالت | بازار خرید و فروش قطعات الکترونیک

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

آیسی | موتور جستجوی قطعات الکترونیک

سامانه آی سی سیسوگ (Isee) قابلیتی جدید و کاربردی از سیسوگ است. در این سامانه سعی شده است که جستجو، انتخاب و خرید مناسب تر قطعات برای کاربران تسهیل شود. جستجو در آیسی
family

سیسوگ‌شاپ | فروشگاه محصولات Quectel

فروشگاه سیسوگ مجموعه ای متمرکز بر تکنولوژی های مبتنی بر IOT و ماژول های M2M نظیر GSM، GPS، LTE، NB-IOT، WiFi، BT و ... جایی که با تعامل فنی و سازنده، بهترین راهکارها انتخاب می شوند. برو به فروشگاه سیسوگ
family

سیسوگ فروم | محلی برای پاسخ پرسش‌های شما

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

سیکار | اولین مرجع متن باز ECU در ایران

بررسی و ارائه اطلاعات مربوط به ECU (واحد کنترل الکترونیکی) و نرم‌افزارهای متن باز مرتبط با آن برو به سیکار
become a writer
نویسنده شو !

سیسوگ با افتخار فضایی برای اشتراک گذاری دانش شماست. برای ما مقاله بنویسید.

ارسال مقاله
become a writer
نویسنده شو !

سیسوگ با افتخار فضایی برای اشتراک گذاری دانش شماست. برای ما مقاله بنویسید.

ارسال مقاله

خانواده سیسوگ

سیسوگ‌شاپ

فروشگاه محصولات Quectel

پالت
سیسوگ فروم

محلی برای پاسخ پرسش‌های شما

سیسوگ جابز
سیسوگ
سیسوگ فروم
سی‌کار

اولین مرجع متن باز ECU در ایران

سیسوگ مگ
آی‌سی

موتور جستجوی قطعات الکترونیکی

سیسوگ آکادمی
پالت

بازار خرید و فروش قطعات الکترونیک

دیدگاه ها

become a writer
نویسنده شو !

سیسوگ با افتخار فضایی برای اشتراک گذاری دانش شماست. برای ما مقاله بنویسید.

ارسال مقاله
become a writer
نویسنده شو !

سیسوگ با افتخار فضایی برای اشتراک گذاری دانش شماست. برای ما مقاله بنویسید.

ارسال مقاله