[info] Текущий прогресс по прошивке.

Про байтики и логику ЭБУ
Post Reply
puff
contributor
contributor
Posts: 2961
Joined: Mon Nov 11, 2013 11:28 am
Location: Moskau

Re: Текущий прогресс по прошивке.

Post by puff »

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

#define - служебное слово, допустим
FUEL_PUMP_LOGIC - определяемый вывод - каково множество выводов, которые можно определять?
условия - похоже в кавычках.
а дальше месиво параметров, угловых скобок и логических операторов. ок, я прочитал про обратную польскую запись. OR - оператор, который применяется. операнды - почему один идёт просто так, а другой - в угловых скобках? где посмотреть доступное множество параметров?

и кстати, ведь этот дефайн определяется не во время сборки?
User avatar
AndreyB
Site Admin
Posts: 14327
Joined: Wed Aug 28, 2013 1:28 am
Location: Jersey City
Github Username: rusefillc
Slack: Andrey B

Re: Текущий прогресс по прошивке.

Post by AndreyB »

puff 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
User avatar
Maxi
Sr Consultant
Sr Consultant
Posts: 786
Joined: Wed Oct 23, 2013 4:25 pm

Re: Текущий прогресс по прошивке.

Post by Maxi »

У меня даже псевдокод виртуального процессора понятнее выглядит чем запись

time_since_boot 4 < rpm 0 > OR
User avatar
AndreyB
Site Admin
Posts: 14327
Joined: Wed Aug 28, 2013 1:28 am
Location: Jersey City
Github Username: rusefillc
Slack: Andrey B

Re: Текущий прогресс по прошивке.

Post by AndreyB »

Ну значит сделаю онлайн конверт из нормальной в ОПН и обратно :) https://sourceforge.net/p/rusefi/tickets/104/

Бонус этой нотации - её просто обрабатывать и она быстро считается.
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
User avatar
Maxi
Sr Consultant
Sr Consultant
Posts: 786
Joined: Wed Oct 23, 2013 4:25 pm

Re: Текущий прогресс по прошивке.

Post by Maxi »

А по мне это какая то лишняя малопонятная абстрактная не нужная прокладка! Поскольку в нативном С-нифига это точно так же записывается в одну строку - но она понятна любому чайнику.
User avatar
rus084
contributor
contributor
Posts: 678
Joined: Sun Dec 01, 2013 1:40 pm
Location: Russia , Stavropol

Re: Текущий прогресс по прошивке.

Post by rus084 »

нужно что-то похожее на интерплетатор бэйсика .


кстати , ты можешь приделать в консоль ручное/полуавтоматическое управление пинами контроллера ?
User avatar
AndreyB
Site Admin
Posts: 14327
Joined: Wed Aug 28, 2013 1:28 am
Location: Jersey City
Github Username: rusefillc
Slack: Andrey B

Re: Текущий прогресс по прошивке.

Post by AndreyB »

rus084 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
User avatar
AndreyB
Site Admin
Posts: 14327
Joined: Wed Aug 28, 2013 1:28 am
Location: Jersey City
Github Username: rusefillc
Slack: Andrey B

Re: Текущий прогресс по прошивке.

Post by AndreyB »

Maxi wrote:Поскольку в нативном С-нифига это точно так же записывается в одну строку - но она понятна любому чайнику.
Возможно мы не понимаем друг друга? Смысл в том, что в прошивку можно будет послать команду
set_user_out 3 "rpm 500 > coolant 90 > OR"
с терминала, без перекомпиляции нативного С кода.

Для начала так, может кто-то пришлёт патч и можно будет слать
set_user_out 3 "(rpm > 500) OR (coolant > 90)"
и преобразование будет автоматическое. Пока на это нет времени - пока лучше так, чем никак.
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
User avatar
rus084
contributor
contributor
Posts: 678
Joined: Sun Dec 01, 2013 1:40 pm
Location: Russia , Stavropol

Re: Текущий прогресс по прошивке.

Post by rus084 »

russian wrote:
rus084 wrote:ты можешь приделать в консоль ручное/полуавтоматическое управление пинами контроллера ?
я пока тебя не понимаю, опиши пожалуйста пожелание сильно понятнее :)
управление GPIO вручную через консоль с возможностью установки определенной задержки включения и разрешенной длительности непрерывно включенного состояния .
puff
contributor
contributor
Posts: 2961
Joined: Mon Nov 11, 2013 11:28 am
Location: Moskau

Re: Текущий прогресс по прошивке.

Post by puff »

да! даешь вкладку в консоль для промывочной инжекторной установки! (моделирование работы инжектора на разных режимах мотора, с двухсекундными паузами между - проверять герметичность и равномерность налива)
User avatar
Sergey89
contributor
contributor
Posts: 839
Joined: Wed Sep 25, 2013 5:30 pm
Location: Russia, Velikiy Novgorod

Re: Текущий прогресс по прошивке.

Post by Sergey89 »

Управлять форсунками и сейчас можно через консоль.
User avatar
Sergey89
contributor
contributor
Posts: 839
Joined: Wed Sep 25, 2013 5:30 pm
Location: Russia, Velikiy Novgorod

Re: Текущий прогресс по прошивке.

Post by Sergey89 »

russian wrote:
Maxi wrote:Поскольку в нативном С-нифига это точно так же записывается в одну строку - но она понятна любому чайнику.
Возможно мы не понимаем друг друга? Смысл в том, что в прошивку можно будет послать команду
set_user_out 3 "rpm 500 > coolant 90 > OR"
с терминала, без перекомпиляции нативного С кода.

Для начала так, может кто-то пришлёт патч и можно будет слать
set_user_out 3 "(rpm > 500) OR (coolant > 90)"
и преобразование будет автоматическое. Пока на это нет времени - пока лучше так, чем никак.
ты хочешь, чтобы мк сам парсил эту строку или она будет парсится на клиенте и передаваться в мк в неком байт-коде?
puff
contributor
contributor
Posts: 2961
Joined: Mon Nov 11, 2013 11:28 am
Location: Moskau

Re: Текущий прогресс по прошивке.

Post by puff »

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


про парсинг - имхо главное, чтобы проверять легитимность этого выражения. понятно, что никто взламывать не будет. но имхо бездумной настройкой можно получить труднодиагностируемый глюк..
User avatar
rus084
contributor
contributor
Posts: 678
Joined: Sun Dec 01, 2013 1:40 pm
Location: Russia , Stavropol

Re: Текущий прогресс по прошивке.

Post by rus084 »

про гуй опередили...

Установил наконец кикад и не понимаю как с ним работать .
User avatar
Maxi
Sr Consultant
Sr Consultant
Posts: 786
Joined: Wed Oct 23, 2013 4:25 pm

Re: Текущий прогресс по прошивке.

Post by Maxi »

russian wrote:
Maxi wrote:Поскольку в нативном С-нифига это точно так же записывается в одну строку - но она понятна любому чайнику.
Возможно мы не понимаем друг друга? Смысл в том, что в прошивку можно будет послать команду
set_user_out 3 "rpm 500 > coolant 90 > OR"
с терминала, без перекомпиляции нативного С кода.
Ну положим послать можно - а зачем?
какое практическое применение?
для настройки ведь вообще не требуется изменение алгоритмической базы системы на лету.
User avatar
AndreyB
Site Admin
Posts: 14327
Joined: Wed Aug 28, 2013 1:28 am
Location: Jersey City
Github Username: rusefillc
Slack: Andrey B

Re: Текущий прогресс по прошивке.

Post by AndreyB »

Sergey89 wrote:ты хочешь, чтобы мк сам парсил эту строку или она будет парсится на клиенте и передаваться в мк в неком байт-коде?
мк уже парсит строку вида

Code: Select all

rpm 500 > coolant 90 > OR
а вот строку вида (rpm > 500 ) or (coolant > 90) будет парсить java dev console, преобразовывать в RPN и посылать в МК в виде RPN строки
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
User avatar
AndreyB
Site Admin
Posts: 14327
Joined: Wed Aug 28, 2013 1:28 am
Location: Jersey City
Github Username: rusefillc
Slack: Andrey B

Re: Текущий прогресс по прошивке.

Post by AndreyB »

Sergey89 wrote:Управлять форсунками и сейчас можно через консоль.
таки да, назначай первую форсунку на этот вывод и делай fuelbench - и будет тебе счастье. Я добавлю в http://rusefi.com/wiki/index.php?title=Manual:Software:Fuel_Control чуть-чуть подробностей утром, попробую :)
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
User avatar
AndreyB
Site Admin
Posts: 14327
Joined: Wed Aug 28, 2013 1:28 am
Location: Jersey City
Github Username: rusefillc
Slack: Andrey B

Re: Текущий прогресс по прошивке.

Post by AndreyB »

Maxi 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
puff
contributor
contributor
Posts: 2961
Joined: Mon Nov 11, 2013 11:28 am
Location: Moskau

Re: Текущий прогресс по прошивке.

Post by puff »

уже почти день, а по ссылке постом выше никаких обновлений… :-(
User avatar
AndreyB
Site Admin
Posts: 14327
Joined: Wed Aug 28, 2013 1:28 am
Location: Jersey City
Github Username: rusefillc
Slack: Andrey B

Re: Текущий прогресс по прошивке.

Post by AndreyB »

puff 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
User avatar
AndreyB
Site Admin
Posts: 14327
Joined: Wed Aug 28, 2013 1:28 am
Location: Jersey City
Github Username: rusefillc
Slack: Andrey B

Re: Текущий прогресс по прошивке.

Post by AndreyB »

Добавил фичу продувки цилиндров при старте: если крутим стартёром и газ в пол, то подача топлива прекращается.

Этот режим активирован по-умолчанию, можно контролировать командами enable cylinder_cleanup и disable cylinder_cleanup
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
User avatar
AndreyB
Site Admin
Posts: 14327
Joined: Wed Aug 28, 2013 1:28 am
Location: Jersey City
Github Username: rusefillc
Slack: Andrey B

Re: Текущий прогресс по прошивке.

Post by AndreyB »

@ смотрит осцилографом на соленоид холостого хода и что-то там всё неожиданно - я потенял нить. см http://rusefi.com/forum/viewtopic.php?f=3&t=666&start=10 и http://www.diyautotune.com/tech_articles/how_to_megasquirt_your_mazda_miata.htm секцию про PWM IAC Settings

шайтан электроники, в сухом итоге ХХ на миате пока кажется не работает
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
puff
contributor
contributor
Posts: 2961
Joined: Mon Nov 11, 2013 11:28 am
Location: Moskau

Re: Текущий прогресс по прошивке.

Post by puff »

хм. имхо смахивает на что-то типа pick&hold как для низкоомных форсунок? а как это сделано в стоковом модуле?
а что такое tip120 в ссылке на diyautotune? там собственно некие базовые настройки и никаких методик не приведено.
я бы попробовал снять логическим анализатором сигнал с процессора оем модуля - было бы понятно, насколько удачно попадание с т.зр. софта. ну а потом останется смотреть-анализировать железную часть. похоже, именно поэтому и был переход на шаговые моторы?
puff
contributor
contributor
Posts: 2961
Joined: Mon Nov 11, 2013 11:28 am
Location: Moskau

Re: Текущий прогресс по прошивке.

Post by puff »

и кстати к словам джареда (если я правильно его понял). на старых ауди с вот таким двухконтактным клапаном как раз говорили (как диагностировть), что он должен постоянно легко вибрировать при включении зажигания. видимо, так и добивались его движения?
meXanicus
contributor
contributor
Posts: 314
Joined: Sat Dec 21, 2013 2:42 pm
Location: Russia, Rostov-na-Donu

Re: Текущий прогресс по прошивке.

Post by meXanicus »

На сколько я понимаю работу двухпроводных моментных регуляторов, то один провод постоянный плюс. Второй ло-сайд. Шимом все это дело стремится открыть, а пружина в свою очередь закрыть. От туда и вибрация. В выключенном состоянии полностью закрыт.
Я на Drive2 Alfa Romeo 156 SW
User avatar
AndreyB
Site Admin
Posts: 14327
Joined: Wed Aug 28, 2013 1:28 am
Location: Jersey City
Github Username: rusefillc
Slack: Andrey B

Re: Текущий прогресс по прошивке.

Post by AndreyB »

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

Видимо сегодня мне придётся найти в бардаке мой тестовый клапан и поиграться :(
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
meXanicus
contributor
contributor
Posts: 314
Joined: Sat Dec 21, 2013 2:42 pm
Location: Russia, Rostov-na-Donu

Re: Текущий прогресс по прошивке.

Post by meXanicus »

А как он работает на родном эбу? Возможно клапан просто забит сажей и подкусывает?
Я на Drive2 Alfa Romeo 156 SW
User avatar
Sergey89
contributor
contributor
Posts: 839
Joined: Wed Sep 25, 2013 5:30 pm
Location: Russia, Velikiy Novgorod

Re: Текущий прогресс по прошивке.

Post by Sergey89 »

Такого же типа клапан http://rusefi.com/forum/viewtopic.php?p=295#p295 ?
User avatar
AndreyB
Site Admin
Posts: 14327
Joined: Wed Aug 28, 2013 1:28 am
Location: Jersey City
Github Username: rusefillc
Slack: Andrey B

Re: Текущий прогресс по прошивке.

Post by AndreyB »

Sergey89 wrote:Такого же типа клапан http://rusefi.com/forum/viewtopic.php?p=295#p295 ?
Да, сильно подозреваю что такой же.

На родном ЭБУ он работает - холостой ход есть.
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
User avatar
AndreyB
Site Admin
Posts: 14327
Joined: Wed Aug 28, 2013 1:28 am
Location: Jersey City
Github Username: rusefillc
Slack: Andrey B

Re: Текущий прогресс по прошивке.

Post by AndreyB »

сделал #101 - timing advance: flip sign

А вообще я сфокусирован на Неоне - может на выходных заведу. Писать какой-то новый софт особо смысле нет, пока мы не отладим то, что есть. Двигатели должны начать заводиться холодными и холостой ход должен работать.
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
Post Reply