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

در این مطلب با یکی از ماژول های کاربردی آشنا شده و نحوه راه اندازی آن را نیز بررسی می کنیم؛ ماژول سنسور ضربه ky-031 یک سنسور حساس به شوک یا لرزش است و با استفاده از المان پزیوالکتریک عمل می کند که وقتی شوک یا لرزشی را دریافت می کند سیگنالی به میکروکنترلر یا آردوینو ارسال می‌کند؛ این ماژول قابل استفاده در سیستم های امنیتی و یا مانیوتورینگ است. این سنسور در صنعت برای شناسایی ضربات مضر وارد شده بر موتور ماشین استفاده می‌شود. ماژول KY031 با سیستم عامل های الکترونیکی از جمله  Arduino ،Raspbrrry Pi ،ESP8266 ،ESP32 ،Teensy و دیگر پلتفرم‌های محبوب سازگار می باشد. از جمله کاربردهای ماژول KY031 می توان به حس کردن ضربه به در، استفاده به عنوان لرزش سنج و … اشاره کرد.

مشخصات فنی ماژول سنسور ضربه

مشخصات فنی ماژول ky031 در جدول زیر آمده است:

مشخصات فنی ماژول ky-031

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

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

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

ساختار داخلی ماژول ky-031

پایه های ماژول سنسور ارتعاش KY031

پایه های ماژول ky-031

اتصال پایه های ماژول در برد Arduino و Raspberry Pi در جدول های زیر آورده شده است:

اتصال پایه های ماژول ky-031

دیاگرام اتصالات ماژول سنسور ضربه و ارتعاش

پایه های مختلف ماژول را مطابق جدول بالا و به صورت آنچه در تصویر زیر مشاهده می‌شود به برد آردوینو متصل کنید.

picture-arduino-ky-031

کدهای راه اندازی ماژول سنسور ارتعاش KY-031 با آردوینو

در کد زیر سنسور به محض تشخیص ضربه یا لرزش ، یک چراغ را روشن می کند. از ماژول ال ای دی KY-016 یا KY-029 یا KY-011 نیز می توان به عنوان یک LED استفاده کد.

int Led = 13 ;// Declaration of the LED output pin
int Sensor = 10; // Declaration of the sensor input pin
int val; // Temporary variable
   
void setup ()
{
  pinMode (Led, OUTPUT) ; // Initialization output pin
  pinMode (Sensor, INPUT) ; // Initialization sensor pin
}
   
void loop ()
{
  val = digitalRead (Sensor) ; // The current signal at the sensor will be read
   
  if (val == HIGH) // If a signal was detected , the LED will light up
  {
    digitalWrite (Led, LOW);
  }
  else
  {
    digitalWrite (Led, HIGH);
  }
}

کدهای راه اندازی ماژول سنسور ضربه KY-031 با Raspberry Pi

راه اندازی ماژول سنسور ضربه و ارتعاش KY-031 با رزبری پای نیز امکان پذیر است.

# Needed modules will be imported and configured
import RPi.GPIO as GPIO
import time
   
GPIO.setmode(GPIO.BCM)
   
# The input pin of the sensor will be declared. Additional to that the pull up resistor will be activated
GPIO_PIN = 24
GPIO.setup(GPIO_PIN, GPIO.IN)
   
print "Sensor-Test [press ctrl+c to end]"
   
# This output function will be started at signal detection
def outFunction(null):
        print("Signal detected")
   
# At the moment of detection a signal (falling signal edge) the output function will be activated.
GPIO.add_event_detect(GPIO_PIN, GPIO.FALLING, callback=outFunction, bouncetime=100) 
   
# main program loop
try:
        while True:
                time.sleep(1)
   
# Scavenging work after the end of the program
except KeyboardInterrupt:
        GPIO.cleanup()