Official Forum JOYSTICKS.RU
http://www.joysticks.ru/cgi-bin/yabb/YaBB.pl
Джойстики и другие игровые манипуляторы >> Джойстики >> Мёртвая зона в середине каждой оси - зачем?
http://www.joysticks.ru/cgi-bin/yabb/YaBB.pl?board=joysticks;action=display;num=1395593643
(Тема начата пользователем: sm1 от 23.03.14 - 20:54)


Заголовок: Мёртвая зона в середине каждой оси - зачем?
Прислано пользователем: sm1 от 23.03.14 - 20:54
Купил джойстик Свен Агрессор - довольно солидный агрегат, 4 оси, 12 кнопок, виброотдача, мини-джойстик для взгляда. Начал пробовать - опаньки, неприятность: крайне непривычные, просто огромные мёртвые зоны в середине диапазона каждой оси, занимающие чуть ли не треть угла отклонения! Это что же, так и должно быть? И так на всех более-менее приличных джойстиках, что ли? В моём прежнем (простеньком, 3-осевом) управление по всем осям было полностью линейным, никакой ступенчатости в середине не наблюдалось.
Начал разбираться, вытащил из джойстика один из переменных резисторов, померил его омметром - и вправду, закон изменения сопротивления от угла поворота действительно имеет капитально нелинейный характер. Разобрал, и обнаружил, что действительно, в середине угольной дужки напылён металлом довольно широкий сектор, в пределах которого управляющее воздействие, сами понимаете, меняться не будет.
Но это ещё не всё! Заменил я этот резистор в одной из осей на обычный, линейный без всяких мёртвых зон. Пришлось изрядно потрудиться, чтобы подогнать конструктив (ось, корпус). Казалось бы, теперь никакой мёртвой зоны не должно быть - а она, скотина, хотя и поуже, но всё равно есть! Но теперь её делает контроллер, видимо, программно, поскольку она привязана точно к  половине напряжения питания резисторов. Избавиться от неё удалось только перекосом корпуса резистора, так чтобы весь диапазон перемещения движка оказался между концом дужки и её серединой (калибровка такое позволяет).
Вот и возник вопрос для профи (если тут они найдутся) - а нафига такое делается? Чем это плохо, я могу объяснить - ухудшается точность управления вблизи середины диапазона, ведь чтобы сдвинуть органы управления чуть-чуть, мне приходится отклонять джой на непропорционально большие углы. А вот чем это хорошо? Какая-то польза от мёртвых зон должна же быть, раз их ввели в конструкцию дважды - в контроллер и в резистор...

Заголовок: Re: Мёртвая зона в середине каждой оси - зачем?
Прислано пользователем: Zabl от 29.03.14 - 10:35
Теоритически, программные мёртвые зоны нужны для компенсации люфтов в механике. Зря ты назвал Свен Агрессор солидным агрегатом, один из самых  дешёвых с большим кол-вом кнопок. Да, корпус с ручкой удобные, но пружина жестковата, будет падать, если присоски не держат. Впрочем прочитай про мой Геймбёрд http://www.joysticks.ru/cgi-bin/yabb/YaBB.pl?board=joysticks;action=display;num=1324748752 ручки одинаковые, работа процессора одинаковая. Основанием только отличаются. У меня второй Свен Агрессор, так тоже его на оптику и Атмегу8 переделал.

Заголовок: Re: Мёртвая зона в середине каждой оси - зачем?
Прислано пользователем: sm1 от 30.03.14 - 00:06
Спорить здесь по поводу Свена не хочу, это будет оффтоп. А насчёт мёртвых зон - теория тут не катит, хотелось бы узнать, чем хороши они на практике.
Я ведь прогуглил насчёт мёртвых зон, и все отзывы, что нашёл - резко отрицательные, мёртвые зоны всем мешают, я тут не исключение. Тем не менее изготовители (я так понял - ВСЕ изготовители, верно?) продолжают гнать джойстики с мёртвыми зонами. ПОЧЕМУ?
Теперь о том, как избавиться. От той, что на переменных резисторах - понятное дело, никак, только заменой на нормальные. Но вот программные, заложенные в софт контроллера - тут сложнее. Я уже написал выше, что можно перекосить положение корпуса резистора так, чтобы рабочая зона расположилась между серединой и одним из концов дужки резистора, а затем скомпенсировать этот перекос калибровкой. Поскольку контроллер настроен на середину, то мёртвая зона при этом выводится за край рабочих углов отклонения. Но при этом джойстик становится сильно несимметричным. Да и с резистором это ещё можно, а как быть магнитным датчиком или с оптическим, как в твоём?

Заголовок: Re: Мёртвая зона в середине каждой оси - зачем?
Прислано пользователем: Zabl от 30.03.14 - 00:46
Тут уже у производителей спрашивать нужно, лично мне они мешают. Вроде на какой то Кобре, в последних моделях, мёртвую зону убрали. Этот контроллер однозначно в топку, у него и так очень мало "точек отсчёта", А если ещё половину "отключить", сместив ось. Это нехорошо для "игрушек" будет. Я со своим "оригинальным", помучился и поменял на Мджой.

Заголовок: Re: Мёртвая зона в середине каждой оси - зачем?
Прислано пользователем: sm1 от 08.04.14 - 00:39
К тому же пришёл и я, с той только разницей, что вместо MJoy прошил в контроллер прошивку MMJoy. Вот только при попытке повторения твоих датчиков у меня не заладилось. Впрочем, подробные вопросы по ним я задал в твоей теме про твой Геймбёрд.



Official Forum JOYSTICKS.RU » Powered by YaBB 1 Gold - SP 1.3.1!
YaBB © 2000-2003. All Rights Reserved.