معرفی محصول
ماژول کنترلر PWM و سروو موتور ۱۶ کاناله ۱۲ بیتی PCA9685 یک راهکار بسیار قدرتمند و کارآمد برای کنترل همزمان چندین سروو موتور یا LED بدون تحمیل بار پردازشی اضافه به میکروکنترلر است. این ماژول بر پایه تراشه نامآشنا و باکیفیت PCA9685 شرکت NXP طراحی شده و با استفاده از پروتکل ارتباطی I2C، تنها با اشغال ۲ پین (SDA و SCL) قادر است ۱۶ کانال مستقل خروجی PWM با رزولوشن دقیق ۱۲ بیتی (۴۰۹۶ پله) را در اختیار شما قرار دهد. وجود نوسانساز (کلک) داخلی در این ماژول سبب میشود که پس از پیکربندی اولیه، فرکانس خروجی به صورت سختافزاری و مستقل تولید شود و پردازنده اصلی سیستم (مانند آردوینو، ESP32، رزبری پای و STM32) آزاد باشد تا به سایر وظایف و پردازش سنسورها بپردازد.
طراحی منحصربهفرد سختافزاری این برد، راهاندازی پروژههای بزرگ رباتیک را بسیار ساده کرده است. به لطف قابلیت زنجیرهای (Cascading) و وجود ۶ پین آدرسدهی که از طریق جامپرهای لحیمکاری قابل تنظیم هستند، میتوانید تا ۶۲ عدد از این ماژول را روی یک باس مشترک I2C به یکدیگر متصل کنید و در مجموع تا حداکثر ۹۹۲ خروجی PWM را با یک کنترلر مدیریت نمایید. این برد مجهز به خروجیهای سازگار با سطح منطقی ۳.۳ ولت و ۵ ولت است و به یک ترمینال پاور مجزا برای بخش سرووها (ولتاژ V+) مجهز شده تا تغذیه پرجریان موتورها را بدون ریسک افت ولتاژ (Brownout) یا نویز الکتریکی بر روی میکروکنترلر اصلی، تامین کند.
ویژگیها
۱۶ کانال مستقل PWM: امکان کنترل همزمان ۱۶ عدد سروو موتور یا درایور LED.
رزولوشن ۱۲ بیتی: خروجی بسیار نرم و دقیق با قابلیت تنظیم در ۴۰۹۶ پله.
ارتباط آسان دو سیمه: استفاده از پروتکل I2C و اشغال تنها ۲ پین از میکروکنترلر.
نوسانساز داخلی مستقل: تولید سیگنال پایدار سختافزاری بدون نیاز به رفرش مداوم از طرف پردازنده اصلی.
سازگاری منطقی دوگانه: قابلیت فرمانپذیری از میکروکنترلرهای ۳.۳ ولت و ۵ ولت.
قابلیت افزایش کانال (Cascade): امکان اتصال زنجیرهای تا ۶۲ ماژول و دسترسی به ۹۹۲ خروجی PWM.
محافظت قطب معکوس: مجهز به مدار محافظ در برابر اتصال معکوس تغذیه روی ترمینال ورودی.
مقاومتهای محافظ خروجی: دارای مقاومتهای سری ۲۲۰ اهم روی تمام خطوط خروجی جهت حفاظت از کانالها.
پین فعالساز خروجی (OE): مجهز به پین Output Enable جهت قطع سریع و یکجای تمامی خروجیها در شرایط اضطراری.
پیکربندی خروجی منعطف: امکان تنظیم خروجیها به صورت Push-pull یا Open-drain.
کاربردها
ساخت بازوهای رباتیک پیشرفته، رباتهای راه رونده (مانند هگزاپاد) و رباتهای انساننما.
سیستمهای هوشمند نورپردازی و دیمر کردن آرایههای LED.
پروژههای اینترنت اشیا، خانههای هوشمند و سیستمهای اتوماسیون DIY.
کنترل گیمبالهای چند محوره دوربین در پهپادها و ماشینهای آرسی (RC).
بردهای آموزشی رباتیک و کیتهای STEM.
کنترل شبیهسازها و تجهیزات متحرک انیماترونیک (Actuators).
نحوه راهاندازی و استفاده
1. اتصال ماژول به آردوینو (سیمکشی پایه):
پین VCC ماژول را به پین 5V+ آردوینو متصل کنید (این پین فقط تغذیه تراشه روی برد را تامین میکند، نه تغذیه سرووها را!).
پین GND ماژول را به پین GND آردوینو متصل کنید.
خطوط ارتباطی I2C را به شکل زیر وصل کنید:
در آردوینوهای معمولی (مثل Uno): پین A4 به SDA و پین A5 به SCL متصل میشود.
در آردوینوهای Mega قدیمی: پین Digital 20 به SDA و پین Digital 21 به SCL متصل میشود.
در بردهای R3 به بعد (Uno, Mega, Leonardo): پینهای اختصاصی SDA و SCL (نزدیک کانکتور USB) مستقیماً به SDA و SCL ماژول متصل میشوند.
2. تامین تغذیه سروو موتورها (ولتاژ V+):
سرووها جریان زیادی مصرف میکنند (حتی سرووهای کوچک در حین حرکت چندصد میلیآمپر و سرووهای با گشتاور بالا بیش از ۱ آمپر تحت بار میکشند). هرگز از پین ۵ ولت آردوینو برای تغذیه سرووها استفاده نکنید، زیرا نویز شدید و افت ولتاژ ناگهانی باعث ریست شدن یا آسیب به آردوینو میشود.
ولتاژ تغذیه سرووها (معمولاً ۵ الی ۶ ولت) را به ترمینال آبی رنگ روی برد (V+) متصل کنید. این ترمینال دارای محافظت قطب معکوس است.
گزینههای مناسب تغذیه: منبع تغذیه سوئیچینگ ۵ ولت ۲ آمپر، منبع تغذیه سوئیچینگ ۵ ولت ۱۰ آمپر، هولدر باتری 4xAA (ولتاژ ۶ ولت با باتری آلکالاین و ۴.۸ ولت با باتریهای شارژی NiMH) یا پکهای باتری RC قابل شارژ ۴.۸ یا ۶ ولت.
3. اتصال سروو موتورها به هدرهای ۳ پین:
سوکت مادگی ۳ پین سروو موتور را مستقیماً به هدرهای گروهی ماژول متصل کنید. در هنگام اتصال به جهت سیمها دقت فرمایید:
سیم زمین (معمولاً مشکی یا قهوهای) باید به پین ردیف پایین متصل شود.
سیم سیگنال (معمولاً زرد یا سفید) باید به پین ردیف بالا متصل شود.
4. تنظیم آدرس I2C (در صورت استفاده از چند ماژول):
تا ۱۶ سروو را میتوان به یک برد متصل کرد. در صورت نیاز به کنترل بیش از ۱۶ سروو، میتوانید بردهای اضافی را به صورت متوالی (Zain/Chain) متصل کنید. باید با استفاده از جامپرهای لحیمکاری تعبیهشده روی ماژول، آدرسهای I2C متفاوتی برای هر برد تعیین کنید.
