آموزش راه‌اندازی کیپد ۳×۴ و ۴×۴ با آردوینو

آموزش راه‌اندازی کیپد ۳×۴ و ۴×۴ با آردوینو | در دنیای رباتیک و هوش مصنوعی، کیپد (Keypad) یکی از اصلی‌ترین واسطه‌های ورودی برای کنترل دستگاه‌ها و ربات‌هاست. در این مقاله، به‌طور گام‌به‌گام به شما نشان می‌دهیم چگونه می‌توانید یک کیپد ۳×۴ (۱۲ کلید) و کیپد ۴×۴ (۱۶ کلید) را با استفاده از میکروکنترلر آردوینو راه‌اندازی کنید. در ادامه با آموزشگاه خانه رباتیک ایران همراه باشید.

کیپدها به‌صورت ماتریسی طراحی می‌شوند؛ در هر ردیف چندین پین متصل به ردیف، و در هر ستون چند پین متصل به ستون. با استفاده از اسکن ماتریس، می‌توان با تعداد کم پین، صدها کلید را کنترل کرد.

آموزش راه‌اندازی کیپد 3×4 و 4×4 با آردوینو

آموزش راه‌اندازی کیپد ۳×۴ و ۴×۴ با آردوینو

بررسی ساختار کلیدها و ماتریس‌سازی

ساختار ماتریسی

در هر کیپد، ردیف‌ها و ستون‌ها با یکدیگر متقاطع می‌شوند؛ وقتی یک کلید فشار داده می‌شود، ردیف و ستون متقاطع شده فعال می‌شوند.
مثال: در کیپد ۳×۴، ردیف ۱ و ستون ۳ بر هم‌پیوسته است؛ وقتی کلید “۳” فشار داده می‌شود، پین ردیف ۱ به سطح پایین (یا بالا) می‌رود.

کلیدهای استاندارد

کیپد ۳×۴: ۱۲ کلید (۰–۹ + A–C)
کیپد ۴×۴: ۱۶ کلید (۰–۹ + *, # + A–D)

ماتریس
ردیف
ستون
کلید
۳×۴
R1
C1
۱
۳×۴
R1
C2
۲
۴×۴
R4
C1
*
۴×۴
R4
C4
D

نحوه‌ی اتصال فیزیکی

آموزش راه‌اندازی کیپد 3×4 و 4×4 با آردوینو

آموزش راه‌اندازی کیپد ۳×۴ و ۴×۴ با آردوینو

آموزش راه‌اندازی کیپد ۳×۴ و ۴×۴ با آردوینو

 کیپد ۳×۴

پین کیپد
پین آردوینو
R1
D2
R2
D3
R3
D4
C1
D5
C2
D6
C3
D7
C4
D8

۴.۲ کیپد ۴×۴

پین کیپد
پین آردوینو
R1
D2
R2
D3
R3
D4
R4
D5
C1
D6
C2
D7
C3
D8
C4
D9

البته می‌توانید این کتابخانه را از سایت خانه رباتیک ایران هم دانلود کنید.

کد نمونه برای کیپد ۳ در ۴

توضیح کوتاه: این کد به‌صورت ساده کلید فشرده‌شده را در سریال مانیتور چاپ می‌کند. می‌توانید آن را برای ورودی‌های دیگر (دوربین، موتور، لودهای متحرک) گسترش دهید.

کد نمونه برای کیپد ۴ در ۴

نکته: در این مثال، کلیدهای * و # نیز اضافه شده‌اند که می‌توانید برای دستورات خاص استفاده کنید.

نکات و ترفندهای اضافی

مقاومت داخلی (Pull‑Up/Pull‑Down): اگر در کیپد مقاومت داخلی وجود ندارد، می‌توانید از مقاومت ۱۰ kΩ به عنوان pull‑down استفاده کنید تا خطای خواندن نادرست کاهش یابد.
Debounce (تغییر پایدار): کتابخانه‌ی Keypad به‌صورت پیش‌فرض debounce را مدیریت می‌کند، اما در صورت نیاز می‌توانید مقدار DEBOUNCE_TIME را تغییر دهید.
استفاده در پروژه‌های بزرگ‌تر: می‌توانید کلید فشرده‌شده را به یک queue یا stack ارسال کنید و در بخش دیگری از برنامه پردازش کنید.
کاهش مصرف برق: اگر در مدارهای کم‌مصرفی فعالیت می‌کنید، می‌توانید از مود «sleep» در آردوینو استفاده کنید و فقط زمانی که کلید فشرده شد، آردوینو را فعال کنید.

پرسش‌های متداول (FAQ)

آیا می‌توانم از کیپد ۴ در ۴ در برد Mega استفاده کنم؟

بله، فقط مطمئن شوید پین‌های ردیف و ستون را به درستی تنظیم کنید.

چگونه می‌توانم از چند کیپد بر روی یک برد آردوینو استفاده کنم؟

می‌توانید با استفاده از multiplexing و یک ماژول I²C expanders (مانند PCF8574) تعداد ورودی‌ها را افزایش دهید.

آیا کتابخانه Keypad به‌طور خودکار debounce را انجام می‌دهد؟

بله، کتابخانه به‌طور پیش‌فرض یک مقدار debounce معقول دارد.

اگر در مانیتور سریال چیزی نبینم، چه کار کنم؟

مطمئن شوید baud rate (9600) با IDE تنظیم شده است و ورودی کیپد به درستی متصل است.