RusEfi

andrey2

Местный
Регистрация
11.01.2015
Сообщения
116
Лайки
1
#1
Всем привет! В нашем проекте тесно переплетены разные электронные штуки, софт и настоящие моторы (чугунные или алюминиевые, автомобильные и мотоциклетные - и даже лодочные!, бензиновые И метаноловые). В проекте принимает участие множество людей с самыми разнообразными интересами со всего мира.

История проекта в развитии:

http://habrahabr.ru/post/198672/
http://habrahabr.ru/post/201472/
http://habrahabr.ru/post/206154/
http://habrahabr.ru/post/215081/
http://habrahabr.ru/post/233393/
http://habrahabr.ru/post/244737/

Сам проект:

http://rusefi.com/wiki/index.php?title=Main_Page/ru

RusEfi - это... лучше видео посмотреть:

www.youtube.com/watch?v=CD2lb1KpI3M

Но можно и по фотографии всё понять:


Вся остальная информация: http://rusefi.com/forum/
 
Последнее редактирование модератором:

mivaol

Абориген
Регистрация
04.11.2013
Сообщения
2,353
Лайки
9
#2
С приборками по CAN это интересно.
Кстати кан в на плате разведен?
 

andrey2

Местный
Регистрация
11.01.2015
Сообщения
116
Лайки
1
#3
Кстати кан в на плате разведен?
Приборки по CAN - это тривиально.

Логическая половина CAN реализована прямо в железе stm32f4 (у каждого чипа для mp3 плеера есть один или два CAN интерфейса), физическая половина - микросхема SN65HVD230 припаянная на обе наши платы - и на простого Франкенштейна, и на посложнее Франкензо
 

ALI

Абориген
Регистрация
18.04.2011
Сообщения
1,138
Лайки
0
#4
смысл объясните + 2 л.с от стока?
 

andrey2

Местный
Регистрация
11.01.2015
Сообщения
116
Лайки
1
#5
смысл объясните + 2 л.с от стока?
Сделали мозг с нуля, первый раз поставили на динамометр по знакомству. Спец по настройке болел и его там не было - мы как-то потыкались и сняли всего +2 л.с. от стока.

Я бы сказал, что смысл в потенциале - но на этот счёт есть разные мнения :) Безусловно, это всё сырая поделка в режиме хобби. Вот, решил просто рассказать про своё хобби - делать мозг с нуля. Лично мне смысл, что умные люди иногда дают советы по делу, ну и у народа бывают просто идеи интересные.

В мае попробуем гонку проехать на этом деле - чисто по приколу.
 

induke

Модератор
Команда форума
Регистрация
13.12.2009
Сообщения
29,246
Лайки
3,322
#6
ты для начала расскажи как вышло что довольно мощный проц вы загрузили на 100%???????
он мощнее января раз так в 50. я сам и с 80с51 и с стм32 работаю
8032 кодил еще лет 13 назад, м3 использую года 4 уже.
303тий проц мп3 раскрывает на частоте 10 мгц!!!!
 

andrey2

Местный
Регистрация
11.01.2015
Сообщения
116
Лайки
1
#7
ты для начала расскажи как вышло что довольно мощный проц вы загрузили на 100%???????
Ты для начала расскажи, откуда у тебя мнение, что мы довольно мощный проц загрузили на 100%? Потому что мы ни на какие 100% естесвенно никогда ничего не загружали. Если ты потом расскажешь, как померить загрузку процессора в ситуации встраиваемой системы - я буду очень благодарен за методологию и сообщу, на сколько % мы заняли процессор.

У нас была ситуация, когда 60-2 триггер (самый тяжёлый триггер - больше всего событий за единицу времени) тормозил и начинал пропускать на 3000 оборотов. Эту ситуацию мы оперативно победили.

Ты хочешь узнать подробности, где было узкое место и какими оптимизациями я решил проблему? Или ты хочешь просто померяться, кто из нас круче программист? Мою квалицикацию при желании можно погуглить.
 

induke

Модератор
Команда форума
Регистрация
13.12.2009
Сообщения
29,246
Лайки
3,322
#8
Ты для начала расскажи, откуда у тебя мнение, что мы довольно мощный проц загрузили на 100%? Потому что мы ни на какие 100% естесвенно никогда ничего не загружали. Если ты потом расскажешь, как померить загрузку процессора в ситуации встраиваемой системы - я буду очень благодарен за методологию и сообщу, на сколько % мы заняли процессор.

У нас была ситуация, когда 60-2 триггер (самый тяжёлый триггер - больше всего событий за единицу времени) тормозил и начинал пропускать на 3000 оборотов. Эту ситуацию мы оперативно победили.

Ты хочешь узнать подробности, где было узкое место и какими оптимизациями я решил проблему? Или ты хочешь просто померяться, кто из нас круче программист? Мою квалицикацию при желании можно погуглить.
1. у вас на сайте написано что вы его загрузили.......
придумать? берешь голый проц и считаешь за 1 милисекунду от ноля до того сколько сможешь. потом берешь свою прогу и пока она нихрена не делает тоже считаешь. получаешь понятное дело меньше. и сравниваешь. вот тебе и загрузка.

2. ребят, реперный диск 60-2 является самым точным интсрументом и вы его не осили....... я валяюсь. это делал январь 4.1 в котором уф пзу еще было и проц начала 80х годов с тактовой шины а-д = 1мгц!!!!

3. как вы могли не осилить хип9011 то?????? да это же набор фильтров и интегратор!!! работу интегратора прохождят у меня на кафедре на 3м курсе))

почему у вас плата как ардуина? нафига пины от проца на дырки выведены?))
это ваще кошмар!!!!!!
нафига вам обьектный язык какой то непонятный???? ардуинщики чтоль???
поэтому у вас все и тупит. потому что по сравнению с асмом там код пухнет в 20 раз и большую часть времени проц занимается неизвестно чем - листинг кода почитай!
январь 5.1 репер 60-2 спокойно обрабатывает на 12500 оборотах!!

зачем мне описывать как 8032 на ассемблере в 20 раз быстрее работает?

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

ну давай почитаю кто ты там в гугеле. что читать???


я не хочу ни с кем мериться писькаи и регалиями. мне сначала даже было интересно.
я сам не могу сказать что я мегакодер, не те у меня задачи и работа немного другая к сожалению.
но вся фишка в том что у меня угол зрения на все эти проблемы = 360градусов а у вас явно дай бог 90.
я вам просто высказываю мнение человека который всем этим занимается в одно рыло 18 лет. всем тем чем вы там вдесятером вместе взятые.
и электронику сочиняю и платы развожу и коды пишу начиная от машинных кодов канчая сишником и все тестирую за 5 минут и что самое главное проблемы выявляю очень быстро всем комплексом мер и средств.

напппример мой знакомый бился почему не принимает с компорта проц. бился очень долго. пока не пришел к нему я и не ткнул осцилографом в провода и обнаружилось что в коде для проца порт настроен на 38400 а на самом деле кварц херовый был и скорость на 10% меньше и ошибки фреймов постоянно были. а он не электронщик - он такого предложить не мог даже.

поэтому у вас и такие траблы и читать просто грустно все это.
и смотреть на плату грустно.
потому что всё это я умел еще 12 лет назад.
и смысл вашей темы непонятен
 
Последнее редактирование:

induke

Модератор
Команда форума
Регистрация
13.12.2009
Сообщения
29,246
Лайки
3,322
#10
нафига вы взяли проц у которого 144 ноги? или скока там не вижу. у вас же выводов с мозга 40 штук. плата пустая, дорги кудато вьются....... а зачем......
что это за мозг у которого силовых элементов нету внутри?
чем управляются форсы, катушки? навесным?? это значть огромная куча соплей и куча коробочек еще нужна. все это отваливаться будет в итоге через полгода.
 

andrey2

Местный
Регистрация
11.01.2015
Сообщения
116
Лайки
1
#11
andrey2, Расскажи в чем было "узкое место" с репером 60-2, и как победили.
Рассказываю. Начать нужно с описания алгоритма синхронизации триггера: 60-2 даёт нам 58 нарастаний и 58 спадов. Текущий универсальный декодер просто ищет нетипично широкий пропуск или между спадами, или между нарастаниями - это параметризовано. Первый импульс после пропуска мы сейчас считаем особым нулевым импульсом, следующие углы и импульсы считаем от него. В текущей имплементации у нас 1/120 (до следующего события) цикла двигателя, чтоб сделать все перерассчёты, которые мы делаем один раз за оборот. 1/120 оборота на 3000 оборотов в минуту на 168MHz это кажется что-то порядка 30 000 тактов процессора.

В момент первого зуба нам нужно
1) перерассчитать топливо на следующий цикл
2) понять угол зажигания
3) запланировать по углу зажигания и и времени впрыска топлива, каким зубьям будут соответствовать эти события в угловой системе координат - для всех событий следующего цикла двигателя.

Так как планировщик у нас универсальный (триггеры-то бывают разные), мы не умножаем условно на 1/120 углы в зубья - а мы должны искать индекс зуба по заданному углу. 30 000 тиков к сожалению не означает, что мы можем сделать 30 000 операций - вход в метод и ветвления в этой архитектуре далеко не 1 такт.

Сначала просто немного экономии на спичках - inline вместо вызовов. Не хватило. В итоге заменил бинарный поиск индекса угла на таблицу предвычесленных индексов для всех целочисленных углов от 0 до 360 - этой оптимизации хватило, чтоб проблема пропала.

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

RS-TUNING

Абориген
Регистрация
09.12.2007
Сообщения
2,879
Лайки
6
Адрес
177RUS
#13
Приборки по CAN - это тривиально.

Логическая половина CAN реализована прямо в железе stm32f4 (у каждого чипа для mp3 плеера есть один или два CAN интерфейса), физическая половина - микросхема SN65HVD230 припаянная на обе наши платы - и на простого Франкенштейна, и на посложнее Франкензо
А чем выдергивали CAN с приборной панели?
 

andrey2

Местный
Регистрация
11.01.2015
Сообщения
116
Лайки
1
#15
В видео мелькнул слайд, что есть цикловое наполнение, которое Speed Density. Кроме этого поддерживается и простая таблица по ДМРВ или по педали газа.

Однажды кто-то переведёт на русский страницу с подробностями - http://rusefi.com/wiki/index.php?title=Manual:Software:Fuel_Control
 

andrey2

Местный
Регистрация
11.01.2015
Сообщения
116
Лайки
1
#16
Друзья, я тут новичёк - я не могу отвечать на личные сообщения пока :(
 

11234

Пользователь
Регистрация
03.03.2013
Сообщения
59
Лайки
0
#17
С виду похоже на "черезжопусобранный вемс" .))
 

11234

Пользователь
Регистрация
03.03.2013
Сообщения
59
Лайки
0
#18
andrey2, сначала всё рекламится как опенсорс, а потом выясняется что платки и компоненты за американские рубли... Ценники тоже не гуманные ни разу. В чем тогда прикол этих "разработок"?
 

andrey2

Местный
Регистрация
11.01.2015
Сообщения
116
Лайки
1
#20
andrey2, сначала всё рекламится как опенсорс, а потом выясняется что платки и компоненты за американские рубли... Ценники тоже не гуманные ни разу. В чем тогда прикол этих "разработок"?
мне кажется, ты не понимаешь слова "open source"
Ты видимо хочешь "free beer" - чтоб тебе кто-то и железо бесплатно выслал? так не бывает. Бери gerber файлы - иди заказывай у китацйев бесплатные платы. Потом бери список компонентов - и заказывай где хочешь бесплатные транзисторы и бесплатные резисторы. Вся документация для этого есть - есть и файлы плат, есть и список транзисторов. И даже лицензия разрешает тебе всё это заказать самому и купить самому. Ой, я забыл - тебе бесплатно китайцы сделают :)