MAL4X Научно-технический форум разработчиков симуляторов и автоматики


Симуляторы перегрузок. DIY электроника. ЭВМ. Компьютерные сети.
Up

2DOF sim от SimAl

Строим реалистичный симулятор перегрузок своими руками. Рекомендации. Советы.

Модераторы: Death_Morozz, null, Ale

Re: 2DOF sim от SimAl

Сообщение Константин » 18 дек 2013, 23:06

Ок, спасибо за ответ. А зачем ещё заказывал, есть же вроде?
Константин
Новичок
 
Сообщения: 12
Зарегистрирован: 17 дек 2013, 14:27
Благодарил (а): 3 раз.
Поблагодарили: 0 раз.
Баллы репутации: 0

Re: 2DOF sim от SimAl

Сообщение SimAl » 19 дек 2013, 00:19

Константин писал(а):Ок, спасибо за ответ. А зачем ещё заказывал, есть же вроде?
Пока "про запас". Прикольные штуки. :)

Немного переделал механику - уменьшил рычаг. Увеличилась амплитуда. Также настроил DIRT2 через SimTools. В DIRT трясет значительно веселее, чем LFS. По моим ощущениям больше уже просто не нужно. Можно еще ремни приспособить, а то игрок пытается скомпенсировать с таким трудом добытый эффект при помощи туловища.
Сделал новое видео. Вот сейчас заметил, что на буржуйском сайте его выложил, а здесь нет. Перед началом и после гонки в игре происходит какой-то расколбас, можно видеть как трясет кресло. Вот:
phpBB [video]

Скрытый текст
phpBB [video]
phpBB [video]
phpBB [video]
phpBB [video]
Аватара пользователя
SimAl
SIMER
 
Сообщения: 379
Зарегистрирован: 22 ноя 2013, 20:03
Откуда: Кропивницкий
Благодарил (а): 58 раз.
Поблагодарили: 258 раз.
Баллы репутации: 128
ТехнарьТехнарь

Re: 2DOF sim от SimAl

Сообщение Константин » 22 дек 2013, 03:30

SimAl писал(а):Перед началом и после гонки в игре происходит какой-то расколбас, можно видеть как трясет кресло. Вот:

Да уж расколбас и правда странный, надеюсь получится от него избавится.
Константин
Новичок
 
Сообщения: 12
Зарегистрирован: 17 дек 2013, 14:27
Благодарил (а): 3 раз.
Поблагодарили: 0 раз.
Баллы репутации: 0

Re: 2DOF sim от SimAl

Сообщение SimAl » 22 дек 2013, 09:37

Константин писал(а):Да уж расколбас и правда странный, надеюсь получится от него избавится.
Он не то чтобы странный, он просто не нужен. Это следствие движение машины на старт. Просто в это время игрок ей не управляет. Думаю от него можно избавиться используя X-SIm. Если игра выдает время прохождения на круге, нужно запретить движение кресла пока это время не пошло. SimTools, который я сейчас применяю, не позволяет получить время на круге и использовать условия. Может попробовать написАть автору плагина?
Аватара пользователя
SimAl
SIMER
 
Сообщения: 379
Зарегистрирован: 22 ноя 2013, 20:03
Откуда: Кропивницкий
Благодарил (а): 58 раз.
Поблагодарили: 258 раз.
Баллы репутации: 128
ТехнарьТехнарь

Re: 2DOF sim от SimAl

Сообщение Ale » 22 дек 2013, 10:57

SimAl писал(а):Может попробовать написАть автору плагина?

Обязательно. Прямо на форуме в ветке плагина... Если хочешь, я могу это сделать.
Аватара пользователя
Ale
Разработчик
 
Сообщения: 1477
Зарегистрирован: 01 фев 2011, 20:48
Откуда: Дубна
Благодарил (а): 570 раз.
Поблагодарили: 595 раз.
Баллы репутации: 277
ТехнарьТехнарьТехнарь

Re: 2DOF sim от SimAl

Сообщение SimAl » 23 дек 2013, 00:49

Ale писал(а):
SimAl писал(а):Может попробовать написАть автору плагина?

Обязательно. Прямо на форуме в ветке плагина... Если хочешь, я могу это сделать.
У меня с английским не очень. Напиши, если считаешь нужным. В принципе это не баг, но думаю этот эффект действительно стОит убрать. Я вот тут видео наснимал в котором видно, что значение в СимТулз меняются, хотя машина еще не стартовала. Возможно это касается всех игр от Кодмастерс.
Только нужно качество максимальное выбрать, чтобы цифры были видны.
phpBB [video]
Аватара пользователя
SimAl
SIMER
 
Сообщения: 379
Зарегистрирован: 22 ноя 2013, 20:03
Откуда: Кропивницкий
Благодарил (а): 58 раз.
Поблагодарили: 258 раз.
Баллы репутации: 128
ТехнарьТехнарь

Re: 2DOF sim от SimAl

Сообщение Ale » 23 дек 2013, 06:37

Уже написал, обсуждаем.
Аватара пользователя
Ale
Разработчик
 
Сообщения: 1477
Зарегистрирован: 01 фев 2011, 20:48
Откуда: Дубна
Благодарил (а): 570 раз.
Поблагодарили: 595 раз.
Баллы репутации: 277
ТехнарьТехнарьТехнарь

Сообщение Omen106 » 28 авг 2014, 07:29

Добрый день. Можно подробней о реализации в МК пропорционального регулятора? Это именно П-регулятор или ПИД-регулятор?
Omen106
Новичок
 
Сообщения: 14
Зарегистрирован: 24 авг 2014, 13:08
Благодарил (а): 7 раз.
Поблагодарили: 1 раз.
Баллы репутации: 0

Re:

Сообщение SimAl » 28 авг 2014, 09:02

Omen106 писал(а):Добрый день. Можно подробней о реализации в МК пропорционального регулятора? Это именно П-регулятор или ПИД-регулятор?

Именно пропорциональный. Интегральной и дифференциальной части нет. Изначально они задумывались, но в процессе гугления на тему настройки ПИД регулятора, я вычитал что для сервопривода дифференциальная составляющая особо ничего не дает, а интегральная лишь добавляет немного точности. Поскольку у меня сервопривод, а точность в этом случае не нужна, я решил забить.

В плане работы ничего особенного: берется значение из АЦП (текущее положение, снимается с потенциометра на оси сервы), вычитается из необходимого положения, умножается на некоторый коэффициент, подобранный методом тыка, и результат отправляется на ШИМ, управляющий двигателем

Вообще у меня были планы переписать это все под другой контроллер (предположительно stm32f103) с хардварным USB, RTOS, ПИД регулятором, софтом для ПК для настройки всего этого добра и прочими плюшками, но, поскольку насущной необходимости в этом нет, (пока) забросил.
Аватара пользователя
SimAl
SIMER
 
Сообщения: 379
Зарегистрирован: 22 ноя 2013, 20:03
Откуда: Кропивницкий
Благодарил (а): 58 раз.
Поблагодарили: 258 раз.
Баллы репутации: 128
ТехнарьТехнарь

Re: 2DOF sim от SimAl

Сообщение Omen106 » 31 авг 2014, 08:50

SimAl писал(а):В плане работы ничего особенного: берется значение из АЦП (текущее положение, снимается с потенциометра на оси сервы), вычитается из необходимого положения, умножается на некоторый коэффициент, подобранный методом тыка, и результат отправляется на ШИМ, управляющий двигателем

Я правильно понял, чем больше отклонение текущего положения от требуемого, тем больше значение ШИМ, и тем быстрей двигатель стремится занять его, и наоборот, чем меньше отклонение, тем медленнее двигатель поворачивает? Если так, то не возникает проблем, когда при небольших углах отклонения двигателю не хватает напряжения чтобы повернуть и он начинает просто гудеть и греться? Или этот подобранный коэффициент все компенсирует?
Omen106
Новичок
 
Сообщения: 14
Зарегистрирован: 24 авг 2014, 13:08
Благодарил (а): 7 раз.
Поблагодарили: 1 раз.
Баллы репутации: 0

Re: 2DOF sim от SimAl

Сообщение Ale » 31 авг 2014, 09:49

Omen106 писал(а):Если так, то не возникает проблем, когда при небольших углах отклонения двигателю не хватает напряжения чтобы повернуть и он начинает просто гудеть и греться? Или этот подобранный коэффициент все компенсирует?

Для устранения подобного эффекта обычно вводится некая "мертвая зона" - на небольших отклонениях двигатель просто не управляется.
Аватара пользователя
Ale
Разработчик
 
Сообщения: 1477
Зарегистрирован: 01 фев 2011, 20:48
Откуда: Дубна
Благодарил (а): 570 раз.
Поблагодарили: 595 раз.
Баллы репутации: 277
ТехнарьТехнарьТехнарь

Re: 2DOF sim от SimAl

Сообщение Omen106 » 31 авг 2014, 11:42

Спасибо за ответы, теперь более менее все понятно. Кстати, monster moto shield справился бы с такими двигателями? Выглядит вроде совсем хило, но характеристики для такого размера впечатляют, особенно то, что такие тонкие дорожки при скачках до 30А не выгорают на печатной плате..
Omen106
Новичок
 
Сообщения: 14
Зарегистрирован: 24 авг 2014, 13:08
Благодарил (а): 7 раз.
Поблагодарили: 1 раз.
Баллы репутации: 0

Re: 2DOF sim от SimAl

Сообщение SimAl » 31 авг 2014, 15:08

Omen106 писал(а):Я правильно понял, чем больше отклонение текущего положения от требуемого, тем больше значение ШИМ, и тем быстрей двигатель стремится занять его, и наоборот, чем меньше отклонение, тем медленнее двигатель поворачивает? Если так, то не возникает проблем, когда при небольших углах отклонения двигателю не хватает напряжения чтобы повернуть и он начинает просто гудеть и греться? Или этот подобранный коэффициент все компенсирует?
Во-первых, как правильно заметил Ale, есть мертвая зона. Во-вторых ограничен минимальный уровень тока, поступающего на двигатель, т.е. если двигатель запитан, то этого тока должно хватать для вращения. В-третьих такая ситуация в процессе эксплуатации возникает не часто, поскольку кресло практически всегда в движении -- оно редко останавливается, разве что после заезда, но эту проблему можно легко решить вырубая питание двигателей после того, как сигнал от компьютера перестал изменяться. В-четвертых раз уж ток так мал, что не способен покрутить двигатель, то особо он двигатель и не нагреет, а значит можно забить.

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

Про шилд ничего не скажу, не сталкивался, но не вижу проблем, чтобы он не выдержал такой ток, у него вся нижняя сторона одна большая дорожка. Кроме того, мост с ограничением тока.
Аватара пользователя
SimAl
SIMER
 
Сообщения: 379
Зарегистрирован: 22 ноя 2013, 20:03
Откуда: Кропивницкий
Благодарил (а): 58 раз.
Поблагодарили: 258 раз.
Баллы репутации: 128
ТехнарьТехнарь

Re: 2DOF sim от SimAl

Сообщение Omen106 » 02 сен 2014, 13:06

А какой примерно формат посылки от x-sim контроллеру для такого симулятора? там вроде любой формат задать можно, какой у вас получился? Чтобы было примерно на что ориентироваться.
Omen106
Новичок
 
Сообщения: 14
Зарегистрирован: 24 авг 2014, 13:08
Благодарил (а): 7 раз.
Поблагодарили: 1 раз.
Баллы репутации: 0

Re: 2DOF sim от SimAl

Сообщение SimAl » 02 сен 2014, 14:02

Omen106 писал(а):А какой примерно формат посылки от x-sim контроллеру для такого симулятора? там вроде любой формат задать можно, какой у вас получился? Чтобы было примерно на что ориентироваться.

Поскольку я сам писАл парсер, я придумал максимально простой, на мой взгляд, формат: одна латинская буква и следующая за ней цифра. Буква определяет параметр, который будет задаваться, цифра указывает значение. Например A100B200 указывает установить первую серву в позицию 100, вторую в позицию 200. За посылкой должен следовать еще один произвольный символ (но не цифра), чтобы определить конец сообщения. Таким образом задается (или по крайней мере задумано) множество параметров, в том числе коэффициенты. Ответ компьютеру приходит в похожем (или том же) формате.

Но я бы рекомендовал взять какую-то готовую прошивку для Ардуино и не изобретать велосипед.
Аватара пользователя
SimAl
SIMER
 
Сообщения: 379
Зарегистрирован: 22 ноя 2013, 20:03
Откуда: Кропивницкий
Благодарил (а): 58 раз.
Поблагодарили: 258 раз.
Баллы репутации: 128
ТехнарьТехнарь

Пред.След.

Вернуться в X-SIMULATOR и RU-SIMULATOR & SimTools

Кто сейчас на конференции

Сейчас этот форум просматривают: Google [Bot] и гости: 217

cron
x

#{title}

#{text}