ECar - универсальный ECU
Re: ECar - универсальный ECU
Просто прежде чем писать кучу умных слов и их сочетаний, стоит в первую очередь их переварить самому... и уж тем более внимательно читать что пишут другие, а то вы сарказм от стёба отличить не можете, про дельные вопросы тем более промолчу. Вам их задали с избытком....учитывая что вы написали в первых постах этого топика.....тишина...но ура, зато теперь разобрались с фазностью датчика, хотя это уже где-то на этом форуме разобрали по косточкам.
Re: ECar - универсальный ECU
Ну и славно..denisvak wrote:Просто прежде чем писать кучу умных слов и их сочетаний, стоит в первую очередь их переварить самому... и уж тем более внимательно читать что пишут другие, а то вы сарказм от стёба отличить не можете, про дельные вопросы тем более промолчу. Вам их задали с избытком....учитывая что вы написали в первых постах этого топика.....тишина...но ура, зато теперь разобрались с фазностью датчика, хотя это уже где-то на этом форуме разобрали по косточкам.
Re: ECar - универсальный ECU
не получаешь косяк.denisvak wrote:и получаешь косяк если вдруг перепутали полярность ДПКВ....посмотрите осциллограмму после преобразования сигнала и поймете почему...
если вдруг перепутали полярность дпкв нормальная система просто не заводится!
Re: ECar - универсальный ECU
Не вижу смысла мерить ускорение на каждом зубе. Если нужен вклад цилиндров достаточно померить по 4 сегмента 180пкв связанные с рабочими ходами.. И даже за этим надо ставить очень серьезную статистику. на одном зубе будут только шумы от дифференцирования.
Re: ECar - универсальный ECU
Статистику собираю на 4 сегментах до ВМТ, и на 8 после. А на каждом зубе мерится в фоне. Мерится и мерится.. Ничего ж не стоит..Maxi wrote:Не вижу смысла мерить ускорение на каждом зубе. Если нужен вклад цилиндров достаточно померить по 4 сегмента 180пкв связанные с рабочими ходами.. И даже за этим надо ставить очень серьезную статистику. на одном зубе будут только шумы от дифференцирования.
Last edited by Voitila on Sat Jul 04, 2015 8:47 am, edited 1 time in total.
Re: ECar - универсальный ECU
допуски на неравномерность фронта у нас ни как у боша. колесо криво нарезано и бьет. поэтому каждый зуб мерить никакого смысла нет.
я мерию через 3 зуба чтоб не видеть дырку - но это тоже плохо потому что после дырки регулировка порога компаратора на лм1815 уходит.
я мерию через 3 зуба чтоб не видеть дырку - но это тоже плохо потому что после дырки регулировка порога компаратора на лм1815 уходит.
Re: ECar - универсальный ECU
Т.е. после дырки, период замеряется с ошибкой в минус? Я наблюдал такой момент, на равномерном вращении, на втором зубе период несколько выбивается из ряда ожидаемых значений.. Это значит компаратор на дырке расколбашивает, получается..Maxi wrote:я мерию через 3 зуба чтоб не видеть дырку - но это тоже плохо потому что после дырки регулировка порога компаратора на лм1815 уходит.
Re: ECar - универсальный ECU
естественно он же адаптивный и точка определения перехода через 0 смещена. ошибка еще и крутизной фронта определяется. поэтому смысла гонятся за каждым зубом вообще нет. к тому же на нормальной машине есть еще и чудовищные рывки при переключении трансмиссии и изменения нагрузки при демпфировании - и все это тоже идет на шкив КВ.
- AndreyB
- Site Admin
- Posts: 14360
- Joined: Wed Aug 28, 2013 1:28 am
- Location: Jersey City
- Github Username: rusefillc
- Slack: Andrey B
Re: ECar - универсальный ECU
Давай попробуем заново Я пытался попросить тебя поделиться твоим опытом и добавить немного конкретных цифр. Будет здорово, если ты сможешь поделиться своим опытом и расскажешь немного конкретных цифр.Voitila wrote: Вы тоже думаете, что я слишком крут? Простите и вы меня..
Мужики... Ну что за атмосфера.. Какая то болезненно обидчивая.. Озлобленность что ли какая то.. Мыж просто общаемся, обсуждаем офигенно интересные вещи. Смотрите, сколько интересных людей собралось в одном месте. Каждый что то делает, что то получается. Какая концентрация творческой энергии.. Пусть она будет позитивной.
Всем мир. Извиняйте, если кого-то ненароком обидел.
детали КАК сделать предлагаю сейчас опустить, мне лично сейчас интересно ЧТО можно сделать - какие замеры внутри оборота как можно привязать к какой стратегии управления УОЗ.А можно вот всё это в девять раз подробнее? Графики, цифры, аналитику и личные выводы
например насколько различается мгновенная скорость в рамках одного оборота по твоим замерам? какая она в зависимости от чего - какие конкретно цифры ты наблюдал, к каким цифрам стремился и так далее?
Very limited telepathic abilities - please post logs & tunes where appropriate - http://rusefi.com/s/questions
Always looking for C/C++/Java/PHP developers! Please help us see https://rusefi.com/s/howtocontribute
Always looking for C/C++/Java/PHP developers! Please help us see https://rusefi.com/s/howtocontribute
Re: ECar - универсальный ECU
Ок. Я завсегда за мир.. Жму руку..russian wrote:Давай попробуем заново Я пытался попросить тебя поделиться твоим опытом и добавить немного конкретных цифр. Будет здорово, если ты сможешь поделиться своим опытом и расскажешь немного конкретных цифр.
детали КАК сделать предлагаю сейчас опустить, мне лично сейчас интересно ЧТО можно сделать - какие замеры внутри оборота как можно привязать к какой стратегии управления УОЗ.
Вобщем, если измерить сумму межзубных периодов, до вмт и сумму после, (я измеряю по 8 до, по 8 после), а потом вторую сумму разделить на первую, то можно получить некий коэффициент. Я называю его фактор нагрузки, по сути так оно и есть.
Когда у вас хх к примеру, т.е. вращение кв достаточно равномерно, это число болтается в пределах 1. Когда к кв начинает прикладываться нагрузка, фактор начинает расти, от 1 и до 1,2 приблизительно, зависит от движка. При пропусках искры, фактор наоборот стремится к 0,9.
Потом мне пришла в голову мысль, что учитывая этот фактор, можно как то корректировать уоз. Я долго шаманил с кодом, честно, даже не помню уже всех перипетий (3 года назад это было), но в конечном итоге, получилось следующее. Я взял формулу расчета уоз от оборотов на хх, и прямо на лету рассчитывал угол для каждого цилиндра. Т.е. угол от оборотов есть. Теперь надо было как то учесть нагрузку.
Был такой проект, зажигание Михайлова. Реализация достаточно сомнительная, не знаю, не сталкивался, не буду комментировать. Но сама идея мне показалась интересной. Я решил попробовать адаптивно подстраивать уоз под нагрузку. А поскольку снимать нагрузку с кв я уже умел, то решил попробовать увязать это дело в работающую систему.
При увеличении фактора нагрузки с кв, я плавно уменьшал уоз, и по мере устаканивания фактора, возвращал его также плавно к расчетному от rpm.
В конечном итоге, получилась очень интересная работа на низах. Я трогался на разогретой машине с третьей передачи, заезжал на бордюр почти без подгазовки, плавненько катился в пробке на эстакаде в горку, на одном сцеплении. Очень, такое, интересное ощущение инжектора, на карбюраторной машине. Потом я это дело немного забросил, занимался другими проектами. Там можно было много чего еще пооптимизировать.
Так и ездит она до сих пор, на формуле (без таблиц), и с двумя датчиками, дпкв и дтож
Если у кого есть желание, приезжайте в гости, прокатимся..
Re: ECar - универсальный ECU
Интересный случай но никакой адаптивности в нем нет.
Это просто другой метод определения нагрузки но управление то по сути идет по модели с прямой связью.
Это просто другой метод определения нагрузки но управление то по сути идет по модели с прямой связью.
Re: ECar - универсальный ECU
Не, адаптивности нет. В общем да, метод определения нагрузки, с дополнительными возможностями анализа движения поршня, в окрестностях вмт.Maxi wrote:Интересный случай но никакой адаптивности в нем нет.
Это просто другой метод определения нагрузки но управление то по сути идет по модели с прямой связью.
- AndreyB
- Site Admin
- Posts: 14360
- Joined: Wed Aug 28, 2013 1:28 am
- Location: Jersey City
- Github Username: rusefillc
- Slack: Andrey B
Re: ECar - универсальный ECU
спасибо!Voitila wrote: Когда у вас хх к примеру, т.е. вращение кв достаточно равномерно, это число болтается в пределах 1. Когда к кв начинает прикладываться нагрузка, фактор начинает расти, от 1 и до 1,2 приблизительно, зависит от движка. При пропусках искры, фактор наоборот стремится к 0,9.
Very limited telepathic abilities - please post logs & tunes where appropriate - http://rusefi.com/s/questions
Always looking for C/C++/Java/PHP developers! Please help us see https://rusefi.com/s/howtocontribute
Always looking for C/C++/Java/PHP developers! Please help us see https://rusefi.com/s/howtocontribute
Re: ECar - универсальный ECU
Поэксперементируем над этим Спасибо.
Re: ECar - универсальный ECU
Да надо попролбовать мне тоже интересно что с этого можно вытянуть...
Re: ECar - универсальный ECU
Сделал сегодня подобный опыт. 0.99-1 других цыфирь я не увидел, брал время пролета 8ми зубов до ВМТ и 8 после. И вообще ему было без разницы какая там нагрузка и обороты. Но это на роторном моторе.
Re: ECar - универсальный ECU
На 1000 rpm, таймер кранковый сколько период натикивает? Шкив 60-2?denisvak wrote:Сделал сегодня подобный опыт. 0.99-1 других цыфирь я не увидел, брал время пролета 8ми зубов до ВМТ и 8 после. И вообще ему было без разницы какая там нагрузка и обороты. Но это на роторном моторе.
И точки входа в эти два измерения тоже надо подбирать. Глянул в код, у меня 1вход сдвинут до ВМТ на 7 зубов (т.е. период имерения заканчивается за 7 зубов до ВМТ). 2 вход начинается с ВМТ. А лучше логи снять позубно, и посмотреть, что конкретно на вашем движке творится в окресностях ВМТ.
Re: ECar - универсальный ECU
при 1000 натикивает 2800.
Да, допишу завтра поиграю ещё
Да, допишу завтра поиграю ещё
Re: ECar - универсальный ECU
У меня на 1000 rpm - 36000 тиков. И соотношение 1,05 - 1,075, это уже приличная такая величина, рабочая. 1,2 это практически экстремальный максимум. Еще видимо от мощности движка зависит. Может быть, чем менее мощный движок, тем больше его колбасит после искры, и тем больше он замедляется на подходе к ВМТ. И от количества цилиндров тоже наверное зависит... Много разных факторов, получается.. Вобщем с логов надо начинать, и анализировать. Моторы все разные.denisvak wrote:при 1000 натикивает 2800.
Да, допишу завтра поиграю ещё
З.Ы. Интересно было бы статистику по разным моторам посмотреть.
Last edited by Voitila on Wed Jul 08, 2015 9:49 pm, edited 1 time in total.
Re: ECar - универсальный ECU
Уточни контекст..denisvak wrote:И?
Re: ECar - универсальный ECU
Время пролета.. Периоды суммировал, т.е., каждого из восьми зубов? Так?denisvak wrote:Сделал сегодня подобный опыт. 0.99-1 других цыфирь я не увидел, брал время пролета 8ми зубов до ВМТ и 8 после. И вообще ему было без разницы какая там нагрузка и обороты. Но это на роторном моторе.
Re: ECar - универсальный ECU
И что с того? пускай будет хоть 100000....много толку от этого?У меня на 1000 rpm - 36000 тиков.
зачем суммировать? отвлекать процессор...зубья ловятся по захвату таймера и в регистре захвата все что нам нужно.Периоды суммировал, т.е., каждого из восьми зубов? Так?
в прерывании по захвату....
1)пришел 20-8 зуб запомнили значение регистра захвата
2)пришел 20зуб отняли регистр захвата от того что запомнили в п1 получили "время" пролета 8ми зубов до ВМТ. И опять запомнили регистр захвата
3)пришел 20+8 зуб отняли регистр захвата от того что запомнили в п2 получили "время" пролета 8ми зубов после ВМТ. поставили флаг что можно считать
в основном цикле.....
видим флаг, считаем что нужно и сбрасываем флаг.
можно в прерывании просто запоминать значение регистра захвата, а считать все уже в основном цикле....
Re: ECar - универсальный ECU
И какие суммы у вас получаются?denisvak wrote:И что с того? пускай будет хоть 100000....много толку от этого?У меня на 1000 rpm - 36000 тиков.зачем суммировать? отвлекать процессор...зубья ловятся по захвату таймера и в регистре захвата все что нам нужно.Периоды суммировал, т.е., каждого из восьми зубов? Так?
в прерывании по захвату....
1)пришел 20-8 зуб запомнили значение регистра захвата
2)пришел 20зуб отняли регистр захвата от того что запомнили в п1 получили "время" пролета 8ми зубов до ВМТ. И опять запомнили регистр захвата
3)пришел 20+8 зуб отняли регистр захвата от того что запомнили в п2 получили "время" пролета 8ми зубов после ВМТ. поставили флаг что можно считать
в основном цикле.....
видим флаг, считаем что нужно и сбрасываем флаг.
можно в прерывании просто запоминать значение регистра захвата, а считать все уже в основном цикле....
- AndreyB
- Site Admin
- Posts: 14360
- Joined: Wed Aug 28, 2013 1:28 am
- Location: Jersey City
- Github Username: rusefillc
- Slack: Andrey B
Re: ECar - универсальный ECU
А на тему магии таймеров кстати. Мой подход - я читаю из Cycle Count Register, который CYCCNT. В этом случае у меня происходит прерывание с максимальным приоритетом, и период и разрядность таймера мне в таком случае не важны - я просто считываю счётчик тиков процессора. У меня из этого счётчика сделан 64-битный абсолютный отсчёт времени от старта процессора.Voitila wrote: В stm32 есть возможность соединять таймера каскадно. У стма на офф сайте даже где то был даташит, в котором подробно расписывалось, как работать с таймерами, если нужно делать захват больших периодов. Я посмотрю, может у меня где то завалялся этот документ. Но это все гуглится легко, и в общем даташите по 32 серии тоже достаточно подробно расписано..
Very limited telepathic abilities - please post logs & tunes where appropriate - http://rusefi.com/s/questions
Always looking for C/C++/Java/PHP developers! Please help us see https://rusefi.com/s/howtocontribute
Always looking for C/C++/Java/PHP developers! Please help us see https://rusefi.com/s/howtocontribute
Re: ECar - универсальный ECU
По сравнению с магией аппаратного захвата на фронте сигнала специально для этого предназначенным модулем - это в любом случае Амояк-Акопянство получается...russian wrote:А на тему магии таймеров кстати. Мой подход - я читаю из Cycle Count Register, который CYCCNT. В этом случае у меня происходит прерывание с максимальным приоритетом, и период и разрядность таймера мне в таком случае не важны - я просто считываю счётчик тиков процессора. У меня из этого счётчика сделан 64-битный абсолютный отсчёт времени от старта процессора.
Вообще достаточно просто понимать от чего зависит ожидаемая величина чтоб понимать не адекватность этого решения именно для управления углом - нет конечно с точки зрения экономии одного из датчиков это может вызывать интерес, но на практике двигатели слишком дорогие чтоб такая экономия в них боком не лезла...
Re: ECar - универсальный ECU
+1 я тоже подозреваю, что это мягко говоря, не перспективный подход..Maxi wrote:По сравнению с магией аппаратного захвата на фронте сигнала специально для этого предназначенным модулем - это в любом случае Амояк-Акопянство получается...russian wrote:А на тему магии таймеров кстати. Мой подход - я читаю из Cycle Count Register, который CYCCNT. В этом случае у меня происходит прерывание с максимальным приоритетом, и период и разрядность таймера мне в таком случае не важны - я просто считываю счётчик тиков процессора. У меня из этого счётчика сделан 64-битный абсолютный отсчёт времени от старта процессора.
Вообще достаточно просто понимать от чего зависит ожидаемая величина чтоб понимать не адекватность этого решения именно для управления углом - нет конечно с точки зрения экономии одного из датчиков это может вызывать интерес, но на практике двигатели слишком дорогие чтоб такая экономия в них боком не лезла...
- AndreyB
- Site Admin
- Posts: 14360
- Joined: Wed Aug 28, 2013 1:28 am
- Location: Jersey City
- Github Username: rusefillc
- Slack: Andrey B
Re: ECar - универсальный ECU
так давайте же скорее делиться объективными аргументамиVoitila wrote:+1 я тоже подозреваю, что это мягко говоря, не перспективный подход..
Very limited telepathic abilities - please post logs & tunes where appropriate - http://rusefi.com/s/questions
Always looking for C/C++/Java/PHP developers! Please help us see https://rusefi.com/s/howtocontribute
Always looking for C/C++/Java/PHP developers! Please help us see https://rusefi.com/s/howtocontribute
Re: ECar - универсальный ECU
в голову приходит только один: в переменной какого типа считаются тики, и что происходит при переполнении этой переменной?
Re: ECar - универсальный ECU
У меня таймер тупо тикает и я не забиваю себе голову его переполнениями и т.д. т.к. я из текущего регистра захвата(по приходу зуба) вычитаю предыдущее и получаю всегда интервал "времени" который мне интересен. Соответственно следить там за какими-то переполнениями основного таймера мне не нужно. Таймер самой большой разрядности в 32бита используется для этого, с делителем в 30. Не трудно посчитать что даже на 10тыс оборотах полет зуба в 6гр. составить 280тиков таймера. ИМХО этого более чем с головой. Зажигание все рулится от того же таймера, по оставшимся двум канала+ четвертый уже не помню для чего.