সুচিপত্র:

Arduino মাল্টি-ট্র্যাক MIDI লুপ স্টেশন: 6 টি ধাপ
Arduino মাল্টি-ট্র্যাক MIDI লুপ স্টেশন: 6 টি ধাপ

ভিডিও: Arduino মাল্টি-ট্র্যাক MIDI লুপ স্টেশন: 6 টি ধাপ

ভিডিও: Arduino মাল্টি-ট্র্যাক MIDI লুপ স্টেশন: 6 টি ধাপ
ভিডিও: ELF/EMBARC Bronchiectasis conference 2023 with subtitles 2024, জুলাই
Anonim
Arduino মাল্টি-ট্র্যাক MIDI লুপ স্টেশন
Arduino মাল্টি-ট্র্যাক MIDI লুপ স্টেশন
Arduino মাল্টি-ট্র্যাক MIDI লুপ স্টেশন
Arduino মাল্টি-ট্র্যাক MIDI লুপ স্টেশন
Arduino মাল্টি-ট্র্যাক MIDI লুপ স্টেশন
Arduino মাল্টি-ট্র্যাক MIDI লুপ স্টেশন

একটি লুপ স্টেশন, বা একটি লুপার, মূলত রিয়েল টাইমে আপনার ইন্সট্রুমেন্টাল রিফ (লুপ) প্লেব্যাক করার একটি টুল। এটি একটি রেকর্ডিং মিডিয়া হিসাবে নয়, কিন্তু বিভ্রান্তি ছাড়াই অনুপ্রেরণা তৈরি করার একটি যন্ত্র (এবং শেষ পর্যন্ত লাইভ সঞ্চালন …)।

সেখানে প্রচুর অডিও রেকর্ডিং লুপ স্টেশন রয়েছে, উভয়ই ডেডিকেটেড হার্ডওয়্যার (প্রায় প্রতিটি একক গিটার প্যাডেল প্রস্তুতকারকের নিজস্ব পণ্য) বা কম্পিউটার সফটওয়্যার (চমৎকার লিনাক্স সুপার লুপার বা উইন্ডোজ মবিয়াস, সর্বাধিক পরিচিত)। আমি কেবল DIY নন-অডিও কিন্তু MIDI লুপার সম্পর্কে কয়েকটি প্রকল্প খুঁজে পেতে পারি, যার অর্থ MIDI ইভেন্টগুলি রেকর্ড করার এবং তাদের অবিলম্বে একটি লুপে চালানোর একটি সরঞ্জাম; এই প্রকল্পগুলির অধিকাংশ (তাদের সবই, আমার বলা উচিত) পরিত্যক্ত বা হারিয়ে গেছে … ভাল, এখানে আমরা প্রত্যেকের জন্য একটি সম্পূর্ণ প্রকল্প নিয়ে এসেছি!

এই Arduino MIDI লুপ স্টেশনটি কেবল ইনকামিং MIDI ইভেন্টগুলির ট্র্যাক রাখে এবং সেগুলি আবার প্লে করে। আপনাকে কেবল রেকর্ড প্যাডেল টিপতে হবে, আপনার সেরা রিফ তৈরি করতে হবে এবং আবার প্যাডেল টিপে রেকর্ডিং বন্ধ করতে হবে। অতি সহজ:)

এই প্রকল্পটি খোলা হার্ডওয়্যার (Arduino DUE), সফ্টওয়্যার (আমার নিজের ফার্মওয়্যার এবং Arduino IDE) খুঁজে পেতে সহজ এবং আপনার পছন্দগুলি প্রতিফলিত করার জন্য কাস্টমাইজ করা যায়।

চল এটা করি!

PS: হ্যাঁ, এটা খুবই সস্তা!

ধাপ 1: সীমা

আপনি প্রকল্পের জন্য হার্ডওয়্যার যন্ত্রাংশ অর্জন শুরু করার আগে, আমি আপনাকে বলি এর সীমা কোনটি যাতে আপনি এগিয়ে যাওয়ার বা এখানে থামার সিদ্ধান্ত নিতে পারেন।

- হার্ডওয়্যারের সীমাবদ্ধতার কারণে (Aduino DUE মেমরি মূলত), আপনি যে বাক্যাংশটি রেকর্ড করতে পারেন তার ডিফল্ট সর্বোচ্চ দৈর্ঘ্য 46 সেকেন্ডের মধ্যে সীমাবদ্ধ।

- লুপগুলি সংরক্ষণ করা যায় না এবং বন্ধ করার পরে আবার প্লে করা যায়। আপনি তাদের একটি পিসিতে পাঠাতে পারেন এবং সেগুলি সংরক্ষণ করতে পারেন।

- কোন নোট পরিমাপ নেই

- MIDI ঘড়ি সমর্থিত, কিন্তু এই সময়ে একটি প্রাথমিক পর্যায়ে।

- রেকর্ড করা MIDI বার্তাগুলি নোট অন, নোট অফ, কন্ট্রোল পরিবর্তন এবং পিচ বেন্ড; অন্যান্য MIDI বার্তা যেমন স্পর্শের পরে, প্রোগ্রাম পরিবর্তন, SysEx, ইত্যাদি উপেক্ষা করা হয়।

- সর্বাধিক পলিফোনি ডিফল্টভাবে 10 এ সেট করা হয়েছে (আবার, অ্যাডুইনো ডিউ মেমরির সীমা)।

প্লাস সাইডে, MIDI একাধিক বিভিন্ন যন্ত্র থেকে প্রবাহিত হয়, প্রতিটি তার নিজস্ব চ্যানেলে প্রেরণ করা হয়; এর মানে হল যে আপনি একসাথে একাধিক MIDI যন্ত্র রেকর্ড করতে পারেন, স্তরযুক্ত বা তাদের নিজস্ব ট্র্যাক (পরবর্তী ধাপে আরো পেশাদার;))।

যদি এই সীমাবদ্ধতার সাথে বসবাস করা যুক্তিসঙ্গত মনে হয় (এবং এটি আমার জন্য), আপনি এই জিনিসটির সাথে খুব ভাল সময় কাটাবেন;)

ধাপ 2: এটি কিভাবে কাজ করে

এখানে MIDI লুপ স্টেশনটি পরিচালনা করা খুবই সহজ। এটি সেই হার্ডওয়্যার অডিও লুপ স্টেশনগুলির মতো কাজ করে যা প্রতিটি গিটার প্যাডাল প্রস্তুতকারকের নিজস্ব ক্যাটালগে রয়েছে।

1) আপনি আপনার MIDI ক্রম রেকর্ড করতে চান এমন ট্র্যাক নির্বাচন করুন। ডিফল্ট ট্র্যাকের মাধ্যমে "একটি" নির্বাচন করা হয়, কিন্তু আপনি ট্র্যাকের একটি বোতাম (প্রতিটি ট্র্যাকের জন্য একটি) টিপে এটি পরিবর্তন করতে পারেন।

2) যখন আপনি প্রথমবার "REC" সুইচ/ফুট প্যাডেল টিপবেন, তখন লুপারটি নিযুক্ত। সবুজ LED আলো জ্বলে ওঠে। প্রকৃত ক্রম/রিফ রেকর্ড করা শুরু করার আগে আপনার প্রথম নোট না পাওয়া পর্যন্ত এটি অপেক্ষা করবে।

3) যখন আপনি আপনার সিকোয়েন্সটি শেষ করবেন, তখন রিফের প্রকৃত দৈর্ঘ্য নির্ধারণ করতে আবার "REC" সুইচ/ফুট প্যাডেল টিপুন। সবুজ LED বাতি বন্ধ। লুপার অবিলম্বে আপনার MIDI ক্রম পুনরুত্পাদন শুরু করবে। যদি আপনি সর্বোচ্চ সময়ে পৌঁছান, রেকর্ডিং স্বয়ংক্রিয়ভাবে বন্ধ হয়ে যাবে এবং ক্রমটি একটি লুপে পুনরুত্পাদন শুরু হবে।

4) এখন, আপনি বর্তমান ট্র্যাকের উপর আপনার ক্রমকে অতিরিক্ত করার সিদ্ধান্ত নিতে পারেন বা "REC" সুইচ/ফুট প্যাডালকে হতাশ করে একটি নতুন ট্র্যাক এবং তার উপর রেকর্ড নির্বাচন করতে পারেন। উভয় ক্ষেত্রেই হলুদ LED জ্বলবে, এমনকি নতুন ট্র্যাক খালি থাকলেও, কারণ এটি একটি "স্লেভ" ট্র্যাক (রেকর্ড করা প্রথম ট্র্যাকের দাস)। ওভারডাবিং বন্ধ করতে আবার টিপুন (হলুদ LED বন্ধ হয়ে যায়)।

আপনারা যারা অডিও লুপিং স্টেশনে স্বাচ্ছন্দ্যবোধ করেন তাদের জন্য এই MIDI অগ্রগতিটিকে "REC/PLAY/OVERDUB" বলা হয় এবং এটিই একমাত্র সমর্থিত।

যদি কোনো সময় আপনি মনে করেন যে আপনার সর্বশেষ ওভারডাব ঠিক নেই, তাহলে আপনি "পূর্বাবস্থায় ফিরিয়ে আনুন" সুইচ/ফুট প্যাডেল টিপে এটি মুছে ফেলতে পারেন। আপনি "REC" প্যাডেলটি 3 সেকেন্ডের বেশি চেপে রেখে পুরো বর্তমান ট্র্যাকটি পরিষ্কার করতে পারেন; আপনি একই সময়ে প্রথম তিনটি ট্র্যাক বোতাম টিপে বা সমস্ত ব্যবহৃত ট্র্যাকগুলি সাফ করে লুপার (সফ্টওয়্যার রিসেট) পুনরায় সেট করতে পারেন।

আপনি বর্তমান ট্র্যাকের ট্র্যাক বোতাম টিপে একটি ট্র্যাক নি mশব্দ/আনমিউট করতে পারেন।

আপনি একটি প্যানিক পাঠাতে পারেন! প্যানিক বোতাম টিপে বার্তা। আপনি এমনকি একটি প্যানিক পাঠাতে পারেন! একই সাথে প্রথম দুটি ট্র্যাক বোতাম টিপে বার্তা।

লুপারের একটি সহজ মেট্রোনোম রয়েছে: নোট নম্বর "64" এর জন্য MIDI বার্তার একটি নোট চ্যানেল 10 এ 100 BPM এ পাঠানো হয় (যে চ্যানেলটি সম্ভবত আপনার ড্রাম মেশিনটি শুনছে)। আপনি অপটিক্যাল এনকোডার টিউর করে টেম্পো বাড়াতে বা কমাতে পারেন; অপটিক্যাল এনকোডার সুইচ হতাশ করে আপনি মেট্রোনোম সক্ষম/অক্ষম করতে পারেন। লক্ষ্য করুন যে MIDI নোট "64" পাওয়ার সময় আপনার ড্রাম মেশিনটি অবশ্যই একটি সাউন্ড (ফাঁদ, বাজ বা আপনার পছন্দ মতো শব্দ) বাজানোর জন্য সেট করতে হবে অথবা মেট্রোনোম নিuteশব্দ হবে।

এই MIDI লুপস্টেশনের একটি বেয়ারবোন সংস্করণ রেকর্ডিং শুরু এবং বন্ধ করার জন্য একটি একক ফুট সুইচ দিয়ে তৈরি করা যেতে পারে। 3 সেকেন্ডের বেশি সময় ধরে সুইচ টিপে রাখলে লুপ স্টেশনটি পুনরায় শুরু হবে।

আপনি যদি হার্ডওয়্যারের উন্নয়নে কিছু অতিরিক্ত সময় বিনিয়োগ করতে চান, সুইচ এবং বোতাম যোগ করলে লুপ স্টেশনটি আরও নমনীয় হবে। ছবিতে আমি আমার চারটি ট্র্যাক (পাঁচটি পর্যন্ত সমর্থিত) সম্পূর্ণ বৈশিষ্ট্যযুক্ত লুপ স্টেশন কনফিগার করেছি।

গুরুত্বপূর্ণ নোট: আমার ছবির হার্ডওয়্যার একটি প্রোটোটাইপ। আমি প্রয়োজনের চেয়ে বেশি জ্যাক সকেট ব্যবহার করেছি কিন্তু ট্র্যাকের জন্য মাত্র চারটি বোতাম। এর কারণ হল যখন আমি প্রকল্পটি শুরু করেছিলাম তখন আমি নিশ্চিত ছিলাম না যে চূড়ান্ত প্রয়োজনীয়তাগুলি কী হবে।

বোতাম এবং পা সুইচ বৈদ্যুতিনভাবে সমতুল্য এবং আপনি অন্যটির পরিবর্তে একটি ব্যবহার করতে পারেন; আমার প্রয়োজনের জন্য, যেহেতু সর্বদা খুব কম ফ্লোর স্পেস থাকে (খুব সুন্দর প্রভাব প্যাডেল;)), আমি একক REC ফাংশনে পায়ের প্যাডেলগুলি সীমাবদ্ধ করেছি।

ধাপ 3: হার্ডওয়্যার

হার্ডওয়্যার
হার্ডওয়্যার
হার্ডওয়্যার
হার্ডওয়্যার
হার্ডওয়্যার
হার্ডওয়্যার
হার্ডওয়্যার
হার্ডওয়্যার

উপকরণ বিল:

সম্পূর্ণ বৈশিষ্ট্যযুক্ত 5-ট্র্যাক MIDI লুপ স্টেশন

1x Arduino DUE

7x ক্ষণস্থায়ী পুশ বোতাম

1x প্লাস্টিকের কেস (আমি 150 x 110 x 70 মিমি কেস ব্যবহার করেছি)

2x 5-pin DIN মহিলা প্যানেল মাউন্ট MIDI সকেট সংযোগকারী

1x 6.3 মিমি প্যানেল মাউন্ট জ্যাক সকেট

1x ডবল পার্শ্বযুক্ত 50x70 মিমি পারফ বোর্ড

5x 3 মিমি LED (সবুজ)

1x 3 মিমি LED (হলুদ)

1x অপটিক্যাল এনকোডার

1x H11L1 অপটোকপলার

1x 1N4148 ডায়োড

3x 1000 ohm প্রতিরোধক

3x 220 ohm প্রতিরোধক

10x 470 ওহম প্রতিরোধক

কিছু সোল্ডার ওয়্যার, কিছু ক্যাবল, সোল্ডারিং স্টেশন… এবং অতিরিক্ত সময়:)

প্রকল্পটি সম্পন্ন করতে সময় প্রয়োজন: 6-9 ঘন্টা

ইউএনও কেন নয়?

প্রথম পরীক্ষা (এবং একটি শুরু ওয়ার্কিং কোড) একটি "নিয়মিত" আরডুইনো ইউএনও বোর্ডে লেখা হয়েছিল। এই বোর্ডের র‍্যাম সীমা আছে যা আমাকে বহুগামীকে "4", সর্বোচ্চ দৈর্ঘ্য 4 সেকেন্ডের কম এবং সর্বোচ্চ 40 ms এর রেজোলিউশন কমিয়ে আনতে বাধ্য করে। এটি কোন মাল্টিচ্যানেল হ্যান্ডলিং ছাড়া। বেগ ট্র্যাকিং অপসারণ করে, আমি রেকর্ডিং সময় 7 সেকেন্ড পর্যন্ত বাড়িয়ে তুলতে সক্ষম হয়েছিলাম।

ইউএনও দিয়ে আপনি একটি "কার্যকরী" MIDI লুপ স্টেশন বুঝতে পারেন, কিন্তু অত্যন্ত সীমিত।

ধাপ 4: সফটওয়্যার

সফটওয়্যারটি ফোর্টিসেভেনফেক্টস MIDI লাইব্রেরির উপর ব্যাপকভাবে নির্ভর করে। এই লাইব্রেরিটি দুর্দান্ত এবং এই ধরণের প্রকল্পগুলি আমার মতো নন কোডার গিকদের জন্যও সম্ভব করে তোলে।

Arduino IDE এবং এর সম্প্রদায় এই "সাফল্যের" আরেকটি গুরুত্বপূর্ণ অংশ।

আমি কিভাবে আপনার arduino DUE তে স্কেচ আপলোড করব সে সম্পর্কে বিস্তারিত জানব না। যদি এটি আরডুইনো আইডিই এর সাথে আপনার প্রথম অভিজ্ঞতা হয়, তাহলে দয়া করে প্রথমে এটি পড়ুন।

আমি দুটি সম্পূর্ণ ভিন্ন পদ্ধতির উপর ভিত্তি করে কোডের দুটি ভিন্ন সংস্করণ লিখেছি।

সংস্করণ 1 এর কার্যকরী নীতি হল যে Arduino DUE চেক এবং ওভারডাবিংয়ের সময় এটির (অস্থির) মেমরি সমর্থিত MIDI ইভেন্টগুলি (নোট অন, নোট অফ, কন্ট্রোল চেঞ্জ এবং পিচ বেন্ড) মেমোরিতে সংরক্ষণ করে; সময় অক্ষ 20 ms ধাপে পরিমাপ করা হয় এবং প্রাপ্ত বার্তাগুলি সেই স্লটে সে অনুযায়ী সংরক্ষণ করা হয়। খেলার সময়, সংরক্ষিত MIDI বার্তাগুলি সিন্থে ফিরে পাঠানো হয় সময় পরিমাপকে সম্মান করে।

সংস্করণ 2 এর কাজের নীতি, পরিবর্তে, "সহজভাবে" মিডি ইভেন্ট এবং সময় রেকর্ড করা যেখানে ইভেন্টটি ট্রিগার করা উচিত। সংস্করণ 2 এর সংস্করণ 1 এর চেয়ে আলাদা সীমা রয়েছে (পূর্ববর্তী ধাপে তালিকাভুক্ত)। তাদের উভয় চেষ্টা করুন এবং আপনার জন্য ভাল কাজ করে এমন একটি ব্যবহার করুন।

একটি প্রিলিমিনার ক্লক হ্যান্ডলিংও আছে, তবে এটির মতো কাজ করার জন্য কিছু পরিবর্তন প্রয়োজন হবে। কোড অনুমান করে যে আপনি একটি 4/4 - 4 বার লুপ (16 বিট) রেকর্ড করেন।

আপনি লুপার চালু করার সময় "প্যানিক" বোতাম টিপে বাহ্যিক ঘড়ি নিষ্ক্রিয় করতে পারেন।

কোডগুলি এখানে আপলোড করা হয়। মন্তব্যগুলি তাদের সব জায়গায় রাখা হয়েছে, যাতে আপনি সেই ফার্মওয়্যারটি আপনার ইচ্ছায় বাঁকতে পারেন;)

ধাপ 5: তারের

Wirings
Wirings
Wirings
Wirings
Wirings
Wirings

MIDI IN এবং MIDI আউট সার্কিট সংযুক্ত ছবিতে রিপোর্ট করা হয়েছে। লক্ষ্য করুন যে TX1 এবং RX1 ব্যবহার করা হয়েছে, TX0 এবং RX0 নয়।

Arduino DUE ইনপুট পিন 5V পরিচালনা করতে পারে না, কিন্তু 3.3V; এই কারণেই একটি সাধারণ 6N138 এর পরিবর্তে একটি H11L1 অপটোকপলার ব্যবহার করা হয়। আমার কাছে প্রমাণ আছে যে 6X138 ব্যবহার করে ভোল্টেজ ডিভাইডার ব্যবহার করে TX1 এ যাওয়া সিগন্যাল ভোল্টেজ কমাতে, যেমন আমার প্রথম প্রোটোটাইপে, কিছু সেটআপগুলিতে ভুলভাবে কাজ করতে পারে।

LEDs 470 Ohm প্রতিরোধকের মাধ্যমে Arduino DUE আউটপুট পিনের সাথে সংযুক্ত। আপনি LEDs তে যাওয়া বর্তমান কমাতে এবং তাদের উজ্জ্বলতা কমাতে 1K ওহম পর্যন্ত প্রতিরোধক ব্যবহার করতে পারেন।

বাটন/সুইচ/জ্যাক সরাসরি Arduino ইনপুট পিনের সাথে সংযুক্ত থাকে ইনপুট পুলআপ প্রতিরোধককে ধন্যবাদ, স্কেচে সক্রিয়। বাহ্যিক (পুলডাউন) প্রতিরোধকগুলির কোন প্রয়োজন নেই।

অপটিক্যাল এনকোডারটি GND এবং +5V এর সাথে সংযুক্ত। এটি 2 480 ওহম প্রতিরোধকের মধ্য দিয়ে যাওয়া Arduino ইনপুট পিনগুলিতে যায়, প্রতিটি অপটিক্যাল ডেটা আউটপুটের জন্য একটি।

Arduino DUE সরাসরি 5V পিন এবং স্থল থেকে +5V DC হাবের মাধ্যমে চালিত হয়।

সমস্ত মাঠ একসঙ্গে বাঁধা।

সংযুক্ত একটি টেবিল যা arduino পিন থেকে IN/OUT পেরিফেরাল এর সাথে সংযোগ রয়েছে। Arduino পিন নম্বরগুলি আমার প্রোটোটাইপ হার্ডওয়্যারে প্রতিফলিত করে এবং দেখতে পারে (তারা যেভাবেই হোক…) এলোমেলো। আপনি সহজেই আপনার ইচ্ছায় স্কেচে পিনের অবস্থান পরিবর্তন করতে পারেন;)

ধাপ 6: যদি আমার একের বেশি MIDI সোর্স থাকে?

আমার যদি একাধিক MIDI সোর্স থাকে তাহলে কি হবে?
আমার যদি একাধিক MIDI সোর্স থাকে তাহলে কি হবে?

একটি MIDI মার্জারের জন্য একটি সংক্ষিপ্ত অনুসন্ধানের পর, আমি দেখতে পেলাম যে সবচেয়ে ব্যবহারিক (এবং সস্তা) সমাধানটি একটি MIDI সুইচার ছিল।

একটি MIDI সুইচার একটি প্যাসিভ ডিভাইস যা একটি MIDI উৎসকে সক্ষম করে এবং অন্যান্য সকল উৎসকে নিষ্ক্রিয় করে। যে হিসাবে সহজ।

একটি MIDI সুইচারের হৃদয় একটি মাল্টি পজিশনাল (আমার 6 পজিশন), 2 পোল সুইচ। এটা খুবই গুরুত্বপূর্ণ যে খুঁটির সংখ্যা "2" কারণ অনির্বাচিত হলে অন্য MIDI সকেট সম্পূর্ণভাবে কেটে ফেলতে হবে এবং অন্যদের সাথে যোগাযোগ না করলে। সংযুক্ত আমার নিজের ব্যবহারের জন্য উপলব্ধ একটি ছবি।

এই লিংকে একটি স্কিম।

প্রস্তাবিত: