Raspberry Pi-এর সাথে ADC এবং ADS1115 সম্পর্কে ধারণা
Raspberry Pi-তে বিল্ট-ইন Analog-to-Digital Converter (ADC) নেই।
এর মানে হলো আপনি সরাসরি অ্যানালগ সেন্সরগুলো পড়তে পারবেন না। আপনি এই ডিভাইসগুলোকে সরাসরি একটি Pi-এর সাথে যুক্ত করতে পারবেন না:
- পটেনশিওমিটার (Potentiometers)
- লাইট সেন্সর (Light sensors)
- গ্যাস সেন্সর (Gas sensors)
- সয়েল ময়েশ্চার সেন্সর (Soil moisture sensors)
এই ঘাটতি পূরণের জন্য আপনার একটি এক্সটার্নাল (external) ADC প্রয়োজন। ADS1115 হলো একটি উচ্চ-নির্ভুলতা সম্পন্ন 16-bit ADC। এটি I2C প্রোটোকলের মাধ্যমে আপনার Raspberry Pi-এর সাথে সংযুক্ত হয়।
একটি ADC কীভাবে কাজ করে: একটি ADC পরিবর্তনশীল ভোল্টেজকে ডিজিটাল সংখ্যায় রূপান্তর করে। এটি তিনটি ধাপ অনুসরণ করে:
- Sampling: ADC নির্দিষ্ট সময়ে ভোল্টেজ ক্যাপচার করে।
- Quantization: ADC ভোল্টেজ রেঞ্জকে নির্দিষ্ট স্তরে (discrete levels) বিভক্ত করে।
- Encoding: ADC সেই স্তরটিকে একটি বাইনারি সংখ্যায় রূপান্তর করে।
রেজোলিউশন (Resolution) অত্যন্ত গুরুত্বপূর্ণ। উচ্চ রেজোলিউশন মানে আরও উন্নত নির্ভুলতা (precision)।
- 8-bit প্রদান করে ২৫৬টি স্তর।
- 12-bit প্রদান করে ৪,০৯৬টি স্তর।
- 16-bit (যেমন ADS1115) প্রদান করে ৬৫,৫৩৬টি স্তর।
কেন ADS1115 ব্যবহার করবেন?
- উচ্চ নির্ভুলতার জন্য 16-bit রেজোলিউশন।
- চারটি অ্যানালগ ইনপুট চ্যানেল।
- ছোট সিগন্যাল বড় করার জন্য Programmable Gain Amplifier (PGA)।
- দুটি ভোল্টেজের মধ্যে পার্থক্য নির্ণয়ের জন্য ডিফারেনশিয়াল মেজারমেন্ট (Differential measurements)।
এটি কীভাবে কানেক্ট করবেন:
- VDD-কে 3.3V-এর সাথে
- GND-কে GND-এর সাথে
- SDA-কে GPIO2-এর সাথে
- SCL-কে GPIO3-এর সাথে
সেটআপ করার ধাপসমূহ:
- raspi-config-এ I2C এনাবল (Enable) করুন।
- ডিভাইসটি যাচাই করার জন্য i2c-tools ইনস্টল করুন।
i2cdetect -y 1কমান্ডটি চালান। আপনি 0x48 অ্যাড্রেসটি দেখতে পাবেন।- pip ব্যবহার করে Adafruit ADS1x15 লাইব্রেরি ইনস্টল করুন।
আপনি এই মডিউলটি স্মার্ট কৃষি (smart agriculture), ব্যাটারি ম্যানেজমেন্ট এবং ইন্ডাস্ট্রিয়াল অটোমেশনের জন্য ব্যবহার করতে পারেন। এটি ফিজিক্যাল সেন্সর ডেটাকে ডিজিটাল তথ্যে রূপান্তর করে যা আপনার কোড ব্যবহার করতে পারে।
উৎস: https://dev.to/kenryikegbo/understanding-adcs-and-using-the-ads1115-with-raspberry-pi-40m6
ঐচ্ছিক লার্নিং কমিউনিটি: https://t.me/GyaanSetuAi