Два месяца назад мы остановились на том, что rusEfi стал полнофункциональным блоком управления — вот только аппаратная часть напоминала взрыв на макаронной фабрике. Напомню, rusEfi — это автомобильный блок управления с открытым кодом и железом на платформе stm32.
Мы не сидели сложа руки и сфокусировались как раз на аппаратной стороне вопроса: задача была сделать шаг вперёд по железу, и я думаю прогресс на лицо:
Было no name v3:
Стало Франкенштейт 0.1:
Понятно что и это еще исключительно инженерная платформа, а не конечный продукт — но главное, что прогресс есть :)
Плата естественно работает
10 плат “Франкенштейн 0.1” уже изготовлены, еще 10 плат — заказаны. Сейчас мне нужно собрать две платы и послать одну в Канаду, а вторую в Словакию — вот такой у нас проект интернациональный. Исходники платы кстати тут.
Разработку железа поставили на паузу и возвращаемся к софту и внедрению. С точки зрения самого управления двигателем прошивка вперёд не продвинулась — прошивка продвинулась вперёд в плане настраивоемости и удобства отладки: появилась поддержка HD44780 символьного экранчика, резко уменьшилось количество условной компиляции — значительно больший процент настроек теперь можно именять на лету, через нашу отладочную консоль или через популярную универсальную програму настройки ЭБУ. Появился SD слот. Появилась CAN шина — которая по большому счёту нам пока не нужна. Появился драйвер популярного GPS модуля — который на текущий момент вообще чистой воды балавство :) Одним словом, мы строили фундамент — и мне кажется мы его постоили.
Теперь можно заняться самым вкусным — теперь из всего этого можно сделать удобный, универсальный и простой автомобильный блок управления.
Лично я в первую очередь — опытный программист, так что прошивку будем писать основательно:
Юнит тесты & непрерывная интеграция.
Три дня назад перешли с C на С+ — будет совсем немного ООП, так что пока будем считать только один плюс в слове “C+”.
Неделю назад появилась возможность компилировать основную логику прошивки под Windows — из этого должно скоро получиться автоматизированное функциональное тестирование.
Вы спросите, так чего же тут не хватает пока в прошивке? Многого пока не хватает. Изменения некоторых параметров пока требует перезагрузки прошивки — не умеет она пока на лету переключаться из одного режима в другой. Конфигурирование в онлайне нужно доделать аккуратно — некоторые вещи до сих пор задаются в коде.
Так что пока программировать нейронные сети немного рано, пока нужно допрограммировать весь фундаментальный функционал. Да, пока задачи относительно скучные — но интерес добавляют требования кристальной чистоты коды и удобства для пользователя.
Так что если здесь есть педантичные программисты-перфекционисты, которые хотят научиться чему-то новому — присоединяйтесь :)
Ссылки по теме:
http://rusefi.com/wiki/index.php?title=Main_Page/ru
http://rusefi.com/forum/
Автор: andrey239