LazyCamel
07.12.2001, 10:58
Итак... с конструкцией джоя в основним разобрались... теперь вопрос как малыми силами переделать его на оптику.
СРАЗУ ПРЕДУПРЕЖДЕНИЕ....
Переделывать на оптику можно в принципе любой резистивный джой, неважно цифровой он или нет.
Основные сложности ждут именно в цифровом, так что про него я в основном и буду рассказывать.
ГЛАВНОЕ
Во первых не лезьте с АВОметром
измерять сопротивление на переменном резисторе есле вы не отпаяли провод идущий к микроконтролеру цифрового джойстика. !!!!
Дело в том, что АЦП микроконтроллеров измеряет не сопротивление резистора, а падение напряжения на нем. И предельное напряжение которое он может измерить - 5В ибо питание береться от геймпорта (для усб - еще хуже. там питание 3.3 В). АВОметр в зависимости от типа питания могет выдать в режиме измерения сопротивления до 9 вольт. Результаты могут оказаться плачевны...
Второе. Так как измеряеться падение напряжения на резисторе джоя, надо подходить весьма аккуратно к выбору фотоэлемента. Дело в том, что фотодиоды/транзисторы характеризуются при изменении освещения изменением же ПРОВОДИМОСТИ, т.е. величины обратной сопротивлению.Для пасивных элементов это вроде бы не сильно большая разница, а вот для активный где меняеться приложеное напряжение(например при подключении омметьра) - это вызывыает и искажение измерений.
Но речь несколько не от этом. Главное - как я уже говорил микроконтроллер меряет подение напряжения на резисторе. Там получаеться цепь - +5В -> так называемый резистор поддтяжки(внешний или встроеный в контроллер - не важно) обычно 10-20КОм -> резистор джойстика (иил фотоэлемент его заменяющий) -> земля. Если взять схему где оптический датчик в рабочем состоянии имеет сопротивление теже 10 Ком (а не 100-150 Ком) как стандартный джойстиковый, то максимум на мем будет падение напряжения 2.5 Вольта. Т.е. рабочий интервал уменьшиться вдвое. С обычныз 230-240 до 128 градаций скажем .
В результате - драйвер джойстика после калибрации приведя результат в диапазон 0-65535 градаций увеличит нелинейность не слишком-то и так линейной характеристики полупроводника в несколько раз.
Нечто подобное произойдет и в обычном нецифровом джойстике. Только в более-менее сглаженной форме.
Сопротивление резистора или его заменяющей цепи должно быть ЗНАЧИТЕЛЬНО (как минимум на порядок) выше чем резистора подтяжки.
Если вас это не волнует - вперед.
Если волнует - придеться посидеть самому или с другом радиотехником вечерок и попробовать загнать ваш фотоэлемент в режим наибольшей линейности.
Как ? Для этого понадобиться ваша конструкция датчика, вольтметра, блок питания +5В. два подстроецныз резистора. Килоом так на 47. можно меньше.
Первым делом определяем сопротивление резистора подтяжки. Пдключаем вольтметр паралельно резистьору джойстика. После этого загоняем резистор джойстика в режим наибольшего падения напряжения на нем. записываем.
Отключаем резистор от джойстика. Собираем цепь - +5В - подстроечник1 резистор джойстика - общий провод (-). Подключаем вольтметр к резистору джойстика и вращая подстроечник добиваемся точно такого же падения напряжения на резисторе джоя.
Готово. Можно померять сопротивление подстроецника или оставить его так, залив клеем :-).
Собираем новую цепь +5В - залитый подстроечник1 - подстроечник2 - фотоэлемент - земля (-).
Не забываем фотоэлемент в виде готового узла спрятатьв темноту а на ружу вывести только ручку.
Подключаем вольтметр на участок подстроечник2-фотоэлемент и начинаем проводить измерения в 4-5 фиксированых положениях фотоэлемента при разных настройках подстроечника2. данные сводим в табличку и прикидываем линейность. Выбираем самый линейный отрезок, измеряем сопротивления подстроечника 2 и получаем сопротивление, которое надо впаять последовательно с фотоэлементом.
К сожалению у меня при удолетворительной линейности так и не получилось получить приличное сопротивление, но мне проще было внести в код микроконтроллера и драйвера джойстика поправочный коэффициент для того чтобы точность в центре была повыше а по краям похуже.
СРАЗУ ПРЕДУПРЕЖДЕНИЕ....
Переделывать на оптику можно в принципе любой резистивный джой, неважно цифровой он или нет.
Основные сложности ждут именно в цифровом, так что про него я в основном и буду рассказывать.
ГЛАВНОЕ
Во первых не лезьте с АВОметром
измерять сопротивление на переменном резисторе есле вы не отпаяли провод идущий к микроконтролеру цифрового джойстика. !!!!
Дело в том, что АЦП микроконтроллеров измеряет не сопротивление резистора, а падение напряжения на нем. И предельное напряжение которое он может измерить - 5В ибо питание береться от геймпорта (для усб - еще хуже. там питание 3.3 В). АВОметр в зависимости от типа питания могет выдать в режиме измерения сопротивления до 9 вольт. Результаты могут оказаться плачевны...
Второе. Так как измеряеться падение напряжения на резисторе джоя, надо подходить весьма аккуратно к выбору фотоэлемента. Дело в том, что фотодиоды/транзисторы характеризуются при изменении освещения изменением же ПРОВОДИМОСТИ, т.е. величины обратной сопротивлению.Для пасивных элементов это вроде бы не сильно большая разница, а вот для активный где меняеться приложеное напряжение(например при подключении омметьра) - это вызывыает и искажение измерений.
Но речь несколько не от этом. Главное - как я уже говорил микроконтроллер меряет подение напряжения на резисторе. Там получаеться цепь - +5В -> так называемый резистор поддтяжки(внешний или встроеный в контроллер - не важно) обычно 10-20КОм -> резистор джойстика (иил фотоэлемент его заменяющий) -> земля. Если взять схему где оптический датчик в рабочем состоянии имеет сопротивление теже 10 Ком (а не 100-150 Ком) как стандартный джойстиковый, то максимум на мем будет падение напряжения 2.5 Вольта. Т.е. рабочий интервал уменьшиться вдвое. С обычныз 230-240 до 128 градаций скажем .
В результате - драйвер джойстика после калибрации приведя результат в диапазон 0-65535 градаций увеличит нелинейность не слишком-то и так линейной характеристики полупроводника в несколько раз.
Нечто подобное произойдет и в обычном нецифровом джойстике. Только в более-менее сглаженной форме.
Сопротивление резистора или его заменяющей цепи должно быть ЗНАЧИТЕЛЬНО (как минимум на порядок) выше чем резистора подтяжки.
Если вас это не волнует - вперед.
Если волнует - придеться посидеть самому или с другом радиотехником вечерок и попробовать загнать ваш фотоэлемент в режим наибольшей линейности.
Как ? Для этого понадобиться ваша конструкция датчика, вольтметра, блок питания +5В. два подстроецныз резистора. Килоом так на 47. можно меньше.
Первым делом определяем сопротивление резистора подтяжки. Пдключаем вольтметр паралельно резистьору джойстика. После этого загоняем резистор джойстика в режим наибольшего падения напряжения на нем. записываем.
Отключаем резистор от джойстика. Собираем цепь - +5В - подстроечник1 резистор джойстика - общий провод (-). Подключаем вольтметр к резистору джойстика и вращая подстроечник добиваемся точно такого же падения напряжения на резисторе джоя.
Готово. Можно померять сопротивление подстроецника или оставить его так, залив клеем :-).
Собираем новую цепь +5В - залитый подстроечник1 - подстроечник2 - фотоэлемент - земля (-).
Не забываем фотоэлемент в виде готового узла спрятатьв темноту а на ружу вывести только ручку.
Подключаем вольтметр на участок подстроечник2-фотоэлемент и начинаем проводить измерения в 4-5 фиксированых положениях фотоэлемента при разных настройках подстроечника2. данные сводим в табличку и прикидываем линейность. Выбираем самый линейный отрезок, измеряем сопротивления подстроечника 2 и получаем сопротивление, которое надо впаять последовательно с фотоэлементом.
К сожалению у меня при удолетворительной линейности так и не получилось получить приличное сопротивление, но мне проще было внести в код микроконтроллера и драйвера джойстика поправочный коэффициент для того чтобы точность в центре была повыше а по краям похуже.