সুচিপত্র:
- ধাপ 1: আপনার ডিভাইস প্রস্তুত করুন
- ধাপ 2: দুই পয়েন্ট ক্রমাঙ্কন
- ধাপ 3: সঠিক পথে আপনি যে মূল্যগুলি পান তা ব্যবহার করুন
ভিডিও: Arduino UNO এর সাথে DS18B20 সেন্সরের ক্রমাঙ্কন: 3 টি ধাপ (ছবি সহ)
2024 লেখক: John Day | [email protected]. সর্বশেষ পরিবর্তিত: 2024-01-30 08:02
দাবী:
ছবিগুলিতে আপনি যে ডিভাইসটি দেখছেন তা অন্য একটি প্রকল্পে থার্মোস্ট্যাট হিসেবে ফিল্ম ডেভেলপিং প্রক্রিয়ার জন্য ব্যবহৃত হয়। আপনি সেই প্রকল্পটি এখানে খুঁজে পেতে পারেন। একটি সেন্সর, বা একাধিক ক্যালিব্রেট করার জন্য, আপনি এই প্রকল্পে যা পাবেন, তার চেয়ে বেশি কিছু নয়, এবং এটি বেশ মৌলিকও! চলো যাই!
ধাপ 1: আপনার ডিভাইস প্রস্তুত করুন
আপনার যা প্রয়োজন তার একটি তালিকা এখানে দেওয়া হল:
- আরডুইনো ইউএনও (বা মেগা)
- DS18B20 সেন্সর (গুলি)
- 4kOhm - 5kOhm প্রতিরোধের (আমি 5k1Ohm ব্যবহার করেছি)
- মান পড়ার জন্য LCD স্ক্রিন (আপনি একটি ল্যাপটপও ব্যবহার করতে পারেন এবং সেগুলো সিরিয়াল মনিটরে পড়তে পারেন)
- একটি স্কেচ যা সেন্সর ব্যবহার করে এবং একরকম মান দেখায়
প্রথমে আপনাকে আপনার মডিউল এবং সেন্সরকে আপনার নিয়ামকের সাথে সংযুক্ত করতে হবে। আমি LCD এর জটিল অংশটি আপনার জন্য ওয়েবে অনুসন্ধান করার জন্য ছেড়ে দেব, এবং আমি আপনাকে সেন্সর কিভাবে সংযুক্ত করতে হয় তা বলব।
সাধারণত সেই সেন্সর তিনটি রঙের তারের সাথে আসে: কালো, লাল, হলুদ। প্রথম দুটি শক্তির জন্য এবং তৃতীয়টি ডেটার জন্য। কালোকে GNN, লাল থেকে Vcc (5V) এবং হলুদকে একটি এনালগ ইনপুটে সংযুক্ত করুন, আসুন A0 বলি।
এখন সংযোগগুলি সম্পূর্ণ করতে হলুদ এবং লাল এর মধ্যে প্রতিরোধের সংযোগ করুন।
LCD প্লাগ করুন
এখন স্কেচ যা অতি সহজ:
#OneWire.h অন্তর্ভুক্ত করুন
#"DallasTemperature.h" অন্তর্ভুক্ত করুন #ON_WIRE_BUS_1 A0 OneWire ourWire1 (ONE_WIRE_BUS_1); ডালাস তাপমাত্রা সেন্সর 1 (এবং আমাদের ওয়্যার 1); #অন্তর্ভুক্ত "LiquidCrystal_I2C.h"
LiquidCrystal_I2C lcd (0x27, 16, 2); ভাসা RawValue = 0;
অকার্যকর সেটআপ () {lcd.init (); lcd.backlight (); সেন্সর 1. শুরু (); sensor1.setResolution (11); } অকার্যকর লুপ () {sensor1.requestTempemeters (); Float RawValue = sensor1.getTempCByIndex (0); lcd.setCursor (0, 0); lcd.print ("Sens। 1"); lcd.print (RawValue, 1); }
আপনি দেখতে পাচ্ছেন আমরা ডালাস তাপমাত্রা লাইব্রেরি এবং i2c সংযোগ সহ একটি LCD স্ক্রিন ব্যবহার করি।
সেটআপটিতে আমরা LCD এবং সেন্সরকে ইনজিয়েট করি এবং লুপে আমরা কেবল তাপমাত্রার অনুরোধ করি এবং LV তে দেখানোর জন্য ভ্যারিয়েবল RawValue এর ভিতরে মান সংরক্ষণ করি।
আপনি যদি এটিকে আরও সহজ রাখতে চান তবে কেবল নিম্নলিখিত স্কেচ সহ সিরিয়াল মনিটরটি ব্যবহার করুন
#অন্তর্ভুক্ত "Wire.h" #অন্তর্ভুক্ত "OneWire.h" #অন্তর্ভুক্ত "DallasTemperature.h" #সংজ্ঞায়িত ONE_WIRE_BUS_1 A0 OneWire ourWire1 (ONE_WIRE_BUS_1); ডালাস তাপমাত্রা সেন্সর 1 (এবং আমাদের ওয়্যার 1);
ভাসা RawValue = 0;
অকার্যকর সেটআপ(){
বিলম্ব (1000); Serial.begin (9600); সেন্সর 1. শুরু (); sensor1.setResolution (11);
}
অকার্যকর লুপ () {sensor1.requestTempemeters (); Float RawValue = sensor1.getTempCByIndex (0); Serial.print ("Sens। 1"); Serial.println (RawValue, 1); }
এখন সেন্সরকে ক্যালিব্রেট করতে প্রকল্পের মূল অংশে আমাকে অনুসরণ করুন।
ধাপ 2: দুই পয়েন্ট ক্রমাঙ্কন
প্রথমে কিছু জানার আছে
একটি থার্মো-সেন্সর ক্যালিব্রেট করার জন্য, আপনাকে এমন কিছু পরিমাপ করতে হবে যার মধ্যে আপনি তাপমাত্রা জানেন। বাড়িতে এটি করার সহজ উপায় হল ফুটন্ত পানি এবং গলানো বরফের স্নান, যাকে "ট্রিপল-পয়েন্ট" স্নানও বলা হয়। সেসব ক্ষেত্রে আমরা জানি যে জল সমুদ্রপৃষ্ঠে 100 ডিগ্রি সেলসিয়াসে ফুটতে থাকে। মনে রাখবেন যে একটি সুনির্দিষ্ট পরিমাপ করতে আপনার উচ্চতা জানা উচিত এবং সেখানে সঠিক ফুটন্ত তাপমাত্রা গণনা করা উচিত।
আপনি এখানে চেক করতে পারেন!
সৎ হওয়ার জন্য আপনার বায়ুমণ্ডলীয় চাপ পরীক্ষা করা উচিত এবং উচ্চতা নয়। কিন্তু সেই উপায় যথেষ্ট সঠিক।
ট্রিপল-পয়েন্ট স্নান, বা বরফ স্নান, সেই তাপমাত্রা যেখানে তিনটি রাজ্যে কঠিন, তরল এবং গ্যাস থাকে, সেই তাপমাত্রা 0, 01 ° C। আমরা 0 ° C সরলীকরণের জন্য ব্যবহার করব।
সেন্সর যে মানটি পড়ে এবং যে মানটি হওয়া উচিত তা জেনে, আমরা DS18B20 এর কাঁচা মানকে আরও সঠিক কিছুতে পরিবর্তন করতে পারি।
দ্রষ্টব্য: আপনি সেন্সরকে ক্যালিব্রেট করার জন্য আরও তাপমাত্রা ব্যবহার করতে পারেন, এটি অন্য কোন পদার্থের মধ্যে রেখে আপনি ইথার (35 ° C), পেন্টেন (36, 1 ° C), এসিটোন (56 ° C) বা ইথানল (78, 37 ডিগ্রি সেলসিয়াস), কিন্তু সেই ফুটন্ত পদার্থগুলি উচ্চ জ্বলনযোগ্য গ্যাস তৈরি করে! তাই এটা করবেন না!
ফুটানো পানি:
একটি পাত্রের মধ্যে কিছু জল রাখুন এবং এটি গরম না হওয়া পর্যন্ত গরম করুন (গ্যাসের বুদবুদগুলি বিকশিত হচ্ছে এবং জল নিজেই উত্তেজিত হচ্ছে)। আপনার সেন্সর নিমজ্জিত করুন যেখানে এটি জল ছাড়া অন্য কিছু স্পর্শ করে না। কয়েক মিনিট অপেক্ষা করুন এবং এলসিডি বা সিরিয়াল মনিটরটি পড়ুন।
তাপমাত্রা কমপক্ষে এক মিনিটের জন্য একই থাকা উচিত। যদি তা হয় তবে সেই মানটি লিখুন। যে আপনার: RawHigh মান।
ট্রিপল-পয়েন্ট স্নান:
এখন একটি বড় গ্লাস নিন (আপনার বিশাল বা পাত্রের প্রয়োজন নেই) এবং এটি বরফের কিউব দিয়ে সীমান্তে পূরণ করুন। ছোট আকারের বরফ কিউব ব্যবহার করার চেষ্টা করুন। এখন cold০% গ্লাস ঠান্ডা পানি দিয়ে ভরে দিন। যদি লিভার নিচে যাওয়ার চেষ্টা করে তবে বরফ দিয়ে পুনরায় পূরণ করুন।
এখন আপনার সেন্সরটি পানির/বরফের ভিতরে রাখুন এবং দেড় মিনিট অপেক্ষা করুন। তাপমাত্রা পড়ুন যা অন্তত 30 সেকেন্ডের জন্য একই থাকা উচিত। যদি তা হয় তবে এটি লিখুন, এটি আপনার RawLow মান।
ধাপ 3: সঠিক পথে আপনি যে মূল্যগুলি পান তা ব্যবহার করুন
সুতরাং, এখন আপনি কিছু গুরুত্বপূর্ণ মান পেয়েছেন:
- RawHigh
- RawLow
- রেফারেন্স হাই
- রেফারেন্স
রেফারেন্স মান স্পষ্টভাবে ফুটন্ত জলের জন্য 99.9 ° C (আমার 22 মিটার উচ্চতায়), এবং বরফ গলানোর জন্য 0 ° C। এখন সেই মানগুলির রেঞ্জ গণনা করুন:
- RawRange = RawHigh - RawLow
- ReferenceRange = ReferenceHigh - ReferenceLow
এখন আপনি এই সেন্সরটি অন্য কোন প্রজেক্টে ব্যবহার করতে প্রস্তুত, নিশ্চিত যে এটি আপনাকে সঠিক পরিমাপ দেবে। কিভাবে? প্রকল্পটিতে আপনি যে মান পেয়েছেন তা ব্যবহার করে আপনি সেই সেন্সর দিয়ে তৈরি করবেন।
আপনার ভবিষ্যতের প্রকল্পে আপনাকে এই মানগুলি পড়তে হবে এবং আমি এখানে ব্যবহার করা একই নাম ব্যবহার করে এটি করার পরামর্শ দিচ্ছি।
অকার্যকর সেটআপ () বিভাগের আগে ভেরিয়েবলগুলি এইভাবে ঘোষণা করুন:
float RawHigh = 99.6; float RawLow = 0.5; float ReferenceHigh = 99.9; float ReferenceLow = 0; float RawRange = RawHigh - RawLow; float ReferenceRange = ReferenceHigh - ReferenceLow;
যতবার আপনি সেন্সর ব্যবহার করবেন ততবার, আপনি সংশোধিত মূল্য গণনা করতে নিম্নলিখিত সূত্রটি ব্যবহার করতে পারেন:
float CorrectedValue = (((RawValue - RawLow) * ReferenceRange) / RawRange) + ReferenceLow;
RawValue স্পষ্টতই সেন্সরের পড়া।
এটাই!
এখন আপনি জানেন কিভাবে আপনার DS18B20 সেন্সর বা অন্য কোন সেন্সর যা আপনি ব্যবহার করবেন তা ক্যালিব্রেট করতে হয়! আনন্দ কর!
প্রস্তাবিত:
INA219 ভোল্টেজ/বর্তমান সেন্সরের সাথে সিনিলিংক ওয়াইফাই সুইচ পরিবর্তন: 11 ধাপ
INA219 ভোল্টেজ/বর্তমান সেন্সরের সাথে সিনিলিংক ওয়াইফাই স্যুইচ পরিবর্তন: সিনিলিংক XY-WFUSB ওয়াইফাই ইউএসবি সুইচ একটি সংযুক্ত ছোট ডিভাইস যা দূর থেকে সংযুক্ত ইউএসবি ডিভাইস চালু/বন্ধ করতে পারে। দুlyখজনকভাবে এটি সরবরাহের ভোল্টেজ পরিমাপ করার ক্ষমতা বা সংযুক্ত ডিভাইসের বর্তমান ব্যবহার করার অভাব রয়েছে।
এলসিডি এবং আইআর সেন্সরের সাথে ইনফিনিটি মিরর: 5 টি ধাপ
এলসিডি এবং আইআর সেন্সরের সাথে ইনফিনিটি মিরর: এই প্রকল্পটি আপনাকে দেখাবে যে আপনি কীভাবে ইনফিনিটি মিরর তৈরি করতে পারেন। মূল ধারণা হল যে আয়নাতে থাকা LEDs আলো তৈরি করে যা পিছনের আয়না থেকে সামনের আয়না পর্যন্ত বাউন্স করে যেখানে কিছু আলো বেরিয়ে যায় যাতে আমরা ভিতরে দেখতে পারি এবং তাই
অতিস্বনক সেন্সর এবং যোগাযোগহীন তাপমাত্রা সেন্সরের সাথে Arduino ইন্টারফেসিং: 8 টি ধাপ
অতিস্বনক সেন্সর এবং যোগাযোগহীন তাপমাত্রা সেন্সরের সাথে Arduino ইন্টারফেসিং: আজকাল, নির্মাতারা, বিকাশকারীরা প্রকল্পগুলির প্রোটোটাইপিংয়ের দ্রুত বিকাশের জন্য Arduino কে পছন্দ করছেন। Arduino একটি ওপেন সোর্স ইলেকট্রনিক্স প্ল্যাটফর্ম যা সহজেই ব্যবহারযোগ্য হার্ডওয়্যার এবং সফটওয়্যারের উপর ভিত্তি করে। Arduino খুব ভাল ব্যবহারকারী সম্প্রদায় আছে এই প্রকল্পে
সহজ হার্ড এবং নরম আয়রন ম্যাগনেটোমিটার ক্রমাঙ্কন: 6 টি ধাপ (ছবি সহ)
সহজ হার্ড এবং সফট আয়রন ম্যাগনেটোমিটার ক্যালিব্রেশন: যদি আপনার শখ আরসি, ড্রোন, রোবোটিক্স, ইলেকট্রনিক্স, বর্ধিত বাস্তবতা বা অনুরূপ হয় তবে তাড়াতাড়ি বা পরে আপনি ম্যাগনেটোমিটার ক্রমাঙ্কনের কাজটি পূরণ করবেন। যেকোনো ম্যাগনেটোমিটার মডিউল অবশ্যই ক্যালিব্রেটেড হতে হবে, কারণ ম্যাগনেটিক ফিল্ড সাবজেক এর পরিমাপ
BH1750 সেন্সরের সাথে Arduino DIY লাইট মিটার: 6 টি ধাপ (ছবি সহ)
BH1750 সেন্সর সহ Arduino DIY লাইট মিটার: এই নির্দেশে আমি আপনাকে দেখাবো কিভাবে Arduino ব্যবহার করে একটি বড় Nokia 5110 LCD ডিসপ্লে দিয়ে একটি লাইট মিটার তৈরি করতে হয়। যখন আপনি এই প্রকল্পটি নির্মাণ শেষ করবেন তখন আপনি আরও ভালভাবে বুঝতে পারবেন