IGO61

ФУОЗ+ДПКВ. часть 2

51 сообщение в этой теме

alvikagal    37

Молодцы ребята, очень хорошая работа.

ПС

Я в авто ещё логгер на 8 меге сделал, пишет на SD карту логи, правда пока переписывает чистые файлы, 10 штук по 1,5 часа где-то каждый файл, и так циклично их потом переписывает. Ноут уже тягать не нужно.

Работой доволен, поездка в Харьков и обратно ( всего около 560 км) все записалось.

Идейку подкидываю. ;-)

000a9a4f8e8efc40159a8b0cc05a0137.jpg

И БК еще такой:

d8aeb438b60e07e7940f0490d549c3d8.jpg

  • Одобряю 2

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Быстрый заказ печатных плат

Полный цикл производства PCB по низким ценам!

  • x
    мм
Заказать Получить купон на $5.00
donec    115

Этот глюк уже на XP.

Глюк.PNG

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
sachma2009    55

Этого глюка нет в Win 7 pro X64

Этого глюка не было в Win XP в не исправленной версии менеджера, в исправленной я не проверял.

 

 

998.jpg

Изменено пользователем sachma2009

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Edward1976    11

donec, глюк скорее связан с дровами на видюху, примененый chart  активно юзает графику

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
donec    115

Это глюк выхода индекса за пределы массива, что на рисунке и написано.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
IGO61    151

Всем привет!

Для начала - картинка:

ploter.jpg

Это правой мышью выбраны настройки горизонтальной оси плоттера. Обратите внимание на выделенный параметр. Когда мышью "двигаешь" лог вправо и на горизонтальной оси появляется значение меньше указанного минимума (-ХХХХХ), то гаснет картинка на плоттере с выводом сообщения об ошибке, как четырьмя постами выше. Я не сильный спец в программировании для ПК, думаю что это не глюк, а особенность работы собственно плоттера. 

 

Изменено пользователем IGO61

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
donec    115

Это не то, выделенным показывает границу экрана, а если курсором кликаешь на поле в котором нет данных происходит глюк, так как не могут рассчитаться данные для окна значений графиков на месте курсора, данных то нет.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Pilulkin    145

Большое спасибо за замечания!
Я не очень понимаю, зачем надо тыкать на пустом месте курсором (хотя всяко может быть), но это не глюк в прямом смысле этого слова - это сообщение об ошибке, которое порождает сам объект - плоттер (так "полюбившийся" пользователям по редактору прошивок Grafik). А чтобы закрыть это сообщение об ошибке всего-то надо навести курсор на описание ошибки (в данном случае на "Index out of Bounds") и все восстановится. Как Вы понимаете, никто не использовал в разработке платных объектов, а соответственно придется мириться со всеми "прелестями" раздобытого на дармовщинку :unknw:. Конечно по возможности я буду устранять все глюки, на которые хватит тямы и времени, но и Вы, уважаемые форумчане, понимайте, что этот инструмент не претендует на какой-то абсолют или совершенство. Надеюсь с Вашей помощью сделаем его намного надежней, удобней и функциональней.

  • Одобряю 7

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
IGO61    151

Всем привет!

По поводу двух наборов графиков. Как было в родительской программе два графика - верхний и нижний, так сохранилось и в этой программе. Но число "строк" сокращено до 61 для каждого. Это дало возможность уместить в одной "странице" (256 байт) два набора графиков, "лето/зима" или "газ/бензин". Графики расположены в памяти с адреса 0Е00h до 0E7Fh - первый набор, 0E80h...0EFF - второй набор. При низком уровне на пине 15 контролика выбирается набор из "младших" адресов, при высоком уровне на пине 15 - набор из "старших" адресов. Графики можно выбирать находу, не выключая двигатель. Если обороты  попадают между соседними строками таблиц, делается интерполяция для текущих оборотов. Работа по графикам - с 422 об/мин. Ниже этих оборотов - пусковой режим с начальным УОЗ=+6грд.

Насчёт передаваемых данных. Контролик "выстреливает" пакет из 9 байт в каждом цикле искрения (в каждом полуобороте). Первые два байта (FFFFh) - синхронизация, начало инфопосылки. Следующие два байта - информация о длительности измеренного периода полуоборота коленвала (0...FEFEh). В логгере это значение пересчитывается в обороты двигателя. Следующий байт (0...FEh) - напряжение в дискретах с ДАД. Следующий байт (0...FEh) - рачитанный УОЗ в дискретах, что соответствует 0...90грд (пересчитывается логгером). Следующий байт (0...ЕFh) - "номер кривой", значение между "верхним" и "нижним" графиками в зависимости от нагрузки на двигатель (от нажатия на педаль газа). И последние два байта (0...FEh каждый) - соответственно в дискретах содержимое АЦП со входа термокоррекции и содержимое АЦП со входа ручной октанкоррекции. Такая инфа выводится из ФУОЗ в рабочем режиме, на оборотах выше 422об/мин.

При подаче питания, перед пуском, контролик выдаёт наружу служебную информацию. Как то версия прошивки (дата), содержимое пользовательских настроек (из "ЕЕПРОМ"): обороты стабилизации ХХ, обороты включения/выключения клапана ЭПХХ, напряжение с ДАД при атмосферном давлении.

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

Вот как-то так, вкратце.
П.С. На схеме указана "связная" микросхема ADM233 - её я поставил из того что было под рукой. Эта микруха полностью взаимозаменяема на МАХ232 с соответствующей обвязкой. Скорость передачи из ФУОЗ - 57600кб/с. У меня ФУОЗ вяжется с компом (нетбук) через переходник на PL2303 от СТ-Лаб.

 

Изменено пользователем IGO61
  • Одобряю 2

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Pilulkin    145

От себя добавлю, что проверял работу на "железном" COM-порте и с переходником на FTDI.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
donec    115
11 час назад, IGO61 сказал:

Но в байте "номер кривой" выставляется самый старший бит, сообщающий логгеру о работе в пусковом режиме. И логгер "правильно" пересчитывает обороты для пускового режима

Что-то Я запутался, файл явно записан с пуска, но старший бит не выставлен, и в то-же время на экран не выведены несколько первых пакетов из файла.

ps

нет выведены - это в файле они так записаны

1.PNG

Изменено пользователем donec
  • Одобряю 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Pilulkin    145

Да, на график выводятся все данные из логфайла, за исключением явно ошибочных пакетов. Мы обсуждали это с Игорем и решили пока оставить, неспотря на то, что в первых 4х пакетах содержится служебная информация. Ну чтоб было видно, что она есть и удобней было искать (пере)запуск (запуски), если он (они) был(и) в одном логфайле. 
В логгере есть функция показа самого логфайла (галочка в настройках). Но с этой включенной функцией логгер начинает сильно тормозить на больших файлах. Хотя для анализа штука удобная. Кликая по графику прыгаем в логфайле на соответствующую строку и наоборот. По крайней мере так задумывалось :).
Вот исправленный логгер на предмет тыкания на пустом месте. Вродь полечил, хотя, как всегда, возможны варианты :blush:

LoggerMan.rar

  • Одобряю 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
IGO61    151

Всем привет!

Попробую пояснить в картинках.

При включении зажигания ФУОЗом выстреливается по две пары "служебных" посылок. Почему пары? Чтоб на графике они выглядели как полки для лучшей визуализации. Например, вот скрин с увеличением - первые 9 посылок в комп:

log2.jpg

Полки между первой и второй посылками (аналогично между третьей и четвёртой посылками) как раз и есть "служебка". С пятой по 9-ю посылки - начало вращения двигуля. Причём, запуск произошёл буквально с пол-пинка. "Пусковая" посылка - пятая, в байте "номер кривой" выставлен 7-й бит и его значение равно 80h, (пятая строка, четвёртая справа пара цифр):

log1.jpg

Остальные посылки - уже из рабочего режима. И на графике видно, что с шестой и далее посылки обороты выше 500. Просто на график в логгере в пусковом режиме выводятся значения "номера кривой" без установленного "пускового бита".

Для сравнить цепляю ещё один лог, сделанный чуть раньше. Log20170218_121607.zip  В нём пусковой пусковой режим "растянут" на три полуоборота (посылки) - посылки 5,6, 7. Далее - рабочий режим.


 

  • Одобряю 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
donec    115
3 часа назад, IGO61 сказал:

в байте "номер кривой" выставлен 7-й бит и его значение равно 80h, (пятая строка, четвёртая справа пара цифр):

Вот и говорю, что запутался, в твоем олисании там угол значится, а не номер кривой.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
IGO61    151

Виноват, исправлюсь. В описании передваемых пакетов нужно поменять местами параметры "номер кривой" и "УОЗ".
 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Pilulkin    145

Всем привет!
Выкладываю на "посмотреть" версию логгера с возможностью грузить прошивку. Ну чтобы на графики УОЗ полюбоваться :D. Именно на посмотреть, потому как до редактирования графиков еще ой как далеко. Обратите внимание, что масштаб оси X логарифмический и график выходит за пределы поля плоттера. Просто потянуть нижнюю ось мышом, для скроллинга графика.

LoggerMan.rar

  • Одобряю 4

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
IGO61    151

Всем привет!

Немного подновил прошивку и изменил графики. Основной график/и (который/е в младших адресах) проходят по своей траектории, а алтернативный/е - параллелно основному, но на 6 градусов выше. Те графики, что были в прошивке из первого поста, субъективно, вроде как "туповаты".

 

140317.ZIP

Изменено пользователем IGO61
  • Одобряю 2

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
IGO61    151

Всем привет!

В 4 марта 2017 г. в 21:36, alvikagal сказал:

Идейку подкидываю. ;-)

000a9a4f8e8efc40159a8b0cc05a0137.jpg


 


Сань, а можно поподробней за идейку или где можно почитать?


 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
alvikagal    37

Привет.
Тут описывал функционал - http://secu-3.org/forum/viewtopic.php?t=1029
Накидал на карточку 10 файлов и циклично их переписываю. Каждый новый пуск пишет в следующий файл.
Не разобрался пока как создать новый файл, поэтому пользуюсь пока так.
Писал на си. Игорь, если нужно могу скинуть в личку исходники.

  • Одобряю 2

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Pilulkin    145

Саш, привет!

1 час назад, alvikagal сказал:

... если нужно могу скинуть в личку исходники.

И мне, и мне :yes:

  • Одобряю 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
IGO61    151

Да я на "Си" - плуг тяжёлый, исходники меня не спасут. Но всё-равно буду рад любой информации. За ссылочку - благодарочка:thank_you2:

52 минуты назад, Pilulkin сказал:

И мне, и мне

Да-да, и Серёже тоже :lol2:

 

 

  • Одобряю 2

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
IGO61    151

Всем привет!

Прошивка для 60-2 и забор вакуума из карбюратора:120417krb.zip. Схема и печатка - соответственно первый и второй посты, логгер - тут.

По ходу вопросик: Серёж (Pilulkin), как с возможностью редактирования графиков в логгере от 13 марта этого года? Я не тороплю, просто спрашиваю :yes:.






 

  • Одобряю 2

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Pilulkin    145

Доброго времени суток!
Я прошу прощения, но пока даже не могу сказать, когда будет результат. Ну вот так сложились обстоятельства...  Но то, что редактор будет - однозначно.

  • Одобряю 2

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
IGO61    151

Как получится, так и получится. Не вопрос. Может помочь как-то с обстоятельствами? :friends:



 

Изменено пользователем IGO61

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас


  • Похожие публикации

    • Автор: donec
      SUZ версии 4.1 работает от ДПКВ (шкив 60-2), в качестве датчика разрежения во впускном коллекторе используется ДАД 45 (45.3829), возможно использование МРХ4100 или подобного. Датчик температуры LM335 (LM135, LM235). Предусмотрено управление клапаном ЭПХХ, датчиком для этого служит концевик карбюратора, возможно использование как нормально замкнутого, так и нормально разомкнутого контакта. На выходе два канала, можно управлять "статикой" (используются оба канала) или штатной системой с раздачей искры трамблером (используется 1-й канал, второй не используется). Выбор режима работы производится перемычкой "Статика-Трамблер", перемычки нет - Статика, перемычка есть - Трамблер. Есть отдельный выход сигнала для мозгов моника, его же можно использовать для подключения тахометра, (на схемах не показан, работает с версии 5.0). Имеется 16 таблиц с данными, т.е. 16 кривых в зависимости от разрежения во впускном колекторе. УОЗ высчитывается с помощью трехмерной апроксимации (интерполяции) УОЗ между четырмя близ лежащими точками в таблице в зависимости от оборотов и разрежения во впускном коллекторе. От ДПКВ ФУОЗ начинает работать с 43 об\мин. Реализовано поддержание ХХ, настройка производится в менеджере. Предусмотрено использование двух наборов таблиц УОЗ, "бензин-газ" или "зима-лето". Для настройки есть менеджер, с помощью которого можно прошить программу ФУОЗ в микроконтроллер (требуется первоначальная прошивка МК программатором), отредактировать кривые и выполнить запись и просмотр лог-файла работы ФУОЗ. Вместо Atmega8A возможно применение Atmege8, но в ней, из-за ошибки изготовления кристала, вывод 20 почти напрямую соединен с выводом 7, поэтому индуктивность и конденсатор на 20 вывод устанавливать бесполезно. Негативного влияния замены на Atmega8 по записям лог-файлов не выявлено. ДПКВ подключен к ФУОЗ проводом МГТФ 0.75, два провода свитые в витую пару с шагом 20-30мм, экрана на проводах нет - это относится к формирователю на MCP604 (MCP601, MCP602), формирователь на LM393 лично не проверял. ДАД подключен к ФУОЗ тремя проводами которые образуют плетенку из трех проводов, также без экрана. ДАД подключен ко штуцеру на впускном коллекторе (внутренний диаметр в штуцере 2,5мм), так как штуцер использован штатный и он расположен ближе к впускным клапанам 1-2 цилиндров, то для сглаживания и выравнивания сигнала, ДАД подключен ко штуцеру резиновым шлангом с врезанным в него топливным фильтром, расстояние от коллектора до ДАД не более 25см. Задержка сигнала от фильтра незначительная и компенсируется алгоритмом замера в программе с версии 5.2. Когда устанавливал фильтр была цель сгладить пульсации, но затем выяснилась полезная его работа в плане отфильтрации паров масла и смеси к ДАДу. Датчик температуры подключен к ФУОЗ витой парой без экрана, сам датчик из-за отсутствия штатного места его установки вставлен между шлангом и патрубком отвода ОЖ к термостату. Минус использования bootloadera - после включения зажигания нужно выдержать 0.26сек до момента включения стартера. Связь с компютером осуществляется через СОМ порт. В оригинальной схеме применен чип FT232RL с гальванической развязкой на ADUM1201, что позволяет подключать ФУОЗ через USB (виртуальный СОМ порт), возможно применение MAX232, но в этом случае подключение производится на СОМ порт компютера, либо через шнурок USB-COM.
      Работа загрузчика:
      - запустить менеджер;
      - выбрать *.hex файл;
      - выбрать порт;
      - открыть порт;
      - включить питание ФУОЗ;
      - когда будет установлена связь, произойдет сброс шкалы в менеджере и будет нарастать шкала по мере программирования;
      - по окончании программирования выскочит окно о выполненном программировании, подтвердить, ФУОЗ готова к работе.
      Настройка.
      Первым настраивается ДПКВ, частично можно до установки на авто. Подать питание на ФУОЗ, замерить напряжение на выводе 14 Atmega8A, если поднести к ДПКВ металический предмет, то на 14 выводе появится "1", если убрать - "0", если при поднесенном предмете появляется "0", то необходимо сменить полярность подключения датчика ДПКВ. Если при постоянно убраном или постоянно поднесенном предмете наблюдаются переключения сигнала на 14 выводе (желательно посмотреть осциллографом), значит неправильно работает формирователь ДПКВ, нужно разбираться с ним. При правильно собранном формирователе ДПКВ ложных переключений на выходе не будет. Устанавливать ДПКВ нужно на 20 зуб шкива против часовой стрелки от "выбитых" зубов (вращение шкива по часовой стрелке) в момент когда поршень первого цилиндра находится в ВМТ. После установки на авто есть возможность проверить правильность его установки и корректность работы коммутаторов, для этого в ФУОЗ установить перемычку "6 градусов", и по стробоскопу проверить УОЗ, который должен быть 6 градусов на опережение. Если по стробоскопу не 6 градусов, то возможно неправильно установлен ДПКВ, или с большей вероятностью коммутаторы вносят задержку отработки зажигания (такие случаи есть, описаны далее в теме), с такими коммутаторами ФУОЗ правильно работать не будет, особая опасность от этого для режима статики.
      Настройка холостого хода.
      желательно сначала помыть карбюратор; прогреть двигатель, двигатель должен быть полностью прогретым до его рабочей температуры, желательно после прогрева проехать метров 200-300, и не глушить двигатель до полной настройки; отключить все потребители; подключить менеджер к ФУОЗ; в ФУОЗ установить перемычку "6 градусов", в этом случае УОЗ будет отрабатываться ФУОЗ 6 градусов не зависимо от данных поступающих от датчиков, контроль по прибору "УОЗ" в менеджере; настроить ХХ карбюратором на поддержание оборотов выставленных в прошивке для этого авто, контроль оборотов вести по прибору "Обороты" в менеджере; в ФУОЗ снять перемычку "6 градусов"; винтом количества на карбюраторе выставить УОЗ 7-9 градусов, контроль по прибору "УОЗ" в менеджере. Настройка ДАД45. С помощью менеджера записать лог-файл, при записи файла на месте сделать прогазовки полным кратковременным нажатием на педаль газа. По данным лог файла в менеджере выставить максимальное значение ДАД, должно быть равно максимальному значению АЦП ДАД при полностью нажатой педали газа, и изменением значения наклон выставить минимальное значение ДАД таким, чтобы на ХХ работала только кривая №0, а вернее чтобы минимальное значение ДАД было выставлено на 8-13 единиц больше чем зарегистрировано в лог файле на ХХ, точность установки минимального значения не столь важна как установка максимального значения. Это предварительная настройка, затем в движении также произвести запись лог-файла с полными нажатиями педали газа, и по этим данным подкорректировать значения ДАД.
      Настройка температуры. Для датчика на LM335 (LM135, LM235). Менеджером записать лог файл прогрева двигателя. По графику определить рабочую температуру прогретого двигателя. В таблицу УОЗ-ТЕМПЕРАТУРА внести необходимую коррекцию УОЗ от температуры с расчетом чтобы за 2-3 градуса С до рабочей температуры двигателя угол был уже 0 градусов. Отрицательные углы не запоминаются, запоминается интервал от 18 до 0 градусов. Если рабочая температура много не соответствует температуре по нормам для этого движка - разбирайтесь с термостатом. Показания датчика настроены на средний режим его работы без учета погрешностей, и этого вполне достаточно. Кому нужна настройка датчика на отображение температуры поточнее предусмотрена возможность его калибровки в виде внесения данных в спецокна, но пока эта возможность отключена.



      SUZ41.rar
    • Гость Женек
      Автор: Гость Женек
      Доброго времени суток!хочу сделать зажигание с ФУОЗ саруман,зажигание на 2-х датчиках холла,2 коммутаторах и одном Фуозе,скажите,как это можно сделать,есть 4-х цилидровый двигатель от авто,хотелось бы что бы опережение на каждой паре цилиднров регулировалось одной платой,что бы не было разнобоя с программаторами и прошивками пока только на ПИК знаком.
      Спасибо
    • Автор: donec
      Сначала зажигание на ЗИЛ-130, потом если будет желание на остальные какие можно будет вместить в память Attiny13A. Характеристики систем будут различными и будут зависеть от того, что используется в качестве датчика оборотов коленвала, и конечно-же эти характеристики будут далеки от характеристик систем датчиком у которых служит ДПКВ, но все-же будут лучше чем у штатных на трамблере.
      Системы будут с одной стороны простые - с другой сложные, простые в смысле простой код, несложное подключение, сложные потому, что необходим высоковольтный программатор или вместо него "фьюз-доктор", так как в программе используется пин контроллера на котором выведен RESET и через SPI программатор МК будет недоступен, нужно "фьюз-доктором" сбрасывать фьюзы тогда режим SPI будет доступен. С компьютером блок ФУОЗ будет соединен через стандартный доработанный переходник USB-COM, доработка заключается в разборе переходника и подпайке к чипу переходника двух проводов, на рисунке для примера переходники на чипе СР2102, FT232RL, на PL2303 переходника не нашел поэтому на самом чипе показано.
      Для исключения путаницы схемы и прошивки будут выкладываться (или дублироваться, по обстановке) на моем сайте, пока на старом, завел новый еще не разобрался с ним. Наполнение по мере разработки.
      Зажигание на ЗИЛ-130 будет идти под версией 1.ХХ, для других будет другая версия.
      Схема зажигания на ЗИЛ-130