Последняя редакция: 07.08.2017
В разработке. Завершился сезон 2017! Продуктивно продолжается очередной 2016 сезон. Читаем ветки, будем обобщать и складывать сюда!
- Краткая вводная часть, техническое задание (Intro):
Сверхзадача проекта - заставить симера поверить, что он пилот болида F1 или пилот (же) штурмовика Ил-2.
Задача проекта: Реализация реалистичного симулятора перегрузок.
---
Симуляторы разные, например (кратко про количество осей, ведущее к):
2-DOF
3-DOF
Multi-DOF
Актуаторные - Что нужно для того, чтобы сделать свой симулятор? (How I make It):
1 - Компьютер с ИГРОЙ - симулятором;
2 - Программа, извлекающая данные из игры и посылающая команды контроллеру (см. ПО.);
3 - Контроллер, управляющий моторами симулятора (см. Контроллер);
4 - "Силовой" преобразователь сигналов с контроллера (H-bridge) в напряжение на моторах (см. Полумост)
5 - Силовой блок питания
6 - Моторы (см. Моторы);
7 - Кресло пилота (автомобильное в самый раз, от реальной спортивной машины выйдет дешевле, чем геймстул); - Программное обеспечение ПО (Software):
Пока разрабатывается ПО RU-SIMULATOR, симеры используют ПО X-SIMULATOR (версия 2).
Почему не X-SIMULATOR 3 - потому что он бесплатный только в случае постоянного подключения к Инету.
"Автономная" версия X-SIMULATOR 3 платная.
ВНИМАНИЕ! В данный момент разрабатывается и тестируется ПО - Sim Tools - лишенное этих недостатков.
Мы поддерживаем разработчика этого ПО - Dustin Arrell ( aka yobuddy) и его представителя на нашем форуме - value1
Существует специальная тема для обсуждения на русском у нас на форуме, остальное в оригинальной теме http://www.x-simulator.de/forum/viewtopic.php?f=1&t=4493&p=43387&hilit=#43387
Новости
Перевод документации ПО Sim Tools обсуждается в этой теме.
--- - Контроллер (Controller):
В настоящее время в работе два варианта контроллера - самопальный AMC 1.5 от Таноса и контроллер на базе платы Arduino UNO / Duemillanove.
ВНИМАНИЕ! Сейчас развивается проект на базе Ардуино. Прошивка пишется на языке "C" (Arduino IDE не используется).
Всё необходимое для AMC 1.5Скрытый текстСсылка на проект
оригинальная авторская прошивка для AMC- Ссылка на раздел с прошивками
полностью переписанная прошивка для AMC от Ale с дополнительными функциями (крайне рекомендуется).
Краткое описание возможностей прошивки
Исходники прошивок от ALE доступны для участников форума со статусом - SIMER
На самом лучшем симерском форуме была разработана уменьшеная плата этого контроллера, в которой было исправлено несколько багов, подробно можно ознакомиться в теме: Облегченная версия контроллера
Для тех, кто хочет сделать сам контроллер AMC - рекомендуем печатную плату от null:
RU-SIMULATOR REBUILD v1.1
А так же на всякий случай весь комплект документации и печатных плат изделий от Таноса:
Документация
Всё необходимое для контроллера на базе Ардуино
ТЕСТИРУЕТСЯ ПРОШИВКА ArduinoMega 6-dof прошивка.
РАЗРАБАТЫВАЕТСЯ УНИВЕРСАЛЬНАЯ ПРОШИВКА совместимая со всеми симуляторами Тестировать на стендах тутСкрытый текстСхема подключения Arduino UNO/Duemillanove
Программа для прошивки Arduino через USB. После запуска необходимо выбрать com порт, платформу, указать скорость 57600 и нажать upload.
... версия прошивки для Arduino
... версия прошивки для Arduino, совместимая с SimTools...
И сразу - настройка интерфейса SimTools для работы с прошивкой...
ссылка на сообщение/тему почитать
... программа для настройки прошивок 2-dof от ALE (xSimCtrl) с кратким описанием.
Важная доработка, исключающая ненужные "сбросы" arduino при открытии ее COM порта.
Arduiono Uno
Arduino Duemilanove
Джампер:
Исходники прошивок от ALE доступны для участников форума со статусом - SIMER
Что за настройки KpLo, KpHi, SensLo, SensHi, KpTh, MinD, MinPWM и как устроено управление контроллером?Скрытый текстЕсли коротко, то принцип управления состоит в следующем
- Программа посылает контроллеру "задания" в виде положения оси двигателя. Назовем задаваемую величину SET.
- Контроллер периодически считывает показания датчика, закрепленного на этой оси ( как и утверждает Null в предыдущем посте . Назовем эту величину GET.
- Контроллер сравнивает задаваемое положение оси и реальное, высчитывает ошибку позиционирования ERR = SET - GET
- Контроллер вычисляет и подает на ШИМ управляющее воздействие по П-закону PWM = ERR * KP
Так что основной величиной для настройки управления является величина коэффициента Kp... В данной реализации существует два разных Kp - KpLO и KpHI. Контроллер использует один из них при расчете ШИМ. При чем если рассогласование ERR больше определенного порога KpTh, то при расчете ШИМ используется KpHI. В противном случае - KpLO. Лучше для начала поставь KpHI = KpLO = 3...
Параметры SensLO и SendHI - это программные ограничители для потенциометров, не дающие оси проворачиваться ниже SensLO и выше SendHI.
Параметр MinD - мертвая зона. Если абсолютная величина рассогласования ERR меньше MinD - моторы выключаются. Дабы мотор не "пел" от шума...
Параметр MinPWM - это минимальная величина управляющего сигнала, для увеличения резвости движка... Т.е. сигнал управления расчитывается по модифицированной формуле PWM = MinPWM + ERR * KP
Что касается связи контроллера с игрой - то тут xSimCtrl.exe - лишнее звено... Данные из игры должны быть направлены на "КОМ-порт", к которому подключена Ардуина...
--- - Н-мост (H-bridge):
ВНИМАНИЕ! Рекомендуется использовать готовый H-Bridge (полумост).
Это устройство управления моторами.
Тут тоже 2 варианта,
либо это:
самодельный:Скрытый текстПолумост по схеме от Таноса, более подходящий для ЛУТ
или-же готовый:Скрытый текстН-мосты здесь
--- - Гальваническая развязка (Optical Isolation):
Три причины для включения в конструкцию сима узла гальванической развязки:
1 - Для ноутбуков это не актуально, но у "больших" компьютеров (подключенных в розетку без заземления) на корпусе "сидит" потенциал порядка 110 Вольт. Это связано с конструкцией входного фильтра компьютерного блока питания. В случае стечения различных (неудачных) обстоятельств, отсутствие гальванической может привести к неприятным последствиям: от выхода из строя платы Arduino, USB порта, материнской платы и т.д., до поражения электрическим током.
2 - Преобразователь интерфейса USB -> UART очень чувствителен к помехам по цепям питания, которые неизбежно возникают в силовой части сима. Это приводит к нестабильной работе и частым зависаниям интерфейса.
3 - Неписанный закон радиоэлектроники - силовые цепи ДОЛЖНЫ быть гальванически отвязанными от цепей управления.
Развязка с использованием оптопары 6n137Скрытый текст
--- - Моторы (geared motor/wiper):
Самый простой вариант - использование моторов постоянного тока(DC) с использованием червячного редуктора. Самым доступным вариантом здесь является автомобильный мотор стеклоочистителя (дворников) или вайпер (wiper). Использование червячной передачи решает проблему с удержанием платформы в заданном положении, т.е. мотор не затрачивает на это энергию.
Вопреки советам на нашем форуме категорически не рекомендуется использование моторов от а/м Газель, как впрочем и от другой автомобильной техники отечественного производства по причине низкого качества упомянутых изделий. На "авторазборках" вполне можно найти доступный по цене и состоянию двигатель производства Bosch, широко применяемый в различных автомобилях иностранного производства.
МОТОРЫ СТЕКЛООЧИСТИТЕЛЕЙ ДОЛЖНЫ БЫТЬ ИЗОЛИРОВАННЫ ДРУГ ОТ ДРУГА!Скрытый текст
Если мотор-редуктор (вайпер) не держит платформу в состоянии покоя, то поможет винт регулировки, главное не усердствуйте:Скрытый текст
Кроме того существуют моторы с червячным редуктором применяемые и для других целей, но вполне подходящие для нашей. Как правило это гораздо менее бюджетный вариант, но он дает более широкие возможности при выборе.
Например:Скрытый текстhttp://www.motiondynamics.com.au/12v-180w.html
http://www.ebay.com/itm/DC-Motor-ZYT90-155-12-Fits-MCP4-Gearbox-/380393781762?pt=UK_BOI_Electrical_Components_Supplies_ET&hash=item58913c7a02&nma=true&si=iWeTqFa3v2aRZVUCMHC3%252B2EaQdE%253D&orig_cvip=true&rt=nc&_trksid=p2047675.l2557
http://www.ebay.com/itm/25-1-MCP-4-Gearbox-/110751091855?pt=UK_BOI_Electrical_Components_Supplies_ET&hash=item19c9478c8f
http://www.ebay.com/itm/25-1-MCP-4-Gearbox-Aluminium-Ver-/110963461935?_trksid=p2047675.m1985&_trkparms=aid%3D444000%26algo%3DSOI.CURRENT%26ao%3D1%26asc%3D13%26meid%3D5570365289641519325%26pid%3D100012%26prg%3D1014%26rk%3D5%26sd%3D380393781762%26
Расчёт скорости мощности и момента мотора:Скрытый текстНу и вот простая формула, позволяющая ориентироваться во всем многообразии движков - связь скорости, мощности и момента.
Формула подходит и для движков с редуктором (ее можно применять сразу к выходному валу редуктора с учетом КПД редуктора)
P = ( M * n ) / 9549
P - мощность двигателя (kW - киловатт)
M - крутящий момент (N*m - Ньютон*метр)
n - скорость вращения вала (rpm - оборот/мин )
Пример: Давай прикинем мощность для варианта 60 rpm / 10 H*m
P = 10*60/9549 = 0.063 кВт = 63 Вт.
С учетом типичного КПД червячных редукторов = 0.6 .. 0.8 получаем необходимую мощность 90 .. 100 Вт.
Пример: http://mal4x.ru/post9832.html#p9828
--- - Обратная связь для платформы (потенциометры, датчики и т.п.)
Обратная связь необходима контроллеру, для перемещения платформы в необходимое положение. Для этого в основном используются потенциометры (переменные резисторы), механически связанные с валом мотора или платформой. Как более износостойкий вариант, в роли потенциометра могут быть применены аналоговые датчики на основе эффекта Холла. Например абсолютный хит, датчик от Honeywell - SS495. Или существуют готовые варианты в корпусе и с магнитом:Скрытый текстhttp://www.potentiometers.com/Series6120.cfm
http://www.potentiometers.com/HRS100.cfm
http://www.digikey.com/product-search/en?lang=en&site=us&KeyWords=987-1602-ND&x=0&y=0
Цены:
http://www.digikey.com/catalog/en/partgroup/model-6120/24400?print=1
http://www.digikey.com/product-search/en?KeyWords=HRS100&x=0&y=0
Также, для отслеживания положения, теоретически, могут использоваться энкодеры. Но, на данный момент они полноценно не поддерживаются ни одной из прошивок. Но, работы в этом направлении ведутся! Ура!
Кроме того есть идеи по использованию альтернативных вариантов, пока немного об этом упоминается здесь.
--- - Дополнительное оборудование (Options):
--- - Реализация механики: (Mechanical Options):
Расчёт рычагов и передаточных чисел via CraCk
--- - Готовые проекты: (SIM release):
2DOF FREX-LIKE RUSSIAN SIMULATOR от null
Легендарные симостроители, таки построившие симы на "газелевских" моторах...
DERIYСкрытый текст
ua6aak...Скрытый текст
--- - Темы для оставшихся вопросов (OFFTOPIC):
Помогите, как получить данные из игры. Для разработчиков плагинов есть тема, как получить данные из игр!
перенёс треды из разработки ПО Sim-Tools в тему как получить данные. (Мог чего-то упустить) Death_Morozz.
Архивы, для истории:
Наша тема 2010 года на x-simulator.deСкрытый текст
---