Собственный интерфейс для Mind-Reflection

Биологическая обратная связь.
Аватара пользователя
Джедай
Сообщения: 74
Зарегистрирован: Сб сен 22, 2007 17:20

Собственный интерфейс для Mind-Reflection

Сообщение Джедай » Пн ноя 19, 2007 20:24

На мой взгляд, в стандартном ПО для Mind-Reflection есть некоторые упущения:
1. Звуковой сигнал имеет низкую детализацию - по слуху нельзя отследить небольшие колебания сигнала
2. Диапазон визуального и аудио сигналов ограничен - при достижении верхней или нижней границы - дальнейший контроль невозможен
3. В некоторых случаях, достижение границы прерывает процесс слежения ("переход на следующий уровень").
4. Необходим ручной сброс ПО при снятии-одевании датчика.

Для преодоления указанных ограничений я написал собственный программный интерфейс для Mind-Reflection. Особенности:
- видео и аудио индикация уровня с произвольной точностью.
- неограниченный диапазон мониторинга уровня при высокой детализации (авто-сброс базового уровня).
- отображение как абсолютного так и относительного уровней.
- автоматическая установка базового уровня при снятии-одевании датчика.
- индикация связи и включения Mind-Reflection, контакта сенсоров с поверхностью кожи.
- возможность тонкой настройки фильтрации, усиления, громкости, тона и т.п.
- отображение всех количественных показателей.
- сохранение все настроек в файл.

Очень удобно расслабляться лежа, с закрытыми глазами - хорошо отслеживаються малейшие колебания уровня и при этом не надо ничего нажимать или переключать.

Скриншот:

Изображение

После некоторой доработки могу выложить программу для скачивания, если она кого-нибудь заинтересует.

Аватара пользователя
Джедай
Сообщения: 74
Зарегистрирован: Сб сен 22, 2007 17:20

Сообщение Джедай » Пн ноя 19, 2007 22:05

Самое главное забыл написать - таким образом можно хорошо "интегрировать" Mind-Reflection с майнд-машиной - частота АВС меняться адаптивно, понятно, не будет, но свое состояние по звуку можно контролировать отлично :)

Аватара пользователя
Джим
Сообщения: 210
Зарегистрирован: Сб июн 16, 2007 0:03

Сообщение Джим » Вт ноя 20, 2007 1:49

Джедай писал(а):Для преодоления указанных ограничений я написал собственный программный интерфейс для Mind-Reflection.
bi А что, протокол девайса в комплект входит??? Или был получен эвристически?? Т.е. у меня на заднем плане другая мысль -- иметь "лог", боле-мене отражающий реал состояния (насчет КГР -- отражение сомнительно, но хоть что-то для начала), и, пока оно снимается -- не смотреть, ну, а дальше, получив некую статистику -- можно было бы подумать... А собирать логи, например за ночь.
В общем, гл. проблема -- протокол. И, конечно, как оно конектится -- создает вирт. COM-порт или как??

Аватара пользователя
Джедай
Сообщения: 74
Зарегистрирован: Сб сен 22, 2007 17:20

Сообщение Джедай » Вт ноя 20, 2007 15:10

Джим

Принимая во внимание тот факт, что никаких драйверов при включении устройства не потребовалось(было найдено HID устройство), следует сделать вывод что оно считается джойстиком. Как показала практика - так оно и есть.
А для такого "протокола" много эвристик не требуется :)

Андрей Патрушев
Автор сайта
Сообщения: 10440
Зарегистрирован: Вт май 30, 2006 20:17
Откуда: Екатеринбург
Благодарил (а): 151 раз
Поблагодарили: 677 раз
Контактная информация:

Сообщение Андрей Патрушев » Вт ноя 20, 2007 15:57

Джедай писал(а):Самое главное забыл написать - таким образом можно хорошо "интегрировать" Mind-Reflection с майнд-машиной - частота АВС меняться адаптивно, понятно, не будет, но свое состояние по звуку можно контролировать отлично :)
Абалдеть! Если б Вы знали, как я Вам завидую, что Вы так можете...
Следующий шаг - управление майндмашиной через аудиостроб - амплитудная модуляция несущего сигнала и выход с аудиокарты на вход майндмашины. Можно взять маленький диапазон 8-15Гц, и в этом диапазоне сделать два режима прямой (чем глубже расслабляетесь, тем ниже частота) и обратный (...тем выше частота).

Аватара пользователя
Джедай
Сообщения: 74
Зарегистрирован: Сб сен 22, 2007 17:20

Сообщение Джедай » Вт ноя 20, 2007 16:52

Андрей Патрушев

Учитывая http://www.mindmachine.ru/viewtopic.php?t=1089 - это мне надо завидовать тем, кто может использовать БОС по назначению :(

Аватара пользователя
Джим
Сообщения: 210
Зарегистрирован: Сб июн 16, 2007 0:03

Сообщение Джим » Вт ноя 20, 2007 23:29

Джедай писал(а):Принимая во внимание тот факт, что никаких драйверов при включении устройства не потребовалось(было найдено HID устройство), следует сделать вывод что оно считается джойстиком. Как показала практика - так оно и есть.
СПАСИБО!! :o
Осталось понять, насколько КГР-метр может быть полезен. А так -- как чуял, потому как весь обед про DirectInpit читал :)

Аватара пользователя
Джим
Сообщения: 210
Зарегистрирован: Сб июн 16, 2007 0:03

Сообщение Джим » Чт ноя 22, 2007 0:37

Джедай
В общем, сподвигся я купить махарайку. И даже успел слегка помучить -- благо выходной. Поскольку DirectX -- не мой профиль и джойстика у мя никогда не было, пожалуйста bc , поправьте, если я что не так понял:
1. У-во смотрится как джойстик с 2-мя осями, Y - мертвая (всегда 0), X - собственно КГР (в состоянияз Выкл и Разрыв - max-1, при измерении -- некое отрицательное число), КЗ - min + 1.
2. Кнопки (начиная с нуля) -- 9 == Выкл, 10 == разрыв, 0 == BTN нажата.
А еще я не понял, можно ли общаться с девайсом, если окно теряет фокус ввода -- пока не получается, но я еще не все прочитал.
А еще -- не понятно, на сколько хватает батареек (в смысле не-внесения заметной систематической погрешности за длительное (8 часов) время измерений.
А еще -- у моей NP100 есть дистанционное управление. Попробую расхакать -- если получится -- можно (наверное) интересную вещь сделать... Одна беда -- времени нет вообще. Ни на писанину, ни на отработку. И вообще как до конца не понятно, что оно (Mind Reflection + NP100) может дать и будет ли это хорошо.
По-любому -- спасибо!

Аватара пользователя
Джедай
Сообщения: 74
Зарегистрирован: Сб сен 22, 2007 17:20

Сообщение Джедай » Чт ноя 22, 2007 15:25

Добавил построение графиков и выбор вида генерируемого звука.

Программу можно скачать по следующей ссылке: http://ifolder.ru/8847676

Может быть запущена в средах Windows или Linux.

Для работы программы необходимо наличие Java версии 6 или выше.
JRE можно скачать тут: http://www.java.com/ru/download/index.jsp
Для старта программы запустите файл "monitor.jar".

Скриншот основного окна:
Изображение

Окно графика:
Изображение
Последний раз редактировалось Джедай Сб ноя 01, 2008 10:14, всего редактировалось 2 раза.

Аватара пользователя
Джедай
Сообщения: 74
Зарегистрирован: Сб сен 22, 2007 17:20

Сообщение Джедай » Чт ноя 22, 2007 15:37

Джим

1. У Mind-Reflection - 24 кнопки. Диапазон сигнала джойстика (-1;+1), хотя сам прибор полностью его не использует.
2. Есть еще 12 кнопка - активна если при запуске контакт датчиков не обнаружен.

По поводу DirectX ничего подсказать не могу - я его давно не использовал. По идее - потеря фокуса не должна мешать считыванию данных с джойстика.

На счет батареек - а зачем вообще необходим столь длительный по времени сравнительный мониторинг уровня? Насколько я понял, ничего репрезентативного он не представит, т.к. в больших временных промежутках КГР может изменяться под влияниме слишком большого количества факторов.

Если NP100 позволяет в реальном времени менять параметры стимуляции (главное - частоту), то в принципе можно изменять частоту стимуляции адаптивно, в зависимости от величины КГР. Но алгоритм требуеться для этого очень непростой (во всяком случае для действительно эффективной подстройки).

Аватара пользователя
Джедай
Сообщения: 74
Зарегистрирован: Сб сен 22, 2007 17:20

Сообщение Джедай » Чт ноя 22, 2007 15:53

Программу можно разместить на странице с Mental Games. Может кому пригодится.

Аватара пользователя
Джим
Сообщения: 210
Зарегистрирован: Сб июн 16, 2007 0:03

Сообщение Джим » Пт ноя 23, 2007 1:27

Джедай
Спасибо!
Джедай писал(а):1. У Mind-Reflection - 24 кнопки. Диапазон сигнала джойстика (-1;+1), хотя сам прибор полностью его не использует.
Насчет диапазона -- он "на самом деле" -- целочисленный, но дело не в этом. Поиграв (немного) в "родные" игры и сравнив характер кривуль с цифирью, полученной "напрямую" у меня закралось подозрение (вероятно глюк, но во всем надо сомневаться, особенно если можно проверить), что Игры оперируют реальными килоомами или боле-мене линейно связанными с ними величинами или процентами от них, а "сырые" отсчеты ведут себя "неприятно-по-другому". Т.е. возможно, желателен нелинейный пересчет показаний HID'а в шкалу, проп. сопротивлению. Проверить это очень просто, но пока нет времени, возможно на днях, если что накопаю -- напишу.
Джедай писал(а):На счет батареек - а зачем вообще необходим столь длительный по времени сравнительный мониторинг уровня?
Исключительно, чтобы убедиться раз и навсегда, что он не нужен! :)

ЗЫ: NP100 имеет (как оказалось :oops: ) почти :) документированный протокол управления, и он работает. Можно все! Но с реализацией БОС через BW я спешить не буду, пока меня интересуют в основном возможности КГР, как [объективного?] индикатора собственного [эмоционального?] состояния. Для начала -- с "разорванной" обратной связью.
Еще раз спасибо, успехов.

Аватара пользователя
Джедай
Сообщения: 74
Зарегистрирован: Сб сен 22, 2007 17:20

Сообщение Джедай » Пт ноя 23, 2007 16:15

Джим

Я предварительно проверил то, как игра интерпретируют сигнал - подключил переменное сопротивление и записал следующие данные:
1) величину сопротивления, измеренную омметром
2) уровень сигнала
3) положение горизонтального индикатора в игре (в пикселях по скриншоту)
4) положение центра объекта в игре (в пикселях по скриншоту)

В результате получилась следующая таблица:
Изображение

Рассчитаные коэффициенты парной линейной корреляции (r) между каждым из показателей и величиной сопротивления свидетельствуют о полностью линейном характере зависимости между всеми величинами.

По методу наименьших квадратов находим следующие преобразования:

R = 2383.5 + 2380.5 * L
R = 4764 - 47.6 * P
где:
R - сопротивление в кОм,
L - уровень (-1, 1),
P - уровень в процентах (0, 100).

Т.к. между величиной сопротивления и степенью напряженности связь обратная, то я в своей программе перешел к инвертированному показателю, приведенному к 100% т.к. логичнее визуально уменьшать, а не увеличивать показатель для снижения степени напряженности.
Также, с помощью этого показателя можно оценить уровень сигнала относительно всего диапазона измерения.

ТриД
Сообщения: 2
Зарегистрирован: Ср ноя 21, 2007 17:10

Сообщение ТриД » Пт ноя 23, 2007 20:33

Сорри, если немного не в тему....

Сегодня провел небольшой эксперимент по теме (самого устройства, которое здесь обсуждается, у меня нет).
1. Сделал два электрода: пятикопеечная монетка с припаянным проводком.
2. Спаял источник тока (ток установил равным около 22 мкА).
Все это собрал в простенькую схемку, в которой тело выступает нагрузкой для источника тока. Подключил электроды к большим пальцам правой и левой руки и наблюдал падение напряжения (с помощью мультиметра).
Результаты: в процессе расслабления падение напряжения между электродами растет, т.е. сопротивление увеличивается. Стоит хотябы один раз глубоко вдохнуть, как сопротивление резко падает.
Полученные данные несколько не согласуются с приведенной выше таблицей (или я не все в ней понял) ).

Аватара пользователя
Джедай
Сообщения: 74
Зарегистрирован: Сб сен 22, 2007 17:20

Сообщение Джедай » Пт ноя 23, 2007 21:54

ТриД

Таблица относится к взаимодействию Mental Games и Mind-Reflection, - не совсем понятно, как она вообще может согласоваться или не согласоваться с вашими наблюдениями.
Полученные вами данные вполне точно описывают поведение КГР.

P.S. Вы бы лучше так над собой не экспериментировали...

Аватара пользователя
Джим
Сообщения: 210
Зарегистрирован: Сб июн 16, 2007 0:03

Сообщение Джим » Сб ноя 24, 2007 0:41

Джедай писал(а):Рассчитаные коэффициенты парной линейной корреляции (r) между каждым из показателей и величиной сопротивления свидетельствуют о полностью линейном характере зависимости между всеми величинами.
Да, отличная работа. И прога -- по меньшей мере, неплохое дополнение к Играм. Интересно -- опубликуют на сайте?? -- вроде никаких нарушений типовых лицензионных соглашений нет -- ничего не разбиралось и не дизассемблировалось.

От себя могу только добавить, что согл. инф. DirectX полный "родной" целочисленный диапазон значений оси X - [-32767,+32766], т.е. 16-бит с откушенной (вероятно, самими DirectX -- там есть некоторая путаница с границами). Еще из вашей проги (точнее, прилагаемой DLL) следует, что дайректы для джойстика не обязательны -- есть ф-и в обычном мультимедиа-API. Вероятно, они не будут терять железяку.
Удачи! :)

ТриД
Сообщения: 2
Зарегистрирован: Ср ноя 21, 2007 17:10

Сообщение ТриД » Пн ноя 26, 2007 13:54

Джедай
Как я и написал, видимо, я просто не правильно понял таблицу :).
По поводу экспериментов над собой... как и, наверное, все на этом форуме я люблю по-экспериментировать над собой (хотя давненько этим и не занимался).
В целом, мне близка тематика форума и я с удовольствием почитал посты.
Сорри, если мой пост по поводу эксперимента был не в тему.

Александр_
Сообщения: 598
Зарегистрирован: Чт июн 21, 2007 13:34
Откуда: Винница
Контактная информация:

Сообщение Александр_ » Сб дек 15, 2007 19:01

Джедай писал(а):После некоторой доработки могу выложить программу для скачивания, если она кого-нибудь заинтересует.
ОЙ !!!
Разместите на сайте кнопку БЛАГОДАРНОСТЬ - я ее нажму 1000000 раз.
Вот это действительно спасибо.

Я так мечтал о такой програмке.
Ну просто супер.

Миллион благодарностей !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

Гость

Сообщение Гость » Чт сен 03, 2009 0:27

странно, прога не вплне совешенно - но, кажется, весьма хорошее (тем более, что лучшего никто пока не сделал) дополнение к "ментальным играм". Забавно, что оно все еще лежит на файлообменнике, а администраторы с модераторами это игнорируют...
моя не понимает.

Аватара пользователя
Экко
Сообщения: 669
Зарегистрирован: Чт сен 17, 2009 13:28
Откуда: Владивосток
Благодарил (а): 2 раза
Поблагодарили: 4 раза
Контактная информация:

Сообщение Экко » Вс окт 10, 2010 19:38

Я вот что подумал: если аппаратно Mind reflection представляет собой джойстик (так сказать), что если взять и правда джойстик, переделать его, подключившись к его переменным резисторам осей (связаны с рычагами). Сделать некоторое преобразование и вывести на пальцы. А программу вообще просто написать.

Василий Петров
Сообщения: 1
Зарегистрирован: Вс июн 19, 2011 14:04

Сообщение Василий Петров » Вс июн 19, 2011 14:11

Джедай

Приобрел тут майнд-игры и с предвкушением уже хотел было поюзать вашу программу, но не тут-то было. При попытке запуска пишет: Could not find the main class.
При запуске через другой экзешник джавы просто появляется консоль на какое-то время и затем исчезает. Джаву новую поставил специально. Как бы так сделать, чтобы все заработало? Подскажи плиз. А то программа чудесная, только пользоваться ей не получается..

Аватара пользователя
Ослик ИА-ИА
Сообщения: 32
Зарегистрирован: Вс июн 27, 2010 19:05
Откуда: Пенза

Re: Собственный интерфейс для Mind-Reflection

Сообщение Ослик ИА-ИА » Чт ноя 03, 2011 1:56

Спасибо! Классная фенечка!

ВладимирЖ
Сообщения: 28
Зарегистрирован: Вт сен 11, 2012 14:32

Re: Собственный интерфейс для Mind-Reflection

Сообщение ВладимирЖ » Пт окт 12, 2012 22:00

Не подкините еще разок ссылочку для скачки?

Аватара пользователя
Ослик ИА-ИА
Сообщения: 32
Зарегистрирован: Вс июн 27, 2010 19:05
Откуда: Пенза

Re: Собственный интерфейс для Mind-Reflection

Сообщение Ослик ИА-ИА » Сб окт 13, 2012 12:48

Вышел VIRIM LAB LIGHT
http://www.verim.de/verim-lab/
Бесплатен для пользователей Mind Reflection. А другим он и не нужен.
Скачать можно там-же, http://www.verim.de/verim-lab/verimlab_setup.exe

Аватара пользователя
Крапива
Сообщения: 17
Зарегистрирован: Сб сен 06, 2008 15:46
Откуда: Хабаровск
Контактная информация:

Re: Собственный интерфейс для Mind-Reflection

Сообщение Крапива » Вт июн 10, 2014 10:30

У кого-нибудь есть программы для Verim Mind Refltction? Дайте во временное пользование :)))))))))

Ответить

Вернуться в «Ментальные игры»