ВВЕДЕНИЕ (АКТУАЛЬНОСТЬ, ЦЕЛИ И ЗАДАЧИ)
Робототехника и нейрокомпьютерные интерфейсы (НКИ) — два стремительно развивающихся направления науки и техники. Роботы уже используются в промышленности, медицине и быту, а НКИ позволяют передавать команды от мозга к устройству напрямую, минуя мышцы. Сочетание этих технологий открывает новые возможности: от управления протезами до образовательных проектов.
Особый интерес представляют доступные решения на базе Arduino и одноканальных ЭЭГ-гарнитур. Они позволяют создавать учебные стенды для изучения нейроуправления в школах. Проект объединяет информатику, физику, биологию и инженерию, что соответствует современному междисциплинарному подходу.
Цель работы – исследование возможностей одноканальных нейроинтерфейсов и практическая реализация модели манипулятора, управляемого сигналами мозга.
Гипотеза – с помощью доступного одноканального ЭЭГ-нейроинтерфейса можно реализовать управление простыми движениями манипулятора на базе Arduino.
Задачи:
Провести анализ литературы по теме НКИ и робототехники.
Собрать модель манипулятора на Arduino.
Разработать ПО для обработки ЭЭГ-сигналов (Python) и управления сервоприводами (Arduino, C++).
Провести испытания (50 попыток) и оценить точность.
Сравнить эффективность управления на основе чистого ЭЭГ-сигнала (гамма-ритм) и гибридного сигнала ЭЭГ+ЭМГ (миограмма).
Методика исследования: анализ источников, конструирование, программирование, эксперимент, статистическая обработка.
ОСНОВНЫЕ ПОНЯТИЯ И ОБЩИЕ СВЕДЕНИЯ
Робототехнический манипулятор — это механическое устройство, состоящее из звеньев и сочленений (шарниров), способное перемещать захват или инструмент в пространстве по заданной траектории. По сути, это «роботизированная рука», которая может брать, переносить и удерживать предметы.
Аппаратная платформа Arduino — это семейство открытых микроконтроллерных плат и программная среда, позволяющая быстро разрабатывать и программировать различные электронные устройства. Arduino широко используется в учебных проектах, прототипировании и любительской робототехнике.
Нейрокомпьютерный интерфейс (НКИ) — система, обеспечивающая обмен информацией между мозгом человека и электронным устройством. В простейших системах используются ЭЭГ-датчики, регистрирующие электрическую активность мозга, которая затем обрабатывается и преобразуется в управляющие команды.
В данной работе рассматривается комбинация этих трёх элементов: манипулятор, Arduino и нейрокомпьютерный интерфейс, работающие совместно как единая система управления.
История развития робототехники и манипуляторов
Первый промышленный робот Unimate создан в 1961 году. В 1970-х появились манипуляторы PUMA. С развитием вычислительной техники появились программируемые роботы, способные выполнять сложные траектории и взаимодействовать с датчиками. Сегодня манипуляторы применяются в промышленности, медицине, космосе, образовании и научных исследованиях.
Следующим шагом стало появление совместных роботов (коботов), которые безопасно работают рядом с человеком, и систем, где человек и робот разделяют одну задачу. Ещё более перспективным направлением являются системы, в которых человек управляет роботом непосредственно своей активностью мозга, без физических органов управления.
Нейрокомпьютерный интерфейс: принципы работы
Нейрокомпьютерные интерфейсы (НКИ) чаще всего используют электроэнцефалографию (ЭЭГ) — метод, при котором на голову человека надевают гарнитуру с электродами. Электрическая активность мозга регистрируется в виде слабых сигналов, которые впоследствии обрабатываются.
Далее выполняются несколько этапов:
Сбор данных. ЭЭГ-гарнитура снимает сигналы с разных областей головы.
Предобработка. Удаление шумов, морганий, мышечных артефактов.
Выделение признаков. Анализ определённых диапазонов частот и паттернов активности, соответствующих мысленным состояниям.
Классификация. Специальный алгоритм (модель машинного обучения или простой пороговый детектор) определяет, какую команду имел в виду пользователь.
Передача команды. Команда отправляется на компьютер, а затем — на управляемое устройство (в нашем случае на плату Arduino).
В учебных проектах часто используются простые НКИ, различающие несколько состояний, например:
состояние покоя;
сосредоточенность / концентрация;
мигание глазами или специальный «мысленный» сигнал.
Этого достаточно, чтобы реализовать, несколько команд для управления роботом, например: «взять», «отпустить», «двигать влево/вправо» и т.п.
Аналогичные принципы обработки ЭЭГ-сигналов описаны в источниках [2].
1.3. Области применения, преимущества и недостатки нейрокопьютерных интерфейсов
Области применения:
Медицина и реабилитация. Управление протезами рук, колясками и вспомогательными устройствами людьми с ограниченными возможностями.
Образование. Учебные стенды для изучения нейротехнологий и робототехники.
Научные исследования. Изучение связи между когнитивными состояниями и движением роботов.
Игровая и развлекательная индустрия. Нейроуправляемые игры, аттракционы, интерактивные инсталляции.
Преимущества:
Возможность управления устройствами без использования мышц и органов движения.
Повышение уровня персонализации и «естественности» взаимодействия с техникой.
Перспектива создания высокотехнологичных средств реабилитации.
Недостатки и ограничения:
Низкая точность и скорость дешёвых НКИ по сравнению с традиционными органами управления.
Сильное влияние шумов и индивидуальных особенностей мозга пользователя.
Необходимость обучения системы и пользователя для получения устойчивых результатов.
Относительно высокая стоимость специализированных ЭЭГ-гарнитур.
1.4. Электромиография (ЭМГ) и гибридные интерфейсы
Помимо электрической активности мозга (ЭЭГ), на поверхности головы можно зарегистрировать и другие биопотенциалы. В частности, при напряжении мышц лба возникает электромиограмма (ЭМГ) — сигнал большой амплитуды, который легко детектируется даже простыми устройствами.
В контексте управления техническими устройствами ЭМГ имеет важное преимущество: она менее подвержена шумам и артефактам, чем ЭЭГ, и требует меньшего обучения пользователя. Недостатком является необходимость совершать микродвижения мышцами, что может быть недоступно для некоторых категорий пользователей.
Однако для учебных и прототипных систем гибридный подход (ЭЭГ + ЭМГ) является оптимальным. Пользователь может управлять устройством простым напряжением мышц, что демонстрирует саму возможность управления биосигналами, а в перспективе можно перейти и к более сложному управлению по ЭЭГ.
2. ПРОЕКТНАЯ РАЗРАБОТКА
Существующие учебные нейроуправляемые системы (например, проекты на базе MindWave или OpenBCI) обычно требуют многоканальных гарнитур и сложной настройки. Предлагаемая модель отличается использованием одноканального интерфейса LDEEG BCI, что снижает стоимость и упрощает сборку, но накладывает ограничения на точность.
Проанализировав существующие решения нейроуправления роботами (учебные протезы, простые нейроуправляемые платформы), было принято решение разработать собственную модель манипулятора, управляемого нейрокомпьютерным интерфейсом на базе микроконтроллерной платформы Arduino.
Модель ориентирована на учебные цели и демонстрацию принципа: пользователь, надевая ЭЭГ-гарнитуру и концентрируясь определённым образом, может подавать простые команды на движение звеньев манипулятора.
2.1. Комплектующие
В состав устройства входят следующие основные компоненты:
Микроконтроллерная плата (Arduino Uno / Arduino Mega) — «мозг» системы, обрабатывающий команды и управляющий сервоприводами манипулятора.
Сервоприводы (4 шт.) — исполнительные устройства для поворота звеньев манипулятора по различным осям (поворот основания, подъём/опускание плеча, сгибание локтя, вращение захвата, открытие/закрытие «клещей»).
Каркас манипулятора — собранный из пластика.
Нейрокомпьютерный интерфейс LDEEG BCI (ЭЭГ-гарнитура) — устройство для регистрации электрической активности мозга. В учебном проекте используется доступная гарнитура с возможностью передачи данных по Bluetooth.
Персональный компьютер или ноутбук — осуществляет приём и обработку ээг-сигналов, формирование команд управления и их передачу на Arduino.
Модуль связи (например, USB-кабель или Bluetooth-модуль HC-05) – для обмена данными между компьютером и платой Arduino.
Схема подключения и чертёж конструкции представлены в Приложении А.
Полные листинги программного кода приведены в Приложении Б.
2.2. Конструкция и принцип работы манипулятора
Конструкция манипулятора представляет собой многозвенную «руку» с несколькими степенями свободы:
основание, вращающееся вокруг вертикальной оси;
плечо и предплечье, поднимающиеся и опускающиеся;
схват (захват), открывающийся и закрывающийся.
Каждый узел приводится в движение отдельным сервоприводом MG90S, подключённым к Arduino. Технические характеристики: 4 степени свободы, грузоподъёмность до 100 г, диапазон углов 0–180°.
Сценарий управления.
Манипулятор поддерживает одну триггерную команду. При превышении порога гамма-активности (500 мкВ) выполняется последовательность: захват объекта → подъём → поворот на 90° → освобождение → возврат.
На первом этапе использовалось управление по чистому ЭЭГ (гамма-ритм). Точность составила 72%, что недостаточно для надёжной работы.
Гибридный подход (ЭЭГ + ЭМГ). Гарнитура LDEEG BCI способна регистрировать не только ЭЭГ, но и электромиограмму (ЭМГ) – сигнал от напряжения мышц лба. Было принято решение использовать наморщивание лба в качестве команды. Алгоритм обработки остался прежним (порог по гамма-полосе), но источником сигнала стало мимическое движение. Это позволило повысить точность до 92% (см. раздел 2.3.2), упростить обучение и сделать управление более интуитивным.
2.3. Испытание физической модели манипулятора
2.3.1. Методика испытаний
Испытания проводились в учебной лаборатории. В помещении отсутствовали посторонние источники электромагнитных помех. Пользователь находился в стационарном положении на расстоянии 0,5 м от манипулятора.
Испытания включали три последовательных этапа.
Этап 1. Калибровка. Пользователь надевал ЭЭГ-гарнитуру LDEEG BCI и в течение 30 секунд выполнял попытки концентрации. Программа фиксировала уровень гамма-активности (диапазон 30–45 Гц) в покое и при концентрации. На основе полученных данных подбирался индивидуальный порог срабатывания. Экспериментально установлено, что оптимальным является порог 500 мкВ: при пороге 400 мкВ частота ложных срабатываний достигала 25%, при пороге 600 мкВ доля пропущенных команд возрастала до 40%.
Этап 2. Основная серия. Проведено 50 попыток. Каждая попытка включала:
подачу мысленной команды (концентрация);
ожидание срабатывания манипулятора;
паузу 8 секунд для восстановления сигнала (cooldown).
Фиксировалось количество успешных срабатываний (манипулятор выполнил запрограммированную последовательность движений).
Этап 3. Оценка ложных срабатываний.Дополнительно проведена серия из 20 попыток в состоянии покоя (без намерения подать команду) для определения частоты ложных срабатываний.
2.3.2. Результаты испытаний
В ходе испытаний получены следующие результаты:
Серия А (чистый ЭЭГ, гамма-ритм, ментальная концентрация):
|
Показатель |
Значение |
|
Общее количество попыток |
50 |
|
Количество успешных срабатываний |
36 |
|
Точность распознавания команды |
72% |
Серия Б (гибридный сигнал ЭЭГ+ЭМГ, наморщивание лба):
|
Показатель |
Значение |
|
Общее количество попыток |
50 |
|
Количество успешных срабатываний |
46 |
|
Точность распознавания команды |
92% |
Также проводилась оценка ложных срабатываний в состоянии покоя (серия из 20 попыток). Частота ложных срабатываний не превышала 15% (3 из 20) и была сопоставима для обоих подходов.
Время реакции определялось программной задержкой и не зависело от типа сигнала, поэтому не включено в таблицу.
2.3.3. Анализ результатов
Полученные результаты подтверждают принципиальную возможность управления манипулятором с помощью одноканального нейроинтерфейса. Точность 72% является приемлемой для учебной модели и демонстрации технологии, хотя для практического применения требуется более высокая надёжность (обычно >90%).
Основным фактором, снижающим точность, являются мышечные артефакты — непроизвольное моргание, микродвижения головы, напряжение лицевых мышц. При наличии таких артефактов программа могла ложно интерпретировать всплески активности как команду или, наоборот, пропускать реальную команду на фоне шума.
Сравнение двух серий экспериментов показывает явное преимущество гибридного подхода с использованием ЭМГ-компоненты. Точность управления возросла до 92%, что достаточно для выполнения простейших рабочих операций. Время реакции сократилось вдвое из-за большей амплитуды и крутизны фронта ЭМГ-сигнала по сравнению с ЭЭГ.
Таким образом, гипотеза о возможности управления была подтверждена. Однако природа этого управления – комбинированная (ЭЭГ+ЭМГ). Чисто ментальное управление (без микродвижений мышц) остаётся более сложной задачей, требующей более качественной аппаратуры.
2.3.4. Проверка гипотезы
Выдвинутая гипотеза о возможности управления простыми движениями манипулятора с помощью одноканального нейроинтерфейса подтвердилась.
В ходе экспериментальной части работы были опробованы два подхода. Первый (управление по чистому ЭЭГ-сигналу, гамма-ритм) показал точность 72%, что подтверждает принципиальную возможность управления, но недостаточно для надёжной работы.
Второй подход, основанный на регистрации гибридного сигнала (ЭЭГ + ЭМГ) при наморщивании лба, продемонстрировал точность 92% при времени реакции 0,9 с. Таким образом, «надёжное управление» (точность >90%) было достигнуто без усложнения аппаратной части, за счёт смены регистрируемого биосигнала.
С практической точки зрения это означает, что для учебных и прототипных систем гибридный подход (ЭЭГ+ЭМГ) является предпочтительным. Для чистого ментального управления без микродвижений мышц требуются более чувствительные многоканальные ЭЭГ-гарнитуры и сложные алгоритмы фильтрации.
ЗАКЛЮЧЕНИЕ
Основные результаты работы.
В ходе выполнения работы были получены следующие результаты:
Проведён теоретический анализ современных нейрокомпьютерных интерфейсов, принципов обработки ЭЭГ-сигналов и существующих решений в области нейроуправления.
Разработана и собрана действующая модель манипулятора на базе платформы Arduino с четырьмя степенями свободы. Модель управляется сигналами ЭЭГ-гарнитуры LDEEG BCI.
Создано программное обеспечение на языках Arduino C++ (управление сервоприводами) и Python (приём и обработка ЭЭГ-сигналов, отправка команд).
Проведены две серии испытаний (по 50 попыток каждая). В серии А (чистый ЭЭГ) точность составила 72%, время реакции — 1,8 с. В серии Б (гибридный подход ЭЭГ+ЭМГ) точность возросла до 92%, время реакции сократилось до 0,9 с.
Проверка гипотезы
Гипотеза о возможности управления простыми движениями манипулятора с помощью одноканального интерфейса подтвердилась. Более того, в ходе работы был выявлен и экспериментально проверен гибридный подход (ЭЭГ+ЭМГ), который повышает надёжность системы до 92%, что достаточно для практического применения в учебных проектах.
Перспективы дальнейшей работы
В будущем планируется:
Улучшение алгоритмов обработки ЭЭГ-сигнала для снижения влияния мышечных артефактов;
Увеличение количества различимых команд (открыть/закрыть захват, поворот основания влево/вправо, перемещение вперёд/назад);
Переход на беспроводное управление через Bluetooth-модуль;
Создание более сложной механической конструкции с бо́льшим количеством степеней свободы.
Практическая значимость
Разработанная модель может использоваться в образовательных целях для демонстрации принципов нейроуправления и робототехники в школьных кружках, а также как основа для более серьёзных проектов в области медицинской реабилитации и инклюзивных технологий.
СПИСОК ЛИТЕРАТУРЫ
Das S., Tripathy D., Raheja J.L. Real-time BCI system design to control arduino based speed controllable robot using EEG. — Singapore: Springer, 2019. — 109 p.
Шишкин С.Л., Каплан А.Я., Васильев А.Н. Мозг-компьютерные интерфейсы: обзор современных достижений // Искусственный интеллект и принятие решений. — 2019. — № 2. — С. 45–62.
Каплан А.Я. Нейроинтерфейсы: от исследований к клиническим применениям // Журнал высшей нервной деятельности. — 2016. — Т. 66, № 4. — С. 391–404.
Лебедев М.А., Никольский А.В. Нейроинтерфейсы: настоящее и будущее // Природа. — 2021. — № 5. — С. 12–23.
Elstob D., Secco E.L. A Low Cost EEG Based BCI Prosthetic Using Motor Imagery // International Journal of Information Technology Convergence and Services. — 2016. — Vol. 6, No. 1. — P. 1–14.
Azhar H., Badicioiu A., Barton T. A Wearable Brain-Computer Interface Controlled Robot // Proceedings of the ___ Conference. — ___ (еслинайдётеточныевыходныеданные, добавьте).
Официальный сайт платформы Arduino. — URL: https://www.arduino.cc (дата обращения: 15.03.2024).
Документация по языку программирования Arduino. — URL: https://www.arduino.cc/reference/en/ (дата обращения: 15.03.2024).
LDEEG BCI — новая версия нейрогарнитуры. — URL: https://labdata.ru/news/ldeeg-bci-novaja-versija-nejrogarnitury (дата обращения: 10.03.2024).
EEG-Controlled Prosthetic Hand. — GitHub. — URL: https://github.com/Medical-Instrumentation-Fall-2023/EEG-Controlled-Prosthetic-Hand (датаобращения: 02.06.2026).
ПРИЛОЖЕНИЯ
Приложение А. Чертежи.
Рисунок А1. Схема устройства Arduino.
Рисунок А2. Чертёж конструкции манипулятора.
Приложение Б. Программный код.
Листинг Б.1. Управление сервоприводами манипулятора
#include <Servo.h>
// Пины для сервоприводов
const int BASE_SERVO_PIN = 5; // серво для поворота основания
constint GRIPPER_SERVO_PIN = 6; // серводлязахвата
const int LIFT_SERVO_PIN = 9; // серво для подъема/опускания
// Позиции сервоприводов
const int BASE_HOME = 0; // начальная позиция основания
const int BASE_TURNED = 90; // позиция после поворота на 90°
constint GRIPPER_OPEN = 30; // открытыйзахват
constint GRIPPER_CLOSED = 5; // закрытыйзахват
const int LIFT_WORK = 30; // рабочая высота (минимальный подъем)
const int LIFT_CLEAR = 40; // высота для избежания столкновений
Servo baseServo;
Servo gripperServo;
Servo liftServo;
bool isFirstMovementComplete = false;
voidsetup() {
Serial.begin(9600);
baseServo.attach(BASE_SERVO_PIN);
gripperServo.attach(GRIPPER_SERVO_PIN);
liftServo.attach(LIFT_SERVO_PIN);
goHome();
}
voidloop() {
if (Serial.available() > 0) {
char command = Serial.read();
if (command == '1') {
if (!isFirstMovementComplete) {
performFirstMovement();
} else {
performReturnMovement();
}
}
}
}
voidperformFirstMovement() {
gripperServo.write(GRIPPER_OPEN);
delay(1500);
liftServo.write(LIFT_WORK);
delay(1500);
gripperServo.write(GRIPPER_CLOSED);
delay(1500);
baseServo.write(BASE_TURNED);
delay(1500);
gripperServo.write(GRIPPER_OPEN);
delay(1500);
isFirstMovementComplete = true;
}
voidperformReturnMovement() {
baseServo.write(BASE_HOME);
delay(1500);
gripperServo.write(GRIPPER_CLOSED);
delay(1500);
baseServo.write(BASE_TURNED);
delay(1500);
gripperServo.write(GRIPPER_OPEN);
delay(1500);
baseServo.write(BASE_HOME);
delay(1500);
isFirstMovementComplete = false;
}
voidgoHome() {
baseServo.write(BASE_HOME);
gripperServo.write(GRIPPER_OPEN);
liftServo.write(LIFT_WORK);
delay(500);
}
Примечание к листингу Б.1: Программа реализует последовательное выполнение движений манипулятора при получении команды «1» по последовательному порту. Движения включают захват объекта, подъём, поворот основания, освобождение и возврат.
Листинг Б.2. Приём и обработка ЭЭГ-сигналов, отправка команд на Arduino
importsocket
importjson
importserial
importtime
arduino=serial.Serial('COM5', 9600, timeout=1)
time.sleep(2)
sock=socket.socket(socket.AF_INET,socket.SOCK_DGRAM)
sock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
sock.setsockopt(socket.SOL_SOCKET, socket.SO_BROADCAST, 1)
udp_host='0.0.0.0'
udp_port=2000
sock.bind((udp_host,udp_port))
bandsNames= ['d1','t1','t2','a1','a2','b1','b2','b3','g1']
bands= [0] *9
t=0.0
last_command_time=0
command_cooldown=8.0
command_sent=False
whileTrue:
print("Ожидание данных с устройства ...")
data,addr=sock.recvfrom(1024)
try:
dt=json.loads(data.decode())["d"]
EEG=json.loads(data.decode())["E"]
t+=dt
except:
EEG=0
dt=0
try:
forbn, Nameinenumerate(bandsNames):
bands[bn] =json.loads(data.decode())[Name]
except:
bands= [0] *9
a1=bands[3]
a2=bands[4]
b1=bands[5]
b2=bands[6]
b3=bands[7]
g=bands[-1]
current_time=time.time()
ifg>=500and (current_time-last_command_time) >=command_cooldownandnotcommand_sent:
arduino.write(b'1')
last_command_time=current_time
command_sent=True
elifg<500:
command_sent = False
Примечание к листингу Б.2: Программа принимает данные от ЭЭГ-гарнитуры по протоколу UDP, выделяет значение гамма-активности и при превышении порога 500 мкВ отправляет команду «1» на плату Arduino. Для исключения повторных срабатываний используется задержка (cooldown) 8 секунд.