সুচিপত্র:

MCP9803 এবং রাস্পবেরি পাই ব্যবহার করে তাপমাত্রা পরিমাপ: 4 টি ধাপ
MCP9803 এবং রাস্পবেরি পাই ব্যবহার করে তাপমাত্রা পরিমাপ: 4 টি ধাপ
Anonim
Image
Image

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

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

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

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

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

1. এমসিপি 9803

2. রাস্পবেরি পাই

3. I2C কেবল

4. রাস্পবেরি পাই এর জন্য I2C শিল্ড

5. ইথারনেট কেবল

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

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

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

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

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

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

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

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

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

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

পাশাপাশি ব্যবহারকারীদের স্বাচ্ছন্দ্যের জন্য, আমরা এখানে কোডটি ব্যাখ্যা করছি:

কোডিংয়ের প্রথম ধাপ হিসাবে, জাভা ক্ষেত্রে আপনাকে pi4j লাইব্রেরি ডাউনলোড করতে হবে কারণ এই লাইব্রেরি কোডে ব্যবহৃত ফাংশনগুলিকে সমর্থন করে। সুতরাং, লাইব্রেরি ডাউনলোড করতে আপনি নিম্নলিখিত লিঙ্কটি দেখতে পারেন:

pi4j.com/install.html

আপনি এই সেন্সরের জন্য এখানে কাজ করা জাভা কোডটি অনুলিপি করতে পারেন:

আমদানি com.pi4j.io.i2c. I2CBus;

com.pi4j.io.i2c. I2CDevice আমদানি করুন;

আমদানি com.pi4j.io.i2c. I2CFactory;

আমদানি java.io. IOException; পাবলিক ক্লাস MCP9803

{

পাবলিক স্ট্যাটিক অকার্যকর প্রধান (স্ট্রিং আর্গস ) ব্যতিক্রম ছুঁড়ে দেয়

{

// I2C বাস তৈরি করুন

I2CBus বাস = I2CFactory.getInstance (I2CBus. BUS_1);

// I2C ডিভাইস পান, MCP9803 I2C ঠিকানা হল 0x48 (72)

I2CDevice ডিভাইস = Bus.getDevice (0x48);

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

// ক্রমাগত রূপান্তর মোড, পাওয়ার-আপ, তুলনাকারী মোড, 12-বিট রেজোলিউশন

device.write (0x01, (বাইট) 0x60);

Thread.sleep (500);

// ঠিকানা 0x00 (0) থেকে 2 বাইট ডেটা পড়ুন

// temp msb, temp lsb

বাইট ডেটা = নতুন বাইট [2];

device.read (0x00, data, 0, 2);

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

int temp = ((data [0] & 0xFF) * 256 + (data [1] & 0xF0)) / 16;

যদি (temp> 2047)

{

টেম্প -= 4096;

}

ডবল cTemp = temp * 0.0625;

ডবল fTemp = cTemp * 1.8 + 32;

// স্ক্রিনে আউটপুট ডেটা

System.out.printf ("সেলসিয়াস তাপমাত্রা হল: %.2f C %n", cTemp);

System.out.printf ("ফারেনহাইটে তাপমাত্রা হল: %.2f F %n", fTemp);

}

}

লাইব্রেরি যা সেন্সর এবং বোর্ডের মধ্যে i2c যোগাযোগের সুবিধা দেয় তা হল pi4j, এর বিভিন্ন প্যাকেজ I2CBus, I2CDevice এবং I2CFactory সংযোগ স্থাপনে সাহায্য করে।

আমদানি com.pi4j.io.i2c. I2CBus;

com.pi4j.io.i2c. I2CDevice আমদানি করুন;

আমদানি com.pi4j.io.i2c. I2CFactory;

java.io. IOException আমদানি করুন;

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

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

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

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

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

প্রস্তাবিত: