Просмотр полной версии : TrackIR Еще одна альтернатива или Сделай сам
Сейчас в разработке находится устройство, которое можно назвать виртуальной мышью. Устройство теоретически должно полностью эмулировать обычную мышь, таким образом должна отпасть проблема с несовместимостью с различным ПО (даже под Линуксом должно пойти). Разрабатывается изначально как замена ТракИРу именно в Ил-2, т.к. других игр я не запускаю.
Принцип работы прост- на монитор вешаем излучающий контур (30кГц, мощность пока не известна, ?? мВт) и четырьмя направленными катушками измеряем мощность принимаемого излучения (2 катушки- горизонталь, 2 катушки- вертикаль). По разнице мощностей принимаемого сигнала судим об угле поворота. Естественно максимальный анализируемый угол поворота в такой системе составит 45 градусов в каждом направлении (ИМХО вполне достаточно). Микроконтроллер выступает в качестве высокоскоростного АЦП а также выдает в порт обработанную информацию. Все.. ;)
Схемное решение: напряжение с катушек поступает на 4-ре независимых усилителя (выполняющих и роль детекторов одновременно). Детектированный сигнал поступает на аналоговый коммутатор а уже оттуда на микроконтроллер. Вторая часть схемы- управляемый генератор. Пока в качестве усилителя выступает УН14. Мощность генератора будет меняться автоматически микроконтроллером в зависимости от удаленности приемника от излучателя.
ЗЫ Коммерческое изготовление устройства пока не планируется
Рисунки низкого качества, сорри, но я не в КБ работаю :)
Принцип работы прост- на монитор вешаем излучающий контур (30кГц, мощность пока не известна, ?? мВт) и четырьмя направленными катушками измеряем мощность принимаемого излучения (2 катушки- горизонталь, 2 катушки- вертикаль).
Мозги не поджаришь?
Во первых излучатель на мониторе, во вторых тебе самому не страшно наушники одевать? Ведь там 20кГц и до мозгов поближе #:D :D Да и монитор у многих еще не ЖК... Не пугает?
Хотя вопрос дельный, возможно кто-нибудь и объяснит чего мне следует бояться...
Например людям с электростимуляторами сердца точно нельзя. У меня ворот на работе стоят, не думал что таких людей часто встретить можно, а можно оказывается.
Воще все зависит от мощности наверно, в наушниках она никакая, а тут надо чтоб излучение еще и до головыы доставало, наверно мало не получится. Но это надо какие-нибудь санитарные нормы смотреть(СанПиН)
наверно мало не получится. Но это надо какие-нибудь санитарные нормы смотреть(СанПиН)
Очень интересно посмотреть на такие нормы. Естественно мощность будем делать как можно меньше- голова то своя ;) Хотя 30кГц для здоровья ИМХО безопасно- частота ультразвука.
Glass Eagle
11.10.2002, 22:09
Нормы, правила... Слишком сложно, ИМХО. Хотя, наверно, работать будет. Как занятие для талантливого радиолюбителя/профессионала вполне пойдет. Качество схемы (картинки) нормальное (куда лучше #то? - мы здесь все свои #:D )
Дорогой друг, если Вы всерьез займетесь этой штукой - рискуете месяца на два забросить собсно полеты на Иле. У меня такое было, когда взялся люфт у джоя устранять и резюки модернизировать - недели три в воздух не поднимался, чуть квалификацию не потерял ;) (а она у меня и так - так себе)
gogoblin
11.10.2002, 22:27
Не совсем понятно , мощность планируется мерять как функцию а)пространственного затухания сигнала б)произведения диаграмм направленности приемной и передающей катушек?
Или я не совсем понял геометрию процесса , или в данном случае должна получиться достаточно сложная зависимость угол поворота - мощность. Плюс зависимость от смещения.
Если свойства приемного тракта будут не хуже , чем в детекторном радиоприемнике , соответственно и потребная мощность сигнала будет на уровне радио - при таком же ущербе для здоровья.
В любом случае желаю удачи.
Не совсем понятно , мощность планируется мерять как функцию а)пространственного затухания сигнала б)произведения диаграмм направленности приемной и передающей катушек?
Или я не совсем понял геометрию процесса , или в данном случае должна получиться достаточно сложная зависимость угол поворота - мощность. Плюс зависимость от смещения.
Вариант б- направленность приемной и передающей катушек. И так как катушек пара, для каждой плоскости, угол поворота будет вычислятся как разность напряжений. Таким образом измеряется не абсолютная мощность (головой взад-вперед водить можно) а относительная.
Качество приемного тракта будет не хуже радиоприемника, это уж точно :)
gogoblin
12.10.2002, 00:27
Если я правильно понял - 1.приемные катушки в паре повернуты друг относительно друга на 90градусов.
2. Размер передающей катушки достаточно мал чтобы считить источник точечным. 3.Расстояние источник-приемник значительно больше расстояний между приемниками.Чем дальше - тем лучше.
Тогда все верно. И можно даже регулировку мощности убрать - имхо.
Есть просто сугубо личное предубеждение против измерений мощности - пусть даже относительных. Довольно "грязный" в смысле информативности параметр - опять же имхо. Может лучше разность фаз? Что-нибудь с длиной волны порядка 30см. Тот же ультразвук.
А почему именно 30кГц? Выше и шумы меньше , и стабилизировать схему по частоте проще , как мне кажется. Это не критика - просто мысли вслух заинтересованного лица.
1. Верно
2. Не верно, наоборот мы пробовали с большими излучателями (по периметру комнаты) чтобы создать однородное поле, однако ограничелись по периметру монитора.
3. Верно
А как по изменинию направления катушек изменится фаза? Уровень изменится точно.
Частота 30кГц оказалась несколько заниженной, сейчас пришлось поднять до 80кГц, чтобы катушки были в резонансе. В этом случае помехи на уровень сигнала практически не влияют
gogoblin
12.10.2002, 18:31
Как я понимаю , все катушки , а точнее резонансные контуры должны быть настроены на заданную частоту - в том числе и излучающий?
Если расстояние до источника достаточно велико , можно считать волну плоской - чего Вы и добиваетесь. Может , проще передающую катушку взять аналогичную приемным - только отнести на метр за монитор?
УЗ - механическая волна , соответственно берем ненаправленный (в идеале) датчик. Усиливаем сигнал до упора - получаем меандр с цифровыми уровнями. Подаем пару сдвинутых меандров (сдвиг пропорционален разности путей от источника до датчиков) на логическое "И" или "ИЛИ" - получаем сигнал со скважностью пропорциональной сдвигу фаз независимо от амплитуды входного сигнала. Дальше дело вкуса - к примеру ставим интегратор на ОУ и переводим длительность в напряжение.
Или в цифре модулируем его сигналом более высокой частоты. У полученных пачек импульсов считаем разность количества этих импульсов в последующих пачках и подаем их прямо на входы мышиной микросхемы вместо сигналов фотодиодов. Звучит может и страшновато , но на практике реализуется довольно просто. Тогда можно вообще обойтись без АЦП , контроллера итп. Частотой заполняющих импульсов тогда можно напрямую регулировать чувствительность устройства.
Если выразился невнятно - прошу извинить.
Я тут недавно получил магниторезисторы - так что пока занимаюсь РУСом. Потом тоже попытаюсь что-нибудь сваять. И всенепременнейше желаю успехов. Как говорил ГОРБАТЫЙ - "на святое дело идем..."
уровнями. Подаем пару сдвинутых меандров (сдвиг пропорционален разности путей от источника до датчиков) на логическое "И" или "ИЛИ" - получаем сигнал со скважностью пропорциональной сдвигу фаз независимо от амплитуды входного сигнала. Дальше дело вкуса - к примеру ставим интегратор на ОУ и переводим длительность в напряжение.
Что то меня терзают смутные сомнения на счет сдвинутых меандров- это же какая разница расстояний должна быть между парами: источник-приемник1 и источник-приемник2, чтобы при скорости света уловить разность фаз? Имхо на голове придеться закрепить коромысло :D хотя может я и ошибаюсь... А вообще приведенная схема практически собрана, поэтому менять что-то кардинально неохота. :(
Я тут недавно получил магниторезисторы - так что пока занимаюсь РУСом. Потом тоже попытаюсь что-нибудь сваять. И всенепременнейше желаю успехов. Как говорил ГОРБАТЫЙ - "на святое дело идем..."
Где взял, по чем? Каковы параметры?
gogoblin
12.10.2002, 21:33
Сорри , я наверное неясно выразился. Я говорил о длине волны порядка 30 см. Именно столько - чтобы в крайних положениях головы разность путей до приемников была меньше длины волны. В случае электромагнитных это около 1 ГГц , в случае механических (т.е.звук) около 1 кГц. Насчет ультразвука это я конечно загнул - не посчитав ляпнул. А на слышимом звуке даже проще - с датчиками нет проблем.
Да , помечтать не вредно. Ну и конечно , по любому лучше доделать начатое - тут я обеими за.
Магниторезисторы HMC 1501 брали в Москве , сеть магазинов "Чип и Дип" от www.platan.ru. Оказии в Минск месяц ждал. 440р кажется. Параметры сравнить не с чем - а абсолютные величины есть в сети. Скажем так - к.усиления по напр.45раз , рабочий режим насыщения достигается с магнитом от мебельной защелки и зазором менее 7мм. Сигнал чистый. В прайсе есть аналог от Infineon - GMR B6 - по 110 RUB - но не было в наличии (подозреваю , искать поленились).
Устройство- вид изнутри (печатная плата плюс приемные контура)
И что, работает?
:D Пока нет... Еще не собрано до конца даже, я же говорил в течении месяца. Это, так сказать, девелопмент апдейт
Афигеть :D Ил-2: Штурмовик - двигатель прогресса. Так, глядишь, родится куча новых стандартов для манипуляторов. А все из-за того, что мышь левой рукой двигать неудобно :D
Афигеть :D Ил-2: Штурмовик - двигатель прогресса. Так, глядишь, родится куча новых стандартов для манипуляторов. А все из-за того, что мышь левой рукой двигать неудобно :D
А правой ногой само то :D :D
Alexandr Rybnikov
16.10.2002, 22:51
или эта... :( точкой приземления
Ничего, мы им еще покажем что могут истинные вирпилы. Мы это, мы эволюционируем и поколений через пять отрастим еще одну правую руку чтобы мышкой оглядываться удобно было бы. Так что вперед, как завещал великий Дарвин...
Магниторезисторы HMC 1501 брали в Москве , сеть магазинов "Чип и Дип" от www.platan.ru. Оказии в Минск месяц ждал. 440р кажется. Параметры сравнить не с чем - а абсолютные величины есть в сети. Скажем так - к.усиления по напр.45раз , рабочий режим насыщения достигается с магнитом от мебельной защелки и зазором менее 7мм. Сигнал чистый. В прайсе есть аналог от Infineon - GMR B6 - по 110 RUB - но не было в наличии (подозреваю , искать поленились).
Слушай, друг, ну и как успехи? Ты поделись результатами, как оно у тебя работает :)
А схемку какую с магниторезисторами используешь, откуда взял?
gogoblin
21.10.2002, 23:09
Успехи так себе. Сам датчик работает отлично. Сопряжение с портом - не нравится мне. Схема похожа на http://www.infineon.com/cmc_upload/0/000/012/100/AN_GMR_Joystick.pdf - по крайней мере в принципе. Я уж и плату вытравил- набил - подключил - да больно нелинейность лошадиная. Проблема в том , что источник тока , используемый в выходном каскаде , подобен резистору только в области сравнительно больших сопротивлений - то есть малых токов. Хочешь получить линейную характеристику - выбрасывай где-то треть диапазона. Попробую внести корректирующую нелинейность. А может и так сойдет:).
Спасибо за ответ !!!
Да, блин, столько наворотов - и нелинейность :(.
Но с другой стороны, может ее надо бороть с помощью настройки кривой отклика, котороую дают возможность почти все современные симы :confused:
LazyCamel
22.10.2002, 12:48
Успехи так себе. Сам датчик работает отлично. Сопряжение с портом - не нравится мне. Схема похожа на http://www.infineon.com/cmc_upload/0/000/012/100/AN_GMR_Joystick.pdf - по крайней мере в принципе. Я уж и плату вытравил- набил - подключил - да больно нелинейность лошадиная. Проблема в том , что источник тока , используемый в выходном каскаде , подобен резистору только в области сравнительно больших сопротивлений - то есть малых токов. Хочешь получить линейную характеристику - выбрасывай где-то треть диапазона. Попробую внести корректирующую нелинейность. А может и так сойдет:).
Извини за хамство.. ты обратную связь у операционников пересчитал для НМС ?
Очень похоже, что источник тока в насыщение входит. Воткни вместо порта резюк кОма на 2 и сними характеристику. Там в принципе идеальный интегратор должен получаться с прямой линией.
И операционники с rail-to-rail выходами, по крайней мере последние, что источник тока составляют.
PS: Если ничего не пересчитывал - не удивительно...
у НМС1501 120мВ и 5 кОм
у В6 200-400 мВ и 700 Ом.
gogoblin
22.10.2002, 22:36
Извини за хамство.. ты обратную связь у операционников пересчитал для НМС ?
Очень похоже, что источник тока в насыщение входит. Воткни вместо порта резюк кОма на 2 и сними характеристику. Там в принципе идеальный интегратор должен получаться с прямой линией.
И операционники с rail-to-rail выходами, по крайней мере последние, что источник тока составляют.
PS: Если ничего не пересчитывал - не удивительно...
у НМС1501 #120мВ и 5 кОм
у В6 200-400 мВ и 700 Ом.
Дык какое же хамство? За совет только благодарить надо и в ноги кланяться:).
Пересчитывать не пересчитывал - просто снял характеристику. Она то линейная во всем диапазоне - по току то есть. Мерял по падению напряжения на выходном резисторе с подключенным портом. Именно эта линейность по току и воспринимается портом криво - по упомянутым ранее причинам как я их понимаю. А именно - линейное изменение тока в области больших токов отображается в свойствах джоя крайне тупо. И оно логично - поскольку связь тока и сопротивления здесь сильно нелинейна.
Исследуемая схема подобна упомянутой , но не идентична. То что изображено по ссылке Инфинеона существовало скорее всего только на бумаге. Чтобы влезть в диапазон с приемлемой линейностью потребовался Кус в первом каскаде около 3. Входные сопротивления имхо маловаты. Смещение у НМС лучше подавать по другому итд.
Возможно это неважно - но интегратор наверное упомянут для случая с подключением конденсатора?
И если можно подробнее о последнем абзаце - к каким резисторам относятся номиналы и исходя из чего рассчитывались.
gogoblin
22.10.2002, 23:59
To LazyCamel
Сказанное о нелинейности по идее должно относиться и к схеме с акселерометром из ветки об энкодерах. Ничего похожего замечено не было?
Уточню - линейность очень даже не плоха если верхняя четверть движка в свойствах некалиброванного девайса остается нерабочей.
LazyCamel
23.10.2002, 07:55
Возможно это неважно - но интегратор наверное упомянут для случая с подключением конденсатора?
И если можно подробнее о последнем абзаце - к каким резисторам относятся номиналы и исходя из чего рассчитывались.
По поводу интегратора - в связи стем что источник тока на ОУ практически идеальный - от и интегратор в виде С которое содержится в гемпорту тоже должно быть близко к идеальному.
По поводу резисторов - это их внутренние сопротивления и максимальные изменения напряжения на них. Из даташитов.
По поводу акселерометра - он у меня работает на микроконтроллер, который напрямую меряет времянку, т.ч. там все линейно. К гейм-порту я его подключал просто для интереса, посмотреть что да как, но бурной нелинейности не видел.
Для геймпорта - попробуй все таки уменьшать ток, пусть лучше драйвер смасштабирует.
Такое впечатление что он у тебя достаточно близко подобрался к 2.3-2.5 мА. Убавь чтобы максимальный был не больше 2 мА.
Лично я выкидывал из той схемы почти все, оставался инструментальный усилитель на трех ОУ + 1 на источник тока - как раз один корпус счетверенных усилков.
gogoblin
23.10.2002, 18:02
Ток меньше 1мА. Уменьшить его - не проблема. За динамический диапазон обидно - своими руками шумы увеличивать не хотелось. А схема у меня - 2 ОУ на канал.
LazyCamel
24.10.2002, 10:34
Ток меньше 1мА. Уменьшить его - не проблема. За динамический диапазон обидно - своими руками шумы увеличивать не хотелось. А схема #у меня - 2 ОУ на канал.
Источник тока точно хотя бы 4В выдать может ?
Операционник какой ?
gogoblin
24.10.2002, 13:37
To LazyCamel
Вопросы и советы полезные и правильные если цель - сделать хороший источник тока.
Я говорю о другом. Ток и сопротивление связаны кривой по имени , если склероз не подводит , гипербола. Аппроксимировать прямой ее можно в определенных областях. Берем характерные точки в 2,52,102кОм и считаем токи для U=5В. Получаем 2500,96,49мкА. Кривее бывает - но редко. Вот и получается , что для относительной прямизны надо или ограничивать диапазон , или кривить ВАХ - то есть строить функциональный преобразователь. Рад был бы услышать другие соображения.
LazyCamel
24.10.2002, 14:37
To LazyCamel
Я говорю о другом. Ток и сопротивление связаны кривой по имени , если склероз не подводит , гипербола. Аппроксимировать прямой ее можно в определенных областях. Берем характерные точки в 2,52,102кОм и считаем токи для U=5В. Получаем 2500,96,49мкА. Кривее бывает - но редко. Вот и получается , что для относительной прямизны надо или ограничивать диапазон , или кривить ВАХ - то есть строить функциональный преобразователь. Рад был бы услышать другие соображения.
Ток и сопротивление повязаны все же прямой.
Кривой в гейм-порту повязаны напряжение/время/ток.
Т.к. там режется напряжение где-то в районе по .707 - сильных отклонений быть не должно.
По крайней мере источник тока на резисторном делителе обладает явно хужей линейностью по сравнению с ОП.
То что в драйвере аналогового джойстика у Винды компенсации нелинейности отклика нет - я отвечаю.
То что схема таймера на основе 555 нелинейность не компенсируеи я тоже больше чем уверен.
Ерго - если есть СИЛЬНАЯ нелинейность - крути схему, где-то косяки.
gogoblin
24.10.2002, 20:38
To LazyCamel
Может мы о разных предметах говорим?
У меня такое иногда бывает - переклинит и хоть убейся - очевидных вещей не замечаю. Может и сейчас такой случай?
1.Берем закон Ома и фиксируем напряжение. Получаем ток как обратную функцию сопротивления. y=c/x - это разве прямая?
Или зайдем с другой стороны. Прямая - если имеет наклон - пересекает оси координат в точках с вполне конечными значениями. То есть при конечном сопротивлении можно получить нулевой ток? И наоборот?
2.Приведенный расчет токов существенно ошибочен?
3.Рассчитанные токи можно положить на прямую?
Если постоянная времени RC цепи линейно зависит от R , то никакой компенсации в геймпорте и не должно быть - ни аппаратной , ни программной - имхо , естественно.
LazyCamel
28.10.2002, 10:29
To LazyCamel
Может мы о разных предметах говорим?
У меня такое иногда бывает - переклинит и хоть убейся - очевидных вещей не замечаю. Может и сейчас такой случай?
1.Берем закон Ома и фиксируем напряжение. Получаем ток как обратную функцию сопротивления. y=c/x - это разве прямая?
Или зайдем с другой стороны. Прямая - если имеет наклон - пересекает оси координат в точках с вполне конечными значениями. То есть при конечном сопротивлении можно получить нулевой ток? И наоборот?
2.Приведенный расчет токов существенно ошибочен?
3.Рассчитанные токи можно положить на прямую?
Если постоянная времени RC цепи линейно зависит от R , то никакой компенсации в геймпорте и не должно быть - ни аппаратной , ни программной - имхо , естественно.
можно просто прикинуть...
Если меня не подводит память уравнение
e-RC
Т.е. кривая - экспонента, и где-то до 2х вольт - она практически идеально повторяет, при 3.3 - ошибка тоже небольшая. А дальше уже нас не волнует...
Spectat0r
28.10.2002, 13:32
http://www.gyration.com/ultra.htm еще можно к голове прикрутить .
Только мне кажется все это как то не очень пока приходится смотреть в станционарный монитор , вот с шлемом или очками - рулез немеренный будет. (только вот очки щас полтора касаря стоят :( )
Я бы немного по-другому дал ссылку - http://www.gyration.com/gyrogaming.htm
Dark Mechanicus
09.09.2004, 23:38
Вопрос к автору: каковы результаты вашей работы по созданию второй пары фотодатчиков, т.е. вертикальной приёмной оси? С нетерпением жду ответа, поскольку считаю ваш вариант "Трекира" самым удачным и "изготовитебельным" :)
Powered by vBulletin® Version 4.2.5 Copyright © 2024 vBulletin Solutions, Inc. All rights reserved. Перевод: zCarot