فهرست مطالب:

اندازه گیری دما و رطوبت با استفاده از HDC1000 و آردوینو نانو: 4 مرحله
اندازه گیری دما و رطوبت با استفاده از HDC1000 و آردوینو نانو: 4 مرحله

تصویری: اندازه گیری دما و رطوبت با استفاده از HDC1000 و آردوینو نانو: 4 مرحله

تصویری: اندازه گیری دما و رطوبت با استفاده از HDC1000 و آردوینو نانو: 4 مرحله
تصویری: دماسنج و رطوبت سنج دیجیتالی HTC-2 2024, نوامبر
Anonim
Image
Image

HDC1000 یک سنسور رطوبت دیجیتال با سنسور دمای یکپارچه است که دقت اندازه گیری عالی را در توان بسیار کم ارائه می دهد. این دستگاه رطوبت را بر اساس سنسور خازنی جدید اندازه گیری می کند. سنسورهای رطوبت و دما کارخانه ای کالیبره شده اند. در محدوده دمای کامل -40 تا 125 درجه سانتی گراد عملکردی دارد.

در این آموزش ، رابط ماژول سنسور HDC1000 با آردوینو نانو نشان داده شده است. برای خواندن مقادیر دما و رطوبت ، از آردوینو با آداپتور I2c استفاده کرده ایم. این آداپتور I2C اتصال به ماژول سنسور را آسان و قابل اعتماد می کند.

مرحله 1: سخت افزار مورد نیاز:

سخت افزار مورد نیاز
سخت افزار مورد نیاز
سخت افزار مورد نیاز
سخت افزار مورد نیاز
سخت افزار مورد نیاز
سخت افزار مورد نیاز

مواد مورد نیاز برای تحقق هدف ما شامل اجزای سخت افزاری زیر است:

1. HDC1000

2. آردوینو نانو

3. کابل I2C

4. I2C Shield برای آردوینو نانو

مرحله 2: اتصال سخت افزاری:

اتصال سخت افزاری
اتصال سخت افزاری
اتصال سخت افزاری
اتصال سخت افزاری

بخش اتصال سخت افزاری اساساً اتصالات سیم کشی مورد نیاز بین سنسور و آردوینو نانو را توضیح می دهد. اطمینان از اتصالات صحیح ضروری ترین ضرورت در هنگام کار بر روی هر سیستم برای خروجی مورد نظر است. بنابراین ، اتصالات مورد نیاز به شرح زیر است:

HDC1000 از طریق I2C کار می کند. در اینجا مثال نمودار سیم کشی است که نحوه اتصال هر رابط سنسور را نشان می دهد.

خارج از جعبه ، برد برای یک رابط I2C پیکربندی شده است ، بنابراین توصیه می کنیم در غیر این صورت آگنوستیک از این اتصال استفاده کنید.

تنها چیزی که نیاز دارید چهار سیم است! فقط چهار اتصال نیاز به پین های Vcc ، Gnd ، SCL و SDA دارد و این اتصالات با کمک کابل I2C متصل می شوند.

این اتصالات در تصاویر بالا نشان داده شده است.

مرحله 3: کد اندازه گیری دما و رطوبت:

کد اندازه گیری دما و رطوبت
کد اندازه گیری دما و رطوبت

بیایید اکنون با کد arduino شروع کنیم.

هنگام استفاده از ماژول سنسور با آردوینو ، ما کتابخانه Wire.h را شامل می شود. کتابخانه "Wire" شامل عملکردهایی است که ارتباط i2c بین سنسور و برد آردوینو را تسهیل می کند.

برای راحتی کاربر ، کل کد آردوینو در زیر آورده شده است:

#عبارتند از

// آدرس HDC1000 I2C 0x40 است (64)

#تعریف Addr 0x40

void setup ()

{

// راه اندازی ارتباط I2C به عنوان MASTER

Wire.begin ()؛

// برقراری ارتباط سریالی ، تنظیم نرخ باود = 9600

Serial.begin (9600)؛

// ارتباط I2C را آغاز می کند

Wire.beginTransmission (Addr)؛

// configuration register را انتخاب کنید

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 بایت داده

سیم. درخواست از (Addr، 2)؛

// خواندن 2 بایت داده

// temp msb ، temp lsb

if (Wire.available () == 2)

{

داده [0] = Wire.read ()؛

داده [1] = Wire.read ()؛

}

// تبدیل داده ها

int temp = (داده [0] * 256) + داده [1] ؛

float cTemp = (temp / 65536.0) * 165.0 - 40 ؛

float fTemp = cTemp * 1.8 + 32 ؛

// ارتباط I2C را آغاز می کند

Wire.beginTransmission (Addr)؛

// ارسال دستور اندازه گیری رطوبت

Wire.write (0x01) ؛

// توقف انتقال I2C

Wire.endTransmission ()؛

تأخیر (500) ؛

// درخواست 2 بایت داده

سیم. درخواست از (Addr، 2)؛

// خواندن 2 بایت داده

// رطوبت msb ، رطوبت lsb

if (Wire.available () == 2)

{

داده [0] = Wire.read ()؛

داده [1] = Wire.read ()؛

}

// تبدیل داده ها

رطوبت شناور = (داده [0] * 256) + داده [1] ؛

رطوبت = (رطوبت / 65536.0) * 100.0 ؛

// خروجی داده ها به مانیتور سریال

Serial.print ("رطوبت نسبی:")؛

Serial.print (رطوبت) ؛

Serial.println ("٪ RH")؛

Serial.print ("دما در سانتیگراد:") ؛

Serial.print (cTemp) ؛

Serial.println ("C") ؛

Serial.print ("دما در فارنهایت:") ؛

Serial.print (fTemp) ؛

Serial.println ("F") ؛

تأخیر (500) ؛

}

در کتابخانه سیم Wire.write () و Wire.read () برای نوشتن دستورات و خواندن خروجی سنسور استفاده می شود.

Serial.print () و Serial.println () برای نمایش خروجی سنسور در مانیتور سریال Arduino IDE استفاده می شود.

خروجی سنسور در تصویر بالا نشان داده شده است.

مرحله 4: برنامه های کاربردی:

برنامه های کاربردی
برنامه های کاربردی

HDC1000 را می توان در گرمایش ، تهویه و تهویه مطبوع (HVAC) ، ترموستات های هوشمند و مانیتورهای اتاق استفاده کرد. این سنسور همچنین کاربردهای خود را در چاپگرها ، مترهای دستی ، دستگاه های پزشکی ، حمل بار و همچنین مه شکن شیشه جلو اتومبیل پیدا می کند.

توصیه شده: