Создайте надежный детектор лжи на Arduino
Компоненты и материалы
| Arduino Nano R3 | × | 1 |
| Светодиод 5 мм красный | × | 1 |
| Светодиод 5 мм зеленый | × | 1 |
| Светодиод 5 мм оранжевый/желтый | × | 1 |
| Резистор 2 кОм | × | 1 |
| Провода (длинные, для электродов) | × | 1 |
Инструменты
- Паяльник
- Клейкий пистолет
- Припой
Приложения
- Arduino IDE (свежая версия с Serial Plotter)
О проекте

Покажу, как сделать детектор лжи на Arduino, чтобы ловить друзей на вранье :) или измерять реакции кожи в зависимости от эмоций/ситуации. Самое крутое — видеть всё в реальном времени на графике Arduino.
Шаг 1: Как это работает

Наша кожа удивительна! Помимо тактильных ощущений и барьерной функции, она меняет электрическую проводимость в зависимости от эмоционального состояния. Это называется электродермальная активность (EDA) — подробнее на Wikipedia. Суть: кожа становится более проводимой при стрессе/возбуждении.
Подключаем Arduino к испытуемому, Arduino к компьютеру с графиком (Serial Plotter). Сначала задаем базовые вопросы («Как вас зовут?», «Где живете?») — получаем базовую линию. Потом задаем провокационные вопросы. Если человек лжет — нервничает, проводимость кожи меняется, график показывает скачок относительно базы.
Шаг 2: Список деталей

Нужен: Arduino Nano, несколько светодиодов, велкро (липучка), резистор 2 кОм, картон, фольга, клей-пистолет, паяльник, канцелярский нож.
Шаг 3: Схема подключения

Порядок подключения:
- Длинный провод к аналоговому входу A0 Arduino
- Резистор 2 кОм между A0 и GND
- Длинный провод к пину 5V Arduino
- Зеленый LED: анод → пин 2, катод → GND
- Оранжевый LED: анод → пин 3, катод → GND
- Красный LED: анод → пин 4, катод → GND
Пайка Arduino готова. Теперь делаем накладки на пальцы для стабильного контакта.
Шаг 4: Программное обеспечение и код

Главный инструмент — свежая Arduino IDE. Новая версия имеет Serial Plotter (Инструменты → Serial Plotter) — график в реальном времени вместо текстового монитора порта. Это ключевая фишка для визуализации изменений EDA.
Код ниже — загрузите в Arduino.
Шаг 5: Накладки на пальцы (электроды)





Клеим полоску фольги на липучку (на оба элемента: крючки и петлицы). Навиваем на палец плотно. Приклеиваем/заклеиваем-exposed провод от A0 к фольге одного электрода, провод от 5V — к фольге другого. Контакт должен быть надежным.
Шаг 6: Корпус








Корпус из картона с отсеком для электроники (6 см) и отсеком для электродов (9 см) с клапаном-крышкой. В крышке электроники — 3 отверстия под светодиоды. Электроды скрываются под клапаном.
Детали для вырезания (картон):
- 2 прямоугольника 15×3 см (боковые стенки)
- 1 прямоугольник 15×5 см (основание)
- 3 прямоугольника 5×3 см (перегородки, в одном — вырез под USB Nano)
- 1 прямоугольник 9×5 см (крышка отсека электродов)
- 1 прямоугольник 6×5 см (крышка электроники с 3 отверстиями под LED)
Сборка: боковые стенки и перегородки клеим к основанию. Перегородка в 6 см от края разделяет корпус на два отсека. Крышку электроники (6×5) клеим на меньший отсек. Крышку электродов (9×5) приклеиваем скотчем по короткому краю к дальнему краю большого отсека — получается поднимающаяся крышка.
Шаг 7: Финальная сборка

Клеим Arduino и провода в малый отсек, длинные провода (A0 и 5V) пролоняем в большой отсек к электродам. Вставляем светодиоды в отверстия крышки электроники. Тестируем — должен получиться портативный детектор лжи.
Внимание: это не профессиональный полиграф. Реальные детекторы лжи используют пульс, дыхание, давление и др. Не используйте результаты для серьезных решений :)
Вопросы — в личку или комментарии, отвечу.
Код
PolyGraph.ino (Arduino)
void setup() {
Serial.begin(9600);
pinMode(2, OUTPUT); // Green
pinMode(3, OUTPUT); // Orange
pinMode(4, OUTPUT); // Red
digitalWrite(2, HIGH); delay(500);
digitalWrite(3, HIGH); delay(500);
digitalWrite(4, HIGH); delay(500);
}
void loop() {
int val = analogRead(A0);
if (val > 60) digitalWrite(4, HIGH); else digitalWrite(4, LOW); // Red
if (val > 20) digitalWrite(2, HIGH); else digitalWrite(2, LOW); // Green
if (val > 45) digitalWrite(3, HIGH); else digitalWrite(3, LOW); // Orange
Serial.println(val);
delay(20);
}
Схемы

Производственный процесс
- Сделай свой LUMAZOID: DIY Arduino музыкальный визуализатор
- Цифровые кости на Arduino: генератор случайных чисел с LCD-дисплеем и кнопкой
- Детектор аудиочастот на Arduino: измеряем пик громкости с высокочувствительным модулем
- Управление светодиодом по Bluetooth с Arduino: простой DIY-гид
- Строим Iron Man на Arduino: компоненты, сенсоры и пошаговый гайд
- Find Me: Умный поисковик вещей на Arduino и Bluetooth
- Сборка функционального 3D-печатного манипулятора на Arduino: пошаговое руководство
- Интерактивный LED-дисплей в двери с PIR-датчиком — новогоднее приветствие на Arduino
- DIY-контроллер увлажнителя на Arduino с реле: безопасная работа с высоким напряжением
- Пошаговое руководство: сборка умного четырёхногого робота на Arduino