???
Математика на уровне МГУ

Показано с 1 по 25 из 42

Тема: Автопилот с помощью DeviceLink

Комбинированный просмотр

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #1
    юнга со стажем
    Регистрация
    08.03.2002
    Адрес
    база ДА РФ
    Возраст
    54
    Сообщений
    4,229

    Ответ: Автопилот с помощью DeviceLink

    Цитата Сообщение от SL PAK
    Очень нужен автомат горизонта для истребителей. Для тестов.
    Точно , далеко не каждый самолёт можно отриммировать так чтобы он продолжительное время ровно летел .
    В симуляторах баланс невозможен ..... или это уже не симулятор .

  2. #2

    Ответ: Автопилот с помощью DeviceLink

    Выкладываю. Инструкция следует.
    Крайний раз редактировалось VVV; 10.06.2004 в 17:21.

  3. #3

    Ответ: Автопилот с помощью DeviceLink

    Инструкция.

    Имеется два режима: горизонтального полета и постоянного угла тангажа, которые включаются кнопками джойстика (по умолчанию 7-й и 8-й), повторное нажатие выключает автопилот. Во втором режиме автопилот пытается поддерживать угол тангажа, который был на момент нажатия кнопки. Джойстик опрашивается каждые 100 мс, так что слишком короткие нажатия могут быть пропущены.

    Порт UDP у Ил-2 должен быть 10000. Никаких предосторожностей при работе с UDP не предпринимается, так что включать автопилот можно только во время вылета и обязательно нужно выключать до его окончания, иначе программа зависнет, ожидая ответа на запрос (исправлено).

    Управление креном и тангажом идет через программу, поэтому в настройках игры надо установить так, чтобы оси X и Y ничем не управляли.

    To AVC:
    Алгоритм простой – следящая система с ФНЧ первого порядка в цепи обратной связи. Коэффициент усиления и постоянную времени фильтра подбирал на глаз.

    Конечно, автопилот компенсирует ошибки не до конца. Теоретически их можно сделать сколь угодно малыми, но тогда возникают проблемы с устойчивостью, особенно учитывая, что в игре много самолетов с разными "постоянными времени". Так что по-хорошему, параметры следящей системы нужно подбирать для каждого самолета.
    Крайний раз редактировалось VVV; 10.06.2004 в 17:15.

  4. #4
    пак Аватар для SL PAK
    Регистрация
    28.03.2003
    Адрес
    Подмосковные Вечера
    Сообщений
    3,070

    Ответ: Автопилот с помощью DeviceLink

    Аааа! Мною управляют! :o

  5. #5
    пак Аватар для SL PAK
    Регистрация
    28.03.2003
    Адрес
    Подмосковные Вечера
    Сообщений
    3,070

    Ответ: Автопилот с помощью DeviceLink

    А как летать то с этим? Он класно первым делом вводит в штопор

  6. #6
    пак Аватар для SL PAK
    Регистрация
    28.03.2003
    Адрес
    Подмосковные Вечера
    Сообщений
    3,070
    Внимание! Это программа опасна для головы! Аааа.... :o

  7. #7
    ECMOS TEAM
    Регистрация
    28.07.2003
    Адрес
    Russian Federation, Москва.
    Возраст
    48
    Сообщений
    171

    Ответ: Автопилот с помощью DeviceLink

    Цитата Сообщение от VVV
    Инструкция.
    To AVC:
    Алгоритм простой – следящая система с ФНЧ первого порядка в цепи обратной связи. Коэффициент усиления и постоянную времени фильтра подбирал на глаз.

    Конечно, автопилот компенсирует ошибки не до конца. Теоретически их можно сделать сколь угодно малыми, но тогда возникают проблемы с устойчивостью, особенно учитывая, что в игре много самолетов с разными "постоянными времени". Так что по-хорошему, параметры следящей системы нужно подбирать для каждого самолета.
    Что за постоянная времени фильтра? Период между замерами? Недопонял.

  8. #8

    Ответ: Автопилот с помощью DeviceLink

    Цитата Сообщение от ET=Mitya
    Что за постоянная времени фильтра? Период между замерами? Недопонял.
    Частота дискретизации Fs=1/100ms=10Hz. Фильтр синтезировался с нормированной полосой пропускания wc=0.1, отсюда полса пропускания фильтра в герцах: Fc=wc*Fs/2=.5Hz. Следовательно характерное время переходных процессов в фильтре T=1/Fc=2s.
    Крайний раз редактировалось VVV; 08.06.2004 в 12:42.

  9. #9
    Забанен Аватар для aeropunk
    Регистрация
    13.06.2001
    Адрес
    Питер
    Возраст
    54
    Сообщений
    3,856

    Ответ: Автопилот с помощью DeviceLink

    Цитата Сообщение от VVV
    включать автопилот можно только во время вылета и обязательно нужно выключать до его окончания, иначе программа зависнет, ожидая ответа на запрос.
    А нафига вообще такие программы нужны?
    Оно у тебя работает синхронном режиме запрос-ответ?
    Ты что-нибудь слышал о неблокирующих сокетах?
    Ты внимательно читал описание DeviceLink?

    "The external application sends a query packet, in reply, IL2 sends back one (or several) packets containing the query result."

    Куда ни плюнь, попадешь в праграместа.
    Крайний раз редактировалось aeropunk; 08.06.2004 в 13:01.

  10. #10

    Ответ: Автопилот с помощью DeviceLink

    Цитата Сообщение от Vorobey
    А нафига вообще такие программы нужны?
    Оно у тебя работает синхронном режиме запрос-ответ?
    Ты что-нибудь слышал о неблокирующих сокетах?
    Ты внимательно читал описание DeviceLink?
    (
    Чего кричать-то. Для тестовых целей этого достаточно, а исправить проблему - несложно.

    И вообще какой смысл сейчас ковыряться с программой, если алгоритм управления работает кое-как? Меня сейчас гораздо больше интересует, работает ли система управления на других компьютерах, как она себя ведет с разными самолетами и т. п.

  11. #11
    Забанен Аватар для aeropunk
    Регистрация
    13.06.2001
    Адрес
    Питер
    Возраст
    54
    Сообщений
    3,856

    Ответ: Автопилот с помощью DeviceLink

    Цитата Сообщение от VVV
    Чего кричать-то. Для тестовых целей этого достаточно, а исправить проблему - несложно.

    И вообще какой смысл сейчас ковыряться с программой, если алгоритм управления работает кое-как? Меня сейчас гораздо больше интересует, работает ли система управления на других компьютерах, как она себя ведет с разными самолетами и т. п.
    Обмен данными по UDP с DeviceLink неизбежно является частью петли обратной связи. У тебя принципиальная ошибка в организации петли обратной связи, т.е. именно в твоем алгоритме управления. Т.о. ты и тестирование строишь неграмотно. Читаешь только первый ответный пакет. Второй возможный ответный пакет на первый запрос считаешь ответом на второй запрос. Получается полная лажа. То, что это частично сработало - удачное стечение обстоятельств. В следующем патче могут возвращать каждый параметр отдельным пакетом - имеют право, описанию протокола это не противоречит. Пока не организована асинхронная работа с сокетами, ни о каком грамотном использовании/тестировании DeviceLink не может быть и речи.
    Крайний раз редактировалось aeropunk; 08.06.2004 в 17:06.

  12. #12

    Ответ: Автопилот с помощью DeviceLink

    Цитата Сообщение от Vorobey
    Читаешь только первый ответный пакет. Второй возможный ответный пакет на первый запрос считаешь ответом на второй запрос. [/i]
    Легко проверить, сколько возвращается ответов на каждый вопрос. Но похоже все-таки один, потому что у меня последовательно опрашиваются углы крена и гангажа, и если бы возращалось несколько ответов, значения перепутались бы.

    В любом случае, я тестирую не DeviceLink, а систему управления, и по крайней мере у меня она получает данные, которые похожи на то, что должно быть.
    Крайний раз редактировалось VVV; 08.06.2004 в 18:02.

  13. #13
    Забанен Аватар для aeropunk
    Регистрация
    13.06.2001
    Адрес
    Питер
    Возраст
    54
    Сообщений
    3,856

    Ответ: Автопилот с помощью DeviceLink

    Цитата Сообщение от VVV
    Легко проверить, сколько возвращается ответов на каждый вопрос. Но похоже все-таки один, потому что у меня последовательно опрашиваются углы крена и гангажа, и если бы возращалось несколько ответов, значения перепутались бы.

    В любом случае, я тестирую не DeviceLink, а систему управления, и по крайней мере у меня она получает данные, которые похожи на то, что должно быть.
    Ребенок! Какой ребенок! Чистый, невинный, непорочный!
    Он еще не знает, чем заканчивается программирование, основанное на особенностях конкретных реализаций. Уверен, он даже не проверяет коды ошибок. Его мир прекрасен и безоблачен.

    Прости, дитя мое, старого занудного воробья. Ступай по избранной тобой дороге. Всему свое время.
    Крайний раз редактировалось aeropunk; 08.06.2004 в 20:21.

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •