Magners Опубликовано 10 июня, 2020 Поделиться Опубликовано 10 июня, 2020 Всем доброго времени суток! Уже достаточно давно я веду разработку программного обеспечения для контроллера игровых устройств, и поскольку я сам являюсь больше вирпилом, чем симрейсером, то блог разработки ведется на соответствующем форуме. Сегодня в честь релиза новой версии ПО я решил поделиться своей разработкой с вами, так как с появлением поддержки энкодеров высокого разрешения (пока что только одного) этот проект может стать интересным и виртуальным пилотам колесной техники) Думаю, многие из вас в курсе такого проекта, как OSH. Именно посмотрев на этот проект я решил создать FreeJoy, так как мне очень понравился дружелюбный интерфейс конфигуратора (поэтому интерфейс FreeJoy Configurator вам может показаться знакомым), но к сожалению у меня возникли проблемы с работой самого контроллера, и кроме этого он не имел многих функций, которые мне хотелось бы получить. Итак, на данный момент краткая сводка по функционалу FreeJoy: До 8 аналоговых осей До 128 кнопок и тумблеров До 4 хаток До 16 инкрементальных энкодеров (из них 1 с высоким разрешением) Функция преобразования положений осей в кнопки (до 12 кнопок на ось) Поддержка сдвиговых регистров 74HC165 и CD4021 для увеличения количества подключаемых кнопок; Поддержка цифровых датчиков Холла TLE5010/TLE5011, AS5600, MLX90393 (только интерфейс SPI); Поддержка внешних АЦП ADS1115 и MCP3201/02/04/08; 3 канала ШИМ для управления подсветкой; 24 светодиода (одиночные или в матрице), привязываемые к состояниям кнопок; Настройка имени устройства и других параметров USB; Удобная утилита для конфигурации; Обновление прошивки по USB; Сохранение и загрузка конфигурации устройства из файла. Кнопки и оси имеют весьма обширный выбор опций и настроек, более подробно со списком вы можете ознакомиться в wiki репозитории проекта. Ну а кому стало интересно - вот ссылки на скачивание актуальной версии прошивки для контроллера и установочник конфигуратора: Прошивка - https://github.com/FreeJoy-Team/FreeJoy/releases Конфигуратор - https://github.com/FreeJoy-Team/FreeJoyConfigurator/releases Ссылка на страницу проекта на github: https://github.com/FreeJoy-Team 4 Ссылка на комментарий
Buxou Опубликовано 10 июня, 2020 Поделиться Опубликовано 10 июня, 2020 Какая крутая штука, кажется придется делать себе штурвал... А в авиасимах на штурвале обязательно нужен фидбек? Ссылка на комментарий
Magners Опубликовано 10 июня, 2020 Автор Поделиться Опубликовано 10 июня, 2020 4 минуты назад, Buxou сказал: Какая крутая штука, кажется придется делать себе штурвал... А в авиасимах на штурвале обязательно нужен фидбек? Нет, не обязательно, я бы сказал, что он бывает даже редко. Но FFB у меня висит на самые ближайшие планы Ссылка на комментарий
Buxou Опубликовано 10 июня, 2020 Поделиться Опубликовано 10 июня, 2020 Только что, Magners сказал: Нет, не обязательно, я бы сказал, что он бывает даже редко. Так это еще проще сделать даже! Надо подумать, как сделать это без лазерной резки и не стереть руки пиля это напильником. Ссылка на комментарий
Basma4 Опубликовано 11 июня, 2020 Поделиться Опубликовано 11 июня, 2020 (изменено) @Magners Спасибо огромное !!! будем пробовать !!! в архивах не нашёл файл .exe для запуска конфигуратора.... и ещё вопрос - а как обстоят дела с шумами потенциометров? Почему спрашиваю, потому , что на MMOS и что на OSH_Studio ведут себя неадекватно, уменьшить шумы можно ферритами, но этого мало... всё равно остаются шумы... Изменено 11 июня, 2020 пользователем Basma4 не был внимателен Ссылка на комментарий
ZERgyt Опубликовано 11 июня, 2020 Поделиться Опубликовано 11 июня, 2020 У меня на grabcad пару проектов для летчиков есть. Но джойстик проще сделать с помощью чпу там просто 3 кусочка алюминия надо. Может как настроение будет спроектирую и этот софт попробую , а пока собрат так на mmjoy2. 1 Ссылка на комментарий
Buxou Опубликовано 11 июня, 2020 Поделиться Опубликовано 11 июня, 2020 2 часа назад, ZERgyt сказал: Но джойстик проще сделать с помощью чпу Вращал я эти чпу, в две конторы написал, рассчитали мне педали. В одной 10к, в другой 8к xD Ссылка на комментарий
Reksotiv Опубликовано 11 июня, 2020 Поделиться Опубликовано 11 июня, 2020 7 часов назад, Basma4 сказал: в архивах не нашёл файл .exe для запуска конфигуратора.... Устанавливать через Install.bat 7 часов назад, Basma4 сказал: и ещё вопрос - а как обстоят дела с шумами потенциометров? Почему спрашиваю, потому , что на MMOS и что на OSH_Studio ведут себя неадекватно, уменьшить шумы можно ферритами, но этого мало... всё равно остаются шумы... Если будут шуметь, можно попробовать настроить Dynamic Deadband или Filter. В вики подробнее написано https://github.com/FreeJoy-Team/FreeJoyWiki/blob/master/rus/Настройка-осей.md Ссылка на комментарий
Magners Опубликовано 11 июня, 2020 Автор Поделиться Опубликовано 11 июня, 2020 (изменено) 9 часов назад, Basma4 сказал: как обстоят дела с шумами потенциометров? На данный момент по моим измерениям внутренний АЦП выдает около 10бит эффективного разрешения, что очень хорошо для 12битного АЦП. Если применить фильтрацию, то можно поднять эффективное разрешение до 11 бит, пожертвовав временем отклика. До 3-го уровня фильтрации (из 7) время отклика почувствовать практически невозможно. Вот тут можно примерно оценить шумы, но с тех пор качество измерения ещё немного подросло. Изменено 11 июня, 2020 пользователем Magners 1 Ссылка на комментарий
Basma4 Опубликовано 12 июня, 2020 Поделиться Опубликовано 12 июня, 2020 @Magners Доброго времени суток, есть желание подключить кнопки(с фиксацией) со светодиодами, каков порядок подключения (схема) например для таких кнопок Ссылка на комментарий
Magners Опубликовано 12 июня, 2020 Автор Поделиться Опубликовано 12 июня, 2020 (изменено) 3 часа назад, Basma4 сказал: каков порядок подключения У проекта есть достаточно подробное wiki, поддерживаемое сообществом. Помимо прочего там описаны разные варианты подключения и настроек кнопок. UPD. Что касается светодиодов, то обычно для них на кнопках есть просто отдельные выводы под питание, а земля общая с кнопкой. То есть надо подключить кнопку как обычную Button_GND, а питание светодиода к 3.3В или 5В. Но это может зависеть от конкретноц модель кнопки, нужно смотреть документацию (или хотя бы обозначения на корпусе). Также светодиоды можно завязывать на состояния кнопок, но в этом случае это вряд ли актуально, так как кнопка сама зажигает/гасит светодиод Изменено 12 июня, 2020 пользователем Magners 1 Ссылка на комментарий
Basma4 Опубликовано 12 июня, 2020 Поделиться Опубликовано 12 июня, 2020 @Magners ещё раз Огромное спасибо!!! надеюсь вы на этом не останавливаетесь? те кнопки которые на фото - они с тремя положениями : 1-Off , 2-On(фикс) , 3-On(без фикс) , вроде так... они идеально подходят для симуляторов транспорта (зажигание+стартер) Ссылка на комментарий
Magners Опубликовано 12 июня, 2020 Автор Поделиться Опубликовано 12 июня, 2020 2 часа назад, Basma4 сказал: @Magners ещё раз Огромное спасибо!!! надеюсь вы на этом не останавливаетесь? те кнопки которые на фото - они с тремя положениями : 1-Off , 2-On(фикс) , 3-On(без фикс) , вроде так... они идеально подходят для симуляторов транспорта (зажигание+стартер) Посмотрите активность на гитхабе и увидите, что проект не стоит на месте) более того сообщество (в том числе и симрейсерское) также принимает участие в разработке, что очень приветствуется. Для настройки кнопок есть очень много возможностей, этот функционал пилился очень скрупулёзно в течение не одного месяца Ссылка на комментарий
Tumbler Опубликовано 23 июня, 2020 Поделиться Опубликовано 23 июня, 2020 (изменено) 11.06.2020 в 4:46 PM, Basma4 сказал: и ещё вопрос - а как обстоят дела с шумами потенциометров? Я лениво переполз с OSH на данную прошивку и на первый взгляд шумов стало значительно меньше (10 бит с фильтрацией 1 уровня). В этой прошивке более гибкие настройки. Можно и динамическую мертвую зону сделать, но для себя решил мириться с микрошумом, чем потерять контроль. @Magners У вас в вики написано, что номинал потенциометра - 10 кОм. А что будет, если подключить 25 кОм, например? Изменено 23 июня, 2020 пользователем Tumbler Ссылка на комментарий
Reksotiv Опубликовано 23 июня, 2020 Поделиться Опубликовано 23 июня, 2020 4 часа назад, Tumbler сказал: У вас в вики написано, что номинал потенциометра - 10 кОм. А что будет, если подключить 25 кОм, например? Потенциометр от 10к до 100к это норма, но чем больше общее сопротивление, тем больше шумит. 1 Ссылка на комментарий
Magners Опубликовано 23 июня, 2020 Автор Поделиться Опубликовано 23 июня, 2020 5 часов назад, Tumbler сказал: Я лениво переполз с OSH на данную прошивку и на первый взгляд шумов стало значительно меньше (10 бит с фильтрацией 1 уровня). В этой прошивке более гибкие настройки. Можно и динамическую мертвую зону сделать, но для себя решил мириться с микрошумом, чем потерять контроль. @Magners У вас в вики написано, что номинал потенциометра - 10 кОм. А что будет, если подключить 25 кОм, например? С фильтрами можно особо не мелочиться, вплоть до 3го уровня их не почувствовать (1 и 2 уж точно). Вот тут снимали переходную характеристику (реакцию на моментальное изменение входа оси с 0% до 100%) для фильтров всех уровней. У меня где-то были собственные такие измерения (с аналогичными результатами), но что-то не могу найти.. С такой скоростью изменить сигнал на входе не позволит ни одна механика оси (если это не просто кнопка), поэтому на графике максимально возможные недостижимые в реальной жизни времена реакции оси на изменение входа. По потенциометрам: с увеличением сопротивления увеличивается также подверженность тепловым шумам, но слишком малое тоже нельзя, чтобы не текли большие токи. Как сказано выше, оптимальный диапазон 10К-100К. Ссылка на комментарий
Basma4 Опубликовано 24 июня, 2020 Поделиться Опубликовано 24 июня, 2020 @Tumbler отрыл всё таки схему Logitech G25/27 , и увидел , что между потенциометров и самой микросхемы стоят керамические(SMD) конденсаторы номиналом 0,1мкф . Так что , будем ставить и на MMoS... Ссылка на комментарий
Reksotiv Опубликовано 25 июня, 2020 Поделиться Опубликовано 25 июня, 2020 Пример руля на этом контроллера. Ещё в процессе разработки, многое будет переделано, например четыре белых "крутилки". В сумме 88 кнопок, 12х4 с центральных галетников, 8х2 с боковых DIF IN и BB, 2х2 с двух энкодеров рядом с большим пальцем, остальные с тумблеров и обычных кнопок. С помощь шифтов можно увеличить до 128. Скрытый текст 1 Ссылка на комментарий
Basma4 Опубликовано 22 июля, 2020 Поделиться Опубликовано 22 июля, 2020 (изменено) 23.06.2020 в 2:04 PM, Tumbler сказал: но для себя решил мириться с микрошумом, чем потерять контроль. всё таки переборол эти шумы вчистую!!! Сначала разобрал потенциометры и почистил(протёр c WD40), далее всё равно остались шумы(не так как было, скажем наполовину), потом добавил по вышеуказанной схеме конденсаторы (керамические, шумодав) и всё, всё вылечилось... так что, кондёры необходимы, так как их нет на платах STM32/Arduino ... Изменено 22 июля, 2020 пользователем Basma4 Ссылка на комментарий
Basma4 Опубликовано 5 ноября, 2020 Поделиться Опубликовано 5 ноября, 2020 @Magners исправьте в прошивке подключения энкодеров!!! При оборотах в любую сторону , сигнал принимается лево-право, то есть - я кручу на право, то сигнал приходит как будто две кнопки нажимаются по очереди , а не как надо.... пришлось из-за этого вернуться на Osh Studio.... Ссылка на комментарий
Reksotiv Опубликовано 19 ноября, 2020 Поделиться Опубликовано 19 ноября, 2020 05.11.2020 в 6:44 PM, Basma4 сказал: исправьте в прошивке подключения энкодеров Попробуй последнюю версию v1.6.2b4 https://github.com/FreeJoy-Team/FreeJoy/releases Ссылка на комментарий
lenynnn Опубликовано 26 ноября, 2020 Поделиться Опубликовано 26 ноября, 2020 Спасибо за вашу работу! Использовал эту прошивку, при создании своей баранки. 1 Ссылка на комментарий
Basma4 Опубликовано 6 апреля, 2021 Поделиться Опубликовано 6 апреля, 2021 (изменено) 19.11.2020 в 10:46 PM, Reksotiv сказал: Попробуй последнюю версию v1.6.2b4 https://github.com/FreeJoy-Team/FreeJoy/releases Все версии попробовал, на всех болячка одна и та же, скачивал до последней версии 1.7.0b3. Если не трудно, установите OSH и подключите энкодеры, и поймёте о чём я, на OSH энкодеры чётко отрабатывают каждое положение, направо значит направо, налево значит налево...Жаль, что на эту функцию мало внимание выделили... P.S.: Думал что стмка может глючит, но на 4 платах(разные продавцы и разные ревизии) попробовал, и на всех одинаково.... Изменено 6 апреля, 2021 пользователем Basma4 Ссылка на комментарий
lenynnn Опубликовано 6 апреля, 2021 Поделиться Опубликовано 6 апреля, 2021 1 час назад, Basma4 сказал: на OSH энкодеры чётко отрабатывают каждое положение, направо значит направо, налево значит налево...Жаль, что на эту функцию мало внимание выделили... Странно. У меня на двух баранках, причём, с разными версиями прошивки - работает нормально, несмотря на то, что стоят дешёвые китайские энкодеры. А OSH так и не смог запустить. Ссылка на комментарий
Basma4 Опубликовано 7 апреля, 2021 Поделиться Опубликовано 7 апреля, 2021 21 час назад, lenynnn сказал: Странно. У меня на двух баранках, причём, с разными версиями прошивки - работает нормально, несмотря на то, что стоят дешёвые китайские энкодеры. А OSH так и не смог запустить. Не спорю, если ты не видел как на OSH работают, тебя может и устраивает. И у меня тоже дешёвые китайские энкодеры. Но факт остаётся фактом! На счёт других функций у FreeJoy всё на высоте, назначений кнопок как надо и тд и тп .... надо будет для сравнения видео сделать, но смысла не вижу, так как автор темы похоже покинул этот форум... Ссылка на комментарий
Рекомендуемые сообщения