সুচিপত্র:

Arduino তাপমাত্রা এবং আর্দ্রতা সেন্সর: 7 ধাপ
Arduino তাপমাত্রা এবং আর্দ্রতা সেন্সর: 7 ধাপ

ভিডিও: Arduino তাপমাত্রা এবং আর্দ্রতা সেন্সর: 7 ধাপ

ভিডিও: Arduino তাপমাত্রা এবং আর্দ্রতা সেন্সর: 7 ধাপ
ভিডিও: Arduino Bangla Tutorial Part - 45: How to use DHT11 Temperature and Humdity Sensor with Arduino 2024, নভেম্বর
Anonim

Thundertronics দ্বারা লেখক আরো অনুসরণ করুন:

PIC16F877A এনালগ টু ডিজিটাল কনভার্টার (ADC)
PIC16F877A এনালগ টু ডিজিটাল কনভার্টার (ADC)
PIC16F877A এনালগ টু ডিজিটাল কনভার্টার (ADC)
PIC16F877A এনালগ টু ডিজিটাল কনভার্টার (ADC)
PIC16F877A মাইক্রোকন্ট্রোলারের সাথে LCD ইন্টারফেস
PIC16F877A মাইক্রোকন্ট্রোলারের সাথে LCD ইন্টারফেস
PIC16F877A মাইক্রোকন্ট্রোলারের সাথে LCD ইন্টারফেস
PIC16F877A মাইক্রোকন্ট্রোলারের সাথে LCD ইন্টারফেস
DIY মডুলার বেঞ্চ পাওয়ার সাপ্লাই
DIY মডুলার বেঞ্চ পাওয়ার সাপ্লাই
DIY মডুলার বেঞ্চ পাওয়ার সাপ্লাই
DIY মডুলার বেঞ্চ পাওয়ার সাপ্লাই

এই টিউটোরিয়ালে, আমি DHT11 (বা DHT22) সেন্সর সহ Arduino প্রো মিনি বোর্ড ব্যবহার করে একটি তাপমাত্রা এবং আর্দ্রতা সেন্সর তৈরির ব্যাখ্যা করতে যাচ্ছি।

ধাপ 1: ভিডিওটি দেখুন

পরবর্তী ধাপে যাওয়ার আগে প্রথমে ভিডিওটি দেখা গুরুত্বপূর্ণ। ভিডিওটি সবকিছু ব্যাখ্যা করে এবং এটি কীভাবে করা হয় তা প্রদর্শন করে। যাইহোক, এই পোস্টে, আমি আরো প্রযুক্তিগত তথ্য এবং বিস্তারিত লিখব।

www.youtube.com/watch?v=56LKl7Xd770

পদক্ষেপ 2: প্রয়োজনীয় অংশ

এই প্রকল্পের জন্য প্রয়োজনীয় অংশগুলি হল:

1- Arduino প্রো মিনি বোর্ড (বা কোন Arduino)।

2- DHT11 তাপমাত্রা এবং আর্দ্রতা সেন্সর (বা DHT22)।

3- 16x2 LCD ডিসপ্লে।

4- আপনার পছন্দের একটি ঘের, বিশেষত ভিডিওতে ব্যবহৃত একটির মতো।

5- 10 কে পোটেন্টিওমিটার

6- স্ক্রু টার্মিনাল

7- বিভিন্ন মূল্যবোধের প্রতিরোধক।

8- 9v ব্যাটারি।

যখন প্রয়োজনীয় সরঞ্জামগুলি হল:

1- ড্রেমিলের মতো হ্যান্ড ড্রিল।

2- ড্রিলের জন্য বিভিন্ন বিট, যেহেতু আমরা স্মুথিং বিট এবং কাটিং বিট ব্যবহার করব।

3- সাহায্যের হাত।

এছাড়াও, সাধারণ ইলেকট্রনিক্স সরঞ্জাম যেমন মাল্টিমিটার ইত্যাদি।

ধাপ 3: পরিকল্পিত নকশা

পরিকল্পিত নকশা
পরিকল্পিত নকশা

এই প্রকল্পে, আমি নিজে তারের পরিবর্তে এটির জন্য একটি PCB তৈরি করা বেছে নিয়েছি। তাই আমি কাজের জন্য EasyEDA অনলাইন টুল ব্যবহার করেছি যা একটি চমৎকার অভিজ্ঞতা ছিল।

এটি ইজিইডিএ ওয়েবসাইটে প্রকল্পের পৃষ্ঠা:

পরিকল্পিত ব্যাখ্যা নিম্নরূপ:

1- আমি আরডুইনো প্রো মিনি প্রোগ্রাম করার জন্য একটি 6-পিন ICSP অ্যাডাপ্টার ব্যবহার করেছি কারণ এটি বোর্ডে একের সাথে আসে না। এটি পরিকল্পিতভাবে J2।

2- R2 হল 100 Ohms এবং এটি LCD এর উজ্জ্বলতা সেট করে। মূলত, যদি আপনি LCD ব্যাকলাইটটি ম্লান হতে চান তবে আপনি 100R এর চেয়ে বেশি প্রতিরোধ করতে পারেন। অথবা আরও ভাল, একটি পরিবর্তনশীল সিরিজ প্রতিরোধের হিসাবে কাজ করার জন্য একটি পোটেন্টিওমিটার পান।

3- JP1 শুধু একটি সংযোগকারী যার একটি চমৎকার PCB পদচিহ্ন রয়েছে। আমি কখনই একটি প্রকৃত টার্মিনাল রাখিনি কিন্তু তারের পরিবর্তে তারগুলি বিক্রি করেছি। আপনার পছন্দ মতো করুন।

4- U2 হল ব্যাটারি সংযোগ টার্মিনাল। এখানে, আমি দৃ connection় সংযোগ পেতে একটি সুন্দর স্ক্রু টার্মিনাল পছন্দ করি। আপনি তারগুলি সোল্ডার করতে পারেন, কিন্তু কোনও ঝাঁকুনি সহ্য করার জন্য সংযোগটি যথেষ্ট শক্ত করার জন্য পর্যাপ্ত সোল্ডার রাখতে ভুলবেন না।

5- LCD1 হল EasyEDA এর LCD উপাদান। এটি Arduino প্রো মিনি মৌলিক সংযোগ আছে। নিশ্চিত করুন যে এখানে পিনগুলি সফ্টওয়্যারের অনুরূপ।

6- RV1 হল একটি 10K পটেনশিওমিটার যা LCD কনট্রাস্ট সেট করে। এটি শুধুমাত্র একবার ব্যবহার করা উচিত এবং এটি হল যখন আপনি প্রথম LCD পাওয়ার করেন।

ধাপ 4: পিসিবি ডিজাইন

পিসিবি ডিজাইন
পিসিবি ডিজাইন
পিসিবি ডিজাইন
পিসিবি ডিজাইন

পরিকল্পিত নকশাটি শেষ করার পরে এবং সবকিছু বোঝার পরে, এটির জন্য একটি পিসিবি তৈরির সময় এখন।

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

স্থানটি খুব কম হওয়ায় আমি উপরের থেকে নীচের স্তরে যাওয়ার জন্য প্রচুর ভায়াস ব্যবহার করেছি।

ধাপ 5: PCB তৈরি করুন

এখন, পিসিবি নকশা শেষ। আমরা সবকিছু চেক করেছি এবং কোন সমস্যা পাওয়া যায়নি। আমাদের পছন্দের পিসিবি ফ্যাব্রিকেশন কোম্পানিকে ডিজাইন ফাইল (জারবার্স) পাঠাতে হবে যাতে এটি আমাদের জন্য এটি করতে পারে।

আমার পছন্দের কোম্পানি হল JLCPCB। এগুলি এই জাতীয় প্রকল্প এবং প্রোটোটাইপিংয়ের জন্য সেরা এবং তারা আপনার ডিজাইনের পুরো 10 টুকরোর জন্য মাত্র 2 ডলার মূল্য দেয়!

সুতরাং, এখন আমরা (…।) ক্লিক করি এবং JLCPCB নির্বাচন করি। আমরা JLCPCB ওয়েবসাইটে নির্দেশিত কারণ তারা EasyEDA- এর সাথে অংশীদার। এখন সবকিছু পূরণ করুন এবং অর্ডার দিন। এখন শুধু PCBs না আসা পর্যন্ত অপেক্ষা করুন।

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

ধাপ 6: সমাবেশ

আমাদের এখন সবকিছু নিয়ে পিসিবি একা আছে। সময় এসেছে সবকিছু একত্রিত করার।

প্রথমত, আমাদের পরিকল্পনা অনুযায়ী ইলেকট্রনিক্স বিক্রি করতে হবে। এই প্রকল্পের জন্য এটি একটি সহজ কাজ।

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

আপনার এখন LCD এর বৈসাদৃশ্য সামঞ্জস্য করার জন্য potentiometer ব্যবহার করা উচিত, উজ্জ্বলতার জন্য প্রয়োজনীয় প্রতিরোধক ভালভ নির্বাচন করার সময়, আমি 100R বেছে নিয়েছি।

ধাপ 7: কোড

এই প্রকল্পের জন্য কোড এই ধাপের সাথে সংযুক্ত, এবং ব্যাখ্যা নিম্নরূপ:

// লাইব্রেরি কোড অন্তর্ভুক্ত করুন: #অন্তর্ভুক্ত #অন্তর্ভুক্ত "DHT.h" // DHT পিন সেট করুন #DHTPIN 2 নির্ধারণ করুন

প্রয়োজনীয় লাইব্রেরি অন্তর্ভুক্ত করুন এবং সেন্সরের ডেটা পিন হিসাবে Arduino pro mini এর পিন 2 সংজ্ঞায়িত করুন। এই লাইব্রেরিগুলি আপনার কাছে না থাকলে ইনস্টল করতে ভুলবেন না।

// ইন্টারফেস পিন লিকুইডক্রিস্টাল এলসিডি (9, 8, 7, 6, 5, 4) এর সংখ্যা দিয়ে লাইব্রেরি আরম্ভ করুন; #DHTTYPE DHT11 DHT dht (DHTPIN, DHTTYPE) নির্ধারণ করুন;

এখন পরিকল্পিতভাবে এই পিনের সাহায্যে LCD লাইব্রেরি শুরু করুন। এছাড়াও DHT লাইব্রেরি ব্যবহার করুন এবং DHT11 ব্যবহার করুন সেন্সর হিসাবে, তাই যদি আপনার DHT22 থাকে তাহলে আপনার এটি পরিবর্তন করা উচিত।

শেষ লাইনটি বলে যে আমাদের DHT11 সেন্সর আছে এবং এর ডেটা পিন "DHTPIN" পিনে আছে যা পিন 2 হিসাবে আমরা পূর্বে সংজ্ঞায়িত করেছি।

অকার্যকর সেটআপ () {// LCD এর কলাম এবং সারির সংখ্যা সেট আপ করুন: lcd.begin (16, 2); dht.begin (); lcd.setCursor (0, 0); lcd.print ("তাপমাত্রা এবং"); lcd.setCursor (0, 1); lcd.print ("আর্দ্রতা সেন্সর"); বিলম্ব (3000); lcd.clear (); lcd.setCursor (0, 0); lcd.print ("THUNDERTRONICS"); lcd.setCursor (0, 1); lcd.print ("হোসাম মোগরবি"); বিলম্ব (3000); }

এখন এটি সেটআপ সময়! এবং এখানে কি ঘটছে:

LCD 16 বাই 2 টাইপ।

মান পেতে DHT কমান্ড শুরু করুন।

2 লাইনে "তাপমাত্রা এবং আর্দ্রতা সেন্সর" মুদ্রণ করুন।

বিলম্ব 3 সেকেন্ড।

ডিসপ্লে পরিষ্কার করুন

প্রথম লাইনে "THUNDERTRONICS" প্রিন্ট করুন তারপর দ্বিতীয় লাইনে "Hossam Moghrabi" প্রিন্ট করুন।

বিলম্ব 3 সেকেন্ড।

^আমি এটি একটি স্বাগত পর্দা হিসাবে করেছি যা মানগুলি প্রদর্শিত হওয়ার আগে প্রায় 6 সেকেন্ড বা তারও বেশি সময় ধরে থাকে।

অকার্যকর লুপ () {// আর্দ্রতা পড়ুন int h = dht.readHumidity (); // c int t = dht.readTemperature () তে তাপমাত্রা পড়ুন; যদি (isnan (h) || isnan (t)) {lcd.print ("ERROR"); প্রত্যাবর্তন; }

এখন আমরা আমাদের চিরন্তন লুপের ভিতরে যা নিজের পুনরাবৃত্তি করতে থাকবে।

"H" ভেরিয়েবলের ভিতরে আর্দ্রতা রিডিং এবং "t" ভেরিয়েবলের ভিতরে তাপমাত্রা রিডিং সংরক্ষণ করুন।

পরবর্তী, আমাদের একটি if স্টেটমেন্ট আছে। এটি মূলত একটি ত্রুটি বার্তা প্রদান করে যখন একটি ত্রুটি থাকে। এটি পরিবর্তন না করে ছেড়ে দিন।

এখন আমাদের প্রয়োজনীয় সব মূল্যবোধ আছে।

lcd.setCursor (0, 0); lcd.print ("Temp। ="); lcd.print (t); lcd.print (""); lcd.print ((char) 223); lcd.print ("C"); lcd.setCursor (0, 1); lcd.print ("আর্দ্রতা ="); lcd.print (h); lcd.print (" %"); // lcd.print ("হোসাম মোগরবি"); বিলম্ব (2000);

অবশেষে, আমরা এই মানগুলি LCD ডিসপ্লেতে প্রদর্শন করি। আপনি এটিকে আপনার পছন্দ মতো পরিবর্তন করতে পারেন কারণ এটি কেবল "h" এবং "t" ভেরিয়েবলের ভিতরে মানগুলি মুদ্রণ করে। 2 সেকেন্ড দেরি করা কিছুটা optionচ্ছিক কিন্তু আপনি এটি দ্রুত করার ফলে খুব বেশি উপকৃত হবেন না কারণ সেন্সর নিজেই তত দ্রুত নয় এবং এমনকি যদি তা হয়, তবুও শারীরিক মান কখনোই দ্রুত পরিবর্তন করে না। কাজটির জন্য 2 সেকেন্ড খুব দ্রুত!

হ্যাঁ, ওটাই!

প্রস্তাবিত: