Выбор МК для впрыска (Selecting MCU for injector unit)

Разработка впрыска топлива на базе SECU-3. Fuel injection related discussion.

Moderator: STC

Qwertty
LQFP144 - On Top Of The Game
Posts: 252
Joined: Thu Jul 26, 2012 12:35 pm

Re: Выбор МК для впрыска (Selecting MCU for injector unit)

Post by Qwertty »

Нет, просто микас это тот же с509. Медленный проц по древнему дубовому техпроцессу. Сбой от помехи в нем куда менее вероятен, чем в шустрых современных. Переход на более современный проц в виде ST10 вызвал и повышение слойности платы. Тебе с кортексом от этого точно было бы не уйти. Правда ты нашел решение :) И точно не ошибешься :D
pow
QFP80 - Contributor
Posts: 39
Joined: Tue Feb 07, 2012 1:47 pm

Re: Выбор МК для впрыска (Selecting MCU for injector unit)

Post by pow »

проц с питанием 3,3 прекрасно переносит поля и выборосы находясь в 5см от импульсного трансформатора 24Vx200A (сварка = импулсы, рч помехи, выбросы индукции...), просто затактирован от внутренного генератора + отдельный линейный стабилизатор (остальная слаботочка через MC34063), в QFP корпусе полигон земли под ним полный + все ножки земли к нему + SMD керамика на каждом питании кратчайшим путём на ближайшую земляную ногу, и фсё, никаких экранов, отдельных отсеков корпуса и т.п.
Я подозреваю что даже прикрутив блок управления прямо на модуль зажигания, условия будут более мягкие...
В нашем случае кристалл современный - площадь маленькая, собственная частота высокая + корпус блока металл, чему там так страшно гючить. (для любителей автомобильных или мил-стд чипов, ещё пока отдельных линий не строили - отбор жестче и корпуса дороже)
Незадействованные ноги конфигурируйте на выход и в логическую 1 или 0, (не третье высокомное состояние) резистор на землю или питание чтоб небольшой ток был, сторожевой таймер правильно заюзать...
Qwertty
LQFP144 - On Top Of The Game
Posts: 252
Joined: Thu Jul 26, 2012 12:35 pm

Re: Выбор МК для впрыска (Selecting MCU for injector unit)

Post by Qwertty »

Чтоб сбить процессор внешней помехой надо наверно поместить его рядом с передатчиком телестанции. В тех же 5 см. От сварочного инвертера в 5 см наводка будет микровольтная и с пренебрежимо малой энергией. Это именно наводка, не помеха. Тот же сотовый имеет проц с питанием меньше 3В и прекрасно работает лежа на сварочном инвертере. А вот помехи от внутренних ключей зажигания либо форсунок будут иметь энергию порядка на 3 выше. О типах помех - http://caxapa.ru/lib/emc_immunity.html
Особое внимание на схему имитации одиночной наносекундной помехи. Ну и параметрам самого тестового импульса. Он ну совсем не микро или милливольты. Да и сопротивление генератора не мегаомы.
pow
QFP80 - Contributor
Posts: 39
Joined: Tue Feb 07, 2012 1:47 pm

Re: Выбор МК для впрыска (Selecting MCU for injector unit)

Post by pow »

режим там не установившийся, а практически случайный нарогузка прыгает от 0 до мкасимума (это не очень страшно) и от максимума до нуля - выбросы обратной индукции киловольты (тут и начинаются извращения для сбережения от пробоя полупроводников)
цепи цепляемые на силовые ключи называются снабберные.
развязка там оптронная hcpl316 кажется
Qwertty
LQFP144 - On Top Of The Game
Posts: 252
Joined: Thu Jul 26, 2012 12:35 pm

Re: Выбор МК для впрыска (Selecting MCU for injector unit)

Post by Qwertty »

Во время искры ЭДС нарастает очень шустро. По уровню есть ограничение, в том же IGBT бывает встроенное. А вот импульс с крутым фронтом амплитудой в 200-250В вполне способен вызвать сбой МК. Ну и других источников помех хватает. Причем они асинхронные между собой. Снаббер в данном случае вреден - это RC или RCD цепь и она забирает на себя часть энергии. А энергия эта как раз и нужна для искры. Трансил лишен этого недостатка. А с МК надо пользоваться всеми способами повышения помехоустойчивости. В том числе и большим питанием. Ну а для авто уже стандарт - 5В. Nikll тут заявлял что если бы в готовом мозге был бы проц сравнимый по возможностям с СТМ32, то его бы здесь не было. В Я7.2+ именно такой. Он даже может пошустрее оказаться. На уровне F4. И таймерами он богаче. Причем таймеры там не по 4 канала имеют. 1 такого хватит на 6ц фазированного впрыска с 6ц зажиганием. А таймер там не один. Вот только ценник там ну совсем не божеский. Зато Я7.2+ уже готовый и стоит всего то 4-5т.р. И можно за 2т купить на разборке или по форумам.
Кстати прикол - еще в 2004 году, когда Вемс только начинался там шли дисскусии о смене платформы. И было 2 варианта - LPC2119(ARM7) или FPGA. В итоге остались на меге. Но FPGA все же рассматривали :)
pow
QFP80 - Contributor
Posts: 39
Joined: Tue Feb 07, 2012 1:47 pm

Re: Выбор МК для впрыска (Selecting MCU for injector unit)

Post by pow »

в последних январях стоит какой то клон Siemens SAB166 - проц хороший конечно (лет 15 назад был) но тупой,
функционально перекрывается любым ARM (в ТУМБ режиме даже код меньше выходит), сейчас его применение может быть вызвано только ностальгией по ME45 :-)
Выбор филипсовского LPC лично мне отвратителен, дешево это да, но как сказал один мой коллега - переферию и разводку корпуса там заказывали у укуреных индусов (неудобны они совершенно, а на фоне STM32 ...).
FPGA - в данном применении глупо, тупо логический автомат формировать - один х... надо знать все тонкости конкретного объекта управления или же загружать туда IP ядро - дорогая матрица+дорогая внешняя память+всеравно писать программу.
Кстати таймеры в STM32 гораздо функциональнее 166х
Qwertty
LQFP144 - On Top Of The Game
Posts: 252
Joined: Thu Jul 26, 2012 12:35 pm

Re: Выбор МК для впрыска (Selecting MCU for injector unit)

Post by Qwertty »

Ну почитай про таймеры в ST10. Менее функциональные :) Они действительно проще чем у STM32 потому как затачивались не для чего попало, а именно для управления ДВС. 1 таймер имеет 16 каналов сравнения/захвата. Как 4 таймера в STM32. И такой таймер там еще и не один. Да и по быстродействию он с кортексом поспорит в реалтайме. Вход в прерывание 1 такт вместо 12. Вектора не совмешены, можно сразу выполнять осмысленные действия. У СТМ32 придется еще выяснять например какой канал таймера вызвал прерывание. В итоге на ст 10 минимальное прерывание около 5 тактов. У СТМ32 больше 30. А такт почти одинаковый.
Периферия у LPC намного лучше чем STM32. Разводка да, странная. У СТМ32 тоже кстати. :) Видать индусы укуренные теперь всем помогают. :) И LPC не дешевле и не дороже. Разве что те модели которых у ST все еще нет - с контроллером SDRAM, TFT и т.д. NXP дает куда больший выбор. Да и начинка там приятней. Меня от 16 битных таймеров в 32 битном ядре тошнит. От идиотской организации ДМА в стм. От жирнейшей эрраты. От ограничений типа если USB, то CAN не будет.
Дорогая память для FPGA это SDRAM за 2,5$? :) Или конфиг где хранится? Там тоже есть бюджетные варианты. Программу писать конечно все равно придется, но возможность сделать нужную периферию это очень ценная штука. Например можно некоторые задачи целиком реализовать в железе. Тот же шкив 60-2 - не надо будет прерываться по каждому зубу.
pow
QFP80 - Contributor
Posts: 39
Joined: Tue Feb 07, 2012 1:47 pm

Re: Выбор МК для впрыска (Selecting MCU for injector unit)

Post by pow »

Таймеры обсасывались уже где-то, да в ST10 их больше на 6 входов (именно входов), да в прерывание она заходит быстрее (насчёт совмещения векторов, чего то не понял, на STM32 вроде адрес как адрес, может если на асме писать чего и вылазит, а нормальных людей обычная void() где разместиш оттуда и работает), но общая производительность на мегагерц примерно одинаковая, а в мегагерцах АРМ горвздо длиннее, заход в прерывание 12 тактов - это да, но источников прерываний у АРМ больше, и контроллер прерываний хитрее. Опять же, под 166 среда разработки есть? (не украденнный кейл), под АРМ вполне халявный кокос с поддержкой жтаг и стлинк отладчиков. Эррата - следствие сложности и свежести чипа, на 80С166 в своё время тоже талмуды были, просто STM продали уже вылизанное за 10 лет ядро.
По совокупности выбор всё таки АРМ (может и не STM)
ДПКВ в STM32 похоже можно таймером без прерываний отработать (сохранять текущую длительность ипульса в регистр без участия процессора) далше ещё не копал.
Про FPGA - порядок цен еденицы доллара совсем не на то что способно в себе разместить образ процессора (сопоставимого с АРМ или 166),
кстати память конфигурации как раз дёшево, если неоригинал ставить. Да и заполучить в руки нормальный чип сложнее (никогда анкету не заполняли? с вопросами типа: ваше имя Уссама (Да/Нет) Фамилия Бен Ладен (Да\Нет), вы будете использовать наш замечательный продукт в разарбатываемов вами ядерной ракете (Да\Нет), причем ладно бы заказывал виртекс, а то сраный спартан за 12 баксов)
FPGA применительно к ДВС - простенькая, дешевая и только как прицеп к контроллеру загужающему в неё динамически изменяемый конфиг, для этого наверное и АТтини уже много.
Опять же если мне вдруг станет интересен ST10 куплю Bosh от калины с егазом и буду пытать.
Вобщем всё субъективно и пригодно для меня, объективно только одно АРМов в мире БОЛЬШЕ и программу, если чего, перенести будет куда.
Qwertty
LQFP144 - On Top Of The Game
Posts: 252
Joined: Thu Jul 26, 2012 12:35 pm

Re: Выбор МК для впрыска (Selecting MCU for injector unit)

Post by Qwertty »

pow wrote:Таймеры обсасывались уже где-то, да в ST10 их больше на 6 входов (именно входов)
Не входов. Вообще куда меньше каналов. У ST10 два хитрых таймера имеют их 32 штуки. Входы или выходы - в произвольных сочетаниях. Плюс еще 5 обычных таймеров - еще 5 входов или выходов.
pow wrote: да в прерывание она заходит быстрее (насчёт совмещения векторов, чего то не понял, на STM32 вроде адрес как адрес, может если на асме писать чего и вылазит, а нормальных людей обычная void() где разместиш оттуда и работает), но общая производительность на мегагерц примерно одинаковая, а в мегагерцах АРМ горвздо длиннее
Совмещение векторов - один вектор на 1 аппаратный девайс. К примеру в таймере STM32 4 канала и все 4 прерывания будут на 1 векторе. И уже в прерывании придется выяснять какой же канал вызвал прерывание. У ST10 для хитрых таймеров с сумарным числом каналов в 32 есть и 32 вектора прерываний. Выяснять уже ничего не надо. В мегагерцах STM32F103 гораздо длиннее? Ну если 72 гораздо больше 64, то да. :) Но вот 12 тактов частоты 72МГц занимают гораздо больше 1 такта 64МГц.
pow wrote: заход в прерывание 12 тактов - это да, но источников прерываний у АРМ больше, и контроллер прерываний хитрее. Опять же, под 166 среда разработки есть? (не украденнный кейл), под АРМ вполне халявный кокос с поддержкой жтаг и стлинк отладчиков. Эррата - следствие сложности и свежести чипа, на 80С166 в своё время тоже талмуды были, просто STM продали уже вылизанное за 10 лет ядро.
Источников прерываний у СТМ32 больше, но не векторов. Впрочем количество источников ничего не значит. СТ10 не проц широкого применения, а заточенный под конкретную задачу контроллер. И ему не нужны источники прерываний от USB например, потому что и USB не нужно. А вот для всего что нужно источник прерывания имеется. Причем со своими векторами, не с совмещенными. Поэтому и контроллер прерываний проще и быстрее. Со средой разработки сложности конечно. А отладки я в ST10 вообще не увидел, видимо только консоль. Насчет эрраты - посмотри другие армы. Те же LPC1778. Они намного свежее и навороченнее. Но эррата в разы тоньше. Просто у людей другое отношение, они не стремятся быть на рынке первыми. И сначала доводят до ума свои кристаллы. Судя по начинке в NXP работают нормальные люди. А вот в STM над кортексами трудятся какие то наркоманы. :) Да и эррата на 95% не по ядру. А по всяческим интерфейсам, таймерам и прочей обвязке.
pow wrote: По совокупности выбор всё таки АРМ (может и не STM)
На конкретной задаче - ЭБУ - тот же STM32F103 не конкурент ST10. Он банально слаб. Но зато дешев. Разница примерно в 8 раз в цене. :(
pow wrote: ДПКВ в STM32 похоже можно таймером без прерываний отработать (сохранять текущую длительность ипульса в регистр без участия процессора) далше ещё не копал.
Это банальный захват. Так могут все, но просто сохранять недостаточно. Нужно обрабатывать результат захвата. Причем в реалтайме. ДПКВ самае ресурсоемкая задача. В СЕКУ посмотри, там тоже захват используется. А потом нехило всяких разных действий. И это без впрыска, только зажигание.
pow wrote: Про FPGA - порядок цен еденицы доллара совсем не на то что способно в себе разместить образ процессора (сопоставимого с АРМ или 166),
кстати память конфигурации как раз дёшево, если неоригинал ставить. Да и заполучить в руки нормальный чип сложнее (никогда анкету не заполняли? с вопросами типа: ваше имя Уссама (Да/Нет) Фамилия Бен Ладен (Да\Нет), вы будете использовать наш замечательный продукт в разарбатываемов вами ядерной ракете (Да\Нет), причем ладно бы заказывал виртекс, а то сраный спартан за 12 баксов)
Я спартан в магазине куплю. Или циклон. Или на эбее. Про аналог по цене STM32 речи не было. А вот на стоимость ST10 вполне можно набрать конфигурацию на FPGA.
pow wrote: FPGA применительно к ДВС - простенькая, дешевая и только как прицеп к контроллеру загужающему в неё динамически изменяемый конфиг, для этого наверное и АТтини уже много.
Опять же если мне вдруг станет интересен ST10 куплю Bosh от калины с егазом и буду пытать.
Вобщем всё субъективно и пригодно для меня, объективно только одно АРМов в мире БОЛЬШЕ и программу, если чего, перенести будет куда.
Да смысла нет пока не в арме, не в FPGA. Надо пощупать ДВС. Пока я не знаю что за вычислительные затраты потребуются. Знаю только что Январь справляется. И Вемс тоже. Поставив проц пошустрей раз так в 6 чем в Январе я с аналогичной задачей справлюсь не вылизывая софт на асме. Закладывать кристалл на вырост смысла нет. Если и перерасту свое железо, то лет через 5. А там может появится что более привлекательное чем то, что есть сейчас. Новую схему/плату сделать несложно. Вемсовцы вот еще в 2004 году думали сменить платформу. Не сменили и пока им хватает. 8 лет однако прошло.
Вот если бы R5F562TAADFH был подоступней... Он идеален почти. Шустрый - быстрее кортекса существенно. С нормальными векторами. Всего что надо типа таймеров и АЦП в нем хватает. Компилятор бесплатный имеется. Цена даже чуть ли не ниже чем у STM32F103. Отладчик дешевый вроде - если JLink все же заработает с ним. Но трудно купить сам кристалл. Я на эбее даже поискал. А Элтех не возит их почему то. Фиговый официальный представитель :(
pow
QFP80 - Contributor
Posts: 39
Joined: Tue Feb 07, 2012 1:47 pm

Re: Выбор МК для впрыска (Selecting MCU for injector unit)

Post by pow »

В любом случае я пока копаю STM32 (мне они интересны, для этих целей достаточны + у меня есть в наличии)
Мотороллеры вроде Абтроникс возил, но у них на 300 баксов одного наименования минимум. (в своё время тоже закапал слюнями весь даташит, отличный ккристалл на основе PowerPC специально заточенный под управление двигателями, но испугался незнакомой архитектуры)
Post Reply