Два микроконтроллера
Два микроконтроллера
Есть такая идея, взять и поставить два микроконтроллера. Смысл в том, чтобы получить из ширпотребного мк периферийные возможности на уровне специализированных. Можно или разделить задачи по двум мк или продублировать их. Связь между мк наладить например через SPI. Видел похожие OEM решения, но не знаю какие задачи там выполняет продублированный мк. У кого какие мысли?
- AndreyB
- Site Admin
- Posts: 14373
- Joined: Wed Aug 28, 2013 1:28 am
- Location: Jersey City
- Github Username: rusefillc
- Slack: Andrey B
Re: Два микроконтроллера
Моя мысль - постановка вопроса неправильная, сначала должна появиться необходимость чего-то внешнего - а уже потом в качестве решения проблемы может появится что-то внешнее.
При этом нужно понимать, что 48-ми ногую плату мы делаем, чтоб EGT блок разместить под капотом и связать с мозгом CAN шиной. Обоснование - чтоб не тянуть термопару в салон, второе обоснование - сделать небольшое законченное устройство для отработки процессов логистики и так далее, это почти не технические причины.
И второй потенциальный проектик - drive-by-wire на базе TMS570, во многом просто чтоб попробовать TMS570 и чтоб максимально изолированно.
При этом нужно понимать, что 48-ми ногую плату мы делаем, чтоб EGT блок разместить под капотом и связать с мозгом CAN шиной. Обоснование - чтоб не тянуть термопару в салон, второе обоснование - сделать небольшое законченное устройство для отработки процессов логистики и так далее, это почти не технические причины.
И второй потенциальный проектик - drive-by-wire на базе TMS570, во многом просто чтоб попробовать TMS570 и чтоб максимально изолированно.
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: Два микроконтроллера
Необходимость появляется в случае отказа от программного шедулера выходов. Таймеров не хватает на что-то большее чем 4-6 цилиндров. Суть именно в размещении двух мк на одной плате рядом друг с другом. И дальше уже появляются варианты реализации. Или это по сути два эбу на одной плате или один эбу в котором задачи разделены по какому-то принципу.
Вот для примера как это выглядит в железе
Вот для примера как это выглядит в железе
- Attachments
-
- maxsima_a56-n86_z31_.jpg (865.7 KiB) Viewed 14059 times
- AndreyB
- Site Admin
- Posts: 14373
- Joined: Wed Aug 28, 2013 1:28 am
- Location: Jersey City
- Github Username: rusefillc
- Slack: Andrey B
Re: Два микроконтроллера
Чисто программный планировщик нас покинул, ты видел гибридный планировщик SingleTimerExecutor.cpp? Мне кажется, что его должно хватить - но я это мнение никому не навязываюSergey89 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: Два микроконтроллера
Да. Видел. Этот конечно лучше, но всё равно вызывает некоторые сомнения.
Думаю, что самый простой вариант это два мк, которые управляют по 4-6 цилиндров каждый. Это покроет 99% конфигураций. Но связь между ними удобнее иметь чем не иметь. Хотя бы для того, чтобы общаться с ними через один интерфейс.
Думаю, что самый простой вариант это два мк, которые управляют по 4-6 цилиндров каждый. Это покроет 99% конфигураций. Но связь между ними удобнее иметь чем не иметь. Хотя бы для того, чтобы общаться с ними через один интерфейс.
Re: Два микроконтроллера
с середины 90-х так никто не делает. если ставят 2й процессор то его используютт в основном как несинхронный I/O extender - соответственно на него навешивают весь асинхронный и медленный ввод вывод... какие нибудь шимы релюхи медленные датчики.russian wrote: Самый простой вариант для настаивающих на аппаратных прерываниях - просто два процессора, которые друг с другом не общаются - просто один управляет искрой, а второй топливом?
при этом на первый катушки-форсунки и быстрые датчики...
с середины 2000х процессоры такие жирные стали что в двух смысла нет. по 32 канала ацп че только стоят.
Re: Два микроконтроллера
Чаще всего, 1 мк управляет мотором, второй управляет акпп.Sergey89 wrote:Видел похожие OEM решения, но не знаю какие задачи там выполняет продублированный мк. У кого какие мысли?
В мозге, фото которого ты привел. Скорее всего так и есть.
2мк рулят двигателем в мозге от st205. Но там тоже жестко, один мк рулит топливом и зажиганием, второй мк рулит бустконтроллером, помпой интеркулера, топливным насосом, кондиционером, то есть ерундой, которая не требует существенного быстродействия мк.
Красноярск. Старое ведерко с 3s-ge на ватомате.
Re: Два микроконтроллера
Вот что можно получить из 100 выводного корпуса:
6 выходов на форсунки (4 выхода при желании можно сделать с поддержкой peak & hold на ещё одном 4 канальном таймере)
6 выходов на катушки зажигания
8 выходов с поддержкой ШИМ
13 входов АЦП
1 выход ЦАП
2 входа для захвата сигналов
2 SPI
1 I2C
1 CAN
1 USB
1 USART
Все силовые выходы, а так же входы для захвата получается посадить на аппаратные таймеры. Ещё остаётся два 4 канальных таймера и два 1 канальных.
Из двух МК получаем в 2 раза больше всего.
6 выходов на форсунки (4 выхода при желании можно сделать с поддержкой peak & hold на ещё одном 4 канальном таймере)
6 выходов на катушки зажигания
8 выходов с поддержкой ШИМ
13 входов АЦП
1 выход ЦАП
2 входа для захвата сигналов
2 SPI
1 I2C
1 CAN
1 USB
1 USART
Все силовые выходы, а так же входы для захвата получается посадить на аппаратные таймеры. Ещё остаётся два 4 канальных таймера и два 1 канальных.
Из двух МК получаем в 2 раза больше всего.
- AndreyB
- Site Admin
- Posts: 14373
- Joined: Wed Aug 28, 2013 1:28 am
- Location: Jersey City
- Github Username: rusefillc
- Slack: Andrey B
Re: Два микроконтроллера
какую КОНКРЕТНО мы решаем ЗАДАЧУ?
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: Два микроконтроллера
Делаем конкурентоспособный ЭБУ
- AndreyB
- Site Admin
- Posts: 14373
- Joined: Wed Aug 28, 2013 1:28 am
- Location: Jersey City
- Github Username: rusefillc
- Slack: Andrey B
Re: Два микроконтроллера
ооооооочень мутная формулировочкаSergey89 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: Два микроконтроллера
Самые тюнингуемые в РФ автомобили имеют или 4 или 6 цилиндров. Им этого функционала для работы мотора более чем. Не хватает только +1 вход для захвата сигнала спидометра, но это решаемо, можно неиспользуемый ацп занять.Sergey89 wrote:Вот что можно получить из 100 выводного корпуса:
6 выходов на форсунки (4 выхода при желании можно сделать с поддержкой peak & hold на ещё одном 4 канальном таймере)
6 выходов на катушки зажигания
8 выходов с поддержкой ШИМ
13 входов АЦП
1 выход ЦАП
2 входа для захвата сигналов
2 SPI
1 I2C
1 CAN
1 USB
1 USART
Можно даже сделать управление несложной акпп, с тремя-четырьмя соленоидами.
Красноярск. Старое ведерко с 3s-ge на ватомате.
Re: Два микроконтроллера
Захватывать спидометр с АЦП - наверно самый оригинальный совет от дилетанта.
Re: Два микроконтроллера
РФ != Не весь мир;
И я где-то слышал, что в Америке любят V8.
И я где-то слышал, что в Америке любят V8.
Я на Drive2 Alfa Romeo 156 SW
Re: Два микроконтроллера
Для этого и ставится второй микроконтроллер. В итоге получаем поддержку 12 цилиндров с последовательным впрыском и индивидуальными катушками. При этом можно гарантировать высокую точность всех генерируемых сигналов.
Re: Два микроконтроллера
Два ЭБУ в параллель, не?Sergey89 wrote:Для этого и ставится второй микроконтроллер. В итоге получаем поддержку 12 цилиндров с последовательным впрыском и индивидуальными катушками. При этом можно гарантировать высокую точность всех генерируемых сигналов.
Я действительно дилетант. Но откуда его тогда захватывать?Maxi wrote:Захватывать спидометр с АЦП - наверно самый оригинальный совет от дилетанта.
Или какой нибудь дохлый чип, как расширение GPIO, и отправлять в stm32 по can?
Красноярск. Старое ведерко с 3s-ge на ватомате.
Re: Два микроконтроллера
Можно и так сказать, но мысль в том, чтобы наладить между ними связь для обмена данными. Тогда получится избежать дублирования сигналов в оба мк. И в случае чего второй мк можно будет использовать просто для расширения I/O первого.maddmr wrote:Два ЭБУ в параллель, не?Sergey89 wrote:Для этого и ставится второй микроконтроллер. В итоге получаем поддержку 12 цилиндров с последовательным впрыском и индивидуальными катушками. При этом можно гарантировать высокую точность всех генерируемых сигналов.
Last edited by Sergey89 on Sat Jan 17, 2015 1:33 pm, edited 1 time in total.