সুচিপত্র:

Aalto জন্য Arduino MIDI কন্ট্রোলার: 7 ধাপ
Aalto জন্য Arduino MIDI কন্ট্রোলার: 7 ধাপ

ভিডিও: Aalto জন্য Arduino MIDI কন্ট্রোলার: 7 ধাপ

ভিডিও: Aalto জন্য Arduino MIDI কন্ট্রোলার: 7 ধাপ
ভিডিও: Web Programming - Computer Science for Business Leaders 2016 2024, জুলাই
Anonim
Aalto জন্য Arduino MIDI নিয়ামক
Aalto জন্য Arduino MIDI নিয়ামক

একজন অপেশাদার সঙ্গীতশিল্পী হওয়ায় আমি প্রায়ই এনালগ সিন্থস থেকে ভিএসটি -তে যাই।

যখন আমি "VST" মেজাজে থাকি, আমি সত্যিই একটি আশ্চর্যজনক যন্ত্রের মধ্যে থাকি: মাদ্রোনালাবের Aalto VST

এই অবিশ্বাস্য ভিএসটি খুব নমনীয়, এটি খুব ভাল শব্দ উৎপন্ন করে এবং যুক্তিসঙ্গত মূল্যে ব্যবহার করা বেশ সহজ।

আমার ভিএসটি -র সীমাবদ্ধতা, তবে, আমি সত্যিই নিয়ন্ত্রণগুলি স্পর্শ করতে পারি না এবং জ্যামের সময় আমাকে আমার মাউস/ট্র্যাকপ্যাড ব্যবহার করতে হবে - সেরা নয়। আমি একটি MIDI নিয়ামক মালিক কিন্তু knobs বাস্তব Aalto ইন্টারফেস প্রতিফলিত করে না।

অন্যদিকে, মডুলার বা সেমি-মডুলার সিন্থস দিয়ে আপনি সত্যিই আপনার প্যাচগুলি সংরক্ষণ করতে পারবেন না যা পুরো জিনিসটিকে আমার কাছে কিছুটা হতাশাজনক করে তোলে।

তাই আমি Aalto- এর জন্য একটি কাস্টম MIDI কন্ট্রোলার তৈরি করতে চেয়েছিলাম যা সবচেয়ে প্রাসঙ্গিক জিনিসগুলিকে নিয়ন্ত্রণ করার জন্য Aalto- এর ইন্টারফেসকে প্রতিফলিত করে।

প্রক্রিয়াটির আরও ভিডিও দেখতে আমাকে ইনস্টাগ্রামে অনুসরণ করুন: weirdest.worry

আমি, Spotify- এ:

সরবরাহ

- 1 Arduino Mega- 14 Potentiometers (আমি সেগুলো ব্যবহার করেছি -> PTV09A -4020F -B103) - প্রোটোটাইপের জন্য একটি ব্রেডবোর্ড - আমি সত্যিই ইলেক্ট্রো কুকি পারফোর্ডের সুপারিশ করি যা সোল্ডারিংয়ের জন্য খুবই ভালো (ছবিতে নীল রঙের) - প্লাইউড - সোল্ডারিং লোহা - কপার টেপ - তারের ঝাঁপ দাও

ধাপ 1: আপনার নিজের ডিজাইন করুন

আপনার নিজের ডিজাইন করুন
আপনার নিজের ডিজাইন করুন
আপনার নিজের ডিজাইন করুন
আপনার নিজের ডিজাইন করুন
আপনার নিজের ডিজাইন করুন
আপনার নিজের ডিজাইন করুন
আপনার নিজের ডিজাইন করুন
আপনার নিজের ডিজাইন করুন

আমার VST এর ইন্টারফেস থেকে শুরু করে, আমি নিখুঁত ফিট খুঁজে পেতে কিছু কাগজ দিয়ে আমার লেআউটকে ওয়্যারফ্রেম করতে চেয়েছিলাম।

আমি তখন একটি সফটওয়্যারের সাথে এটি ডিজাইন করেছি, এটি মুদ্রণ করেছি, এবং এটি একটি কার্ডবোর্ড প্রোটোটাইপে আঠালো করেছি যাতে লেআউটটি বাস্তব জগতে কাজ করতে পারে।

এই পদক্ষেপটি সত্যিই আপনার উপর নির্ভর করে - আপনি এটি একটি টিনের বাক্স বা একটি ম্যাচবক্সের জন্য ডিজাইন করতে পারেন: আমার সুপারিশ হল যতটা সম্ভব প্রোটোটাইপ করা।

ইলেকট্রনিক্স বোর্ডের সাথে প্লাইউড কেস তৈরি করা এবং পারফোর্ড ব্যবহার করা এখন পর্যন্ত সবচেয়ে সুনির্দিষ্ট বিষয় নয়: যত বেশি আপনি পরীক্ষা করবেন তত ভাল।

ধাপ 2: সোল্ডারিং এবং ওয়্যারিং

সোল্ডারিং এবং ওয়্যারিং
সোল্ডারিং এবং ওয়্যারিং
সোল্ডারিং এবং ওয়্যারিং
সোল্ডারিং এবং ওয়্যারিং
সোল্ডারিং এবং ওয়্যারিং
সোল্ডারিং এবং ওয়্যারিং
সোল্ডারিং এবং ওয়্যারিং
সোল্ডারিং এবং ওয়্যারিং

আপনার নকশা সম্পূর্ণ হলে, আপনি ইলেকট্রনিক্সের জন্য যেতে পারেন!

দ্রষ্টব্য: আমি অনুমান করছি যে আপনি জানেন যে এই জিনিসগুলি কীভাবে কাজ করে তাই আমি সোল্ডারিং এবং সংযোগের বিবরণে যাব না।

এই পর্যায়ে আমি তিনটি পৃথক সার্কিটের জন্য 2 টি ভিন্ন ছিদ্রযুক্ত বোর্ড ব্যবহার করেছি: হলুদ-ইশ সম্ভবত সবচেয়ে সাধারণ। আমি এটা খুব পছন্দ করি না কিন্তু আমার কাছে একটি অতিরিক্ত ছিল তাই আমি যেভাবেই এটি ব্যবহার করতে চেয়েছিলাম নীল-ইশ এক উপায় আরও ভাল এবং আমি সত্যিই এটি ব্যবহার করার সুপারিশ করি যদি আপনি আমার মতো একজন শিক্ষানবিশ হন।

হলুদ-ইশ-এ একটি ছিদ্র খুব, খুব ছোট এবং তামার প্রতিটি গর্তের চারপাশে একপাশে থাকে, সোল্ডারটি গর্তের মধ্য দিয়ে প্রবাহিত হবে না।

এই বোর্ডে ট্রেসগুলি ডিজাইন করার জন্য, আমি 5 মিমি তামার টেপের জন্য যাওয়ার সিদ্ধান্ত নিয়েছি: আমি এটি অর্ধেক কেটে ফেলেছিলাম কিন্তু এটি একটি ভয়ঙ্কর ধারণা ছিল। যেহেতু এটি খুব হালকা হ্যান্ডেল করা ভয়ঙ্কর এবং GND এবং VCC উভয়ই সঠিকভাবে বিতরণ করা যাবে না। এর জন্য প্রচুর পরীক্ষা এবং ফিক্সিংয়ের প্রয়োজন হয়েছিল এবং এটি খুব দীর্ঘ সময় নিয়েছিল।

কিন্তু আরে, এটা শেষ পর্যন্ত খুব ভাল দেখাচ্ছে।

চারপাশে চলমান তারগুলি তৈরি করা কিছুটা বেদনাদায়ক: এই বোর্ডটি চূড়ান্ত করা সম্ভবত সবচেয়ে বেশি সময় নিয়েছে।

নীল পারফোর্ড (যা আমাজনে ইলেক্ট্রো কুকি নামে পরিচিত) ব্যবহার করা আরও ভাল ছিল: এটি একটি ব্রেডবোর্ডের মতো সংযুক্ত, আপনি তামার টেপ ব্যবহার এড়াতে পারেন কারণ একই ব্লকে সোল্ডার করার সময় পিন এবং তারগুলি ইতিমধ্যেই সংযুক্ত থাকে।

এছাড়াও, আপনি এটি আপনার হাত দিয়ে ছোট ছোট টুকরো টুকরো করতে পারেন যা ভয়ানক ভাল।

ছিদ্রগুলি বড় এবং তামার মধ্যে লেপা যা সোল্ডারিংকে দ্রুত এবং পরিষ্কার করে তোলে।

প্রথম হলুদ-ইশ বোর্ড করতে 3-4 দিন সময় লেগেছিল, অন্য 2 টি তৈরি করতে মাত্র কয়েক ঘন্টা।

Potentiometers নোট আপনি যেমন দেখতে পাচ্ছেন আমাকে পাত্রের পা বাঁকতে হয়েছে - সেগুলি PBC- তে ব্যবহার করার জন্য বোঝানো হয়েছে এবং এই ক্ষেত্রে সত্যিই সেরা নয়। যাইহোক, তাদের পা সমকোণে বাঁকানো তাদের খুব স্থিতিশীল করে তোলে।

ধাপ 3: হার্ডওয়্যার থেকে সফটওয়্যার

হার্ডওয়্যার থেকে সফটওয়্যার
হার্ডওয়্যার থেকে সফটওয়্যার

এখন আপনি আপনার সমস্ত জিনিস সংযুক্ত করেছেন এবং আশা করি আপনি আপনার Vcc এবং GND চেক করার জন্য আপনার পরীক্ষা করেছেন ঠিক আছে।

পোর্টেন্টিওমিটারগুলি সম্ভবত আরডুইনোতে শুরু করা সবচেয়ে সহজ জিনিস।

তাদের তিনটি পিন আছে: একটি GND এর জন্য, একটি 5V এর জন্য। সেন্ট্রাল পিন হল পটেন্টিওমিটারের এক ধরণের "আউটপুট"। আপনি যদি GND কে বাম পিন, 5V কে ডান পিনের সাথে সংযুক্ত করেন এবং আপনি পাত্রটিকে ঘড়ির কাঁটার দিকে ঘুরিয়ে দেন, তাহলে আপনি তার "আউটপুট" এর মান 0 থেকে 5V এর মধ্যে বাড়তে দেখবেন।

কেন্দ্রীয় পিনটি Arduino এর "এনালগ ইনপুট" এর একটিতে যায় যা মানটির নমুনা দেবে এবং এটি এটি একটি ডিজিটাল নম্বরে অনুবাদ করবে: Arduino Mega 2560 মানগুলি 0 থেকে 1023 পর্যন্ত অনুবাদ করে (যখন পাত্রটি সব থাকবে বাম পথ দিয়ে, 1023 যখন ডান দিক দিয়ে 5V)।

মনে রাখবেন যে MIDI 0 থেকে 123 এর মান গ্রহণ করে তাই সিরিয়ালের মাধ্যমে পূর্ণসংখ্যা মান পাঠানোর আগে আপনাকে 8 দ্বারা Arduino মান ভাগ করতে হবে।

এটি দেখতে খুবই সহজ (এবং এটি) কিন্তু মনে রাখার জন্য কয়েকটি বিষয় আছে:- অনেক সময় পাত্রগুলি খুব সুনির্দিষ্ট হয় না: তাদের আউটপুট এলোমেলোভাবে সংলগ্ন মানগুলিতে ঝাঁপিয়ে পড়তে পারে, অবাঞ্ছিত সিসি কমান্ডগুলিকে ট্রিগার করে- আপনার সার্কিট (ভাল, আমার এই ক্ষেত্রে) নিখুঁত নয়: যেহেতু একটি PCB নয় তাই আপনি এখানে এবং সেখানে এলোমেলো মান থাকতে পারেন, আবার, এলোমেলো মান। এটি এড়ানোর জন্য আপনাকে একটি সমাধান খুঁজে বের করতে হবে

আমার কোডটি উপরের তিনটি পয়েন্ট মোকাবেলা করার জন্য লেখা হয়েছে এবং এটি বেশ ভাল করে।

ধাপ 4: MIDI কিভাবে কাজ করে

MIDI একটি খুব পুরানো প্রোটোকল, যা কম্পিউটার এবং যন্ত্রগুলিকে একসাথে কাজ করার জন্য ডিজাইন এবং তৈরি করা হয়েছে।

MIDI কীভাবে কাজ করে তার একটি বিস্তৃত ব্যাখ্যা আছে: যখন নোট পাঠানোর কথা আসে, সেখানে আপনি প্রচুর সংকেত পাঠাতে পারেন কিন্তু আমাদের ক্ষেত্রে সবকিছুই খুব সহজ।

আমরা কন্ট্রোল চেঞ্জ (MIDI) নিয়ে কাজ করি তাই আমাদের এই টেবিলে রিপোর্ট করা এই চ্যানেলগুলির একটি ব্যবহার করতে হবে:

www.midi.org/specifications-old/item/table…

176 থেকে 191 পর্যন্ত।

যখন আপনি MIDI/CC মান পাঠান তখন আপনাকে সিরিয়ালের মাধ্যমে পাঠাতে হবে: - স্ট্যাটাস বাইট (টেবিলের প্রথম কলাম) আপনার DAW কে বলার জন্য আপনি একটি CC পাঠাচ্ছেন- কোন নিয়ন্ত্রণ - এই ক্ষেত্রে, কোন KNOB - এটি পাঠাচ্ছে (পূর্ণসংখ্যা সংখ্যা)- নিয়ন্ত্রণের মান

আমার ক্ষেত্রে আমার 14 টি knob আছে তাই একটি বার্তা হতে পারে:

Serial.write (176, 13, 107)

Knob 13 সিসির মাধ্যমে 107 মান পাঠাচ্ছে।

MIDI 0 থেকে 123 পর্যন্ত মান গ্রহণ করে যখন Arduino 0 থেকে 1023 পর্যন্ত এনালগ মানগুলি পড়ে - মানটি sanding করার আগে 8 দ্বারা ভাগ করা মনে রাখবেন।

ধাপ 5: Arduino- তে USB এর মাধ্যমে MIDI পাঠান

আরডুইনো দিয়ে ইউএসবি -তে MIDI পাঠানোর জন্য আপনার কাছে 2 টি বিকল্প আছে:

  • একটি অভ্যন্তরীণ Arduino USB নিয়ামক ঝলকানি (আপনার প্রকল্পের একেবারে শেষে প্রস্তাবিত)
  • Arduino স্টক ছেড়ে এবং আপনার পিসিতে একটি সফ্টওয়্যার ব্যবহার করুন (এটি) খুব প্রস্তাবিত

আরডুইনো ইউএসবি কন্ট্রোলার ফ্ল্যাশ করা প্রোটোটাইপের সবচেয়ে সুবিধাজনক উপায় নয়: যখন আপনি ইউএসবি -তে MIDI পাঠানোর জন্য ফার্মওয়্যার ফ্ল্যাশ করেন, তখন আরডুইনো আপলোড করার জন্য কোনো নতুন কোড পাবেন না, তাই আপনি যদি আপনার কোড আপডেট করতে চান, তাহলে আপনাকে ফার্মওয়্যার ফ্ল্যাশ করতে হবে স্টক ভার্সনে।তাই, উদাহরণস্বরূপ, আপনার Arduino স্টক এবং আপনি কোড আপলোড করুন। আপনি MIDI কাজ করার জন্য এটি ফ্ল্যাশ করুন। এটিকে আনপ্লাগ করুন।

আপনি এটিকে আবার স্টকে ফ্ল্যাশ করুন। আনপ্লাগ করুন।

এর একমাত্র প্রো হল যে আপনাকে কোন বাহ্যিক সফটওয়্যার ব্যবহার করতে হবে না কিন্তু আমি আপনার প্রকল্পের একেবারে শেষে এই পদ্ধতিটি ব্যবহার করার সুপারিশ করছি।

অন্যদিকে হেয়ারলেস ব্যবহার করা খুব সহজ কারণ আপনাকে কিছু ফ্ল্যাশ করতে হবে না - যদি আপনি ম্যাকের উপর থাকেন তবে এটি MIDI সেটআপের সাথে পুরোপুরি কাজ করে এবং আপনার DAW এটিকে অবিলম্বে "হেয়ারলেস মিডি কন্ট্রোলার" হিসাবে স্বীকৃতি দেবে। উত্তম.

ধাপ 6: কোডিং সময়

কোডিং সময়!
কোডিং সময়!

আমি Github এ আমার কোড পোস্ট করার জন্য এখানে অনেক কিছু বলার অপেক্ষা রাখে না এবং আমি যতটা সম্ভব কোডটি মন্তব্য করেছি।

শুধু কিছু মৌলিক বিষয় মনে রাখবেন:

  1. বৈদ্যুতিক মান আমার ওঠানামা করে
  2. আপনি অপ্রয়োজনীয় সিসি সংকেত দিয়ে আপনাকে DAW বন্যা করতে চান না
  3. আপনি ডুপ্লিকেট সিসি মেসেজ পাঠাতে চান না

আমার কোডে সবকিছু ব্যাখ্যা করা হয়েছে এবং আপনি এটি এখানে খুঁজে পেতে পারেন

ধাপ 7: আপনার জিনিসগুলি একসাথে রাখুন

আপনার জিনিস একসাথে রাখুন
আপনার জিনিস একসাথে রাখুন
আপনার জিনিস একসাথে রাখুন
আপনার জিনিস একসাথে রাখুন
আপনার জিনিস একসাথে রাখুন
আপনার জিনিস একসাথে রাখুন

এখন আপনার কোড কাজ করছে এবং আপনাকে যা করতে হবে তা হল আপনার জিনিসগুলিকে একসাথে রাখা।

এর জন্য আমার কিছু কাঠের দক্ষতা প্রয়োজন হবে (সৌভাগ্যক্রমে আমার স্ত্রী আমাকে এই প্রক্রিয়ায় সাহায্য করেছেন) তাই আমি সত্যিই পরামর্শ দিতে পারছি না কিন্তু যদি আপনি পারফোর্ড ব্যবহার করার সিদ্ধান্ত নেন তবে আপনার একটি খুব পরিষ্কার এবং পরিষ্কার কাজ হবে। এখন আপনার ইউএসবি প্লাগ করুন, আপনার DAW খুলুন এবং কিছু বেস বাদ দিন!

প্রস্তাবিত: