Автоматизированный поиск наиболее оптимальных кривых

Обсуждаем все что касается программ для персонального компьютера:
менеджер, логгер, автопостроитель кривых УОЗ и т.д.
Post Reply
DGrees
Posts: 434
Joined: 10 May 2013, 13:25
Your CAR: М2141-22
SECU version: DIY SECU-3
Location: РФ, Санкт-Петербург
Has thanked: 12 times
Been thanked: 80 times

Автоматизированный поиск наиболее оптимальных кривых

Post by DGrees »

Появилась одна идейка.
Появилось аж два андроид менеджера. Появляются уже и логгеры. Плюс к этому, в телефонах есть акселерометры (с неплохой точностью).
А это значит, что в определённый момент времени мы знаем обороты, расход и ускорение. Проведя ряд экспериментов с двиганием кривой вверх-вниз, мы сможем увидеть, при каком значении ускорение максимально.
Есть один нюанс. 1500 об и 16 расход у нас могут быть и на первой передаче, и на второй и т.д. Какая сейчас передача, мы узнать не сможем. Но, эти значения ускорения сильно различаются, так что мы можем разделить по передачам аналитически.
Синхронизировать данные от секу и от акселерометра думаю дело техники. Кстати, акселерометр может давать показания каждые 20 мсек.
Было бы хорошо построить массив данных и скинуть в csv сюда. Я бы мог покопаться в данных и понять, что из этого можно сделать.
Одна интересная статья про юзанье акселерометра: http://habrahabr.ru/post/131555/
Машина с secu отправилась в металл в январе 16-го
dimonfish
Posts: 1181
Joined: 10 May 2013, 09:16
Your CAR: I go on foot
SECU version: DIY SECU-3T
Has thanked: 147 times
Been thanked: 186 times

Re: Автоматизированный поиск наиболее оптимальных кривых

Post by dimonfish »

а вибрации мотора на кузов\ведроид сильно интересно влиять будут ? идея в принципе клевая. но мое имхо для откатки кривых юзать датчик скорости (еще нужно прицепить к секу)+ДПДЗ+тахометр+ДАД(самособой)
ЗАЗ 110247, Солекс, ДПКВ, SECU-3T (M644), ДКЗ, Статика и пр. плюшки :)
DGrees
Posts: 434
Joined: 10 May 2013, 13:25
Your CAR: М2141-22
SECU version: DIY SECU-3
Location: РФ, Санкт-Петербург
Has thanked: 12 times
Been thanked: 80 times

Re: Автоматизированный поиск наиболее оптимальных кривых

Post by DGrees »

Акселерометр измеряет по трём осям. Нас ускорение интересует только по одной (Надо будет телефон закрепить соответствующим образом). Да и к тому же усреднение сделать не проблема.
Жизнеспособность идеи можно проверить, только получив массив данных. А там его уже можно будет покрутить-повертеть и понять, получится ли из этого дело.
С акселерометром и GPS датчик скорости не нужен вовсе (для этих целей).

Нужно понять еще, с какой задержкой идут сигналы от секу.
Т.е. нам пришел от секу пакет с данными. Мы знаем (узнаем), что он был создан (данные считаны с датчиков), допустим 50 мсек назад. Значит мы берём не текущее значение ускорения, а то, которое было 50 мсек назад.

Еще интересный момент. Можно учитывать наклон дороги, т.к. он будет влиять на ускорение. Опять же, датчиками телефона. Но это на будущее, сейчас можно постараться делать замеры на ровных участках.
Машина с secu отправилась в металл в январе 16-го
dimonfish
Posts: 1181
Joined: 10 May 2013, 09:16
Your CAR: I go on foot
SECU version: DIY SECU-3T
Has thanked: 147 times
Been thanked: 186 times

Re: Автоматизированный поиск наиболее оптимальных кривых

Post by dimonfish »

та вот да, задержки от секу\БТ\явы. оно б конечно лучше все датчики иметь в самой секу. кстати, в принципе зная скорость+обороты вполне можно определять какая передача включена. передаточные числа то разные в коробке.
ЗАЗ 110247, Солекс, ДПКВ, SECU-3T (M644), ДКЗ, Статика и пр. плюшки :)
DGrees
Posts: 434
Joined: 10 May 2013, 13:25
Your CAR: М2141-22
SECU version: DIY SECU-3
Location: РФ, Санкт-Петербург
Has thanked: 12 times
Been thanked: 80 times

Re: Автоматизированный поиск наиболее оптимальных кривых

Post by DGrees »

А ну скорость/обороты это да, хорошая идея.
Машина с secu отправилась в металл в январе 16-го
dimonfish
Posts: 1181
Joined: 10 May 2013, 09:16
Your CAR: I go on foot
SECU version: DIY SECU-3T
Has thanked: 147 times
Been thanked: 186 times

Re: Автоматизированный поиск наиболее оптимальных кривых

Post by dimonfish »

еще статейка про гироскоп http://freehabr.ru/blog/android/3658.html
ЗАЗ 110247, Солекс, ДПКВ, SECU-3T (M644), ДКЗ, Статика и пр. плюшки :)
DGrees
Posts: 434
Joined: 10 May 2013, 13:25
Your CAR: М2141-22
SECU version: DIY SECU-3
Location: РФ, Санкт-Петербург
Has thanked: 12 times
Been thanked: 80 times

Re: Автоматизированный поиск наиболее оптимальных кривых

Post by DGrees »

Жду комментариев разработчиков андроид-менеджеров. Да и просто лучше побольше мнений)
Машина с secu отправилась в металл в январе 16-го
Fenyx
Posts: 23
Joined: 11 May 2013, 12:15
Been thanked: 12 times

Re: Автоматизированный поиск наиболее оптимальных кривых

Post by Fenyx »

Я тоже думал об этом и не однократно.
Но считаю, что использование акселератора даст крайне неточную информацию (судя по опыту использования разных программ, использующих датчики смартфона).
Гораздо проще и точнее пойти другим путем.
Для начала несколько вводных.
1) Нам НЕ нужно мерить абсолютное ускорение автомобиля, а нужно ТОЛЬКО ускорение коленвала (КВ) при данном расходе.
2) Какая передача включена на 15 расходе обсолютно не важно, нагрузка на двигатель одинакова в обоих случаях и ускорение кв и углы будут абсолютно идентичны (при одинаковой частоте вращения кв).
3) С 16 расходом есть одна неопределенность - на самом деле в зависимости от калибровки ДАД и прочих условиях, этот расход может включаться либо очень редко (если утопить тапку в пол при 1000 об), тогда при 4000 об., зуб даю, вы при тапке в пол увидите только 15 а то и 14 расход, либо очень часто - как раз при полном открытии дросселя на оборотах выше 3-4 тыс. Но тогда на низах дваление во впускном коллекторе будет заметно выше чем на высоких оборотах, оно как бы будет соответствовать 17 расходу (т.к. его нет, то все давление что выше 16 будет интерпретироваться под одну гребенку как 16).
Но это на самом деле не важно, т.к. если подстраивать кривые, то они будут подстроены под реальные условия, вне зависимости от того какому реальному давлению они соответствуют - в этом как раз плюс автопонастройки.

Как я предлагаю поступить.
Не знаю что конкретно передает секу, но если бы можно было получить непосредственно данные скорости (времени) при прохождении каждого зубца шкива мимо дпкв, то можно было бы построить график ускорений либо за один оборот либо вообще за каждый такт (что позволит даже визуально сравнить работу цилиндров между собой и выявить неполадки (допустим, пробивает одна свеча, причем только на определенных оборотах - фиг это узнаешь напрямую - а тут можно, и даже о компрессии можно судить! и т.п.).

Кривая (для одного такта) должна получиться следующего вида.
Сначала, сразу после вмт, ускорение растет от какой-то небольшой величины (вообще говоря, оно должно быть даже отрицательным перед вмт), затем достигает максимума и держится какое-то время около него, затем начинает спадать и становиться отрицательным (такт сжатия в следующем цилиндре и сопротивление движению а/м). Получаем график функции. Цель - получить "горб", площадь под которым максимальна (тот горб, который будет ниже нуля нужно вычесть.
Можно сразу визуально заметить, что если максимум горба смещен дальше серидины цикла (он при этом будет еще и ниже по абсолютной величине), то значит зажигание позднее и большая часть давления просто сбрасывается в выхлопуху. Если же горб будет приближаться к началу графика (ВМТ), то это хорошо - он будет выше и суммарная площадь его будет больше, однако, если зажигание слишком раннее, то хвост графика будет
резко падать вниз, вычитаясь из общеей площади над графиком, даст суммарно меньшую площадь полезной работы. Да и детонация может возникнуть - думаю это тоже можно увидеть.

А в автоматическом режиме все просто - указанный выше график считается для каждого расхода каждого такта по всему логу. Изменяем угол (октан-корректором для всех режимов), ездим, повторяем расчет, сравниваем полученные величины для всех оборотов. Выбираем лучшие. и по кругу до полного удовлетворения.

Я бы остановился на визуальном отображении кривых (вернее лучше сделать в виде закрашенной области ограниченной графиком) для четырех горшков с отображением внутри нее числового показателя ее площади. И вынести это на другой экран (первый будет такой же - со стрелкой и циферками, а второй с графиками - 4 друг над другом).
Правда есть один момент. Дрыгатель довольно часто делает свои такты - все их отображать, думаю, не выйдет, слишком высокая частота смены картинок, да и ресурсов проца не хватит. Но думаю, если сделать усреднение по каждому цилиндру, допустим, по 10, то 5 раз в секунду график посчитать и отобразить не составит труда. Можно, конечно, и все цилиндры вместе усреднять, но тогда диагностика пострадает - при косяке в одном из них не поймешь в чем дело - толи в целом движок хандрит, толи один цилиндр и можно пойти по неверному пути - регулировать все и вся, когда свеча вылетела или компрессия в одном горшке пропала).
DGrees
Posts: 434
Joined: 10 May 2013, 13:25
Your CAR: М2141-22
SECU version: DIY SECU-3
Location: РФ, Санкт-Петербург
Has thanked: 12 times
Been thanked: 80 times

Re: Автоматизированный поиск наиболее оптимальных кривых

Post by DGrees »

Во, круто, я не один об этом думаю)
Я думаю нам нужно уломать разработчиков получить хоть какие-то данные, а там уж видно будет.
Почему ты думаешь что данные акселерометров недостаточно точные? Я накачал кучу прог-мониторов и смотрел. Около нуля показания постоянно прыгают, но в узком диапазоне, в пределах 0.05G (SE Xperia ray). На движения реакция четкая и однозначная. А если ты имеешь ввиду всякие игрушки, так там обычно всё через Ж, меня игрушки с акселерометрами всегда бесили.
Про ускорение КВ когда-то давно на какой-то конференции был разговор, но тогда почему то дальше дело не пошло. То ли ресурсов было мало то ли еще что.
Кстати не думаю, что независиом от передачи ускорение кв и машины будет одинаковым. Совсем нет, на 1 передаче нагрузка маленькая, на 5-ой большая. И ускорения будут соответственно другие.
Про 16 расход пофиг, раз уж он будет крайне редким. Да и его то можно будет достроить аналитически, глядя на остальные кривые.
Самое главное, получить массив данных об ускорении при вполне определённых режимах. Например, режим кик-дауна, установившийся режим, режим разгона в пол-тапки и т.п. Проехаться на одной кривой в этих режимах, потом октан-коррекию +5, потом -5. Потом табличку в csv, и в екселе можно будет поизвращаться с данными как душе угодно. Графическую реализацию предлагаю делать только после того, как (если) алгоритм покажет жизнеспособность.
Машина с secu отправилась в металл в январе 16-го
Fenyx
Posts: 23
Joined: 11 May 2013, 12:15
Been thanked: 12 times

Re: Автоматизированный поиск наиболее оптимальных кривых

Post by Fenyx »

DGrees wrote:Во, круто, я не один об этом думаю)

Кстати не думаю, что независиом от передачи ускорение кв и машины будет одинаковым. Совсем нет, на 1 передаче нагрузка маленькая, на 5-ой большая. И ускорения будут соответственно другие.
Ключевые слова - "не думаю". Нагрузка движка однозначно определяется оборотами и давлением во впускном коллекторе. Какая передача там стоит - абсолютно не важно. Если будет пониженная передача при тех же оборотах и, допустим, угле подъема дороги, то давление на впуске упадет.
Post Reply

Return to “Программное обеспечение для ПК и релизы ПО”