সুচিপত্র:

MCP9803 এবং Arduino Nano ব্যবহার করে তাপমাত্রা পরিমাপ: 4 টি ধাপ
MCP9803 এবং Arduino Nano ব্যবহার করে তাপমাত্রা পরিমাপ: 4 টি ধাপ

ভিডিও: MCP9803 এবং Arduino Nano ব্যবহার করে তাপমাত্রা পরিমাপ: 4 টি ধাপ

ভিডিও: MCP9803 এবং Arduino Nano ব্যবহার করে তাপমাত্রা পরিমাপ: 4 টি ধাপ
ভিডিও: BeagleBone Black MCP9803 Temperature Sensor 'C' code Tutorial 2024, নভেম্বর
Anonim
Image
Image

MCP9803 একটি 2-তারের উচ্চ নির্ভুলতা তাপমাত্রা সেন্সর। তারা ব্যবহারকারী-প্রোগ্রামযোগ্য রেজিস্টারগুলির সাথে মূর্ত হয় যা তাপমাত্রা সেন্সিং অ্যাপ্লিকেশনগুলিকে সহজ করে। এই সেন্সরটি অত্যন্ত পরিশীলিত মাল্টি-জোন তাপমাত্রা পর্যবেক্ষণ ব্যবস্থার জন্য উপযুক্ত।

এই টিউটোরিয়ালে MCP9803 সেন্সর মডিউল এর arduino ন্যানো এর ইন্টারফেসিং চিত্রিত করা হয়েছে। তাপমাত্রার মান পড়ার জন্য, আমরা একটি I2c অ্যাডাপ্টারের সাথে arduino ব্যবহার করেছি এই I2C অ্যাডাপ্টার সেন্সর মডিউলের সাথে সংযোগ সহজ এবং আরো নির্ভরযোগ্য করে তোলে।

পদক্ষেপ 1: হার্ডওয়্যার প্রয়োজন:

হার্ডওয়্যার প্রয়োজন
হার্ডওয়্যার প্রয়োজন
হার্ডওয়্যার প্রয়োজন
হার্ডওয়্যার প্রয়োজন
হার্ডওয়্যার প্রয়োজন
হার্ডওয়্যার প্রয়োজন

আমাদের লক্ষ্য পূরণের জন্য আমাদের যে উপকরণগুলির প্রয়োজন তা নিম্নলিখিত হার্ডওয়্যার উপাদানগুলি অন্তর্ভুক্ত করে:

1. এমসিপি 9803

2. Arduino Nano

3. I2C কেবল

4. Arduino ন্যানোর জন্য I2C ieldাল

পদক্ষেপ 2: হার্ডওয়্যার সংযুক্তি:

হার্ডওয়্যার সংযুক্তি
হার্ডওয়্যার সংযুক্তি
হার্ডওয়্যার সংযুক্তি
হার্ডওয়্যার সংযুক্তি

হার্ডওয়্যার হুকআপ বিভাগটি মূলত সেন্সর এবং আরডুইনো ন্যানোর মধ্যে প্রয়োজনীয় তারের সংযোগ ব্যাখ্যা করে। কাঙ্ক্ষিত আউটপুটের জন্য যে কোনো সিস্টেমে কাজ করার সময় সঠিক সংযোগ নিশ্চিত করা মৌলিক প্রয়োজনীয়তা। সুতরাং, প্রয়োজনীয় সংযোগগুলি নিম্নরূপ:

MCP9803 I2C এর উপর কাজ করবে। সেন্সরের প্রতিটি ইন্টারফেসকে কিভাবে ওয়্যার আপ করতে হয় তা দেখানো হচ্ছে ওয়্যারিং ডায়াগ্রামের উদাহরণ।

বাক্সের বাইরে, বোর্ডটি একটি I2C ইন্টারফেসের জন্য কনফিগার করা হয়েছে, যেমন আপনি অন্যথায় অজ্ঞেয়বাদী হলে আমরা এই হুকআপটি ব্যবহার করার পরামর্শ দিই।

আপনার প্রয়োজন শুধু চারটি তারের! VCC, Gnd, SCL এবং SDA পিনের জন্য মাত্র চারটি সংযোগ প্রয়োজন এবং এগুলি I2C তারের সাহায্যে সংযুক্ত।

এই সংযোগগুলি উপরের ছবিতে প্রদর্শিত হয়েছে।

ধাপ 3: তাপমাত্রা পরিমাপের জন্য কোড:

তাপমাত্রা পরিমাপের জন্য কোড
তাপমাত্রা পরিমাপের জন্য কোড

এখন আরডুইনো কোড দিয়ে শুরু করা যাক।

Arduino এর সাথে সেন্সর মডিউল ব্যবহার করার সময়, আমরা Wire.h লাইব্রেরি অন্তর্ভুক্ত করি। "ওয়্যার" লাইব্রেরিতে ফাংশন রয়েছে যা সেন্সর এবং আরডুইনো বোর্ডের মধ্যে i2c যোগাযোগকে সহজতর করে।

ব্যবহারকারীর সুবিধার জন্য সম্পূর্ণ আরডুইনো কোড নিচে দেওয়া হল:

#অন্তর্ভুক্ত

// MCP9803 I2C ঠিকানা হল 0x48 (72)

#সংজ্ঞায়িত Addr 0x48

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

{

// মাস্টার হিসাবে I2C যোগাযোগ শুরু করুন

Wire.begin ();

// সিরিয়াল কমিউনিকেশন শুরু করুন, বড রেট = 9600 সেট করুন

Serial.begin (9600);

// I2C ট্রান্সমিশন শুরু করুন

Wire.beginTransmission (Addr);

// কনফিগারেশন রেজিস্টার নির্বাচন করুন

Wire.write (0x01);

// ক্রমাগত রূপান্তর মোড, পাওয়ার-আপ ডিফল্ট

Wire.write (0x60);

// I2C ট্রান্সমিশন বন্ধ করুন

Wire.endTransmission ();

বিলম্ব (300);

}

অকার্যকর লুপ ()

{

স্বাক্ষরবিহীন int ডেটা [2];

// I2C যোগাযোগ শুরু করে

Wire.beginTransmission (Addr);

// ডাটা রেজিস্টার নির্বাচন করুন

Wire.write (0x00);

// I2C ট্রান্সমিশন বন্ধ করুন

Wire.endTransmission ();

// 2 বাইট ডেটার অনুরোধ করুন

Wire.requestFrom (Addr, 2);

// 2 বাইট ডেটা পড়ুন

// temp msb, temp lsb

যদি (Wire.available () == 2)

{

ডেটা [0] = ওয়্যার.রেড ();

ডেটা [1] = ওয়্যার.রেড ();

}

// ডেটাকে 12-বিটে রূপান্তর করুন

int temp = ((data [0] * 256) + data [1]) / 16.0;

যদি (temp> 2047)

{

টেম্প -= 4096;

}

ফ্লোট cTemp = temp * 0.0625;

ফ্লোট fTemp = cTemp * 1.8 + 32;

// সিরিয়াল মনিটরে আউটপুট ডেটা

সিরিয়াল.প্রিন্ট ("সেলসিয়াস তাপমাত্রা:");

Serial.print (cTemp);

Serial.println ("C");

সিরিয়াল.প্রিন্ট ("ফারেনহাইটে তাপমাত্রা:");

Serial.print (fTemp);

Serial.println ("F");

বিলম্ব (500);

}

ওয়্যার লাইব্রেরিতে Wire.write () এবং Wire.read () কমান্ড লিখতে এবং সেন্সর আউটপুট পড়তে ব্যবহৃত হয়।

Serial.print () এবং Serial.println () Arduino IDE এর সিরিয়াল মনিটরে সেন্সরের আউটপুট প্রদর্শন করতে ব্যবহৃত হয়।

সেন্সরের আউটপুট উপরের ছবিতে দেখানো হয়েছে।

ধাপ 4: অ্যাপ্লিকেশন:

অ্যাপ্লিকেশন
অ্যাপ্লিকেশন

MCP9803 ব্যবহার করা যেতে পারে ডিভাইসের বিস্তৃত ক্ষেত্রে যার মধ্যে রয়েছে ব্যক্তিগত কম্পিউটার এবং পেরিফেরাল, হার্ডডিস্ক ড্রাইভ, বিভিন্ন বিনোদন ব্যবস্থা, অফিস সিস্টেম এবং ডেটা কমিউনিকেশন সিস্টেম। এই সেন্সরটি বিভিন্ন অত্যাধুনিক সিস্টেমে অন্তর্ভুক্ত করা যেতে পারে।

প্রস্তাবিত: