Yalan makinesi projesi yalanı değil, derinin elektrik iletkenliğindeki (GSR) değişimi ölçer. Heyecan ve stres anında ter bezleri çalışır, deri akımı biraz daha kolay iletir; Arduino bu farkı ölçüp LED çubuğunda ve buzzerda gösterir. Aynı değişim şaşırınca ya da derin nefes alınca da görülür, bu yüzden sonuç yalan kanıtı değildir.
Filmlerde parmaklarına kablo bağlanan kişi yalan söyleyince ibre oynar. Bu projede o düzeneğin basit bir benzerini Arduino ile kuruyor ve ibrenin aslında neyi ölçtüğünü dürüstçe anlatıyoruz. Proje, insan vücudu ile elektrik arasındaki ilişkiyi göstermek isteyen ortaokul ve lise öğrencileri ve TÜBİTAK 4006 bilim fuarları için uygundur.
Yalan makinesi gerçekten yalanı ölçer mi?
Hayır, yalan makinesi yalanı doğrudan ölçemez; yalnızca vücudun heyecan ve strese verdiği tepkileri ölçer. Gerçek poligraf cihazları nabız, solunum, kan basıncı ve deri iletkenliğini birlikte kaydeder. Bu tepkiler yalan söylerken de, korkarken ya da utanırken de ortaya çıkar. Bu yüzden poligrafın güvenilirliği bilim insanları arasında tartışmalıdır.
Bizim projemiz bu sinyallerden yalnızca birini, deri iletkenliğini ölçer. Doğru adı "heyecan ölçer" ya da "GSR ölçer"dir. Ödevinizde bu farkı açıkça yazmanız, projenizi daha bilimsel gösterir.
Deri iletkenliği (GSR) nedir?
Deri iletkenliği (GSR, galvanik deri tepkisi), derinin elektrik akımını ne kadar kolay ilettiğini gösteren ve ter bezlerinin çalışmasıyla değişen bir ölçümdür. Ter, su ve tuz içerdiği için elektriği iletir. Ter bezleri istemsiz sinir sistemi tarafından kontrol edilir; heyecanlanınca, korkunca ya da şaşırınca kendiliğinden çalışır.
İletkenlik birimi siemens (S), deri için ise mikrosiemens (µS) kullanılır. Direnç ile iletkenlik terstir: deri terledikçe direnci düşer, iletkenliği artar. Bir uyarandan sonra değişim hemen değil, yaklaşık 1-3 saniye içinde başlar. Avuç içi ve parmak uçlarında ter bezi çok olduğu için ölçüm parmaklardan yapılır.
Hangi malzemeler gerekir?
Yalan makinesi için Arduino Uno ve bir GSR sensör modülü ya da kendi yapacağınız iki bakır elektrot yeterlidir. Sonucu göstermek için 5 LED ve bir pasif buzzer kullanılır.
Malzeme listesi
| Malzeme | Adet | Ne işe yarar? |
|---|---|---|
| Arduino Uno R3 (CH340, USB kablolu) | 1 | Ölçer, karşılaştırır, LED'leri yakar |
| GSR deri iletkenliği ölçüm sensörü | 1 | Yol A: hazır parmak elektrotlu modül |
| İletken bakır bant + cırt bant | 2 parça | Yol B: kendi parmak elektrotlarınız |
| 30 çeşit 1/4W direnç seti | 1 | 100 kΩ (Yol B) ve 5 adet 220 Ω |
| 3 mm ve 5 mm LED seti | 5 | 2 yeşil, 2 sarı, 1 kırmızı LED çubuğu |
| Pasif buzzer 17 mm | 1 | En yüksek seviyede sesli uyarı |
| Breadboard ve jumper kablolar | 1 set | Bağlantılar |
Devre nasıl kurulur?
Sensörün çıkışı A0'a, beş LED 220 Ω dirençlerle D3-D7 pinlerine, pasif buzzer D9'a bağlanır. Hazır modül (Yol A) ya da bakır elektrot (Yol B) seçeneklerinden birini kurun.
- Yol A: GSR modülünün VCC ucunu 5V'a, GND ucunu GND'ye, SIG (sinyal) ucunu A0'a bağlayın. Parmak bantlarını işaret ve orta parmağınıza takın.
- Yol B: 3 cm'lik iki bakır bant parçasını cırt bantlara yapıştırın ve her birine bir kablo lehimleyin. Bir elektrot 5V'a, diğeri A0'a gider; A0 ile GND arasına 100 kΩ direnç bağlayın.
- LED'lerin uzun bacaklarını (anot) sırayla D3, D4, D5, D6 ve D7'ye bağlayın: D3-D4 yeşil, D5-D6 sarı, D7 kırmızı.
- Her LED'in kısa bacağını 220 Ω dirençle GND hattına bağlayın.
- Pasif buzzerın artı ucunu D9'a, eksi ucunu GND'ye bağlayın.
- Arduino'yu USB ile bilgisayara bağlayıp kodu yükleyin.
Yol B'de deri ile 100 kΩ direnç bir gerilim bölücü oluşturur. Deri iletkenliği arttıkça A0'daki gerilim yükselir. Elektrotlar birbirine değse bile akım en çok 5 V / 100 kΩ = 0,05 mA olur; bu, hissedilemeyecek kadar küçük bir akımdır. LED dirençlerinin nasıl seçildiğini LED direnci hesaplama yazısında anlattık.
Yalan makinesi kodu nasıl çalışır?
Kod önce 10 saniye boyunca sakin durumdaki değeri ölçüp "taban" olarak kaydeder; sonra her ölçümün tabandan yüzde kaç saptığını hesaplar ve her %5 sapma için bir LED daha yakar.
const byte LEDLER[5] = {3, 4, 5, 6, 7};
const byte BUZZER = 9, SENSOR = A0;
long taban = 0;
int oku() { // 20 ölçümün ortalaması (~0,1 s)
long t = 0;
for (byte i = 0; i < 20; i++) { t += analogRead(SENSOR); delay(5); }
return t / 20;
}
void setup() {
Serial.begin(9600);
for (byte i = 0; i < 5; i++) pinMode(LEDLER[i], OUTPUT);
delay(3000); // parmaklar yerleşsin
for (byte i = 0; i < 100; i++) taban += oku(); // yaklaşık 10 s
taban /= 100;
if (taban < 10) taban = 10; // elektrot takılı değilse
tone(BUZZER, 1500, 200); // "hazır" sesi
}
void loop() {
int deger = oku();
long yuzde = abs(deger - taban) * 100L / taban;
byte yanan = min(yuzde / 5, 5L); // her %5 için bir LED
for (byte i = 0; i < 5; i++) digitalWrite(LEDLER[i], i < yanan ? HIGH : LOW);
if (yanan == 5) tone(BUZZER, 2000, 100);
Serial.print(deger);
Serial.print(' ');
Serial.println(taban);
}
Kod farkın mutlak değerini kullanır, çünkü bazı GSR modüllerinde terleme arttıkça okunan sayı azalır. Arduino IDE'de Araçlar > Seri Çizici menüsünü açarsanız ölçüm ve taban iki çizgi olarak görünür; bu grafik sunum için çok değerlidir. Yeni bir kişiyle ölçüme başlarken Arduino'nun reset düğmesine basarak tabanı yeniden alın.
Deney nasıl yapılır?
Deney, sakin bir başlangıçtan sonra farklı uyaranlar verip her birinde yanan LED sayısını kaydederek yapılır. Önemli olan, yalan dışındaki uyaranların da aynı tepkiyi oluşturduğunu göstermektir.
| Uyaran | Beklenen tepki | Yorum |
|---|---|---|
| Sessiz oturma | 0-1 LED | Taban seviyesi |
| Arkadan ani el çırpma | Birkaç saniyede 2-5 LED | Şaşırma tepkisi, yalan yok |
| Derin nefes alıp tutma | 1-3 LED | Solunum da etkiler |
| Kart oyunu: seçilen karta "hayır" demek | Değişken | Heyecan olabilir, kesin değil |
| Parmağı oynatmak, elektrota bastırmak | Ani sıçrama | Ölçüm hatası |
Kart oyunu için katılımcı beş karttan birini gizlice seçer. Siz kartları tek tek sorarsınız, o her soruya "hayır" der. Seri Çizici'de hangi kartta tepe oluştuğunu not edin. Deneyi en az 5 kişiyle ve her kişiyle 3 kez tekrarlayın; tutan ve tutmayan tahminleri sayarak başarı yüzdesini hesaplayın.
Hangi güvenlik ve etik kurallara dikkat edilmeli?
Bu proje insan üzerinde ölçüm yaptığı için hem elektrik güvenliğine hem de katılımcıların haklarına dikkat edilmelidir:
- Arduino'yu yalnızca prize takılı olmayan bir dizüstü bilgisayardan ya da USB powerbank'tan besleyin. Elektrotlar vücuda değdiği için devrenin hiçbir yeri 220V şebekeye bağlı olmamalıdır.
- Elektrotlara pil, adaptör ya da 5V dışında bir gerilim bağlamayın. Yaralı ya da ıslak cilde elektrot takmayın.
- Projeyi öğretmen ya da yetişkin gözetiminde yapın.
- Kimseyi zorla teste sokmayın; katılımcıya ne ölçtüğünüzü önceden anlatın.
- Sonuçları kimseyi "yalancı" ilan etmek için kullanmayın; ölçüm yalanı kanıtlamaz.
- Kayıtlarda isim yerine "Katılımcı 1" gibi takma adlar kullanın.
Ödevinizi nasıl sunarsınız?
Ödevinizi, Seri Çizici grafiğini projeksiyona yansıtıp canlı bir şaşırma deneyi yaparak ve sonuç tablonuzu göstererek sunabilirsiniz.
- Soru: "Bir makine yalanı anlayabilir mi?"
- Hipotez: "Deri iletkenliği heyecanla artar, ama bu değişim yalana özgü değildir."
- Deney: Kart oyunu ve el çırpma deneyinin sonuçlarını yan yana gösterin.
- Bağlantı: Terin neden elektriği ilettiğini iletken ve yalıtkan maddeler deneyi ile ilişkilendirin.
- Sonuç: Makinenin başarı yüzdesini ve neden yanıldığını yorumlayın.
Sık sorulan sorular
GSR sensörü olmadan yapılabilir mi?
Evet, iki bakır bant elektrot ve 100 kΩ direnç ile yapılabilir. Bakır bantları cırt bantla iki parmağa sarın; bir elektrot 5V'a, diğeri A0'a gider ve A0 ile GND arasına 100 kΩ direnç bağlanır. Hazır modül genellikle daha kararlı ölçer. Kendi elektrotunuzu kullanırken parmakları her denemede aynı sıkılıkta bağlamaya dikkat edin.
LED'ler hiç yanmıyorsa ne yapmalıyım?
Önce Seri Monitör'de ölçülen değeri kontrol edin. Değer 0'a yakınsa elektrotlar deriye iyi değmiyordur ya da A0 kablosu takılı değildir. Kuru ellerde değer çok küçük kalabilir; ellerinizi yıkayıp kurulayın ve bir dakika bekleyin. Hassasiyeti artırmak için koddaki 5 sayısını 3 yapın; böylece her %3 sapma için bir LED yanar.
Ölçülen değer neden sürekli yavaşça değişiyor?
Deri iletkenliği zamanla kendiliğinden yükselip alçalır; elektrot ısınır, deri nemlenir. Bu yavaş kaymaya "taban kayması" denir. Uzun deneylerde LED'ler yavaş yavaş yanmaya başlarsa reset düğmesine basıp tabanı yeniden ölçün. Bilimsel GSR cihazları da yavaş kaymayı ve hızlı tepkileri ayrı ayrı inceler.
Poligraf sonuçları mahkemede delil olur mu?
Poligraf sonuçları birçok ülkede tek başına kesin delil kabul edilmez, çünkü ölçülen tepkiler yalana özgü değildir. Heyecanlı ama dürüst bir kişi "yalan" sonucu verebilir, sakin biri ise yalan söylerken tepki göstermeyebilir. Bu nedenle bilim insanları poligrafı yalan dedektörü değil, stres ölçer olarak değerlendirir.
Özet
- Yalan makinesi projesi yalanı değil, deri iletkenliğindeki (GSR) değişimi ölçer.
- Heyecan ve stres ter bezlerini çalıştırır; deri iletkenliği yaklaşık 1-3 saniye içinde artar.
- Bağlantı: sensör A0, LED'ler 220 Ω ile D3-D7, pasif buzzer D9.
- Kod 10 saniyelik taban alır ve her %5 sapma için bir LED yakar.
- El çırpma ve derin nefes de aynı tepkiyi verir; sonuç yalan kanıtı değildir.
- Devreyi yalnızca USB powerbank ya da prize takılı olmayan dizüstüyle, yetişkin gözetiminde çalıştırın.
