সুচিপত্র:
- ধাপ 1: এই প্রকল্পের জন্য আমাদের যা প্রয়োজন (প্রয়োজনীয়তা)
- পদক্ষেপ 2: ADC থেকে PWM এর তত্ত্ব
- ধাপ 3: পরিকল্পিত
- ধাপ 4: চূড়ান্ত পরীক্ষা
ভিডিও: ফ্লাইব্যাক ট্রান্সফরমার বা স্পিকারে এডিসি থেকে পিডব্লিউএম ব্যবহার করে আরডুইনো দিয়ে গান চালান: 4 টি ধাপ
2024 লেখক: John Day | [email protected]. সর্বশেষ পরিবর্তিত: 2024-01-30 08:01
হ্যালো বন্ধুরা, এটি আমার আরেকটি নির্দেশযোগ্য (যা অনেক কঠিন ছিল) এর দ্বিতীয় অংশ, মূলত, এই প্রকল্পে, আমি আমার Arduino এ ADC এবং TIMERS ব্যবহার করেছি অডিও সিগন্যালকে PWM সিগন্যালে রূপান্তর করতে।
এটি আমার আগের নির্দেশের চেয়ে অনেক সহজ, আপনি যদি দেখতে চান তবে আমার প্রথম নির্দেশাবলীর লিঙ্কটি এখানে। লিঙ্ক
অডিও সিগন্যাল, বিটরেট, বিট ডেপথ, স্যাম্পলিং রেটের তত্ত্ব বোঝার জন্য, আপনি ইন্সট্রাকটেবল আমার শেষ টিউটোরিয়ালে তত্ত্বটি পড়তে পারেন। লিঙ্ক উপরে দেওয়া আছে।
ধাপ 1: এই প্রকল্পের জন্য আমাদের যা প্রয়োজন (প্রয়োজনীয়তা)
1. আরডুইনো বোর্ড (আমরা যে কোন বোর্ড (328, 2560) অর্থাৎ মেগা, ইউনো, মিনি ইত্যাদি ব্যবহার করতে পারি কিন্তু নির্দিষ্ট ভিন্ন পিনের সাথে)
2. Arduino স্টুডিও সহ পিসি।
3. ব্রেডবোর্ড বা পারফবোর্ড
4. তারের সংযোগ
5. TC4420 (মোসফেট ড্রাইভার বা এরকম কিছু)
6. পাওয়ার মোসফেট (এন বা পি চ্যানেল, অনুগ্রহ করে ওয়্যার তারপর তারপর) (আমি এন-চ্যানেল ব্যবহার করেছি)
7. স্পিকার বা ফ্লাইব্যাক ট্রান্সফরমার (হ্যাঁ আপনি ঠিক পড়েছেন !!)
8. উপযুক্ত পাওয়ার সাপ্লাই (0-12V) (আমি আমার নিজের ATX পাওয়ার সাপ্লাই ব্যবহার করেছি)
9. হিট সিঙ্ক (আমি আমার পুরানো পিসি থেকে উদ্ধার করেছি)।
10. একটি পরিবর্ধক (স্বাভাবিক সঙ্গীত পরিবর্ধক) বা পরিবর্ধক সার্কিট।
পদক্ষেপ 2: ADC থেকে PWM এর তত্ত্ব
সুতরাং এই প্রকল্পে, আমি একটি অডিও সিগন্যালের ডেটা নমুনা করতে Arduino এর নির্মিত ADC ব্যবহার করেছি।
এডিসি (এনালগ-টু-ডিজিটাল কনভার্টার) নাম নির্ধারণ করে, এডিসি এনালগ সংকেতকে ডিজিটাল নমুনায় রূপান্তর করে। এবং সর্বাধিক 10-বিট গভীরতার সাথে Arduino এর জন্য। কিন্তু এই প্রকল্পের জন্য, আমরা 8-বিট নমুনা ব্যবহার করব।
Arduino এর ADC ব্যবহার করার সময়, আমাদের ADC_reference ভোল্টেজের কথা মাথায় রাখতে হবে।
Arduino Uno 1.1V, 5V (অভ্যন্তরীণ রেফারেন্স, যা কোডে সংজ্ঞায়িত করা যেতে পারে) বা একটি বাহ্যিক রেফারেন্স (যা আমাদের AREF পিনে বাহ্যিকভাবে প্রয়োগ করতে হবে) অফার করে।
আমার অভিজ্ঞতা অনুসারে, ADC থেকে ভাল ফলাফল পেতে সর্বনিম্ন 2.0V একটি রেফারেন্স ভোল্টেজ হিসাবে ব্যবহার করা উচিত। 1.1V অন্তত আমার জন্য ভাল যায় নি। (ব্যক্তিগত অভিজ্ঞতা)
*গুরুত্বপূর্ণ**গুরুত্বপূর্ণ ** গুরুত্বপূর্ণ ** গুরুত্বপূর্ণ ** গুরুত্বপূর্ণ ** গুরুত্বপূর্ণ*
আমাদের 5V এর পিক ভোল্টেজ (সর্বোচ্চ ভোল্টেজ) সহ একটি পরিবর্ধক বা একটি পরিবর্ধক সার্কিট থেকে একটি পরিবর্ধিত অডিও সংকেত ব্যবহার করতে হবে।
কারণ আমি আমাদের প্রকল্পের জন্য 5V এর অভ্যন্তরীণ ভোল্টেজ রেফারেন্স সেট করেছি। এবং আমি একটি সাধারণ পরিবর্ধক (সঙ্গীত পরিবর্ধক) ব্যবহার করে একটি পরিবর্ধিত সংকেত ব্যবহার করছি, যা আমাদের বাড়িতে বেশিরভাগই পাওয়া যায় অথবা আপনি নিজের জন্য এটি তৈরি করতে পারেন।
তাই এখন মূল অংশ। স্যাম্পলিং রেট, যা আমাদের এডিসি প্রতি সেকেন্ডে কতটা নমুনা নেয়, রূপান্তর হার বেশি, আউটপুট ফলাফল আরও ভাল হবে, ইনপুটের তুলনায় আউটপুট তরঙ্গের অনুরূপ হবে।
সুতরাং, আমরা 500Khz এ ADC ঘড়ি সেট করে এই প্রকল্পে 33.33Khz এর একটি নমুনা হার ব্যবহার করব। এটি কিভাবে হয় তা বোঝার জন্য, আমাদেরকে Atmega (328p) চিপের ডেটশীটে ADC টাইমিং পৃষ্ঠা দেখতে হবে।
আমরা দেখতে পাচ্ছি, অটো স্যাম্পলিং সহ একটি নমুনা সম্পূর্ণ করতে আমাদের 13.5 এডিসি ঘড়ি চক্র প্রয়োজন। 500Khz এর ফ্রিকোয়েন্সি সহ, এর মানে হল একটি ADC চক্রের জন্য 1/500Khz = 2uS, যার মানে স্বয়ংক্রিয় নমুনা ব্যবহার করার সময় একটি নমুনা সম্পূর্ণ করার জন্য 13.5*2uS = 27uS প্রয়োজন। মাইক্রোকন্ট্রোলারকে 3uS বেশি দিয়ে (নিরাপদ দিকের জন্য), একটি নমুনার জন্য সম্পূর্ণ 30uS তৈরি করা।
সুতরাং 30uS এ 1 টি নমুনা মানে 1/30uS = 33.33 KSamples/S।
নমুনা হার সেট করতে, যা Arduino এর TIMER0 এর উপর নির্ভরশীল, কারণ ADC অটো স্যাম্পলিং ট্রিগার আমাদের উপর নির্ভর করে, যেমন আপনি কোড এবং ডেটশীটেও দেখতে পারেন, আমরা OCR0A = 60 (কেন এমন ???)
কারণ ডেটশীটে দেওয়া সূত্র অনুযায়ী।
ফ্রিকোয়েন্সি (অথবা এখানে নমুনা হার) = Arduino/Prescaler এর ঘড়ি ফ্রিকোয়েন্সি*OCR0A এর মান (আমাদের ক্ষেত্রে)
ফ্রিকোয়েন্সি বা নমুনা হার আমরা চাই = 33.33KHz
ঘড়ির ফ্রিকোয়েন্সি = 16MHz
প্রেসকলার মান = 8 (আমাদের ক্ষেত্রে)
OCR0A এর মান = আমরা খুঁজতে চাই ??
যা কেবল OCR0A = 60 দেয়, আমাদের Arduino কোডেও।
TIMER1 একটি অডিও সিগন্যালের ক্যারিয়ার ওয়েভের জন্য ব্যবহৃত হয়, এবং আমি এর এত বিস্তারিত বিবরণে যাব না।
সুতরাং, এটি ছিল Arduino এর সাথে ADC থেকে PWM ধারণার সংক্ষিপ্ত তত্ত্ব।
ধাপ 3: পরিকল্পিত
পরিকল্পিত হিসাবে দেখানো সমস্ত উপাদান সংযুক্ত করুন। সুতরাং আপনার এখানে দুটি বিকল্প আছে:-
1. একটি স্পিকার সংযুক্ত করুন (5V এর সাথে সংযুক্ত)
2. একটি ফ্লাইব্যাক ট্রান্সফরমার সংযুক্ত করুন (12V এর সাথে সংযুক্ত)
আমি উভয় চেষ্টা করেছি। এবং উভয়ই বেশ ভাল কাজ করে।
*গুরুত্বপূর্ণ**গুরুত্বপূর্ণ ** গুরুত্বপূর্ণ ** গুরুত্বপূর্ণ ** গুরুত্বপূর্ণ ** গুরুত্বপূর্ণ*আমাদের একটি পরিবর্ধক বা একটি পরিবর্ধক সার্কিট থেকে একটি পরিবর্ধিত অডিও সংকেত ব্যবহার করতে হবে যার সর্বোচ্চ ভোল্টেজ (সর্বোচ্চ ভোল্টেজ) 5V।
অস্বীকৃতি:-
*আমি সতর্কতার সাথে ফ্লাইব্যাক ট্রান্সফরমার ব্যবহার করার পরামর্শ দিচ্ছি কারণ এটি বিপজ্জনক হতে পারে কারণ এটি উচ্চ ভোল্টেজ তৈরি করে। এবং আমি কোন ক্ষতির জন্য দায়ী নই।*
ধাপ 4: চূড়ান্ত পরীক্ষা
সুতরাং আপনার Arduino এ প্রদত্ত কোডটি আপলোড করুন এবং A0 পিনের সাথে Amplified Signal সংযুক্ত করুন।
এবং সমস্ত গ্রাউন্ড পিনকে একটি সাধারণ গ্রাউন্ডের সাথে সংযুক্ত করতে ভুলবেন না।
এবং শুধু গান শুনতে উপভোগ করুন।
প্রস্তাবিত:
নতুনদের জন্য ফ্লাইব্যাক ট্রান্সফরমার ড্রাইভার: 11 টি ধাপ (ছবি সহ)
প্রারম্ভিকদের জন্য ফ্লাইব্যাক ট্রান্সফরমার ড্রাইভার: পরিকল্পিতভাবে উন্নত ট্রানজিস্টর দিয়ে আপডেট করা হয়েছে এবং এতে ক্যাপাসিটর এবং ডায়োড আকারে মৌলিক ট্রানজিস্টর সুরক্ষা অন্তর্ভুক্ত রয়েছে। &Quot; আরও এগিয়ে যাচ্ছি " পৃষ্ঠায় এখন একটি ভোল্টমিটার দিয়ে এই বিশিষ্ট ভোল্টেজ স্পাইকগুলি পরিমাপ করার একটি উপায় অন্তর্ভুক্ত রয়েছে
একতা, বিটি আরডুইনো, অতিস্বনক সেন্সর ব্যবহার করে জাম্প গেম চালান: 14 টি ধাপ
একতা, বিটি আরডুইনো, অতিস্বনক সেন্সর ব্যবহার করে রান জাম্প গেম চালান: আমার unityক্য প্রকল্প ইউটিটি মাল্টিপ্লেয়ার থ্রিডি হোলোগ্রাম গেম এবং পিসির জন্য হলোগ্রাম প্রজেক্টর সফল হওয়ার পর, এটি .ক্যের দ্বিতীয় প্রকল্প। সুতরাং খেলাটির শুরু থেকে শেষ পর্যন্ত সম্পূর্ণ প্রকল্পটি সম্পন্ন করতে অধ্যয়ন করতে অনেক সময় লাগে। যখন আমি শুরু করি
স্পিকার বা ফ্লাইব্যাক ট্রান্সফরমারে PWM ব্যবহার করে Arduino দিয়ে গান (MP3) চালান: 6 টি ধাপ (ছবি সহ)
স্পিকার বা ফ্লাইব্যাক ট্রান্সফরমারে PWM ব্যবহার করে Arduino দিয়ে গান (MP3) চালান: হ্যালো বন্ধুরা, এটি আমার প্রথম নির্দেশযোগ্য, আমি আশা করি আপনি এটি পছন্দ করবেন !! মূলত, এই প্রকল্পে আমি আমার Arduino এবং আমার ল্যাপটপের মধ্যে সিরিয়াল যোগাযোগ ব্যবহার করেছি, আমার ল্যাপটপ থেকে আরডুইনোতে সংগীত ডেটা প্রেরণ করতে। এবং Arduino TIMERS টি ব্যবহার করে
রাস্পবেরি পাই জিপিআইও সার্কিট: এডিসি ছাড়া এলডিআর এনালগ সেন্সর ব্যবহার করে (এনালগ টু ডিজিটাল কনভার্টার): 4 টি ধাপ
রাস্পবেরী পাই জিপিআইও সার্কিট: এডিসি ছাড়া এলডিআর এনালগ সেন্সর ব্যবহার করা (ডিজিটাল কনভার্টার থেকে এনালগ): আমাদের আগের নির্দেশাবলীতে, আমরা আপনাকে দেখিয়েছি কিভাবে আপনি আপনার রাস্পবেরি পাই এর জিপিআইও পিনগুলিকে এলইডি এবং সুইচগুলির সাথে সংযুক্ত করতে পারেন এবং জিপিআইও পিনগুলি কীভাবে উচ্চ হতে পারে অথবা কম। কিন্তু আপনি যদি আপনার রাস্পবেরি পাইকে এনালগ সেন্সর দিয়ে ব্যবহার করতে চান? আমরা যদি একটি ব্যবহার করতে চাই
20, 000v ফ্লাইব্যাক ট্রান্সফরমার: 5 টি ধাপ
20,000v ফ্লাইব্যাক ট্রান্সফরমার: এটি একটি দ্রুত চার্জ ক্যাপাসিটর এবং 2 ক্যামেরা ফ্ল্যাশ সার্কিটের সাথে সংযুক্ত একটি ফ্লাইব্যাক ট্রান্সফরমার, যদি আপনার উচ্চ ভোল্টেজের সাথে পূর্ব অভিজ্ঞতা না থাকে, অথবা যদি আপনার একটি দুর্বল হৃদয় থাকে তবে এই নির্দেশযোগ্য চেষ্টা করবেন না