সুচিপত্র:

হোম অটোমেশন: তাপমাত্রা থ্রেশহোল্ড ভ্যালুর উপরে হলে এলসিডিতে অ্যালার্ম এবং ডিসপ্লে প্রদর্শন করুন: 5 টি ধাপ
হোম অটোমেশন: তাপমাত্রা থ্রেশহোল্ড ভ্যালুর উপরে হলে এলসিডিতে অ্যালার্ম এবং ডিসপ্লে প্রদর্শন করুন: 5 টি ধাপ

ভিডিও: হোম অটোমেশন: তাপমাত্রা থ্রেশহোল্ড ভ্যালুর উপরে হলে এলসিডিতে অ্যালার্ম এবং ডিসপ্লে প্রদর্শন করুন: 5 টি ধাপ

ভিডিও: হোম অটোমেশন: তাপমাত্রা থ্রেশহোল্ড ভ্যালুর উপরে হলে এলসিডিতে অ্যালার্ম এবং ডিসপ্লে প্রদর্শন করুন: 5 টি ধাপ
ভিডিও: Вентиляция в хрущевке. Как сделать? Переделка хрущевки от А до Я. #31 2024, নভেম্বর
Anonim
হোম অটোমেশন: তাপমাত্রা থ্রেশহোল্ড মানের উপরে থাকলে এলসিডিতে অ্যালার্ম এবং ডিসপ্লে প্রদর্শন করুন
হোম অটোমেশন: তাপমাত্রা থ্রেশহোল্ড মানের উপরে থাকলে এলসিডিতে অ্যালার্ম এবং ডিসপ্লে প্রদর্শন করুন

এই ব্লগটি দেখাবে কিভাবে একটি হোম অটোমেশন সিস্টেম তৈরি করতে হবে যা যখনই তাপমাত্রা প্রোগ্রাম করা থ্রেশহোল্ড মানের চেয়ে বেশি পৌঁছায় তখন অ্যালার্ম বাজানো শুরু করে। এটি এলসিডি -তে ঘরের বর্তমান তাপমাত্রা প্রদর্শন করতে থাকবে এবং প্রয়োজনীয় কার্যকলাপ (যেমন: তাপমাত্রা হ্রাস করুন) যখন তাপমাত্রা থ্রেশহোল্ড মানের চেয়ে বেশি হবে। এই টিউটোরিয়ালে, আমি AD22100 টেম্প সেন্সর ব্যবহার করছি যা এনালগ ডিভাইস এবং AG-1005G Buzzer দ্বারা নির্মিত। AD22100 হল সিগন্যাল কন্ডিশনিং সহ একটি ভোল্টেজ আউটপুট তাপমাত্রা সেন্সর।

ধাপ 1: অংশ

এই অবিনাশী কাজ শুরু করার আগে আপনার সাথে এই অংশগুলির প্রয়োজন

1. আরডুইনো ইউএনও বোর্ড

2. এলসিডি ডিসপ্লে (16x2)

3. বুজার - 2 পিন (এসি -1005 জি)

4. টেম্প সেন্সর - 3 পিন (AD22100)

ধাপ 2: আরডুইনো ইউএনও এর সাথে বিভিন্ন অংশের সংযোগ

আরডুইনো ইউএনও বোর্ডের সাথে এলসিডি সংযোগ

আরডুইনো বোর্ডের পিন 7 সহ এলসিডি আরএস পিন (পিন 4)

LCD Arduino বোর্ডের পিন 8 সহ পিন (পিন 6) সক্ষম করুন

আরসিডুইনো বোর্ডের পিন 9 সহ এলসিডি ডি 4 পিন (পিন 11)

আরডুইনো বোর্ডের পিন 10 সহ এলসিডি ডি 5 পিন (পিন 12)

আরডুইনো বোর্ডের পিন 11 সহ এলসিডি ডি 6 পিন (পিন 13)

আরডুইনো বোর্ডের পিন 12 সহ এলসিডি ডি 7 পিন (পিন 14)

+5v (পট পিন 1) এবং জিএনডি (পট পিন 3) -এ 10 কেΩ পট যোগ করুন, LCD V0 Pin (Pin 3) এর সাথে পটের মধ্য পিন (পট পিন 2) সংযুক্ত করুন।

LCD VDD Pin (Pin 2) এবং LCD A Pin (Pin 15) +5v with Arduino Board।

LCD VSS Pin (Pin 1) এবং LCD K Pin (Pin 16) Arduino বোর্ডে GND সহ।

আরডুইনো ইউএনও বোর্ডের সাথে AD22100 টেম্প সেন্সর সংযোগ

AD22100 এর পিন 1 (V +) Arduino বোর্ডে +5 v এর সাথে সংযুক্ত হওয়া উচিত।

AD22100 এর পিন 2 (Vo) Arduino বোর্ডে পিন A1 এর সাথে সংযুক্ত হওয়া উচিত।

AD22100 এর পিন 3 (GND) Arduino বোর্ডে GND এর সাথে সংযুক্ত হওয়া উচিত

Arduino UNO বোর্ডের সাথে Buzzer (AC-1005G) সংযোগ

Arduino বোর্ডের পিন 6 PWM আউটপুট বুজারের +ve ইনপুট এর সাথে সংযুক্ত হওয়া উচিত।

Arduino বোর্ডের GND- কে Buzzer -ve ইনপুটের সাথে সংযুক্ত করা উচিত

ধাপ 3: Arduino কোড

এটি কম্পাইল করুন এবং এটি Arduino বোর্ডে আপলোড করুন এবং হোম অটোমেশন সিস্টেম ডেমো পর্যবেক্ষণ করুন

// প্রোগ্রাম এখানে শুরু

int val;

int tempPin = A1;

int buzzer = 6;

#লিকুইডক্রিস্টাল এলসিডি অন্তর্ভুক্ত করুন (7, 8, 9, 10, 11, 12);

অকার্যকর সেটআপ() {

// আপনার সেটআপ কোড এখানে রাখুন, একবার চালানোর জন্য:

lcd.begin (16, 2);

lcd.clear ();

Serial.begin (9600);

পিনমোড (বুজার, আউটপুট);

}

অকার্যকর লুপ () {// আপনার প্রধান কোডটি এখানে রাখুন, বারবার চালানোর জন্য:

val = analogRead (tempPin); // AD22100 পিন A1 এ সংযুক্ত

/*

*25C এর জন্য, ভ্যাল 900 এর মানে হল

* 900 1.9375 v এর সাথে সম্পর্কিত

* ট্রান্সফার ফাংশন হল (V +/5) * (1.375 + 22.5 mv/degC * 25 degC), * AD22100 এর ডেটশীট পড়ুন

*/

ভাসা cel = ((((1.9375/900) * val) - 1.375) /22.5) * 1000;

float farh = (cel*9)/5 + 32;

সিরিয়াল.প্রিন্ট (ভ্যাল);

Serial.println ();

Serial.print ("TEMPRATURE =");

Serial.print (cel); Serial.print ("*C");

Serial.println ();

যদি (cel> 26) {

স্বর (বুজার, 1000);

lcd.clear ();

lcd.print ("থ্রেশহোল্ডের উপরে টেম্প");

lcd.setCursor (0, 1);

lcd.print ("তাপমাত্রা হ্রাস করুন");

}

অন্য

{noTone (buzzer);

lcd.clear ();

lcd.print ("নিয়ন্ত্রণে টেম্প");

lcd.setCursor (0, 1);

lcd.print ("Temp =");

lcd.print (cel);

lcd.print ("degC");

}

বিলম্ব (500);

}

// প্রোগ্রাম এখানেই শেষ

ধাপ 4: বিস্তারিত বোঝার প্রোগ্রাম

আমি কোডের কয়েকটি বিভাগ ব্যাখ্যা করার চেষ্টা করব।

If/else স্টেটমেন্ট সম্পর্কিত ফাংশন

যদি তাপমাত্রা থ্রেশহোল্ড মানের চেয়ে বেশি হয়, আমি বাজারের কাছে একটি অ্যালার্ম বাজানোর জন্য একটি সংকেত পাঠাচ্ছি এবং কোডের নীচের অংশের সাথে তাপমাত্রা কমানোর জন্য LCD তে প্রদর্শন করছি

যদি (cel> 26)

{স্বর (বুজার, 1000);

lcd.clear ();

lcd.print ("থ্রেশহোল্ডের উপরে টেম্প");

lcd.setCursor (0, 1);

lcd.print ("তাপমাত্রা হ্রাস করুন");

}

যদি তা না হয় তাহলে LCD তে টেম্পের বর্তমান মান পাঠানো এবং সেই তাপমাত্রা প্রদর্শন করা নিয়ন্ত্রণে থাকে।

অন্য

{noTone (buzzer);

lcd.clear ();

lcd.print ("নিয়ন্ত্রণে টেম্প");

lcd.setCursor (0, 1);

lcd.print ("Temp =");

lcd.print (cel);

lcd.print ("degC");

}

বুজার সম্পর্কিত কার্যাবলী

টোন (বুজার, 1000) - এই ফাংশনটি বাজারের নামযুক্ত পিনে 1 khz সংকেত প্রেরণ করবে যা পিন 6 হিসাবে সংজ্ঞায়িত এবং চুম্বকীয় বুজার পিন 6 এ সংযুক্ত থাকে। সুতরাং, বাজানো বন্ধ হবে

টেম্প সেন্সর সম্পর্কিত ফাংশন

টেম্প রিডিং এর ডিগ্রি সি ভ্যালুতে এনালগ ভ্যালুর রূপান্তর একটি ট্রান্সফার ফাংশন ব্যবহার করে করা হয় যা AD22100 ডেটাশীটে নীচে লেখা আছে।

Vout = (V +/5 V) × (1.375 V + 22.5 mV/° C × TA) এবং LCD ডিসপ্লেতে একই মান ছাপা হয়।

ধাপ 5: নির্দেশাবলীর ডেমো

একবার প্রোগ্রামটি আরডুইনো ইউএনও বোর্ডে সংকলিত এবং আপলোড করা হয়

আসুন আমরা টেম্প সেন্সর AD22100 দ্বারা টেম্প সেন্সর বাড়ানোর চেষ্টা করি এবং হোম অটোমেশন সিস্টেম উপভোগ করি।

সেন্সরের তাপমাত্রা বাড়ানোর জন্য, আমি ল্যাবে পাওয়া সোল্ডারিং আয়রন দিয়ে এটি স্পর্শ করছি।

আপনি এখানে ডেমো দেখতে পারেন..

হোম অটোমেশন সিস্টেমের ডেমো

প্রস্তাবিত: