[phpBB Debug] PHP Warning: in file [ROOT]/phpbb/db/driver/mysqli.php on line 258: mysqli_fetch_assoc(): Couldn't fetch mysqli_result
[phpBB Debug] PHP Warning: in file [ROOT]/phpbb/db/driver/mysqli.php on line 320: mysqli_free_result(): Couldn't fetch mysqli_result
rusefi.com The most advanced open source ECU 2015-11-03T17:22:12 https://rusefi.com/forum/app.php/feed/topic/308 2015-11-03T17:22:12 2015-11-03T17:22:12 https://rusefi.com/forum/viewtopic.php?t=308&p=16846#p16846 <![CDATA[Re: Базовая плата: аналоговые входы]]> Коээфициенты посчитаны тут: http://www-users.cs.york.ac.uk/~fisher/mkfilter/trad.html
Там же си код генерится. Коэффициенты можно довести до целочисленных. При наличии сопроцессора разницы нет.
Частота фильтра и частота выборки АЦП - 1:10.

Code:

/* Digital filter designed by mkfilter/mkshape/gencode   A.J. Fisher   Command line: /www/usr/fisher/helpers/mkfilter -Bu -Bp -o 2 -a 9.5000000000e-02 1.0500000000e-01 -l */#define NZEROS 4#define NPOLES 4#define GAIN   1.058546125e+03static float xv[NZEROS+1], yv[NPOLES+1];static void filterloop()  { for (;;)      { xv[0] = xv[1]; xv[1] = xv[2]; xv[2] = xv[3]; xv[3] = xv[4];         xv[4] = next input value / GAIN;        yv[0] = yv[1]; yv[1] = yv[2]; yv[2] = yv[3]; yv[3] = yv[4];         yv[4] =   (xv[0] + xv[4]) - 2 * xv[2]                     + ( -0.9149758348 * yv[0]) + (  3.0281471145 * yv[1])                     + ( -4.4179329790 * yv[2]) + (  3.1657870207 * yv[3]);        next output value = yv[4];      }  }

Statistics: Posted by mkf — Tue Nov 03, 2015 5:22 pm


]]>
2015-11-03T15:57:03 2015-11-03T15:57:03 https://rusefi.com/forum/viewtopic.php?t=308&p=16845#p16845 <![CDATA[Re: Базовая плата: аналоговые входы]]> Statistics: Posted by Maxi — Tue Nov 03, 2015 3:57 pm


]]>
2015-11-03T15:07:19 2015-11-03T15:07:19 https://rusefi.com/forum/viewtopic.php?t=308&p=16844#p16844 <![CDATA[Re: Базовая плата: аналоговые входы]]> Statistics: Posted by meXanicus — Tue Nov 03, 2015 3:07 pm


]]>
2015-11-03T13:55:41 2015-11-03T13:55:41 https://rusefi.com/forum/viewtopic.php?t=308&p=16843#p16843 <![CDATA[Re: Базовая плата: аналоговые входы]]> Statistics: Posted by Maxi — Tue Nov 03, 2015 1:55 pm


]]>
2015-11-03T09:56:21 2015-11-03T09:56:21 https://rusefi.com/forum/viewtopic.php?t=308&p=16842#p16842 <![CDATA[Re: Базовая плата: аналоговые входы]]> Statistics: Posted by puff — Tue Nov 03, 2015 9:56 am


]]>
2015-11-03T04:58:46 2015-11-03T04:58:46 https://rusefi.com/forum/viewtopic.php?t=308&p=16841#p16841 <![CDATA[Re: Базовая плата: аналоговые входы]]>
Вобщем-то все начиналось с универсального входа АЦП. С его частотных характеристик. :) Может не будем далеко отрываться от названия темы.
Для датчика детонации выше 20кГц не надо. Если не ошибаюсь для двигателей с цилиндром 0.3-0.5л частота настройки около 5-7 кГц. В идеале надо 20-25 отсчетов АЦП на период, чтобы не было эффектов от дискретизации совсем. В реальности и 10 и 5 отсчетов хватает. Т. е. частоты выборок АЦП 100-200 кГц как бы хватит. Далее полосовой БИХ фильтр с настраиваемыми параметрами. В результате число с АЦП на входе - число на выходе. Выпрямитель - это модуль числа. Интегратор - x+=x. Ну пусть этот фильтр съест 1 мкс рабочего времени процессора. Хотя при наличии сопроцессора, вероятно, все будет горазо веселее. Остальное все как у HIP-a - в начале окна сбросить интегратор, в конце окна считать показания.

Statistics: Posted by mkf — Tue Nov 03, 2015 4:58 am


]]>
2015-11-03T03:49:08 2015-11-03T03:49:08 https://rusefi.com/forum/viewtopic.php?t=308&p=16840#p16840 <![CDATA[Re: Базовая плата: аналоговые входы]]> есть еще сс650 . вообще конфетка. детон + кучка пятивольтовых АЦП.
есть сс195 - детон, где все частота и гайн программируется внешними пинами.
Принцип такой же как у HIP только без spi. стоит во всяких мотеках и мотрониках старых всех подряд.

причем все эти микросхемы работают по сути одинаково. только программируются по разному. но у всех гайн-канал-частоту задал. интегратор вкл-выкл и с АЦП показания снял

Statistics: Posted by Maxi — Tue Nov 03, 2015 3:49 am


]]>
2015-11-03T03:27:04 2015-11-03T03:27:04 https://rusefi.com/forum/viewtopic.php?t=308&p=16839#p16839 <![CDATA[Re: Базовая плата: аналоговые входы]]> Statistics: Posted by mkf — Tue Nov 03, 2015 3:27 am


]]>
2015-11-03T02:15:54 2015-11-03T02:15:54 https://rusefi.com/forum/viewtopic.php?t=308&p=16837#p16837 <![CDATA[Re: Базовая плата: аналоговые входы]]>
На счет кроссплатформенности. Пример. Допустим нет у меня HIP9011. Раньше был HIP9010, но снят с производства.Где переносимость?
Тут как раз она есть. Реализуется общая модель и затем транслируются гайны и частоты из 9010 в 9011 т.к. 9011 по сути расширение 9010.

Statistics: Posted by Maxi — Tue Nov 03, 2015 2:15 am


]]>
2015-11-03T01:40:11 2015-11-03T01:40:11 https://rusefi.com/forum/viewtopic.php?t=308&p=16836#p16836 <![CDATA[Re: Базовая плата: аналоговые входы]]> http://www.freescale.com/files/32bit/doc/app_note/AN3772.pdf
Чей-то любимый процессор. Уже в апликухах заложена поддержка как внешних обработчиков сигнала с датчика детонации, так и реализация обработки сигнала с датчика в самом микроконтроллере.

Statistics: Posted by mkf — Tue Nov 03, 2015 1:40 am


]]>
2015-11-03T01:18:42 2015-11-03T01:18:42 https://rusefi.com/forum/viewtopic.php?t=308&p=16835#p16835 <![CDATA[Re: Базовая плата: аналоговые входы]]>
Ну если низкоуровневое прогаммирование, то прахом идет тогда идея с лего-переносимостью кода и возможной кросплатформенностью которую обеспечивает ос.
Низкоуровневое программирование не в смысле использования ассемблера. Это тот же си, но непосредственная обработка скоростных сигналов описывается с учетом устройства периферии микроконтроллера. Если использовать терминологию OS, то это собственный драйвер периферии микроконтроллера. Переложить его на другой микроконтроллер - большой проблемы не составляет. По сути меняется несколько строк кода на одной страничке. Время потребуется только для прочтения документации на новый (другой) микроконтроллер, а мануалы все равно придется читать, хотя бы потому, что наименования пинов разные и периферия по разному разнесена. Все медленные вычислительные и алгоритмы связи, диагностики не затрагиваются совсем (95% объема кода, 99% времени отладки).

На счет кроссплатформенности. Пример. Допустим нет у меня HIP9011. Раньше был HIP9010, но снят с производства.Где переносимость? Вариантов нет совсем. Даже появился вариант, пусть будет TI - TPIC8101. Все равно нужно читать мануал, чтобы понять, что TPIC8101 идентичен HIP9011. И достать его еще сложнее. Получается непереносимость :) Жесткая привязка к железу. Самое смешное, что эта железка стоит столько же, сколько сам STM32, но при этом в сто раз более глупая и медленная. И ей уже точно лет 20 (ну или почти 20) от роду.

К статит с точки зрения совместимости, лучше делать полную обработку сигнала в STM32 (без синхронных детекторов), т.к. в этом случае ни одной лишней ножки контроллера не потребуется. Только тоже вход АЦП.

Statistics: Posted by mkf — Tue Nov 03, 2015 1:18 am


]]>
2015-11-02T21:42:54 2015-11-02T21:42:54 https://rusefi.com/forum/viewtopic.php?t=308&p=16834#p16834 <![CDATA[Re: Базовая плата: аналоговые входы]]> Statistics: Posted by Maxi — Mon Nov 02, 2015 9:42 pm


]]>
2015-11-02T17:22:03 2015-11-02T17:22:03 https://rusefi.com/forum/viewtopic.php?t=308&p=16833#p16833 <![CDATA[Re: Базовая плата: аналоговые входы]]> Statistics: Posted by meXanicus — Mon Nov 02, 2015 5:22 pm


]]>
2015-11-02T17:19:53 2015-11-02T17:19:53 https://rusefi.com/forum/viewtopic.php?t=308&p=16832#p16832 <![CDATA[Re: Базовая плата: аналоговые входы]]> Statistics: Posted by puff — Mon Nov 02, 2015 5:19 pm


]]>
2015-11-02T10:35:55 2015-11-02T10:35:55 https://rusefi.com/forum/viewtopic.php?t=308&p=16828#p16828 <![CDATA[Re: Базовая плата: аналоговые входы]]> Statistics: Posted by mkf — Mon Nov 02, 2015 10:35 am


]]>