آردوینو آردوینو Arduino Uno پروژه های آردوینو پکیج سنسور آردوینو

سنسور ضربه knocking sensor از پکیج ۳۷ سنسور آردوینو Arduino

نوشته شده توسط علیرضا قربانی

سنسور ضربه و ارتعاش آردوینو از مجموعه پکیج سنسور آردوینو

این ماژول یک سنسور حساس به شوک یا لرزش است که وقتی شوک یا لرزشی را دریافت می کند سیگنالی به میکروکنترلر یا آردوینو ارسال می‌کند ، این ماژول را می توان در سیستم های امنیتی و یا مانیوتورینگ استفاده گرد و  به راحتی می توانید آن را در کنار برد آردوینو یا هر میکروکنترل دیگری استفاده نمایید. همچنین در صنعت از سنسور‌های ضربه یا knocking sensor به منظور شناسایی ضربات مضر وارد بر موتور ماشین استفاده می‌شود.

 

مشخصات سنسور ضربه  و ارتعاش KY-031

ولتاژ کاری ۵ ولت DC

سازگار با انواع میکرووکنترلر‌ها

وزن ۰٫۰۰۴ کیلوگرم

 

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

آردوینو UNO

سنسور ضربه ، ارتعاش و شوک arduino – خرید از فروشگاه

پین‌های ماژول ضربه و ارتعاش KY-031

بر روی ماژول به درستی اسم پین‌ها  مشخص نشده است بنابراین ما برای شما پین‌های این ماژول را در شکل زیر مشخص کرده ایم :

 

 

مکانیزم عمل کرد ماژول تشخیص ضربه و ارتعاش

 

 

 

شماتیک داخلی این سنسور در تصویر بالا نمایش داده شده است. این دستگاه به صورت یک سوییچ پیکربندی شده است که در حالت عادی باز است. زمانی که یک ضربه یا شوک به سنسور وارد شود ، تیغه‌هایی که به صورت کلید می‌باشند به هم دیگر برخورد می‌کنند و باعث می‌شود سیگنالی بر روی پین  Output اعمال شود.

همانطور که در تصویر فوق مشاهده می‌کنید در حالت عادی  وضعیت کلید باز است ،پس بر روی پین output سیگنال ۵ ولت وجود دارد. حال هنگامی که به سنسور ضربه وارد شود باعث می‌شود کلیدی که به صورت تیغه‌است بسته شود و بر روی پین output سیگنال ۰ ولت به وجود آید. در واقع می‌توان بیان کرد که  وقتی این سنسور شوک و یا لرزشی دریافت کند پین سیگنال آن LOW  می‌شود.

اتصال سنسور تشخیص ضربه به آردوینو

طریقه‌ی اتصال این سنسور به آردوینو در تصویر زیر نمایش داده شده است. حتما توجه داشته باشید که سیم آبی و قرمز از روی همدیگر عبور کرده‌اند.

KY-031-Arduino-Knock-Sensor- سنسور ضربه و شوک آردوینو

KY-031-Arduino-Knock-Sensor- سنسور ضربه و شوک آردوینو

 

 

برنامه نویسی

همانطور که در بالا نیز اشاره شد هنگامی که شوک و لرزشی به این سنسور اعمال شود خروجی این سنسور از وضعیت HIGH به LOW تغییر می‌کند. پس ما باید در برنامه بررسی کنیم که چه زمانی خروجی سنسور به وضعیت LOW می‌رود و پس از LOW شدن خروجی عبارت KNOCK را بر روی سریال مانیتور نمایش دهیم .سپس باید بررسی کنیم که بعد از اعمال شوک چه زمانی ارتعاش سنسور قطع می‌شود و بعد از آن عبارت no knock را بر روی سریال مانیتور نمایش دهیم.

کد زیر را بر روی آردوینو خود آپلود کنید  و سپس وارد سریال مانیتور نرم افزار arduino شوید . حال ضربه‌ای به سنسور وارد کنید و نتیجه را بر روی سریال مانیتور نرم افزار مشاهده کنید.

 

//KY-031 Knock Sensor Tutorial

int knockPin = 10; // Use Pin 10 as our Input
int knockVal = HIGH; // This is where we record our shock measurement
boolean bAlarm = false;

unsigned long lastKnockTime; // Record the time that we measured a shock


int knockAlarmTime = 500; // Number of milli seconds to keep the knock alarm high


void setup()
{
	Serial.begin(9600);
	pinMode(knockPin, INPUT); // input from the KY-031
}
void loop()
{
	knockVal = digitalRead(knockPin); // read KY-031 Value

	if (knockVal == LOW) // If we see a knock
	{

		lastKnockTime = millis(); // record the time of the shock
								  // The following is so you don't scroll on the output screen
		if (!bAlarm) {
			Serial.println("KNOCK, KNOCK");
			bAlarm = true;
		}
	}
	else
	{
		if ((millis() - lastKnockTime) > knockAlarmTime  &&  bAlarm) {
			Serial.println("no knocks");
			bAlarm = false;
		}
	}
}

 

 

آموزش سنسور ضربه و شوک آردوینو از مجموعه پکیج سنسورهای آردوینو

آموزش سنسور ضربه و شوک آردوینو از مجموعه پکیج سنسورهای آردوینو

درباره نویسنده

علیرضا قربانی

علیرضا قربانی هستم دانشجوی مهندسی پزشکی. چیزهای خیلی زیادی رو در دنیا دوست دارم. یک گیک هستم و یشه گفت یک هکر. نه به معنی دزدی پسورد و ایمیل مردم. به معنی عشق به دونستن و عشق به تحقیق درباره خیلی از چیزهایی که می بینم و می‌شنوم. اگر بخوام علاقه‌مندی‌ درجه یکم رو نام ببرم میتونم بگم برنامه نویسی و بعد از اون امبدد سیستم ها.

تبادل نظر و رفع عیب با ثبت دیدگاه

۵ دیدگاه