আরডুইনো সহ একটি মাইক্রোফোন ব্যবহার করা


18

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


আমি আরডুইনোতে সম্পূর্ণ নতুন (তবে আমি প্রোগ্রামিংয়ের সাথে পরিচিত)। একটি ভিইউ মিটার তৈরি করতে , আমি আরডুইনোর এনালগ 0 পিনে একটি মাইক্রোফোন রাখতে এবং সিরিয়াল সংযোগের মাধ্যমে মানটি প্রদর্শন করতে চাই।

আমি গুগল করে এই সার্কিটটি পেয়েছি:

সাধারণ অডিও প্রি-এম্প্লিফায়ার

... এবং আমি এই ফলাফলটি দিয়ে এটি তৈরি করার চেষ্টা করেছি:

(আমি এখন অলি গ্লেজার তার উত্তরে প্রস্তাবিত সার্কিটটি ব্যবহার করছি)

সিরিয়াল মনিটরের মানগুলি গানের ভলিউমের উপর নির্ভর করে পরিবর্তিত হয় না।

আরডুইনোর এনালগ ইনপুটটিতে ভলিউম পরিমাপের সহজতম উপায় কী?

এছাড়াও, আমার কাছে একটি টিডিএ ২২২২ এম রয়েছে , তবে আমি জানি না যে এটি এই প্রকল্পের জন্য সহায়ক। মাইক্রোফোনে ক্যাপশনটি XF-18D পড়ে ।

সম্পাদনা করুন: আমার আরডুইনো কোড:

void setup() {
  Serial.begin(9600); 
}

void loop() {
  Serial.println(analogRead(0));
  delay(300);
}

সিরিয়াল আউটপুট: 1023 1022 1022 1022 1022 1023 1022 এবং আরও কিছু

মাইক্রোফোনটি আদৌ কাজ করে কিনা তা আমি কীভাবে পরীক্ষা করতে পারি? এটি কি দিকনির্দেশক?

সম্পাদনা: আমি এখন একটি S9014 ট্রানজিস্টর ব্যবহার করছি। এডিসি এবং সিরিয়াল সংযোগের কাজ (আমি তাদের পোটিনোমিটার দিয়ে পরীক্ষা করেছি)।

সিরিয়াল আউটপুট এখন 57 এর কাছাকাছি।

এছাড়াও, আমার কাছে কোনও মাল্টিমিটার বা অসিলোস্কোপ নেই। আমার এখন মাল্টিমিটার আছে।


আপনি কি এমন একটি সুযোগ দিয়ে যাচাই করেছেন যে আপনি নিজের সার্কিটের আউটপুটে অডিও তরঙ্গরূপটি দেখতে পাচ্ছেন?
হাইকনপাস্ট

ওহ, কেন 3V3 এবং 5V পিনটি স্কিমেটিকের মধ্যে সংক্ষিপ্ত হয়ে গেল? এটি একটি সমস্যা হতে পারে।
কনার ওল্ফ

নাহ, আমি স্কিম্যাটিকটি সঠিকভাবে আঁকিনি।
টোস্ট

উত্তর:


14

"সহজতম" উপায়টি হ'ল ADC এর সাথে সংকেত এবং নমুনা প্রয়োগ করা। বাফারে ফলাফলগুলি সংরক্ষণ করুন তারপরে পছন্দসই হিসাবে প্রদর্শন করুন (আপনার ক্ষেত্রে
আরএস 232 এর মাধ্যমে পিসিতে প্রেরণ করুন) আপনি যদি সিগন্যালের আরএমএস স্তরটি চান তবে আপনাকে পিসিতে পাঠানোর আগে বা তারপরে কিছুটা সময় এটি গণনা করতে হবে।

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

সম্পাদনা করুন - পরিবর্ধক ট্রানজিস্টারের জন্য এখানে আরও ভাল সার্কিট রয়েছে:

ইলেক্ট্রেট এম্প

এটি ব্যবহৃত ট্রানজিস্টর সম্পর্কে খুব বেশি যত্ন নেওয়া উচিত নয়, আউটপুট পক্ষপাতটি 2.5V এর কাছাকাছি হওয়া উচিত।
ইনপুট ডিভাইডার (আর 3 এবং আর 4) এর সঠিক মানগুলি খুব গুরুত্বপূর্ণ নয়, এটি 1: 4 এর অনুপাত যা আরও বেশি। সুতরাং আপনি উদাহরণস্বরূপ 400k এবং 100k, বা 40k এবং 10k ইত্যাদি ব্যবহার করতে পারেন (এই সম্পর্কিত মানগুলির উপরে বা নীচে না যাওয়ার চেষ্টা করুন)। সি 2> 10 ইউ এফ হওয়া উচিত। সি 1 টি> 1uF হওয়া উচিত (আপনার পরিকল্পনার মধ্যে সি 1 কে প্রতিস্থাপন করবে)
আর 1 এবং আর 2 এর যদিও এই মান হওয়া দরকার।
আপনার কেবলমাত্র এটির পক্ষপাত প্রতিরোধক (আপনার পরিকল্পনার মধ্যে আর 1) এর সাথে ইলেক্ট্রেট দরকার

উদ্বেগের একটি বিষয় হ'ল আড়ডিনো 3.3 ভি এবং 5 ভি লাইনগুলি একত্রে আবদ্ধ বলে মনে হচ্ছে - আমি ধরে নিচ্ছি এটি একটি স্কিম্যাটিক ত্রুটি, তবে এটি যদি প্রকৃত সার্কিটের ক্ষেত্রে হয় তবে এটি কাজ করবে না এবং কোনও কিছু ক্ষতি করতে পারে।
সমস্যা (গুলি) চিহ্নিত করার জন্য এটি আপনার কোড এবং পিসিতে আপনি কী দেখছেন তা দেখতে সহায়তা করবে। এছাড়াও আপনি কোন ট্রানজিস্টর ব্যবহার করছেন?

আপনার যদি একটি অসিলোস্কোপ থাকে তবে আপনার মাইক / ট্রানজিস্টরটি সঠিকভাবে কাজ করছে কিনা তা পরীক্ষা করে দেখতে পারেন। যদি তা না হয় তবে আরও কয়েকটি বেসিক পরীক্ষা চালানোর জন্য একটি মাল্টিমিটার ব্যবহার করা যেতে পারে (উদাহরণস্বরূপ নিশ্চিত করুন + 5 ভি উপস্থিত, ট্রানজিস্টরের বেসটি 0.6V ডলারে রয়েছে, পরীক্ষা সংগ্রাহক এটি +5 ভি বা কোন চিহ্ন নেই বলে ভিত্তিতে স্থির রয়েছে তা নিশ্চিত করার জন্য)

এছাড়াও আপনাকে নিশ্চিত করতে হবে যে আরএস 232 সঠিকভাবে কাজ করছে, সুতরাং কিছু পরীক্ষার মান প্রেরণের জন্য কিছু সাধারণ কোড লেখা ভাল ধারণা হবে।

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

সম্পাদনা করুন - আপনি যদি ধীরে ধীরে নমুনা নিচ্ছেন তবে আপনার এর মতো একটি শিখর সনাক্তকারী সার্কিটের প্রয়োজন হবে:

পিক সনাক্ত

আপনি এই সার্কিটটি ট্রানজিস্টর এবং আরডুইনো পিনের (মাইনাস সি 2) এর মধ্যে রাখবেন

ডায়োডটি কোনও ডায়োডের প্রায় হতে পারে। ক্যাপ এবং প্রতিরোধকের মানগুলি কেবল একটি গাইডলাইন, সেগুলি কিছুটা পরিবর্তন করা যায়। তাদের মানগুলি নির্দেশ দেয় যে সিগন্যাল স্তরের সাথে ভোল্টেজ পরিবর্তন করতে কতক্ষণ সময় নেবে। আপনি আরসি ধ্রুবক ব্যবহার করে এটি গণনা করতে পারেন (উদাহরণস্বরূপ আর * সি - উপরের উদাহরণস্বরূপ, আরসি ধ্রুবকটি 1e-6 * 10e3 = 10 মিমি। ভোল্টেজটির মূল মূল্যের 90% কমতে প্রায় 2.3 সময় ধ্রুবক লাগবে, সুতরাং উপরের উদাহরণে যদি ভোল্টেজ 1V থেকে শুরু হয় এবং আপনি সিগন্যালটি সরিয়ে ফেলেন তবে এটি 23 এমএসের পরে প্রায় 0.1V এ নেমে আসবে।

সম্পাদনা করুন - ঠিক আছে, মনে করুন আমি একটি বড় সমস্যা পেয়েছি। আপনার S9012 ট্রানজিস্টর একটি পিএনপি ট্রানজিস্টর (যেমন S9015), আপনার এই সার্কিটের জন্য একটি এনপিএন ট্রানজিস্টর প্রয়োজন। S9014 তাই আপনি এই ব্যবহার করতে হবে, একটি এন পি এন ট্রানজিস্টরের হয়।

"104" চিহ্নিত চিহ্নিত ক্যাপাসিটারগুলি অবশ্যই 0.1uF সিরামিক ক্যাপাসিটার। মানটি (পিএফ এ) হয় প্রথম 2 নম্বর এবং তার পরে শেষ সংখ্যাটি দ্বারা নির্ধারিত বেশ কয়েকটি শূন্য থাকে। সুতরাং 104 এর জন্য মান 10 + 4 জিরো বা 100,000 পিএফ হয়। 100,000pF 100nF বা 0.1uF হয়।

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

ভিজ্যুয়াল অ্যানালাইজার

আপনি যদি সি 2 প্রতিস্থাপন করেন (কঠোরভাবে প্রয়োজনীয় নয় তবে একটি ভাল ধারণা), আপনার সরাসরি পিসিতে সিগন্যালটি খাওয়ানো এবং মাইক্রোফোন এবং পরিবর্ধন সঠিকভাবে কাজ করছে কিনা তা দেখতে সফ্টওয়্যারটিতে পর্যবেক্ষণ করতে সক্ষম হওয়া উচিত। যদি আপনার পিসির ব্যবহারের মতো লাইন থাকে তবে মাইক্রোফোন ইনপুটটি 2V আইআইআরসি পর্যন্ত সাধারণত ভাল। আপনি সরাসরি বৈদ্যুতিন পরীক্ষা করতে পারেন - কেবল ট্রানজিস্টর বিট সরিয়ে আর 1 এবং সি 1 রাখুন, সি 1 এর অন্য দিক থেকে সংকেত নিন।
নোট করুন যে এই পদ্ধতিটি ডিসি স্তরগুলি পরীক্ষা করবে না , কেবল এসি (সানকার্ড ইনপুটটিতে ডিসি ব্লকিং ক্যাপের কারণে) তবে এসি (অডিও) সিগন্যালটি এখানে আপনার আগ্রহী।

আপনি যদি এটি চেষ্টা করে থাকেন, স্ক্রিনশটগুলি পোস্ট করুন যাতে আমরা কী ঘটছে সে সম্পর্কে ধারণা পেতে পারি।


3.3V এবং 5V একসঙ্গে বাঁধা নেই। আমি এই সফ্টওয়্যারটি প্রথমবার ব্যবহার করছি - দুঃখিত। আমি আমার কোডটি প্রশ্নটিতে রাখব তবে এর সাথে ভুল হতে পারে এমন কিছুই নেই। এছাড়াও, আমি আজ একটি প্রকল্প তৈরি করেছি যা কোনও ফোটোরিস্টর ব্যবহার করে এবং ছয়টি নেতৃত্বের উপরে মানটি দেখায় যেমন আমি আমার ভিউ মিটার দেখতে চাই এবং আমি এটির সাথে সিরিয়াল সংযোগ পরীক্ষা করেছি। আমার কাছে একটি অসিলোস্কোপ বা মাল্টিমিটার নেই। ট্রানজিস্টরের "S9012 H 331" ক্যাপশনটি রয়েছে আমার কাছে "S9014 সি 331" এবং এস 9015 রয়েছে।
টোস্ট

@ টোস্ট - সি 2 সম্পর্কে সম্পাদনা দেখুন, এটিকে সরান এবং সরাসরি সংযোগ করুন।
অলি গ্লেজার

আমি সি 2 অপসারণ করেছি এবং অংশগুলি যুক্ত করেছি কারণ ক্রিস্টফন তার উত্তরে এটি বর্ণনা করেছে। এখনও একই ফলাফল।
টোস্ট

1
আপনার যদি কোনও পেন্টিয়োমিটার বা ভেরিয়েবল ভোল্টেজ উত্স থাকে তবে আপনার কোডটি পরীক্ষা করতে আপনার ইনপুট সার্কিট থেকে আলাদা হয়ে আপনি ADC এর ইনপুটটিতে 0-5V ইনপুট প্রয়োগ করতে পারেন। আপনি একবারে দুটি জিনিস ডিবাগ করার চেষ্টা করছেন - সার্কিটটি বিচ্ছিন্ন করুন এবং একটি অসিলোস্কোপ ব্যবহার করে এর আচরণটি যাচাই করুন এবং / অথবা আপনার কোডকে পৃথক করুন এবং আপনার কোডটি বৈধ করার জন্য একটি পূর্বাভাসজনক তবে পরিবর্তনশীল ইনপুট সরবরাহ করুন।
হাইকঅনপাস্ট

1
@ অলিগ্লেজার আমি সার্কিট দ্বারা বিভ্রান্ত হয়ে পড়েছি। "ইলেক্ট্রেট" একটি মাইক্রোফোন? মাইক্রোফোনের অন্যান্য ওয়্যার কোথায় যায়, জিএনডি বা ভিসিসি? আমি কি 5 বা 3.3V কে সেই সার্কিটের সাথে সংযুক্ত করব? আপনি কি দয়া করে কোনওভাবে EDITব্লকগুলি সরিয়ে এডিট করতে পারেন যাতে কমেন্টের থ্রেড না পড়ে বোঝা যায়? আমিও একজন শিক্ষানবিস এবং আমি বুঝতে পারি না যে সমস্যাটি কীভাবে সমাধান করা হয়েছিল এবং আপনি যে পোস্টটি সার্কিট হিসাবে পোস্ট করেছেন তা আমি ব্যবহার করতে পারি কিনা।
টোমা জ্যাটো - মনিকা

4

আপনার সার্কিটটি কাজ করে ধরে নিচ্ছে অডিও সিগন্যালটি কেএইচজেড পরিসরে রয়েছে যখন আরডুইনোতে একটি এডিসি রয়েছে ডিসি স্তরের জন্য উপযুক্ত। আপনার সিগন্যালের ডিসি উপাদানটি শূন্য যা এটি স্থির ভোল্টেজের উপর দিয়ে ভেসে যায় say এটি আপনার স্থিতিশীল ভোল্টেজ পড়ছে।

আপনার আউটপুটটি এডিসি এবং একটি ক্যাপাসিটার এবং প্রতিরোধকের সাথে সংযোগ স্থাপনের সাথে সিরিজে একটি ডায়োড রাখবেন তা ঠিক করতে।

সিগন্যালটি ডাউন হয়ে যাওয়ার সাথে সাথে প্রতিরোধক ক্যাপটি স্রাব করবে যখন পিকটি প্রাপ্ত শীর্ষস্থানীয় মূল্যটি চার্জ করবে।

--|>|---*---- adc
        *---- resistor -----*----ground
        \----- capacitor ---/

সম্পাদনা: এডিসি ইনপুটটি আসলে ভাসমান কারণ সিরিজের ক্যাপাসিটরের কারণে এর কোনও পক্ষপাত নেই। আপনি যদি আমার সমাধানটি চেষ্টা করতে চলেছেন তবে সি 2 মুছুন।


ঠিক আছে, আমি এটি সার্কিটের সাথে যুক্ত করেছি এবং সিরিয়াল মনিটরের সিগন্যাল এখন 458 (তবে এখনও শব্দ আছে যখন পরিবর্তন হয় না)।
টোস্ট

আমি "S9012 এইচ 331" থেকে "S9014 সি 331" তে ট্রানজিস্টরটি বিনিময় করেছি এবং মানটি 56
টোস্ট

1
আরডুইনো এডিসি অডিওর জন্য পর্যাপ্ত পরিমাণে নমুনা তৈরি করতে সক্ষম। আমি সেগুলি ব্যবহার করি না, তবে আমি মনে করি যে 10ksps (5KHz ব্যান্ডউইথ পর্যন্ত) লাইব্রেরির ফাংশনগুলির দ্বারা সম্ভব, যা লো-ফাই স্টাফের জন্য সূক্ষ্ম (আমি খুব নিশ্চিত যে সত্যিকারের এটিএমগা যদি সাধারণভাবে ব্যবহৃত হয় তবে দ্রুত নমুনা দিতে পারে)
অলি গ্লেজার 0

@ টোস্ট - আপনি কতটা নমুনা দিচ্ছেন? যদি এটি খুব ধীরে ধীরে হয় তবে পিক ডিটেক্টরটি ভাল ধারণা। আপনি যদিও সফ্টওয়্যার এ এটি করতে পারেন।
অলি গ্লেজার 0

2
@ ক্রিস্টফন - কোনও আরডিনো নম্বরের সাথে নয়, তবে আমি অডিও বারবার নমুনা ও খেলতে অনুরূপ 8-বিট মাইক্রো ব্যবহার করেছি (যেমন পিআইসি 16 এফ, 18 এফ, ইত্যাদি)। 10ksps সহজেই করণীয়। এই এভিআর এডিসি নথিটি উদ্ধৃত করার জন্য :When using single-ended mode, the ADC bandwidth is limited by the ADC clock speed. Since one conversion takes 13 ADC clock cycles, a maximum ADC clock of 1 MHz means approximately 77k samples per second. This limits the bandwidth in single-ended mode to 38.5 kHz, according to the Nyquist sampling theorem.
অলি গ্লেজার

4

আপনার 1022, 1023 এর পাঠাগুলি মূলত আরডুইনোর এডিসিতে সম্পূর্ণ স্কেল। আপনার ডায়াগ্রামে যেমন দেখানো হয়েছে আপনি একটি অ-ত্রুটিযুক্ত সিরিজ ক্যাপাসিটারটি ইনস্টল করেছেন ধরে নিয়েছেন, আপনার তৈরি মাইক্রোফোন সার্কিট থেকে এই স্তরটি আসতে পারে না, কারণ এটি কেবল ভোল্টেজ (যেমন এসি) পরিবর্তন করতে পারে couple

ফলস্বরূপ, আমি সন্দেহ করি আপনি এটিএমইজিএ-র মধ্যেই ফুটো বর্তমান পড়ছেন - আপনি সম্ভবত অন্য কোনও (সংযুক্ত) এনালগ পিনের ক্ষেত্রে একই ফলাফল পাবেন।

কিছু উচ্চ মানের প্রতিরোধক (10 কে এবং 100 কে এর মধ্যে) দিয়ে খুব "লাইটওয়েট" ভোল্টেজ বিভাজক তৈরি করার চেষ্টা করুন এবং এটি অ্যানালগ ইনপুটটিকে অর্ধ রেফারেন্স ভোল্টেজের পক্ষপাত করতে ব্যবহার করুন (আপনি কোনও পেন্টিওমিটারও ব্যবহার করতে পারেন যা আপনাকে কিছু অতিরিক্ত পরীক্ষার ক্ষমতা দেয়)। তারপরে কোনও ইনপুট ছাড়াই আপনার পাঠ্য 512 এর আশেপাশে থাকা উচিত।

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


এটা ঠিক শোনাচ্ছে, আমি অনুমান করি এটি খুব বেশি লোড হয়েছে। ওপি আপনি কোনও ছোট স্পিকারকে সংযোগ দেওয়ার কথা ভেবেছিলেন যে আপনার অ্যানালগ লাইনের পাঠটি ডিবাগ করতে পারে। যখন আমি একটি ভু মিটার তৈরি করলাম তখন আমি একটি হেডফোন জ্যাক থেকে লাইনগুলি নিয়ে আসি, মূলত সোজা অ্যানালগরিডে এবং ফলাফলটি ম্যাপ করে।
Hellonearthis
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.