ساخت یک ماشین پلی گراف با آردوینو (دروغ سنج)

فهرست مطالب

مقدمه

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

آن‌چه در این آموزش یاد می‌گیرید

معرفی پلی گراف

شاید راجع به دستگاه های دروغ سنجی که توسط FBI یا CIA شنیده باشید، امروز می خواهیم یکی از آن دستگاه ها را بسازیم. قبل از شروع بگذارید یک حقیقت مهم راجع به دستگاه پلی گراف و تست های دروغ سنجی، را بیان کنیم. این دستگاه ها به خودی خود دروغ گویی یا راست گویی کسی را مشخص نمی کنند، پس چگونه می توان به نتایج تست پلی گراف اعتماد کرد؟ ایده اصلی تست های دروغ سنجی، تغییر واکنش بدن وقتی شخصی راست می گوید یا به یک سوال عادی مثل نامت چیست؟، و واکنش بدن وقتی ضخص دروغ می گوید. برای مثال در یک پرونده جنایی که از دروغ سنج استفاده می شود، بازپرس ممکن است سنسورهایی به نوک انگشت ها، سر یا سینه شخص متصل کند و نرخ تنفس، ضربان قلب، فشار خون، میزان تعریق و … را اندازه گیری کرده و واکنش های بدن را تحلیل کند.

بعضی اوقات دستگاه، حرکات بازوها، پاها، صورت و مردمک چشم را نیز ضبط می کند. وقتی تست آغاز می شود، بازپرس سوال ساده ای نظیر “Is your name, Jack?” یا “Do you live in the United States?” وقتی مجرم پاسخ می دهد، بازپرس نموداری از واکنش های بدن او را ثبت می کند، بعد از آن سوال اصلی پرسیده می شود و بازپرس نتیجه را بررسی می کند و اگر تغییرات قابل ملاحظه ای مشاهده کرد به این معناست که مجرم دروغ می گوید. این تغییرات می تواند افزایش ضربان قلب، افزایش فشار خون، تعریق زیاد، نگاه کردن به اطراف و … باشد. زمانی که یک فرد باتجربه از دستگاه دروغ سنج استفاده می کند، با دقت بالایی دروغ را تشخیص می دهد ولی اگر شما برای بار اول است که از این دستگاه استفاده می کنید ممکن است تشخیص دروغ برایتان کمی دشوار باشد.

در این پروژه از سنسور SHT20 برای اندازه گیری دمای بدن و میزان تعریق، از الکترودهای ECG برای اندازه گیری میزان تغییر، از سنسور Pulse برای اندازه گیری ضربان قلب و برد آردوینو برای دریافت و تحلیل اطلاعات استفاده کردیم.

لوازمی که به آن احتیاج دارید

قطعات مورد نیاز

آردوینو Uno R3 × 1
سنسور نبض و ضربان قلب × 1
ماژول سنسور دما و رطوبت SHT20 × 1
سیم جامپر نری به مادگی × 1

نرم افزار های مورد نیاز

Arduino IDE

ساخت ماشین پلی گراف

سیم بندی

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

ساخت ماشین پلی گراف

Code

در این کد، دما و تعریق را از سنسور SHT20 با درگاه I2C، ضربان قلب را با سنسور ضربان از یک پایه آنالوگ و نرخ تنفس را از پنوموگرافی امپدانس را با یک پایه آنالوگ، دریافت می کنیم.

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

  1. به آدرس www.arduino.cc/en/Main/Software رفته و نرم افزار IDE را متناسب با سیستم عامل خود دانلود و نصب کنید.
  2. نرم افزار Arduino IDE را اجرا کنید. تمام کد های پیش فرض را پاک کرده و کد زیر را به جای آن کپی کنید.
  3. برای نصب کتابخانه ها، از پنجره ی Sketch و بخش Include Library، گزینه ی Add .ZIP Library را انتخاب کنید و فایل های کتابخانه ای که دانلود کردید را انتخاب کنید.
  4. نوع آردوینو خود را از پنجره ی Tools و قسمت Board انتخاب کنید.
  5. پورتی که (COM) آردوینو به آن متصل است را در پنجره ی Tools انتخاب کنید.
  6. دکمه ی Upload (شکلی که شبیه فلش است) را بزنید تا کد شما روی آردوینو آپلود شود.
  7. شما با موفقیت کد خود را روی آردوینو ریختید.

فایل های مورد نیاز:

#include "Wire.h"
#include "DFRobot_SHT20.h"

DFRobot_SHT20    sht20;

void setup()
{
    Serial.begin(9600);
    sht20.initSHT20();                                  // Init SHT20 Sensor
    delay(100);
    sht20.checkSHT20();                                 // Check SHT20 Sensor
}

void loop()
{
    float humd = sht20.readHumidity();                  // Read Humidity
    float temp = sht20.readTemperature();               // Read Temperature
    Serial.print(temp, 2);
    Serial.print(",");
    Serial.print(analogRead(A3));                 // Read Pulse sensor value
    Serial.print(",");
    Serial.print(humd, 1);
    Serial.print(",");
    Serial.println(analogRead(A2));                 // Read Breath rate  
}

سرهم بندی

بعد از نصب سنسور ها روی نوار و اتصال به بدن، آردوینو را روشن کرده و به Tools >> Serial Plotter بروید.
می توانید ضربان قلب و نرخ تنفس را در دو نمودار مشاهده کنید.

یک گام جلوتر

  • سعی کنید از ماژول ECG استفاده کنید.
  • سعی کنید اطلاعات دریافتی از بدن را تحلیل کنید.
  • با اضافه کردن تعدادی سنسور و بهبود کد یک دروغ سنج ساده بسازید.

آموزش های مشابه

Comments (7)

  • فرهاد Reply

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

    نوامبر 13, 2019 at 10:32 ب.ظ
    • سعید حسینی Reply

      مقاله لینک شده داخل آموزش رو مطالعه کردید؟

      دسامبر 18, 2019 at 5:04 ب.ظ
      • مهدی Reply

        سنسور دما و رطوبت چی شد؟ این سنسور برای رطوبت هوا است و اگر توسط تعرق بدن خیس شود ۱۰۰ را نشان می دهد و دیگر اطلاعات خاصی نمی دهد تا خشک شود حالا از این چه برداشتی میشه کرد؟ روش های دیگری برای اندازه گیری نرخ تعریق وجود دارد که می توانید سرچ کنید

        جولای 10, 2020 at 1:32 ق.ظ
  • سید سینا حسینی Reply

    سلام عرض شد. بنده میخواهم یک دستگاه Polygraph یا همان دروغ و راستی سنج تهیه کنم خیلی فوری میخواستم اگه بشه کمکم کنین ممنون میشم.

    ژانویه 8, 2022 at 2:47 ب.ظ
    • مهران ملکی Reply

      سلام.
      میتونید بر اساس روند همین آموزش پیش برید.

      ژانویه 9, 2022 at 9:58 ق.ظ
  • عماد Reply

    جایی نیست بشه دستگاه پلی گراف و خرید اگه میشناسین معرفی کنید ممنون میشم
    Hojjati_emad@yahoo.com

    دسامبر 25, 2023 at 9:07 ق.ظ
    • محمد دمیرچی Reply

      با سلام
      اطلاعی نداریم

      دسامبر 25, 2023 at 9:14 ق.ظ

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

نشانی ایمیل شما منتشر نخواهد شد.