آردوینو, پروژه آردوینو, رزبری پای

راه اندازی ماژول WS2812 با آردوینو و رزبری پای

راه‌اندازی ماژول WS2812 با آردوینو

ماژول WS2812B یک ماژول فوق‌العاده برای کنترل کردن چراغ‌های LED است که با مدارهای مختلف هماهنگ می‌شود و از چیپ RGB از نوع 5050 بهره می‌برد.

WS8212B یک پورت هوشمند و دیجیتالی دیتا و یک مدار بروزرسان سیگنال دارد. به علاوه، این ماژول به اسیلاتور داخلی فوق دقیق، یک کنترل‌کننده دائمی جریان و یک پورت برای ولتاژ 5 ولت مجهز شده است.

فهرست مطالب

لوازم مورد نیاز برای پروژه راه اندازی ماژول WS2812 با آردوینو و رزبری پای

ماژول WS2812B چگونه کار می‌کند؟

ماژول‌های WS8212B یک IC داخلی LED دارند که امکان برقراری ارتباط یکطرفه را می‌دهد. این یعنی شما می‌توانید از یک پین در کنترلر بهره ببرید تا چندین LED را روشن کنید. لازم به ذکر است که در هر چراغ LED تعداد 3 پایه وجود دارد؛ پین پاور (برای ولتاژ 5 ولت یا بیشتر)، پین GND یا اتصال به زمین و پین دیتا یا DIN یا DOUT.

پروتکل انتقال داده، از شیوه تکی ارتباط NZR بهره می‌برد. پورت DIN پس از ریست شدن LED، داده‌ها را از کنترلر دریافت می‌کند. سپس اولین پیکسل داده‌های 24 بیتی جمع‌آوری و بعد به پردازشگر داخلی ارسال می‌شوند.

سایر داده‌ها که توسط مدار بازطراحی‌کننده داخلی دچار تغییراتی شده‌اند، از طریق پورت DOUT به سری بعدی پیکسل‌ها ارسال می‌شوند. لازم به ذکر است که پس از انتقال، می‌توان سیگنال‌ها را برای هر پیکسل به میزان 24 بیت کاهش داد.

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

سیم‌کشی مدار داخلی ماژول WS2812B

این ماژول یک پورت دیجیتالی و هوشمند رو بردی و یک مدار درایو بازطراحی‌کننده سیگنال دارد تا این اطمینان حاصل را در کاربران به وجود آورد که LED رنگی روشن شده نور قدرتمند و باثباتی دارد.

یک نکته که اشاره به آن خالی از لطف نخواهد بود این است که قابلیت رمزگذاری با توجه به ویژگی سیم‌ها، کاملاً اختیاری است اما کمک خواهد کرد تا در زمان سیم‌کشی مدار، اشتباه پیش نیاید.

در ادامه یک نمای ساده از مدار ماژول ال ای دی رنگی WS2812 RGB را می‌بینید.

پین‌های ماژول WS2812
پین‌های ماژول WS2812
پروتکل زنجیره LED ماژول WS2812
پروتکل زنجیره LED ماژول WS2812

چگونگی کنترل ماژول WS2812 با کتابخانه Adafruit

WS2812 یکی از پیشرفته‌ترین، سریع‌ترین، سبک‌ترین و مقرون به صرفه‌ترین ماژول‌های کنترل LED می‌باشد. LEDهای قرمز، سبز و آبی در این ماژول به صورت پکیج کاملاً کامپکت در کنار هم قرار گرفته‌اند و نحوه فعالیت آنها را می‌توان با یک کابل و یک درایور IC کنترل کرد.

برای کار کردن با این ماژول بهتر است ابتدا آن را به منبع تغذیه وصل کنیم و اجازه دهیم ولتاژ به وضعیت پایدار خود برسد و سپس اتصال میان پیکسل‌ها را برقرار نماییم.

هر کدام از LEDهای ماژول ال ای دی رنگی WS2812 RGB در حالت بیشترین روشنایی، به میزان 60 میلی‌آمپر نور سفید جذب می‌کنند. با این حال، بعید است که با این روش پیکسل‌ها به یکباره روشن شوند.

نحوه کنترل ماژول WS2812 با آردوینو

پیش از آنکه ماژول ال ای دی رنگی WS2812 RGB را به آردوینو وصل کنید، باید نسبت به منبع نیروی آن توجه ویژه‌ای داشته باشید. هر پیکسل LED ماژول WS2812 سه چراغ LED و یک IC کنترل دارد. بر این اساس، جریان مورد نیاز برای هر پیکسل 60 میلی‌آمپر است.

با توضیحات داده شده، وقتی رشته‌ای دارید که روی آن 20 چراغ LED قابل برنامه‌نویسی ماژول ال ای دی رنگی WS2812 RGB قرار گرفته، جریان مورد نیاز برای آنها 1.2 آمپر خواهد بود. این میزان جریان، بیش از توانایی آردوینو می‌باشد به همین خاطر بهترین کار برای تأمین انرژی آردوینو و ماژول ال ای دی رنگی WS2812 RGB استفاده از یک منبع نیروی 5 ولتی خواهد بود.

مدار پروژه اتصال ماژول WS2812 به آردوینو

تصویر زیر رابطه میان رشته LED ماژول ال ای دی رنگی WS2812 RGB با آردوینو Uno را نشان می‌دهد. پورت 5 ولتی آردوینو و LEDها به پین GND یا اتصال به زمین وصل شده‌اند و میان همه آنها و منبع نیرو نیز ارتباط برقرار می‌باشد. لازم به ذکر است که پین DIN رشته‌های LED نیز به همراه مقاومت 330 اهم، به پین دیجیتالی I/O شماره 7 آردوینو متصل گردیده‌اند.

سیم‌کشی مدار ماژول WS2812 با آردوینو
سیم‌کشی مدار ماژول WS2812 با آردوینو

برای اینکه بتوانید ماژول ال ای دی رنگی WS2812 RGB را با آردوینو راه‌اندازی کنید، باید کتابخانه FastLED را دانلود و در نرم‌افزار Arduino IDE آپلود نمایید.

				
					#include <FastLED.h>
#define pin_led     9
#define no_leds    12rgb leds[no_leds];void setup() {
FastLED.addLeds<WS2812, led_pin, rgb>(leds, no_leds);
}
void loop() {
for (int i = 0; i <= 9; i++) {
leds[i] = CRGB ( 0, 0, 255);
FastLED.show();
delay(40);
}for (int i = 12; i >= 0; i–) {
 

leds[i] = grb ( 250,0, 0);
FastLED.show();
delay(25);
}
}
				
			

نحوه اتصال ماژول ال ای دی رنگی WS2812 RGB به رزبری پای

یکی از مهمترین چالش‌هایی که در زمان راه‌اندازی ماژول ال ای دی رنگی WS2812 RGB با رزبری پای با آن مواجه هستیم، رساندن ولتاژ 3.3 ولت پین‌های GPIO رزبری پای به 5 ولت است تا بتواند ماژول مورد بحث ما را شناسایی کند.

شما می‌توانید این کار را با دو روش انجام دهید؛ 1) با استفاده از یک دیود پاور معمولی 1N4001 2) با استفاده از یک چیپ مبدل سطح نظیر 74AHCT125.

توجه داشته باشید که شاید بتوانید ماژول ال ای دی رنگی WS2812 RGB را بدون تبدیل سطح به کار بیندازید ولی احتمالاً عملکرد آن دقیق نخواهد بود زیرا خطوط داده‌ای باید حداقل 5 ولت یا حدود 3.5 ولت باشند.

روشی که در آن از دیود استفاده شده، بسیار ساده است و سبب می‌شود ماژول ال ای دی رنگی WS2812 RGB بتواند خروجی 3.3 ولت رزبری پای را شناسایی کند. البته در این روش، توجه داشته باشید که با نهایت احتیاط کار را انجام دهید زیرا ممکن است دیود تمامی جریان را جذب خود کند.

سلول مخصوص به دیود ماژول ال ای دی رنگی WS2812 RGB می‌تواند به صورت مداوم، 1 آمپر جریان دریافت کند؛ از این رو، برای روشن نگه داشتن 16 عدد LED سفید با حداکثر روشنایی و یا روشن نگه داشتن 50 عدد LED با رنگ‌های مختلف و حداکثر روشنایی، فوق‌العاده خواهد بود. لازم به ذکر است که به خاطر کار نکردن ماژول WS2812 با ولتاژ 5 ولت، شاید برخی از LEDها کم‌نورتر به نظر برسند.

یک چیپ مبدل سطح مانند 74AHCT125 راهکار بهتری است زیرا خروجی 3.3 ولت رزبری پای را بدون محدود کردن قدرت ماژول WS2812 به 5 ولت تبدیل می‌کند. برای اینکه این فرآیند به خوبی انجام شود، ماژول مورد بحث ما باید به پین‌های GPIO10، GPIO12، GPIO18 یا GPIO21 لینک شده باشد. لازم به ذکر است که پین اولیه GPIO18 خواهد بود. ضمناً، توجه کنید که شما می‌توانید تنها یک رشته را در لحظه ایجاد نمایید.

اگر چند رشته دارید، همه آنها را به هم وصل کنید و سپس با یک اتصال واحد، آنها را به رزبری پای بزنید. تصویر زیر می‌تواند کمک حال شما برای سیم‌کشی مدار ماژول WS2812 با رزبری پای باشد. لازم به ذکر است که در این تصویر از چیپ مبدل سطح 74AHCT125 استفاده شده است.

پین‌ها باید مطابق جدول زیر وصل شوند:

از

به

پین GPIO18 رزبری پای

پین 1A مبدل 74AHCT125

پین GND منبع تغذیه

پین GND مبدل 74AHCT125

پین 1Y مبدل 74AHCT125

پین DIN ماژول WS2812

پین GND منبع تغذیه

پین 1OE مبدل 74AHCT125

پین 5 ولت منبع تغذیه

پین VCC یا منبع تغذیه مبدل 74AHCT125

پین GND منبع تغذیه

پین GND ماژول WS2812

پین 5 ولت منبع تغذیه

پین 5 ولت ماژول WS2812

سیم‌کشی 74AHCT125 با رزبری پای
سیم‌کشی 74AHCT125 با رزبری پای

در صورتی که از دیود 1N4001 در رزبری پای استفاده می‌کنید، باید پین‌ها را مطابق جدول و عکس زیر به هم وصل نمایید.

از

به

پین GND منبع تغذیه

پین GND ماژول WS2812

پین 18 رزبری پای

پین DIN ماژول WS2812

پین GND منبع تغذیه

پین GND رزبری پای

پین 5 ولت منبع تغذیه

پایه آند دیود 1N4001

پایه کاتد دیود 1N4001

پین 5 ولت ماژول WS2812

سیم‌کشی دیود 1N4001 با رزبری پای
سیم‌کشی دیود 1N4001 با رزبری پای

اگر می‌خواهید تنها چند پیکسل را روشن کنید، می‌توانید پین‌ها را مطابق جدول و تصویر زیر به یکدیگر وصل نمایید.

از

به

پین GND رزربری پای

پین GND ماژول WS2812

پین 5 ولت رزبری پای

پین 5 ولت ماژول WS2812

پین GPIO18 رزربری پای

پین DIN ماژول WS2812

سیم‌کشی پین 5 ولت ماژول WS2812 با رزبری پای
سیم‌کشی پین 5 ولت ماژول WS2812 با رزبری پای

زمانی که می‌خواهید بیش از چند پیکسل را روشن کنید، اضافه کردن یک منبع تغذیه اضافه ایده هوشمندانه‌ای است. به خاطر داشته باشید که هر پیکسل می‌تواند 60 میلی‌آمپر جریان بکشد بنابراین از منبع تغذیه فراموش نکنید! توجه نمایید که بدون مبدل سطح، ماژول ال ای دی رنگی WS2812 RGB نمی‌تواند مستقیماً به رزبری پای وصل شود بنابراین اگر در این زمینه به مشکل خوردید، مانند جدول و تصویر زیر، یک مبدل سطح بیفزایید.

از

به

پین 5 ولت منبع تغذیه

پین 5 ولت ماژول WS2812

پین GND رزبری پای

پین GND ماژول WS2812

پین GND منبع تغذیه

پین GND ماژول WS2812

پین GPIO18 رزبری پای

پین DIN ماژول WS2812

سیم‌کشی ماژول WS2812 با پین 5 ولت رزبری پای و منبع تغذیه
سیم‌کشی ماژول WS2812 با پین 5 ولت رزبری پای و منبع تغذیه

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

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *