ویژگی های ماژول شمارنده نوری LM393
ماژول LM393 یک شمارنده IR است که دارای فرستنده و گیرنده IR می باشد. اگر هر گونه مانعی مابین این سنسور ها قرار بگیرد، ماژول یک سیگنال به میکرو کنترلر ارسال می کند. از این ماژول به عنوان شمارنده و سنجش سرعت موتور ها استفاده می شود.
جهت دریافت دیتاشیت شمارنده نوری LM393 اینجا کلیک کنید.
معرفی پایه ها (Pinout) ماژول شمارنده نوری LM393
ماژول LM393 دارای 3 پایه به شرح زیر است:
- VCC: تغذیه ماژول – 5 ولت
- GND: زمین
- OUT: خروجی اطلاعات دیجیتال به سمت میکرو کنترلر
پین اوت (Pinout) این ماژول را می توانید در تصویر زیر مشاهده کنید.
لوازمی که به آن احتیاج دارید
قطعات مورد نیاز
نرم افزارهای موردنیاز
راه اندازی ماژول شمارنده نوری LM393 با آردوینو
گام اول: سیم بندی
مطابق مدار زیر، ماژول را به آردوینو وصل کنید.
گام دوم: کد
ابتدا کتابخانه زیر را بر آردوینوی خود نصب کنید.
توجه
اگر نیاز به راهنمایی بیشتر برای نصب کتابخانه بر روی آردوینو دارید، می توانید به آموزش نصب کتابخانه بر آردوینو مراجعه کنید.
کد زیر را روی برد آردوینوی خود آپلود کنید.
/*
by MohammedDamirchi
Home<iframe class="wp-embedded-content" sandbox="allow-scripts" security="restricted" style="position: absolute; clip: rect(1px, 1px, 1px, 1px);" title="“Home” — Electropeak" src="https://electropeak.com/learn/embed/#?secret=weQfShczaY" data-secret="weQfShczaY" width="600" height="338" frameborder="0" marginwidth="0" marginheight="0" scrolling="no"></iframe>
*/
#include "timer.h"
Timer timer;
const int LM393 = 2;
int counter = 0;
void setup() {
attachInterrupt(digitalPinToInterrupt(LM393), count, RISING);
Serial.begin(115200);
timer.setInterval(1000);
timer.setCallback(RPM);
timer.start();
}
void count() {
counter++;
}
void RPM() {
Serial.println(counter * 60);
counter = 0;
}
void loop() {
timer.update();
}
Arduino
پس از آپلود کد در سریال مانیتور چیزی شبیه به تصویر زیر مشاهده می کنید.
Comments (4)
سلام رو
میشه از همین کد ها برای محاسبه سرعت موتور dc هم استفاده کرده جوری که rpm رو تو سریال مانیتور نشون داد؟
سلام.
بله میشه برای اون کاربرد هم استفاده کرد. در واقع یکی از کاربردهای اصلیش همینه، کافیه که تو یه زمان مشخص تعداد دورهارو بخونید و با تقسیم اون به زمان سرعت rpm رو محاسبه کنید. آموزش زیر و کد استفاده شده در اون هم میتونه کمکتون کنه:
“https://thecaferobot.com/learn/interfacing-photoelectric-encoder-speed-sensor-with-arduino/”
سلام وقت بخیر
چند سوال داشتم
1.همین پروژه رو میشه توسعه داد و تعدا سنسور هار و به 3 عدد رسوند و هر سنسور مستقل عمل کنه و شمارش کنه ؟
2. اطلاعات شمارش ذخیره بشه تعداد تاریخ و ساعت
3.به شبکه lan متصل بشه و تحت وب بشه مشاهده کد
4.و همچنین ال سی دی داشته و اطلاعات رو نمایش بده؟
سپاس
با سلام
همه این کار ها قابل انجام است و باید کدش رو بنویسید.
برای این موضوع که تحت شبکه اطلاعات را ارسال بکند پیشنهاد میکنم از ESP32 برای این موضوع استفاده بکنید.
برای ذخیره کردن ساعت نیز از پروتکل RTC داخلی ESP32 استفاده نمایید، همچنین از NTC برای آپدیت کردن RTC داخلی ESP باید استفاده بکنید. یا میتوانید از ماژول های RTC برای این موضوع استفاده بکنید.
این موضوع را درنظر داشته باشید. مسیر را به شما نشان میدهیم. پروژه و کدنویسی انجام نمیدهیم.