با آردوینو یک میدی کنترلر (MIDI) حرفهای با دکمههای آرکید بساز
سلام! اگه به آهنگسازی الکترونیک یا دیجی کردن علاقه داری، حتما میدونی که داشتن یک کنترلر خوب چقدر تو حس و حال کار تأثیر داره. دکمههای نرم و بیروح کیبورد کجا و اون دکمههای بزرگ و تقتقدار دستگاههای آرکید کجا! توی این پروژه از تیم آیسیمدار، میخواهیم با هم یک میدی کنترلر (MIDI Controller) شخصیسازیشده و فوقالعاده جذاب بسازیم که دقیقا طبق سلیقه خودت چیده شده باشه.
برای مغز متفکر این دستگاه از یک برد آردوینو استفاده میکنیم تا بتونیم دکمههای آرکید، پتانسیومترهای چرخشی و اسلایدرها رو به کامپیوتر وصل کنیم و نرمافزارهای آهنگسازی رو کنترل کنیم. پس اگه دوست داری یه دستگاه دیجی دستساز باحال روی میزت داشته باشی، ابزارها رو آماده کن تا بریم سراغ ساختش.
قطعات و ابزارهای مورد نیاز
برای ساخت این کنترلر به یک سری قطعات الکترونیکی و ابزارهای کارگاهی نیاز داریم. قطعات اصلی شامل یک برد آردوینو، دکمههای آرکید 24 میلیمتری، چند تا پتانسیومتر خطی 10 کیلواهم برای ولومهای چرخشی و اسلایدر، سرولومهای مناسب، یک جعبه پلاستیکی برای بدنه، پیچ و اسپیسرهای پلاستیکی، سیمهای رنگی، مقاومت 4.7 کیلواهم و یک کابل USB هست.
برای بخش ابزارها هم باید چیزهایی مثل هویه، سیمچین، دریل با متههای مختلف (متههای معمولی و مته برگی 24 میلیمتری)، سوهان ظریف و پیچگوشتی دم دستت باشه تا بتونی بدنه رو به تمیزترین شکل ممکن سوراخکاری کنی.
پیشنهاد میکنم همیشه یکی دو تا دکمه و پتانسیومتر اضافه هم تهیه کنی که اگه موقع کار مشکلی پیش اومد یا قطعهای آسیب دید، لنگ نمونی و کارت متوقف نشه.
طراحی چیدمان دکمهها و بدنه
قبل از اینکه دست به دریل بشی، بهتره یه نگاهی به کنترلرهای معروف تو بازار بندازی تا ببینی چه چیدمانی برات راحتتره. ایده اصلی ما اینجا استفاده از یک شبکه دکمههای آرکیده چون حس لامسه خیلی خوبی دارن و اصلا مثل دکمههای لاستیکی و بیروح نیستن. موقع طراحی یادت باشه که برد آردوینو 6 تا ورودی آنالوگ (برای ولومها و اسلایدرها) و 14 تا پین دیجیتال (برای دکمهها) داره.
البته دو تا از پینهای دیجیتال برای ارتباط با کامپیوتر استفاده میشن. پس باید ترکیب دکمهها و ولومها رو طوری انتخاب کنی که به این محدودیتها بخوره. میتونی از ترکیب 12 تا دکمه، 4 تا ولوم چرخشی و 2 تا اسلایدر استفاده کنی تا از تمام ظرفیتهای برد به بهترین شکل بهره ببری.
ابعاد قطعات رو دقیق پیدا کن و روی یک کاغذ پیاده کن تا مطمئن بشی همه چیز توی اون جعبه پلاستیکی که انتخاب کردی جا میشه. حتی بهتره طرحت رو در ابعاد واقعی (نسبت یک به یک) روی کاغذ چاپ کنی و کلیدها رو به صورت فرضی روش فشار بدی تا ببینی زیر دستت راحت هستن یا نه.
برای اسلایدرها حواست باشه که علاوه بر طول خود مسیر حرکت، به فضای خالی بالا و پایینش هم توجه کنی تا سرولوم به قطعات دیگه گیر نکنه. شکل ظاهری جعبه و ارتفاعش هم مهمه؛ جعبهای رو انتخاب کن که علاوه بر جا دادن دکمهها، فضای کافی برای قرار دادن خود برد آردوینو توی کفش داشته باشه. وقتی از چیدمان نهایی مطمئن شدی، نقشه سوراخکاریها رو آماده کن تا بریم سراغ برش زدن بدنه.
سوراخکاری و آمادهسازی بدنه پلاستیکی
حالا که طرح نهایی رو آماده کردی، وقتشه که جعبه پلاستیکی رو برای نصب قطعات سوراخ کنیم. بهترین و دقیقترین کار اینه که طرحت رو با مقیاس واقعی چاپ کنی و با نوار چسب دوطرفه دقیقا روی سطح جعبه بچسبونی. اینطوری نیازی به خطکشی و اندازهگیری مجدد روی پلاستیک نداری و جای هر سوراخ کاملا مشخصه.
برای شروع، روی مرکز تمام دکمهها و ولومها رو با یک مته نازک (مثلا 2 میلیمتری) سوراخهای راهنما بزن. این کار باعث میشه موقع استفاده از متههای بزرگتر، دریل از مسیرش منحرف نشه.
بعد با توجه به سایز هر قطعه، مته رو عوض کن. برای ولومها مته 7 میلیمتری و برای دکمههای آرکید از مته برگی 24 میلیمتری استفاده کن. موقع کار با مته برگی خیلی صبور باش و جعبه رو محکم نگه دار (ترجیحا با گیره) تا سوراخها کاملا گرد و تمیز دربیان.
سختترین بخش کار، ایجاد شیار برای اسلایدرهاست. برای این کار باید با یک مته کوچک (3 میلیمتری) یک سری سوراخ خیلی نزدیک به هم در طول مسیر شیار ایجاد کنی. بعد از اینکه سوراخها رو زدی، با یک سوهان ظریف پلاستیکهای بینشون رو بردار و لبههای شیار رو کاملا صاف و یکدست کن. جای پیچهای اسلایدر رو هم کمی خزینه کن تا سر پیچها بیرون نزنه و مانع حرکت روان ولوم کشویی روی سطح جعبه نشه.
نصب قطعات و جایگذاری آردوینو
این مرحله خیلی لذتبخشه چون قراره چهره نهایی دستگاهت شکل بگیره. دکمههای آرکید خیلی راحت با یه فشار کوچک توی سوراخهای 24 میلیمتری جا میرن و محکم میشن. سعی کن پایههای اونا رو طوری تنظیم کنی که توی مسیر یکدیگر نباشن و سیمکشی تو مرحله بعد راحتتر بشه. پتانسیومترهای چرخشی رو هم از زیر وارد سوراخ کن و واشر و مهرهشون رو از رو محکم ببند.
برای نصب اسلایدرها باید از اسپیسرهای پلاستیکی استفاده کنی تا فاصله مناسبی با سطح جعبه داشته باشن و ولوم کشویی بتونه آزادانه حرکت کنه. بعد از نصب تمام قطعات روی در جعبه، باید برد آردوینو رو توی بخش پایینی (کف جعبه) جاگذاری کنی.
حواست باشه که پایههای دکمهها یا ولومها موقع بسته شدن در جعبه به قطعات روی برد آردوینو برخورد نکنن. اگه جایی گیر میکرد، میتونی پایههای قطعات رو کمی با دمباریک خم کنی تا فضای کافی ایجاد بشه. وقتی جای دقیق آردوینو مشخص شد، باید یک شکاف مستطیلی تمیز برای پورت USB روی دیواره جعبه دربیاری.
این کار رو میتونی با دریل کردن لبه دیواره و سوهانکاری انجام بدی. شکاف رو کمکم بزرگ کن تا پورت USB دقیقا و بدون لقی توش جا بیفته.
در نهایت زیر برد آردوینو از پایههای کوچیک یا اسپیسر استفاده کن و با پیچ اون رو روی کف جعبه حسابی محکم کن تا موقع وصل کردن کابل تکون نخوره.
اصول سیمکشی و اتصال به آردوینو
حالا میرسیم به بخش حساس سیمکشی. خبر خوب اینه که میکروکنترلر آردوینو خودش مقاومتهای داخلی پولآپ (Pull-up) داره، پس برای دکمههای آرکید نیازی به بستن مقاومتهای اضافی نداریم.
کافیه یک پایه از هر دکمه رو به پینهای دیجیتال آردوینو وصل کنی و پایه دیگهشون رو همگی به هم وصل کرده و در نهایت به پایه زمین (GND) ببری.
تنها استثنا، پین شماره 13 آردوینو هست که به خاطر داشتن الایدی داخلی، نمیتونی از پولآپ داخلیش استفاده کنی. برای این پین خاص باید خودت یک مقاومت پولداون (Pull-down) 4.7 کیلواهمی به صورت خارجی قرار بدی.
برای سیمکشی پتانسیومترها و اسلایدرها هم به سه تا سیم نیاز داری: یک سیم برای اتصال به زمین (GND)، یک سیم برای تغذیه 5 ولت و پین وسطی که همون خروجی آنالوگ ماست و باید مستقیم به پینهای آنالوگ آردوینو بره.
برای اینکه داخل جعبه تمیز بمونه، پایههای زمین و 5 ولت همه پتانسیومترها رو به صورت زنجیرهای (موازی) به هم وصل کن تا از شلوغی سیمها جلوگیری بشه.
بهتره از سیمهای رنگی استفاده کنی؛ مثلا قرمز برای تغذیه، مشکی برای زمین و رنگهای دیگه برای سیگنالها. اینطوری اگه بعدا خواستی مدار رو عیبیابی کنی، خیلی راحتتر مسیر سیمها رو پیدا میکنی.
لحیمکاری اتصالات و بستن جعبه
هویه رو داغ کن تا بریم سراغ لحیمکاری قطعات. اول از همه سر هویه رو با اسفنج مرطوب تمیز کن و بهش کمی قلع بزن. برای اینکه اتصالات زنجیرهای سیمهای زمین و تغذیه محکم باشه، سیمها رو به اندازه مناسب ببر، سرشون رو لخت کن و اونهایی که باید مشترک باشن رو به هم بپیچون. حتما قبل از لحیم کردن سیم به پایه دکمه یا پتانسیومتر، یک تکه وارنیش حرارتی (Heat shrink) روی سیم بنداز.
وقتی لحیمکاری تموم شد، وارنیش رو بکش روی نقطه اتصال و با حرارت جمعش کن تا هیچ سیم لختی توی مدار باقی نمونه. این کار از اتصالی کردن مدارت موقع بستن در جعبه جلوگیری میکنه. پایه 13 رو هم که یادت نرفته؟ مقاومت رو بهش لحیم کن و سیم دیتا رو تا پین آردوینو بکش.
وقتی تمام سیمهای آنالوگ و دیجیتال رو به پینهای مربوطه روی آردوینو وصل کردی و از محکم بودن اتصالات مطمئن شدی، وقتشه که کار رو جمع کنی. با احتیاط در جعبه رو ببند و مراقب باش سیمها لای در نمونن یا پایههای قطعات با سطح آردوینو تماس پیدا نکنن.
در نهایت پیچهای قاب رو ببند و اون پایههای لاستیکی رو زیر جعبه بچسبون تا وقتی داری با هیجان دیجی میکنی، دستگاهت روی میز لیز نخوره.
برنامهنویسی و آپلود کد روی آردوینو
بهت تبریک میگم، بخش سختافزاری کاملا تموم شد! حالا باید به مغز دستگاه یعنی آردوینو برنامه بدیم تا بفهمه با این ورودیها باید چه کار کنه. کدی که برای این پروژه در نظر گرفته شده، به صورت مداوم وضعیت تمام پینهای دیجیتال و آنالوگ رو اسکن میکنه.
به محض اینکه دکمهای رو فشار بدی یا ولومی رو تغییر بدی، آردوینو این تغییر رو تشخیص میده و یک پیام متناظر با اون رو از طریق پورت سریال USB برای سیستم میفرسته.
فقط یک نکته جالب توی کدهای این بخش وجود داره؛ چون ما از مقاومتهای پولآپ استفاده کردیم، وقتی دکمهای آزاد هست مقدار پین HIGH میشه و وقتی اون رو فشار میدی جریان به زمین راه پیدا میکنه و مقدارش LOW میشه. کدها دقیقا بر اساس همین منطق وارونه نوشته شدن.
کافیه کد مربوطه رو از طریق نرمافزار آردوینو روی برد آپلود کنی. بعد از آپلود، آردوینو شروع به کار میکنه و دستگاهت آماده است تا دیتا بفرسته.
نرمافزارهای مورد نیاز برای تبدیل سریال به MIDI
برنامهای که روی آردوینو ریختیم، دادهها رو به شکل ارتباط سریال میفرسته، در حالی که نرمافزارهای آهنگسازی به سیگنالهای استاندارد MIDI نیاز دارن. برای حل این مشکل به دو تا برنامه کوچک روی کامپیوترت نیاز داری.
اول از همه باید یک پورت MIDI مجازی توی سیستم بسازی. برنامههایی مثل MIDI Yoke یا LoopBe1 برای ویندوز این کار رو به راحتی و در پسزمینه انجام میدن. توی سیستمعامل مک هم نیازی به برنامه اضافه نیست و میتونی از ابزار داخلی سیستم (Audio MIDI Setup) برای ساخت این پورت استفاده کنی.
بعد از ساخت پورت مجازی، به برنامهای نیاز داری که پیامهای سریال آردوینو رو بگیره و تبدیلشون کنه. نرمافزار سبک Serial-MIDI Converter دقیقا برای همین کار ساخته شده. کافیه این نرمافزار رو باز کنی، پورت COM مربوط به آردوینو رو انتخاب کنی و مقصد رو روی همون پورت مجازی MIDI که ساختی قرار بدی.
حالا اگه دکمهای رو روی میدی کنترلرت فشار بدی، میبینی که چراغهای RX و TX توی نرمافزار چشمک میزنن و این یعنی ارتباط به درستی برقرار شده!
مپ کردن و اتصال کنترلر به نرمافزار
حالا وقتشه نرمافزار آهنگسازی یا دیجی محبوبت مثل Traktor، Ableton Live یا FL Studio رو باز کنی. بخش جذاب ماجرا دقیقا همینجاست که میتونی تکتک دکمهها و ولومها رو به هر عملکردی که دوست داری اختصاص بدی یا اصطلاحا مپ (Map) کنی.
روال کار تو بیشتر نرمافزارها خیلی ساده است؛ وارد تنظیمات MIDI میشی، یک عملکرد (مثلا پلی کردن، کنترل یک افکت یا تنظیم ولوم) رو انتخاب میکنی و بعد دکمه یا ولوم فیزیکی روی دستگاهت رو تکون میدی تا نرمافزار اون رو به صورت خودکار بشناسه و ثبت کنه.
هیچ محدودیتی وجود نداره! میتونی اسلایدرها رو برای ولوم لاینها، ولومهای چرخشی رو برای کنترل میزان افکتها و فیلترها، و دکمههای آرکید رو برای اجرای لوپها و پدها تنظیم کنی و از کار با یک کنترلر اختصاصی که کار دست خودته، حسابی لذت ببری.
ایدههایی برای توسعه در آینده
این دستگاه یک نقطه شروع فوقالعاده برای ورود به دنیای ساخت تجهیزات استودیوییه. میتونی تو قدمهای بعدی همین مدار رو توسعه بدی، تعداد دکمهها رو با استفاده از شیفت رجیسترها بیشتر کنی، یا حتی با تغییر کدها و استفاده از بردهایی که قابلیت HID دارن، اون رو به یک کنترلر USB MIDI واقعی تبدیل کنی که به هیچ نرمافزار واسطی هم نیاز نداشته باشه.
ساخت ابزاری که دقیقا متناسب با سلیقه و نیاز خودت طراحی شده باشه، حس بینظیری داره. اگه این میدی کنترلر رو ساختی، حتما ازش عکس یا ویدیو بگیر و توی اپلیکیشن آیسیمدار با بقیه بچههای الکترونیکی و موسیقیدوست به اشتراک بگذار تا ایدههاتون رو با هم ترکیب کنید. پرانرژی بساز و همیشه موفق باشی!
فایلهای پیوست
تو میتونی اولین سازنده باشی!
اگه پروژه رو ساختی به اشتراک بزار و اعتبار هدیه بگیر
این آموزش با استانداردهای اختصاصی آیسیمدار بازنویسی و بهینهسازی شده و تمامی حقوق انتشار آن متعلق به این مجموعه است و در صورت کپی یا بازنشر پیگرد قانونی خواهد داشت.












































گفتگوهای کاربران
هنوز نظری ثبت نشده؛ تو شروع کن!
هنوز نظری ثبت نشده؛ تو شروع کن!