มีคนมากินคุกกี้ของฉัน! โชคดีที่ Arduino อยู่ที่นี่เพื่อช่วยค้นหาว่าใครเป็นคนกิน
ส่วนประกอบและวัสดุสิ้นเปลือง
เครื่องมือและเครื่องจักร
แอปพลิเคชันและแพลตฟอร์ม
สวัสดีทุกคน วันนี้ฉันอยากจะแสดงให้คุณเห็นถึงวิธีการสร้างเครื่องจับเท็จที่ควบคุมโดย Arduino เพื่อที่จะรู้ว่าเพื่อนของคุณกำลังโกหกคุณหรือไม่ :D หรือเพื่อวัดปฏิกิริยาต่างๆ ที่ผิวหนังของคุณแสดงออกมา ซึ่งขึ้นอยู่กับสถานการณ์ที่คุณเผชิญอยู่หรืออารมณ์ที่คุณรู้สึก และสิ่งที่ดีที่สุดคือ เราสามารถเห็นทั้งหมดนี้เกิดขึ้นแบบเรียลไทม์บนกราฟ Arduino
ผิวของเราน่าอัศจรรย์! มันช่วยให้เราได้สัมผัสกับความรู้สึก ป้องกันการติดเชื้อ และรักษาอวัยวะภายในไว้ แต่ฉันรับรองว่าคุณไม่รู้เลยว่าผิวหนังของเราจะเปลี่ยนสภาพการนำไฟฟ้าขึ้นอยู่กับปัจจัยต่างๆ มากมาย หนึ่งในนั้นก็คืออารมณ์ของเรา! เรียกว่ากิจกรรมทางไฟฟ้าที่ผิวหนัง (EDA) และมีหน้า Wikipedia เจ๋งๆ มากมายที่คุณสามารถอ่านได้ ที่ นี่ หลักพื้นฐานก็คือผิวหนังของเราจะเปลี่ยนค่าการนำไฟฟ้าขึ้นอยู่กับความรู้สึกของเรา
เราเริ่มต้นด้วยการเชื่อมต่อ Arduino เข้ากับตัวแบบแล้วจึงเชื่อมต่อ Arduino เข้ากับคอมพิวเตอร์ด้วยซอฟต์แวร์กราฟิก (ฉันจะพูดเพิ่มเติมเกี่ยวกับเรื่องนี้ในภายหลัง)
เราต้องเริ่มด้วยการถามคำถามง่ายๆ บางอย่างที่เรารู้ว่าพวกเขาจะตอบอย่างตรงไปตรงมา เช่น "คุณชื่ออะไร" และ "คุณอาศัยอยู่ที่ไหน" เพื่อให้ได้ข้อมูลพื้นฐาน และจากนั้นเราสามารถเริ่มถามคำถามที่พวกเขาอาจโกหกได้ หากพวกเขาโกหก พวกเขาอาจจะรู้สึกประหม่า จากนั้นเราสามารถอ่านการเปลี่ยนแปลงในข้อมูลพื้นฐานที่กำหนดไว้ก่อนหน้านี้ได้หากพวกเขาโกหก :D
การเดินสายไฟนั้นง่ายมาก เราจะเริ่มต้นด้วยการเชื่อมต่อตามลำดับนี้:
เชื่อมต่อสายเคเบิลยาวเข้ากับพินอนาล็อก 0 ของ Arduino
นั่นคือการเดินสายไฟทั้งหมดสำหรับ Arduino ตอนนี้เราต้องหาวิธีที่จะยึดสายเซ็นเซอร์ไว้บนนิ้วของเรา เราจะพูดถึงเรื่องนั้นในภายหลัง
ซอฟต์แวร์หลักที่เราจะใช้คือเวอร์ชันล่าสุดบน Arduino IDE การอัปเดตใหม่นี้มาพร้อมกับวิธีใหม่ในการดูข้อมูลที่ได้รับจาก Arduino แทนที่จะเป็นรูปแบบข้อความจากจอภาพแบบอนุกรม ตอนนี้สามารถแสดงข้อมูลเป็นกราฟแบบเรียลไทม์ได้ ซึ่งช่วยให้เราระบุได้ว่าข้อมูลจะเปลี่ยนรูปแบบเมื่อใด (เมื่อมีคนโกหก)
หากต้องการเปิดพล็อตเตอร์ ให้เปิด Arduino และไปที่เมนูเครื่องมือ คุณจะเห็นเมนูนี้อยู่ใต้จอภาพแบบอนุกรม
ตอนนี้โค้ดสำหรับไมโครคอนโทรลเลอร์อยู่ในส่วนโค้ดด้านล่างนี้ คัดลอกและอัพโหลดไปยังบอร์ดของคุณ
ตอนนี้เราได้สร้างรูปร่างพื้นฐานของโครงการเสร็จเรียบร้อยแล้ว เราสามารถเริ่มเพิ่มฟีเจอร์ต่างๆ เพื่อให้ใช้งานง่ายยิ่งขึ้นได้ โดยเราจะเริ่มต้นด้วยการเพิ่มที่จับนิ้วเพื่อให้การเชื่อมต่อระหว่างนิ้วกับสายเคเบิลมีเสถียรภาพ เริ่มต้นด้วยการติดแถบฟอยล์ที่ด้านล่างของแถบเทป ทำเช่นนี้กับเทปทั้งสองชิ้น (ตะขอและห่วง) จากนั้นพันเทปรอบนิ้วของคุณจนกว่าจะพอดี (ตรวจสอบรูปถ่าย) จากนั้นติดกาวสายที่เปิดออกมาจากพินอนาล็อก 0 เข้ากับฟอยล์ และทำซ้ำขั้นตอนนี้สำหรับพิน 5 โวลต์ (ตรวจสอบให้แน่ใจว่าเชื่อมต่อได้ดี)
แผนคือการสร้างช่องเล็ก ๆ สำหรับพับแผ่นรองนิ้วและมีรูสามรูสำหรับให้ LED ยื่นออกมา มันจะทำจากกระดาษแข็ง และในการทำมันเราจะต้องตัดเป็นรูปทรงต่อไปนี้:
สี่เหลี่ยมผืนผ้าขนาด 15x5 เป็นฐาน ติดรูปสี่เหลี่ยมผืนผ้าขนาด 15x3 สองรูปและรูปสี่เหลี่ยมผืนผ้าขนาด 5x3 สองรูปไว้ที่ด้านข้างของฐาน ตอนนี้ติดกาวสี่เหลี่ยมผืนผ้า 5x3 อันที่สามเข้ากับฐาน ห่างจากขอบ 6 ซม. (ใกล้ๆ ตรงกลาง ตรวจสอบรูปถ่าย) ตอนนี้คุณจะได้สี่เหลี่ยมผืนผ้าที่แบ่งออกเป็นสองด้าน ด้านหนึ่งยาว 6 ซม. และอีกด้านหนึ่งยาว 9 ซม. ด้านยาว 6 ซม. จะเป็นด้านที่เราจะวางอุปกรณ์อิเล็กทรอนิกส์ และอีกด้านจะเป็นด้านที่จะวางแผ่นรองนิ้ว ขั้นตอนต่อไป คือ เจาะรู 3 รู (ขนาดเท่ากับ LED) บนสี่เหลี่ยมผืนผ้าขนาด 6x5 แล้วจึงติดกาวที่ขอบขนาด 6 ซม. (เพื่อทำเป็นฝาปิด) สุดท้ายเราจะต้องติดกาวขอบสั้นของสี่เหลี่ยมผืนผ้าขนาด 9x5 เข้ากับขอบด้านไกลของด้านขนาด 9 ซม. (ส่วนนี้ทำหน้าที่เป็นแผ่นพับที่พับขึ้นและลงเพื่อเผยให้เห็นแผ่นรองนิ้ว)
สิ่งสุดท้ายที่เราต้องทำคือวางอุปกรณ์อิเล็กทรอนิกส์ไว้ภายในกล่อง เริ่มต้นด้วยการติดเทป Arduino และสายไฟทั้งหมดลงด้าน 6 ซม. และเดินสายไฟต่อ (พินอนาล็อก 0 และ 5 โวลต์) ไปที่อีกด้านหนึ่งของสี่เหลี่ยมผืนผ้า (ด้าน 9 ซม.) ตอนนี้ติด LED สามดวงเข้าในรูที่เราทำไว้บนสี่เหลี่ยมผืนผ้าขนาด 6x5 ซม. และทดสอบว่าทุกอย่างเป็นไปด้วยดี คุณจะมีเครื่องจับเท็จ Arduino แบบพกพาขนาดเล็ก แต่ฉันเตือนคุณก่อนว่านี่ไม่ใช่ระบบที่แม่นยำที่สุด จริงๆ แล้ว เครื่องจับเท็จจริงส่วนใหญ่ใช้เซ็นเซอร์อื่นๆ มากมายเพื่อระบุว่ามีใครกำลังโกหกอยู่หรือไม่ เช่น เครื่องวัดอัตราการเต้นของหัวใจและเซ็นเซอร์อื่นๆ ฉันหมายความว่าอย่าใช้ผลลัพธ์นี้สำหรับการถามคำถามที่จริงจัง :D
โพลีกราฟ.อิโน
อาร์ดูอิโน
วางโค้ดลงใน Arduino IDE
void setup()
{
Serial.begin(9600);
pinMode(2, OUTPUT);
pinMode(3, OUTPUT);
pinMode(4, OUTPUT);
digitalWrite(2, HIGH);
delay(500);
digitalWrite(3, HIGH);
delay(500);
digitalWrite(4, HIGH);
delay(500);
}
void loop()
{
if (analogRead(A0) > 60)
{
digitalWrite(4, HIGH);
}
else
{
digitalWrite(4, LOW);
}
if (analogRead(A0) > 20)
{
digitalWrite(2, HIGH);
}
else
{
digitalWrite(2, LOW);
}
if (analogRead(A0) > 45)
{
digitalWrite(3, HIGH);
}
else
{
digitalWrite(3, LOW);
}
Serial.println(analogRead(A0));
delay(20);
}
PolyGraph.ino
arduino
Paste the code into the arduino ide
void setup()
{
Serial.begin(9600);
pinMode(2, OUTPUT);
pinMode(3,
OUTPUT);
pinMode(4, OUTPUT);
digitalWrite(2, HIGH);
delay(500);
digitalWrite(3,
HIGH);
delay(500);
digitalWrite(4, HIGH);
delay(500);
}
void
loop()
{
if (analogRead(A0) > 60)
{
digitalWrite(4, HIGH);
}
else
{
digitalWrite(4,
LOW);
}
if (analogRead(A0) > 20)
{
digitalWrite(2, HIGH);
}
else
{
digitalWrite(2,
LOW);
}
if (analogRead(A0) > 45)
{
digitalWrite(3, HIGH);
}
else
{
digitalWrite(3,
LOW);
}
Serial.println(analogRead(A0));
delay(20);
}