সুচিপত্র:

Arduino নয়েজ মেশিন: 4 ধাপ
Arduino নয়েজ মেশিন: 4 ধাপ

ভিডিও: Arduino নয়েজ মেশিন: 4 ধাপ

ভিডিও: Arduino নয়েজ মেশিন: 4 ধাপ
ভিডিও: NOISE GENERATOR 2024, নভেম্বর
Anonim
Arduino নয়েজ মেশিন
Arduino নয়েজ মেশিন
Arduino নয়েজ মেশিন
Arduino নয়েজ মেশিন
Arduino নয়েজ মেশিন
Arduino নয়েজ মেশিন

আমি একটি পুরানো পি.সি. পুনর্ব্যবহারের জন্য এবং ভেবেছিলাম Arduino Tone () ফাংশনটি ব্যবহার করে কেমন লাগছে। আমি পিচ নিয়ন্ত্রণের জন্য একটি 10Ω পটেনশিয়োমিটার দিয়ে শুরু করলাম এবং কিছু শব্দ করা শুরু করলাম। টোন () ফাংশন একটি সাধারণ পালস প্যাটার্ন ব্যবহার করে। এটি একটি বর্গাকার তরঙ্গ-প্যাটার্নে বিভিন্ন ফ্রিকোয়েন্সিগুলিতে শব্দ চালু এবং বন্ধ করে। আমার চারপাশে অন্য দুটি পোটেন্টিওমিটার পড়ে ছিল তাই আমি সেগুলিকে যুক্ত করেছি এবং সেগুলো ব্যবহার করেছি স্বরের সময়কাল নিয়ন্ত্রণ করতে। একটি স্বরের দৈর্ঘ্য নিয়ন্ত্রণের জন্য এবং আরেকটি স্বরের মাঝখানে নীরব স্থান নিয়ন্ত্রণ করার জন্য। এটি মূলত অন্য বর্গাকার তরঙ্গ-প্যাটার্ন ব্যবহার করে কিন্তু অনেক কম ফ্রিকোয়েন্সি। আপনি এই সার্কিটের সাহায্যে ভাল ধরণের শব্দ অর্জন করতে পারেন। এটি একটি পাইজো বুজারের সাথেও ভালভাবে কাজ করে, তবে স্পিকারের বেস প্রতিক্রিয়াটির অভাব রয়েছে।

ধাপ 1: আপনার প্রয়োজনীয় অংশগুলি

আরডুইনো উনো

ব্রেডবোর্ড এবং জাম্পার তার

1 ছোট স্পিকার বা পাইজো বুজার

1 পুশবাটন সুইচ

3 10Ω পোটেন্টিওমিটার

1 22Ω প্রতিরোধক

1 10kΩ প্রতিরোধক

ধাপ 2: সার্কিট তৈরি করুন

সার্কিট তৈরি করুন
সার্কিট তৈরি করুন

আপনার Arduino 5V পিন এবং GND এর সাথে রুটিবোর্ড সংযুক্ত করুন। ব্রেডবোর্ডের ডান বা বাম দিকে পুশবাটন সুইচটি রাখুন এবং 10kΩ রোধক ব্যবহার করে এটি 5V এবং মাটিতে সংযুক্ত করুন। সুইচ সার্কিট থেকে আপনার Arduino এ 2 পিন করার জন্য একটি তার সংযুক্ত করুন।

রুটিবোর্ডের অন্য দিকে স্পিকার/পাইজো সার্কিট 5v এবং স্থল 220Ω রোধক ব্যবহার করে স্থাপন করুন। এই প্রতিরোধক বর্তমান নিয়ন্ত্রণ করে এভাবে ভলিউম নিয়ন্ত্রণ করে; আপনি উচ্চ বা নিম্ন ভলিউমের জন্য এখানে বিভিন্ন প্রতিরোধক চেষ্টা করতে পারেন।

রুটিবোর্ডের কেন্দ্রে আপনার পটেনশিয়োমিটারগুলি সাজান যাতে গিঁটগুলির সাথে বেদনার জন্য যথেষ্ট জায়গা থাকে। প্রতিটি পাত্রকে 5V এবং স্থল এবং কেন্দ্র পিনগুলির সাথে সংযুক্ত করতে হবে প্রতিটি এনালগ পিনের সাথে সংযুক্ত A0, A1 এবং A2

ধাপ 3: কোড

একটি পোটেন্টিওমিটার বা পাত্র হল একটি পরিবর্তনশীল প্রতিরোধক যা একটি Arduino এর সাথে সংযুক্ত হলে 0 থেকে 1023 এর মধ্যে একটি মান ফেরত দেবে। আমরা মান () ফাংশনটি ব্যবহার করে এই মানগুলি পরিবর্তন করতে পারি আমাদের নিজেদের চাহিদা অনুযায়ী। মানচিত্র () ফাংশনটি পাঁচটি যুক্তি নেয় এবং আমাদের ক্ষেত্রে যুক্তিসঙ্গত শ্রবণযোগ্য শব্দ তৈরি করতে আমাদের 220 থেকে 2200 এর মধ্যে পরিসরটি পুনরায় ম্যাপ করতে হবে।

ফাংশনটি এরকম কিছু দেখায়:

মানচিত্র (পাত্র, 0, 1023, 220, 2200);

আপনি উচ্চ এবং নিম্ন ফ্রিকোয়েন্সি টোনগুলির জন্য শেষ দুটি মান নিয়ে খেলতে পারেন, কেবল সতর্ক থাকুন আপনি আপনার কুকুরকে বিরক্ত করবেন না।

Noise_Machine.ino

/* এনালগ ইনপুট সংযুক্ত তিনটি potentiometers ব্যবহার করে নয়েজ মেশিন
এবং একটি পাইজো বা ছোট স্পিকার। একটি pushbutton শব্দ, potentiometers চালু
Arduino টোন () ফাংশন, এবং দুটি বিলম্ব ব্যবহার করে পিচ নিয়ন্ত্রণ করুন
মান যা প্রতিটি স্বরের দৈর্ঘ্য এবং এর মধ্যে দৈর্ঘ্য নিয়ন্ত্রণ করে
প্রতিটি সুর। Potentiometers এনালগ মান দেয় যা পরিবর্তিত হয়
মানচিত্র () ফাংশন ব্যবহার করে বড় বা ছোট পরিসরে আপনার উপযুক্ত
বাদ্যযন্ত্রের স্বাদ।
এই কোডটি পাবলিক ডোমেইনে রয়েছে।
ম্যাট থমাস 2019-04-05
*/
constint buttonPin = 2; // পুশবাটন পিন 2
সীমাবদ্ধ স্পিকার = 9; // পিন 9 এ স্পিকার বা পাইজো
int buttonState = 0; // বোতামের জন্য পরিবর্তনশীল
int potZero; // এবং potentiometers
int potOne;
int potTwo;
অকার্যকর সেটআপ() {
পিনমোড (9, আউটপুট); // স্পিকার/পাইজো আউটপুট পিন
}
voidloop () {
buttonState = digitalRead (buttonPin); // pushbutton অবস্থা পড়ুন
potZero = analogRead (A0); // এনালগ মান পড়ার জন্য ভেরিয়েবল
potOne = analogRead (A1);
potTwo = analogRead (A2);
int htz = মানচিত্র (potZero, 0, 1023, 0, 8800); // এনালগ রিডিংগুলিকে ম্যাপ করুন
int high = map (potOne, 0, 1023, 0, 100); // নতুন নম্বর রেঞ্জ এবং তৈরি করুন
int low = map (potTwo, 0, 1023, 0, 100); // নতুন ভেরিয়েবল
যদি (buttonState == HIGH) {// যদি pushbutton টিপে থাকে…
স্বর (স্পিকার, এইচটিজেড); // সাউন্ড অন
বিলম্ব (উচ্চ); // স্বরের দৈর্ঘ্য
noTone (স্পিকার); // শব্দ বন্ধ
বিলম্ব (কম); // পরবর্তী স্বর পর্যন্ত সময়
} অন্য {
noTone (স্পিকার); // বোতাম রিলিজ না হলে কোন টোন নেই
}
}

GitHub দ্বারা raw দিয়ে হোস্ট করা rawNoise_Machine.ino দেখুন

ধাপ 4: শেষ

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

প্রস্তাবিত: