Беспроводной джойстик от PlayStation, Arduino

Если у вас есть беспроводной джойстик от PlayStation, или без "хозно" валяется у какого то старого друга.. Тогда вы сможете подключить его к Arduino и управлять своими поделками. Для этого вам не понадобится USB Host. В данной инструкции используется аналог беспроводного джойстика от PS3.

Необходимые компоненты:

1. Беспроводной PS3 джойстик с радиоприемником.
2. Провода 6 шт.
3. Разъёмы.
4. Вилка штыревая.
5. Arduino Uno или Mega.

Подключение PS3 джойстика к Ардуино:

1. Изготовление проводов.

Возьмите провода, я использовал «джамперы» из набора. К одному концу припаяйте разъём, если нет одинарных, тогда отрежьте неиспользуемую часть разъема. Так как контакты в радиомодуле толстые, вам придётся увеличить отверстие в разъеме. Если вы используете простые провода, тогда к другому концу припаяйте штыревую вилку. У вас должен получиться вот такой провод.



Для корректной работы джойстика вам понадобится добавить как минимум два резистора. Это связано с тем, что радиомодуль работает от 3.3В, а рабочее напряжение на пинах Ардуино Уно и Мега 5В. Сам автор библиотеки пишет, что у одних пользователей работает с резисторами, у других без резисторов. В моем случае, ниже указанная схема самая стабильная.

Для пинов Command и Clock добавьте резисторы номиналом 5.6 КОм. Провода будут выглядеть так.



Радиомодуль с подключенными проводами.



2. Подключение радиомодуль к Ардуино:

Распиновка радиомодуля от PS3 джойстика (обозначены только нужные нам пины):



Подключите провода к указанным пинам на приемнике. После этого, подключите приемник к Ардуино по следующей схеме. Пины на Ардуино можно будет изменить в скетче.



Настройка и запуск программы для работы с джойстиком:

1. Скачайте и установите библиотеку PS2X_lib
2. Откройте пример из библиотеки. Если вам нужен пример с комментариями на русском языке скачайте его тут У вас нет доступа к скачиванию файлов с нашего сервера
3. Настройте нужные вам пины в скетче.
4. Загрузить скетч на Ардуино.
5. Откройте монитор портов
6. Библиотека не поддерживает подключение на горячую, по этому если радиомодуль не переходит в режим поиска вам нужно: Отключить питание от радиомодуля, затем подключить питание снова снова. При необходимости перезагрузить ардуино кнопкой ресет.
7. Включите джойстик. Некоторые клоны джойстиков могут не работать или работать не правильно. Возможно вам поможет отключение проверки ошибок.
if(error == 1)
- Проверка ошибок. Если ваш джойстик обнаруживается как неизвестный контроллер, но на нажатия кнопок не реагирует, попробуйте в скетче закрыть комментариями две строки. Выглядеть это будет примерно так:

// if(error == 1) //Цикл «loop» пропускается если джойстик не найден
// return;


Применение:

Сделал для вас готовую программу для управления машиной с двумя моторами. Но в скетче вам возможно придется поменять некоторые данные, так как подключение моторов может отличаться. Скачать скетч для управление машиной беспроводным джойстиком от PlayStation - У вас нет доступа к скачиванию файлов с нашего сервера

Видео с демонстрацией управления машинкой при использовании беспроводного джойстика и данного кода.


Источник: robocontroller.ru

0 комментариев

Ваше имя: *
Ваш e-mail: *
Войти через
  • bowtiesmilelaughingblushsmileyrelaxedsmirk
    heart_eyeskissing_heartkissing_closed_eyesflushedrelievedsatisfiedgrin
    winkstuck_out_tongue_winking_eyestuck_out_tongue_closed_eyesgrinningkissingstuck_out_tonguesleeping
    worriedfrowninganguishedopen_mouthgrimacingconfusedhushed
    expressionlessunamusedsweat_smilesweatdisappointed_relievedwearypensive
    disappointedconfoundedfearfulcold_sweatperseverecrysob
    joyastonishedscreamtired_faceangryragetriumph
    sleepyyummasksunglassesdizzy_faceimpsmiling_imp
    neutral_faceno_mouthinnocent
Введите два слова, показанных на изображении:
© 2010-2017 Все права соблюдены.