با موبایل روی Arduino R4 شکل بکش! آموزش کنترل LED Matrix
اگر یک Arduino UNO R4 WiFi داشته باشید، برای ساخت یک نمایشگر LED کوچک حتی لازم نیست ماژول جداگانهای به برد متصل کنید. نسخه WiFi این برد یک ماتریس LED داخلی 12×8 دارد که میتوان از آن برای نمایش اعداد، حروف، آیکونها، انیمیشنها و الگوهای دلخواه استفاده کرد.
اما پروژه زمانی جذابتر میشود که کنترل این ماتریس را از کامپیوتر جدا کنیم و به موبایل بدهیم. در این آموزش یک صفحه وب میسازیم که از طریق آن میتوانیم با موبایل، شکل موردنظرمان را انتخاب یا طراحی کنیم و نتیجه را مستقیماً روی LED Matrix آردوینو نمایش دهیم.
🎯 در پایان این پروژه چه چیزی داریم؟
یک Arduino UNO R4 WiFi که به شبکه متصل میشود و از طریق یک پنل تحت وب میتوان ماتریس LED داخلی آن را با موبایل کنترل کرد.
قرار است چه چیزی بسازیم؟
هدف پروژه فقط روشن و خاموش کردن چند LED نیست. میخواهیم بین موبایل و آردوینو یک رابط تحت وب ایجاد کنیم.
بعد از روشن شدن Arduino R4، برد ارتباط شبکه را برقرار میکند و یک صفحه وب در اختیار ما قرار میدهد. با باز کردن این صفحه روی موبایل میتوانیم الگوهای مختلف را انتخاب کنیم و فرمان نمایش آنها را برای برد بفرستیم.
- نمایش شکلهای آماده روی ماتریس
- انتخاب الگو از طریق موبایل
- طراحی الگوی دلخواه روی ماتریس 12×8
- ارسال الگو به Arduino
- تغییر نمایش بدون آپلود مجدد برنامه
💡 نکته مهم
مزیت اصلی این روش این است که بعد از آپلود برنامه، برای تغییر شکل ماتریس لازم نیست هر بار Arduino IDE را باز و کد جدیدی روی برد آپلود کنید. انتخاب الگو از طریق رابط وب انجام میشود.
Arduino UNO R4 WiFi چه امکاناتی برای این پروژه دارد؟
Arduino UNO R4 WiFi نسبت به نسلهای قبلی UNO فقط یک ارتقای پردازنده نیست. وجود قابلیت ارتباط بیسیم و ماتریس LED داخلی باعث شده بتوان پروژههایی را مستقیماً روی خود برد اجرا کرد که در UNOهای قدیمیتر به ماژولهای جانبی نیاز داشتند.
در این پروژه دو قابلیت R4 WiFi اهمیت بیشتری دارند:
- ارتباط WiFi: برای ایجاد ارتباط بین موبایل و برد.
- ماتریس LED داخلی: برای نمایش خروجی بدون اتصال نمایشگر خارجی.
ماتریس LED داخلی Arduino UNO R4 WiFi چیست؟
روی Arduino UNO R4 WiFi یک ماتریس متشکل از 96 LED قرار گرفته است. این LEDها در آرایش 12 ستون و 8 ردیف قرار دارند.
🔢 یک حساب ساده
12 × 8 = 96 LED
با روشن و خاموش کردن ترکیبهای مختلف این 96 نقطه میتوان شکلهای گوناگونی ایجاد کرد؛ از قلب و فلش گرفته تا اعداد، حروف و انیمیشنهای ساده.
در واقع هر شکل را میتوان به یک الگوی صفر و یک تبدیل کرد. LED روشن معادل یک و LED خاموش معادل صفر در نظر گرفته میشود.
وسایل موردنیاز پروژه
| قطعه | کاربرد | ضروری؟ |
|---|---|---|
| Arduino UNO R4 WiFi | برد اصلی پروژه | بله |
| کابل USB Type-C | برنامهریزی و تغذیه برد | بله |
| کامپیوتر | آپلود برنامه | بله |
| موبایل | کنترل ماتریس | بله |
🛒 Arduino UNO R4 WiFi برای پروژهات لازم داری؟
قبل از خرید دقت کن که این پروژه مربوط به نسخه UNO R4 WiFi است؛ نسخه Minima امکانات بیسیم و ماتریس LED مشابه نسخه WiFi را در اختیار شما قرار نمیدهد.
مرحله اول: آمادهسازی Arduino UNO R4 WiFi
ابتدا برد را با کابل USB Type-C به کامپیوتر متصل کنید و Arduino IDE را اجرا کنید.
اگر اولین بار است که از UNO R4 استفاده میکنید، باید پکیج مربوط به بردهای UNO R4 را در Board Manager نصب کنید و سپس برد Arduino UNO R4 WiFi را انتخاب کنید.
بعد از انتخاب پورت صحیح، میتوانیم اولین برنامه را روی برد آپلود کنیم.
مرحله دوم: راهاندازی LED Matrix
برای کنترل ماتریس LED داخلی R4 میتوان از کتابخانه مربوط به ماتریس Arduino استفاده کرد.
#include "Arduino_LED_Matrix.h"
ArduinoLEDMatrix matrix;
void setup() {
matrix.begin();
}
void loop() {
}
در این قسمت شیء matrix ساخته شده و در تابع setup() ماتریس راهاندازی میشود.
⚠️ یک اشتباه رایج
UNO R4 WiFi را با UNO R3 اشتباه نگیرید. کدی که مستقیماً از LED Matrix داخلی استفاده میکند برای UNO R3 قابل اجرا نیست، چون R3 چنین ماتریسی روی برد ندارد.
مرحله سوم: اتصال Arduino R4 به شبکه
حالا باید امکان ارتباط موبایل و آردوینو را فراهم کنیم. Arduino UNO R4 WiFi قابلیت ارتباط بیسیم دارد و میتوان از آن برای اجرای یک Web Server ساده استفاده کرد.
منطق کلی ارتباط به این شکل است:
موبایل ← WiFi ← Arduino R4 ← LED Matrix
بعد از برقراری شبکه، آردوینو یک آدرس IP خواهد داشت. با وارد کردن این IP در مرورگر موبایل میتوان صفحه کنترل را باز کرد.
مرحله چهارم: ساخت Web Server روی Arduino
قسمت جذاب پروژه از همینجا شروع میشود. به جای ساخت اپلیکیشن جداگانه برای Android یا iOS، رابط کنترل را به شکل یک صفحه وب طراحی میکنیم.
این کار یک مزیت مهم دارد: تقریباً هر دستگاهی که مرورگر داشته باشد میتواند کنترلر ما باشد.
صفحه وب میتواند شامل موارد زیر باشد:
- دکمه انتخاب شکلهای آماده
- جدول 12×8 برای طراحی شکل
- دکمه ارسال الگو
- پاک کردن ماتریس
- نمایش وضعیت ارتباط
کنترل ماتریس LED آردوینو R4 با موبایل
پس از آپلود برنامه، صفحه کنترل را در مرورگر موبایل باز میکنیم. حالا با لمس هر گزینه، درخواست مربوط به آن برای Arduino ارسال میشود.
Arduino درخواست را دریافت میکند، الگوی مربوط به آن را تشخیص میدهد و داده جدید را روی ماتریس نمایش میدهد.
📱 نکته جالب پروژه
موبایل مستقیماً LEDها را روشن نمیکند. موبایل فقط فرمان یا الگوی موردنظر را برای Arduino ارسال میکند؛ پردازش فرمان و کنترل واقعی ماتریس توسط خود برد انجام میشود.
نمایش شکلهای آماده روی ماتریس
برای اینکه استفاده از کنترلر سریعتر باشد، میتوان تعدادی شکل از قبل تعریف کرد.
برای مثال:
- ❤️ قلب
- ❌ ضربدر
- ⬆️ فلش
- 🙂 صورتک
- اعداد
- حروف
هر کدام از این شکلها در واقع یک آرایه از وضعیت LEDها هستند. با انتخاب شکل در موبایل، آرایه مربوط به آن برای نمایش انتخاب میشود.
طراحی شکل دلخواه روی ماتریس 12×8
یکی از بهترین قسمتهای پروژه این است که کاربر محدود به شکلهای آماده نیست.
میتوان در رابط وب یک Grid با همان ساختار ماتریس واقعی یعنی 12×8 ایجاد کرد. کاربر با لمس هر خانه وضعیت آن را روشن یا خاموش میکند.
بعد از تکمیل طراحی، وضعیت 96 خانه برای Arduino ارسال میشود و همان الگو روی LED Matrix واقعی نمایش داده خواهد شد.
🔥 اینجا پروژه از یک مثال ساده Arduino فراتر میرود
در این روش در واقع یک رابط کاربری برای سختافزار ساختهایم؛ یعنی کاربر بدون دسترسی مستقیم به کد میتواند خروجی سختافزار را تغییر دهد.
پروژه دقیقاً چگونه کار میکند؟
| مرحله | اتفاق |
|---|---|
| 1 | Arduino روشن و برنامه اجرا میشود. |
| 2 | ارتباط شبکه برقرار میشود. |
| 3 | کاربر صفحه کنترل را با موبایل باز میکند. |
| 4 | کاربر یک شکل را انتخاب یا طراحی میکند. |
| 5 | فرمان برای Arduino ارسال میشود. |
| 6 | Arduino الگو را روی ماتریس 12×8 نمایش میدهد. |
چرا از Web Server استفاده کردیم؟
میتوانستیم برای کنترل Arduino یک اپلیکیشن موبایل بنویسیم، اما برای چنین پروژهای Web Server انتخاب سادهتر و انعطافپذیرتری است.
| روش | مزیت | محدودیت |
|---|---|---|
| Web Interface | بدون نصب اپلیکیشن | نیازمند ارتباط شبکه |
| اپلیکیشن موبایل | امکانات رابط کاربری بیشتر | نیاز به طراحی اپ |
| Serial Monitor | ساده برای تست | وابسته به کامپیوتر |
خطاهای رایج پروژه
صفحه کنترل روی موبایل باز نمیشود
ابتدا وضعیت شبکه و IP برد را بررسی کنید. همچنین مطمئن شوید موبایل امکان دسترسی به شبکهای که Arduino در آن قرار دارد را دارد.
ماتریس LED چیزی نمایش نمیدهد
راهاندازی ماتریس، نوع برد انتخابشده در Arduino IDE و آپلود صحیح برنامه را بررسی کنید.
شکل روی ماتریس جابهجا یا برعکس نمایش داده میشود
این مشکل معمولاً به ترتیب ردیفها و ستونها در آرایه مربوط است. جهت نگاشت Grid رابط وب باید با ترتیب داده مورد انتظار ماتریس هماهنگ باشد.
چطور پروژه را حرفهایتر کنیم؟
این پروژه میتواند نقطه شروع پروژههای بسیار بزرگتری باشد. برای مثال میتوانید قابلیتهای زیر را به کنترلر اضافه کنید:
- ساخت انیمیشن چندفریمی
- تنظیم سرعت انیمیشن
- ذخیره شکلهای طراحیشده
- ساخت متن متحرک
- ساخت بازی ساده روی ماتریس
- کنترل تجهیزات خارجی از همان پنل
- نمایش وضعیت سنسورها
- ساخت داشبورد IoT
💬 شما چه ترفندی بلدید؟اگر برای Arduino R4، ماتریس LED یا همین پروژه ترفند، کد یا ایدهای دارید که فکر میکنید به درد بقیه هم میخورد، پایین همین مقاله در بخش نظرات بنویسید.
ممکن است ترفند شما راهحل مشکلی باشد که یک نفر دیگر ساعتها درگیرش شده است!
ویدیوی اجرای واقعی پروژه
اگر میخواهید قبل از اجرای پروژه نتیجه نهایی را ببینید، ویدیوی این پروژه روند کار از Arduino UNO R4 WiFi تا کنترل ماتریس با موبایل را نشان میدهد.
مطالب مرتبط
اگر با Arduino و طراحی مدار کار میکنید، پیشنهاد میکنیم بعد از این پروژه مطالب مرتبط آکادمی RNGO را نیز مطالعه کنید.
سوالات متداول
آیا Arduino UNO R4 WiFi ماتریس LED داخلی دارد؟
بله. UNO R4 WiFi دارای ماتریس LED داخلی 12×8 شامل 96 LED است و میتوان از طریق برنامه آن را کنترل کرد.
آیا میتوان ماتریس LED آردوینو R4 را با موبایل کنترل کرد؟
بله. یکی از روشها ساخت رابط تحت وب روی Arduino است. در این حالت میتوان با مرورگر موبایل فرمان یا الگوی موردنظر را برای برد ارسال کرد.
برای اجرای این پروژه به ماژول LED Matrix جداگانه نیاز داریم؟
خیر. در Arduino UNO R4 WiFi ماتریس LED روی خود برد قرار دارد و برای اجرای پروژه پایه نیازی به نمایشگر LED خارجی نیست.
جمعبندی
در این پروژه دیدیم که ماتریس LED داخلی Arduino UNO R4 WiFi فقط برای نمایش چند شکل از پیش تعیینشده نیست. با ترکیب قابلیت WiFi، یک Web Server ساده و ماتریس 12×8 میتوان رابطی ساخت که کاربر مستقیماً از طریق موبایل خروجی برد را کنترل کند.
این پروژه در عین ساده بودن، چند مفهوم مهم را همزمان آموزش میدهد: کار با LED Matrix، برنامهنویسی Arduino، ارتباط شبکه، Web Server و ایجاد رابط بین نرمافزار و سختافزار.
Arduino R4 را وارد پروژه بعدیات کن 🚀
اگر میخواهی پروژههای WiFi، IoT یا کنترل سختافزار با موبایل بسازی، میتوانی بردها و تجهیزات موردنیاز پروژه را در فروشگاه RNGO بررسی کنی.مشاهده قطعات و بردهای توسعه




