Настройка джойстика
- Войдите на сайт для отправки комментариев
Ср, 15/01/2014 - 01:04
Доброго времени суток! Хочется реализовать некий проект на Ардуино, но появились не которые затруднения.
Цель: (Грубо говоря) машинку на пулте управления(в качестве пульта выступает джойстик)
И как этот джойстик запрограмировать, что бы с его помощью можно было управлять машинкой.
Заранее спасибо за помощь!
И как этот джойстик запрограмировать
Начните с этого.
А тут вы найдете большинство ответов по коду.
Раз вам трудно, я за вас погуглил http://cxem.net/arduino/arduino68.php http://arduino.cc/en/Tutorial/JoyStick
Когда с джойстиком разберётесь, то легко найдёте, как с помощью ардуино и джойстика управлять dc мотором, серво и шаговиком. А потом задавайте вопросы, если что то не получается.
Удачи.
Чтоб не пладить темы, спрошу тут :)
В общем, подвижный сектор джойстика примерно 120 градусов, но пределы показаний достигаются примерно на половине хода.
Как понизить чувствительность и растянуть рабочий сетор от края до края?
А что, map уже не помогает?
map помогает, но беда в том, что чувствительность сильная. Чуть тронул и уже в "пределе", хотя до физического предела еще давить и давить.
Вот и спрашиваю, есть ли метода растянуть сектор действия у джойстика?
Есть
Разумеется настроить джойстик, а точнее написать в программе блок который переводит значение получаемое с джойстика в значение необходимое для управление. Составьте таблицу соответсвия и нарисуйте на листе бумаги график.
ПС: Скорее у вас с алгеброй хорошо, но почему-то без знаний алгебры ничего не получается.
Есть
Спасибо! Я так и думал!
vdm, так Вам значит никто не помог ? :)
испытаю туже проблему... физический диапазон очень небольшой... и джойстик получается сверх чувствителен... пограничные значения получаю сдвинув стик меньше чем на половину допустимого смещения.
Вам удалось разобраться?
Единственный способ - заменить переменные резисторы на джойстике. Потому как те, что там стоят, имеют очень маленький угол хода 0-100%.
Единственный способ - заменить переменные резисторы на джойстике. Потому как те, что там стоят, имеют очень маленький угол хода 0-100%.
вот это поворот... я проверил, все три имеют такую чувствительность... т.е. можно сказать, что они бракованные?
это вообще реально разобрать без потерь? там с виду только отпаять по три ножки для каждого резистора... но как устроено крепление - это не очевидно на первый взгляд.
а если менять, то на какие конкретно? не кинете ссылкой?
P.S.
вообще странно это всё :(
там угол поворота 20 гр на сторону.что из него вы хотите вытащить))))
vdm, так Вам значит никто не помог ? :)
испытаю туже проблему... физический диапазон очень небольшой... и джойстик получается сверх чувствителен... пограничные значения получаю сдвинув стик меньше чем на половину допустимого смещения.
Вам удалось разобраться?
Да, я пришел к логическому выводу, что существующие ардуино-стики - сущее гумно. Ничего вразумительного от них не добиться. Нужно полностью менять кинематику и уходить на более "профессиональные" джойстики.
там угол поворота 20 гр на сторону.что из него вы хотите вытащить))))
Так, еще раз про проблему )
Я хочу чтобы в крайних физических положениях я получал крайние цифры, т.е. напримео по Х-у в крайнем левом был Ноль, а в крайнем правом 1023.
Сейчас же я получаю Ноль чуть отклонив влево, и 1023 чуть отклонив вправо.
Инет наполнен видео роликами, где народ крутит джойстик и мягко управляет сервами в 2ух осном крепеже... я хочу также ).
vdm, так Вам значит никто не помог ? :)
испытаю туже проблему... физический диапазон очень небольшой... и джойстик получается сверх чувствителен... пограничные значения получаю сдвинув стик меньше чем на половину допустимого смещения.
Вам удалось разобраться?
Да, я пришел к логическому выводу, что существующие ардуино-стики - сущее гумно. Ничего вразумительного от них не добиться. Нужно полностью менять кинематику и уходить на более "профессиональные" джойстики.
Какой выбрали джойстик?
Это фантастика!
К сожалению, пока никакой... На работе оптимизировали отдел, из 11 человек осталось 4... Так что пока не до джойстиков
Какой выбрали джойстик?
Попробуйте какой-нибудь геймпад расковырять. Может там что-нибудь получше. Расскажете :)
там угол поворота 20 гр на сторону.что из него вы хотите вытащить))))
не надо "еще раз". Вы, видимо, не поняли. что вам написали.
Перевожу - в джойстике стоят переменники, в которых максимальное сопротивление достигается уже при повороте на маленький угол, а весь последующий физический ход уже ничего не меняет. Это аппаратная особенность, понимаете?
никакими программными трюками этого не поправить. Либо менять (физически менять) переменники в джойстике, либо искать другой. более качественный джойстик.
никакими программными трюками этого не поправить. Либо менять (физически менять) переменники в джойстике, либо искать другой. более качественный джойстик.
Можно поправить программными трюками. Например - джойстик сразу достигает максимума, а программно, в зависимости от времени удержания, добавляются значения. Так же и обратный ход. Но скорость такого джойстика будет зависить от программных установок времени. По хорошему получится 4 кнопки.
никакими программными трюками этого не поправить. Либо менять (физически менять) переменники в джойстике, либо искать другой. более качественный джойстик.
Можно поправить программными трюками. Например - джойстик сразу достигает максимума, а программно, в зависимости от времени удержания, добавляются значения. Так же и обратный ход. Но скорость такого джойстика будет зависить от программных установок времени. По хорошему получится 4 кнопки.
по хорошему тут и джойстик не нужен - только кнопки оставить и все :)
Коллеги, спасибо за советы!
Сегодня прикупил еще два, попробую, может дело в конкретных экземплярах ), но чтото мало верится )
Отпишусь...
Ежики плакали, кололись, но продолжали есть кактус.
Я вот такие планирую заказать:
https://ru.aliexpress.com/item/Radio-rocker-1pair-Pair-Transmitter-Gimba...
новые джойстики ведут себя также... минус в том, что они выглядят точно также как и ранее проверяемые... :(
видать с одной Али продавца тянутые :(
в общем по X вроде бы лучше, но по Y таже история :(
На работе покупали джойстики (10 шт), но было пофиг на характеристики, та кдля удобства как 4 кнопки. Пришло три разновидности, от Robotdin arduino и еще какое-то г-но. Так во всех одно и тоже - узкий диапазон. Скорее всего подойдет https://voron.ua/catalog/024755 что-то подобное им (не знаю откуды вы), крепление там защелка входит в прорезь резистора.
Но крайние положения не будут соответствовать 0-1023, без специальных мер, например
Вот нутряк родного резистора
PS. Если не забуду, завтра посмотрю что за резисторы стоят в джойстике геймпада (валяется на работе).
На работе покупали джойстики (10 шт), но было пофиг на характеристики, та кдля удобства как 4 кнопки. Пришло три разновидности, от Robotdin arduino и еще какое-то г-но. Так во всех одно и тоже - узкий диапазон. Скорее всего подойдет https://voron.ua/catalog/024755 что-то подобное им (не знаю откуды вы), крепление там защелка входит в прорезь резистора.
Но крайние положения не будут соответствовать 0-1023, без специальных мер, например
Вот нутряк родного резистора
PS. Если не забуду, завтра посмотрю что за резисторы стоят в джойстике геймпада (валяется на работе).
Не подойдет.
1. У него ход 270 градусов,
2. Рабочий ход 240 градусов, в нужно 60, максимум 90.
3. Ну и вишенка на торте... Время жизни - 200 циклов...
Data Sheet
Если заморачиваться с заменой потенциометров, то нужно что-то типа такого:
https://ru.aliexpress.com/item/WF-WRB1338N-AV-10F-B5K-B502-B5K-Potentiom...
Очень похоже на то, что ставится на "большие" джойстики. Но ценник...
Выходит ошибка:
Для начала четко по-русски написать, чего Вы хотите добиться.
А потом сравнить то, что написано по-русски, с тем, что написано на Си++.
Строки с 28 по 43 должны находится внутри функции loop() (в теле функции), а они у вас снаружи.
Строки с 28 по 43 должны находится внутри функции loop() (в теле функции), а они у вас снаружи.
Я сделал то что вы говорили, скетч загрузился но программа не работает
Это потому, что не сделали того, что написано в №27.
Я хочу управлять серво приводом с помощью джойстика.
(Язык не С++ а ардуино 1.0.6)