джойстик на датчиках холла
- Войдите на сайт для отправки комментариев
Пт, 18/03/2022 - 16:20
Здравствуйте. собираю кастомный геймпад на основе леонардо и с самодельными стиками.
скетч и библиотеку взял с https://www.partsnotincluded.com/how-to-emulate-an-xbox-controller-with-arduino-xinput/
прошил по инструкции и взял за основу пример https://github.com/dmadison/ArduinoXInput/blob/master/examples/GamepadPins/GamepadPins.ino
проблема возникла со стиками на датчиках холла.
во первых сигнал регистрируется только на 2\3 несмотря на то что до центра магнитов есть еще место.
во вторых отклонение стика запланированно на 25 градусов но уже при отклонении стика на 10 град все эти 2\3 сигнала оказываются пройдеными.
подскажите как совместить стики?
А где схема и программа? Хрустальные шары нам СТРОГО запрещены гуру этого форума.
Согласен на все 100% про код и схему, но еще я не понимаю что означает это высказывание:
сигнал регистрируется только на 2\3 несмотря на то что до центра магнитов есть еще место.
во вторых отклонение стика запланированно на 25 градусов но уже при отклонении стика на 10 град все эти 2\3 сигнала оказываются пройдеными.
Я конечно же заграничных институтов не кончал, да и в принципе с датчиками холла только на автомобилях и велосипедах сталкивался, поэтому отношу данные датчики к "регистраторам метки". О каких 2/3 идет речь и каких 10 градусах - понятия не имею. Поясните.
Я конечно же заграничных институтов не кончал, да и в принципе с датчиками холла только на автомобилях и велосипедах сталкивался, поэтому отношу данные датчики к "регистраторам метки". О каких 2/3 идет речь и каких 10 градусах - понятия не имею. Поясните.
Датчики Холла они разные бывают. Бинарные (превысило магнитное поле порог или нет) и линейные (аналоговые) - выдающие напряжение в зависимости от величины магнитного поля.
датчики аналоговые ss49e
при максимальном приближении полюса магнита стик отклоняется на 2\3 см фото.
Уважаемый, представьте схему. Иначе будут недопонимания и обиды.
Далее - сделайте простую программу опроса портов А0-А3 и выдачи в терминал. Посмотрите чего выдается. Ваша программа непрозрачна, особенно учитывая XInput.
Получите значения - пишите.
Проблема, скорее всего в квадратичной зависимости напряженности магнитного поля от расстояния. Перемещения достаточно маленькие, а изменение напряженности большое. Так как магниты изначально рядом с датчиком, он уже где-то на грани своей рабочей характеристики. Нужно городить достаточно хитрую магнитную систему.
Проблема, скорее всего в квадратичной зависимости напряженности магнитного поля от расстояния.
Значит корень квадратный из измерений. Чего там сложного?
Проблема, скорее всего в квадратичной зависимости напряженности магнитного поля от расстояния.
Здесь указана зависимость выходного напряжения от напряженности магнитного поля, а не от расстояния от магнита до датчика. В реальности аналоговый датчик чувствует неодимовый магнит примерно со 150 мм. Как можно на мизерной площади джойстика заставить реагировать датчик на свой магнит не используя какую-то магнитную экранировку? Да и изменения расстояния от магнита до датчика в пределах 1-2 мм будет вызывать дикое изменение выходного сигнала (если напряженность МП находится в рабочем диапазоне датчика). В реальности параметры магнитов очень сильно различаются, и для корректной работы нужно очень тщательно выбрать параметры механической части (магнитную систему). Ну и программную часть никто не отменял. Скорее всего в библиотеке она как-то реализована. Но должны быть какие-то ограничения.
В магнитных джойстиках измеряется не расстояние от датчика, а угол поворота магнита.
В магнитных джойстиках измеряется не расстояние от датчика, а угол поворота магнита.
Это немного из другой оперы. В этом случае используют специализированные МС - датчики угла поворота и специальные магниты, а у ТС четыре обычных аналоговых Холла. Хотя идея здравая. Вместо четырех обычных поставить два специальных и проблемы исчезнут.
Обычный или двухоснвой датчик холла там используется.
Как пишет ТС "датчики аналоговые ss49e". Странно, у этого датчика, судя по описанию - цифровой выход. Хотя в другом месте, вроде аналоговый как в #7.
Народ, вопрос не в тему, но, можно ли собрать эмулятор аналогового джойстика на этих датчиках холла???
Кто из мск - могу показать этот самый джойстик (неисправный).
ps: можно срубить баблеца, если вывезем тему! Джойстики 2-х и 3-х координатные, управляют всякими разными грузоподъёмными механизмами.
Народ, вопрос не в тему, но, можно ли собрать эмулятор аналогового джойстика на этих датчиках холла???
Кто из мск - могу показать этот самый джойстик (неисправный).
ps: можно срубить баблеца, если вывезем тему! Джойстики 2-х и 3-х координатные, управляют всякими разными грузоподъёмными механизмами.
всё давно придумано до нас
в общем если подключить вместо холла обычный потенциометр из джойстика то все показания в норме , причем как известно там используется не весь диапазон потенциометра
мин_________0_______512_______1023________макс.
тогда как на датчике холла выходит,
0______мин._______512______макс.______1023.
мне кажется по этому он не выдает максимум при отклонении стика.
как вариант попробую поставить 10ком резистор может поможет
как вариант попробую поставить 10ком резистор может поможет
А смысл? Пользуйтесь диапазоном min-max. Все равно большего разрешения Вы не получите.
Если оч надо такой диапазон - используйте map()