پیاده سازی سنسور رطوبت خاک در آردوینو:
در این بخش می خواهیم یک مدار عملی را سنسور رطوبت خاک را با استفاده از آردوینو پیاده سازی کنیم. سنسوری که از آن استفاده می کنیم، ماژول FC-28 است که در دسته سنسورهای مقاومتی قرار می گیرد.
مشخصات این سنسور به صورت زیر است:
سنسور رطوبت خاک FC-28 چهار پایه دارد که به شرح زیر هستند:
ماژول همچنین شامل یک پتانسیومتر است که مقدار آستانه را تنظیم می کند. این مقدار آستانه توسط مقایسه کننده LM393 مقایسه خواهد شد.
حالت آنالوگ
برای اتصال سنسور در مد آنالوگ، باید از خروجی آنالوگ سنسور استفاده کنیم. وقتی خروجی آنالوگ را از سنسور رطوبت خاک FC-28 بگیریم، مقداری در محدوده 0 تا 1023 به ما خواهد داد.
رطوبت با درصد سنجیده می شود. بنابراین، مقادیر خروجی را به بازه 0 تا 100 تبدیل کرده و سپس آن ها را روی نمایشگر سریال نشان می دهیم.
در صورتی که بخواهید، می توانید محدوده های مختلفی از مقادیر رطوبت خاک را تنظیم کرده و پمپ آب را بر اساس آن ها خاموش و روشن کنید.
اتصالاتی از سنسور رطوبت خاک FC-28 که باید به آردوینو متصل شوند، به صورت زیر هستند:
کد آنالوگ به صورت زیر است:
توضیح کد در ادامه آمده است. ابتدا باید دو متغیر را تعریف کنیم: یکی برای پین سنسور و دیگری برای ذخیره کردن خروجی سنسور.
در تابع setup، دستور "Serial.begin(9600)" به ارتباط بین آردوینو و نمایشگر سریال کمک می کند. سپس، عبارت "Reading From the Sensor …" روی نمایشگر سریال چاپ می شود.
در تابع حلقه، اطلاعات را از پین سنسور می خوانیم و مقادیر را در متغیر "output_ value" ذخیره می کنیم. سپس، مقادیر خروجی را به بازه 0 تا 100 تصویر می کنیم، زیرا رطوبت برحسب درصد اندازه گیری می شود. با توجه به آزمایش هایی که انجام داده ایم، در خاک خشک مقدار سنسور 550 و در خاک تر 10 است. بنابراین، این مقادیر را تصویر می کنیم. پس از این کار، مقادیر را روی نمایشگر سریال چاپ می کنیم.
حالت دیجیتال:
برای اتصال سنسور در حالت دیجیتال، خروجی دیجیتال آن را به پین دیجیتال آردوینو متصل می کنیم. ماژول سنسور شامل یک پتانسیومتر است که برای تنظیم مقدار آستانه از آن استفاده می شود. این مقدار آستانه توسط مقایسه کننده LM393 مقایسه خواهد شد.
مقایسه کننده LM393 مقدار خروجی سنسور و مقدار آستانه را با هم مقایسه می کند و پس از آن، خروجی را از طریق پین دیجیتال به ما می دهد.
وقتی مقدار سنسور بزرگ تر از مقدار آسنتانه باشد، آنگاه پین دیجیتال مقدار 5 ولت را به ما خواهد داد و LED روی سنسور را روشن خواهد کرد. اما اگر مقدار سنسور کوچک تر از مقدار آستانه باشد، آنگاه پین دیجیتال 0 ولت را نتیجه داده و LED خاموش خواهد شد.
اتصالات پایه های سنسور به آردوینو در حالت دیجیتال به صورت زیر است:
در حالت دیجیتال، کد به صورت زیر است.
توضیح کد در ادامه آورده شده است. ابتدا دو متغیر را برای اتصال پین LED و پین دیجیتال سنسور تعریف می کنیم.
در تابع setup، پین LED را به عنوان پین خروجی در نظر گرفته ایم، زیرا از طریق این پین LED را روشن و خاموش می کنیم. همچنین، پین سنسور را به عنوان ورودی در نظر می گیریم، زیرا آردوینو مقادیر را از طریق این پین از سنسور می گیرد.
در تابع حلقه، قرائت پین سنسور را داریم. اگر مقدار خروجی سنسور بزرگ تر از مقدار آستانه باشد، آنگاه پین دیجیتال در سطح high قرار داشته و LED روشن خواهد شد. اگر مقدار سنسور کوچک تر از مقدار آستانه باشد، آنگاه LED خاموش می شود.
تصویر زیر مدار و عملکرد آن را نشان می دهد.