HDC1000 এবং কণা ফোটন ব্যবহার করে তাপমাত্রা এবং আর্দ্রতার পরিমাপ: 4 টি ধাপ
HDC1000 এবং কণা ফোটন ব্যবহার করে তাপমাত্রা এবং আর্দ্রতার পরিমাপ: 4 টি ধাপ
Anonim
Image
Image

HDC1000 হল একটি ডিজিটাল আর্দ্রতা সেন্সর সহ সমন্বিত তাপমাত্রা সেন্সর যা খুব কম শক্তিতে চমৎকার পরিমাপ নির্ভুলতা প্রদান করে। ডিভাইসটি একটি নতুন ক্যাপাসিটিভ সেন্সরের উপর ভিত্তি করে আর্দ্রতা পরিমাপ করে। আর্দ্রতা এবং তাপমাত্রা সেন্সর কারখানার ক্রমাঙ্কিত হয়। এটি সম্পূর্ণ -40 ° C থেকে +125 ° C তাপমাত্রার পরিসরের মধ্যে কার্যকরী।

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

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

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

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

1. HDC1000

2. কণা ফোটন

3. I2C কেবল

4. কণা ফোটনের জন্য I2C শিল্ড

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

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

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

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

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

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

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

ধাপ 3: তাপমাত্রা এবং আর্দ্রতা পরিমাপের জন্য কোড:

তাপমাত্রা এবং আর্দ্রতা পরিমাপের জন্য কোড
তাপমাত্রা এবং আর্দ্রতা পরিমাপের জন্য কোড

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

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

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

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

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

// HDC1000 I2C ঠিকানা হল 0x40 (64)

#সংযোজনকারী 0x40

ডবল cTemp = 0.0, fTemp = 0.0, আর্দ্রতা = 0.0;

int temp = 0, hum = 0;

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

{

// পরিবর্তনশীল সেট করুন

Particle.variable ("i2cdevice", "HDC1000");

Particle.variable ("আর্দ্রতা", আর্দ্রতা);

Particle.variable ("cTemp", cTemp);

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

Wire.begin ();

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

Serial.begin (9600);

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

Wire.beginTransmission (Addr);

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

Wire.write (0x02);

// তাপমাত্রা, আর্দ্রতা সক্ষম, সমাধান = 14-বিট, হিটার চালু

Wire.write (0x30);

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

Wire.endTransmission ();

বিলম্ব (300);

}

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

{

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

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

Wire.beginTransmission (Addr);

// তাপমাত্রা পরিমাপ কমান্ড পাঠান

Wire.write (0x00);

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

Wire.endTransmission ();

বিলম্ব (500);

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

Wire.requestFrom (Addr, 2);

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

// temp msb, temp lsb

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

{

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

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

}

// তথ্য রূপান্তর

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

cTemp = (temp / 65536.0) * 165.0 - 40;

fTemp = cTemp * 1.8 + 32;

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

Wire.beginTransmission (Addr);

// আর্দ্রতা পরিমাপ কমান্ড পাঠান

Wire.write (0x01);

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

Wire.endTransmission ();

বিলম্ব (500);

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

Wire.requestFrom (Addr, 2);

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

// temp msb, temp lsb

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

{

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

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

}

// তথ্য রূপান্তর

hum = ((data [0] * 256) + data [1]);

আর্দ্রতা = (হাম / 65536.0) * 100.0;

// ড্যাশবোর্ডে আউটপুট ডেটা

Particle.publish ("আপেক্ষিক আর্দ্রতা:", স্ট্রিং (আর্দ্রতা));

বিলম্ব (1000);

Particle.publish ("সেলসিয়াস তাপমাত্রা:", স্ট্রিং (cTemp));

বিলম্ব (1000);

Particle.publish ("ফারেনহাইট তাপমাত্রা:", স্ট্রিং (fTemp));

বিলম্ব (1000);

}

Particle.variable () ফাংশন সেন্সরের আউটপুট সংরক্ষণ করার জন্য ভেরিয়েবল তৈরি করে এবং Particle.publish () ফাংশন সাইটের ড্যাশবোর্ডে আউটপুট প্রদর্শন করে।

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

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

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

HDC1000 হিটিং, বায়ুচলাচল এবং এয়ার কন্ডিশনার (HVAC), স্মার্ট থার্মোস্ট্যাট এবং রুম মনিটরগুলিতে নিযুক্ত করা যেতে পারে। এই সেন্সরটি প্রিন্টার, হ্যান্ডহেল্ড মিটার, মেডিকেল ডিভাইস, কার্গো শিপিং এবং অটোমোটিভ উইন্ডশিল্ড ডিফোগ -এও এর প্রয়োগ খুঁজে পায়।

প্রস্তাবিত: