সেন্সর ইন্টারফেসিং হল সেন্সর এবং একটি মাইক্রোকন্ট্রোলার বা অন্যান্য ডিভাইসের মধ্যে সংযোগ স্থাপন করার প্রক্রিয়া। এটি বিভিন্ন শারীরিক পরামিতি যেমন তাপমাত্রা, আলো, চাপ ইত্যাদি পরিমাপ করতে ব্যবহৃত হয়। নিচে তাপমাত্রা সেন্সর এবং আলো সেন্সরের ইন্টারফেসিং এর বিস্তারিত আলোচনা করা হলো।
১. তাপমাত্রা সেন্সর
জনপ্রিয় তাপমাত্রা সেন্সর:
LM35: এটি একটি জনপ্রিয় এনালগ তাপমাত্রা সেন্সর যা 0°C থেকে 100°C পরিমাপ করতে সক্ষম এবং প্রতি 1°C-এ 10 mV আউটপুট দেয়।
DHT11/DHT22: এই ডিজিটাল তাপমাত্রা ও আর্দ্রতা সেন্সরগুলি একই সাথে তাপমাত্রা এবং আর্দ্রতা পরিমাপ করতে পারে।
ইন্টারফেসিং পদ্ধতি:
LM35:
আউটপুট: এনালগ সিগন্যাল, যা মাইক্রোকন্ট্রোলারের ADC (Analog to Digital Converter) এর মাধ্যমে ডিজিটালে রূপান্তরিত হয়।
সংযোগ:
VCC পিন: পাওয়ার সাপ্লাই (5V)
GND পিন: গ্রাউন্ড
OUT পিন: মাইক্রোকন্ট্রোলারের ADC পিনের সাথে সংযুক্ত।
// Arduino কোড উদাহরণ
int sensorPin = A0; // LM35 এর আউটপুট ADC পিনে সংযুক্ত
float temperature;
void setup() {
Serial.begin(9600);
}
void loop() {
int reading = analogRead(sensorPin);
temperature = reading * (5.0 / 1023.0) * 100; // তাপমাত্রা হিসাব করা
Serial.println(temperature);
delay(1000);
}
DHT11/DHT22:
আউটপুট: ডিজিটাল সিগন্যাল।
সংযোগ:
VCC পিন: পাওয়ার সাপ্লাই (3.3V বা 5V)
GND পিন: গ্রাউন্ড
DATA পিন: মাইক্রোকন্ট্রোলারের ডিজিটাল পিনের সাথে সংযুক্ত।
// Arduino DHT কোড উদাহরণ
#include "DHT.h"
#define DHTPIN 2 // DHT এর DATA পিন
#define DHTTYPE DHT11 // DHT 11 ব্যবহার করা হচ্ছে
DHT dht(DHTPIN, DHTTYPE);
void setup() {
Serial.begin(9600);
dht.begin();
}
void loop() {
float humidity = dht.readHumidity();
float temperature = dht.readTemperature();
Serial.print("Humidity: ");
Serial.print(humidity);
Serial.print("% Temperature: ");
Serial.print(temperature);
Serial.println("°C");
delay(2000);
}
২. আলো সেন্সর
জনপ্রিয় আলো সেন্সর:
LDR (Light Dependent Resistor): এটি একটি প্যাসিভ সেন্সর যা আলোতে অবস্থিত পিভি পরিবর্তন করে। আলো বৃদ্ধির সাথে সাথে তার প্রতিরোধ কমে যায়।
TSL2561: একটি ডিজিটাল আলো সেন্সর যা পরিবেশের আলো পরিমাপ করতে ব্যবহৃত হয়।
ইন্টারফেসিং পদ্ধতি:
LDR:
আউটপুট: এনালগ সিগন্যাল।
সংযোগ:
LDR এবং একটি রেজিস্টরের (প্রায় 10kΩ) সাথে একটি ভোল্টেজ ডিভাইডার গঠন করুন।
R1 (LDR) এবং R2 (রেজিস্টর) এর সংযোগ বিন্দু মাইক্রোকন্ট্রোলারের ADC পিনে সংযুক্ত।
// Arduino LDR কোড উদাহরণ
int ldrPin = A0; // LDR এর আউটপুট ADC পিনে সংযুক্ত
int ldrValue;
void setup() {
Serial.begin(9600);
}
void loop() {
ldrValue = analogRead(ldrPin);
Serial.print("LDR Value: ");
Serial.println(ldrValue);
delay(1000);
}
TSL2561:
আউটপুট: I2C প্রোটোকলের মাধ্যমে ডিজিটাল সিগন্যাল।
সংযোগ:
VCC পিন: পাওয়ার সাপ্লাই (3.3V বা 5V)
GND পিন: গ্রাউন্ড
SDA এবং SCL পিন: I2C যোগাযোগের জন্য মাইক্রোকন্ট্রোলারের সাথে সংযুক্ত।
সেন্সর ইন্টারফেসিং তাপমাত্রা, আলো, এবং অন্যান্য শারীরিক পরামিতি পরিমাপের জন্য একটি গুরুত্বপূর্ণ প্রক্রিয়া। তাপমাত্রা সেন্সর যেমন LM35 এবং DHT11, এবং আলো সেন্সর যেমন LDR এবং TSL2561 ইন্টারফেসিং এর মাধ্যমে বিভিন্ন ডিভাইসে সংযোগ স্থাপন করা হয়। এই সেন্সরগুলির সঠিক ইন্টারফেসিং ডিজাইন এবং কোডিংয়ের মাধ্যমে কার্যকরী ফলাফল পেতে সাহায্য করে।