Микроконтролери и електроника
http://mcu-bg.com/mcu_site/

RC филтрите преди АЦП-то
http://mcu-bg.com/mcu_site/viewtopic.php?f=2&t=169
Страница 1 от 3

Автор:  Реконструктор [ Сря Ное 24, 2004 5:11 pm ]
Заглавие:  RC филтрите преди АЦП-то

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

Изображение

Тук има схема на нещо много подобно на това, което правя и аз:

Изображение

Имам следните въпроси:
1. Така направена схемата добра ли е? :)
2. По какъв начин се определят стойностите на кондензаторите и съпротивленията?
3. Едно бързо АЦП и последващо осредняване няма ли да свършат същата работа?

Автор:  Реконструктор [ Сря Ное 24, 2004 6:11 pm ]
Заглавие: 

Моля ви, не разводнявайте темата. Не ме карайте да трия. Задал съм конкретни въпроси, ако искате, ще отворя отделна тема в общи приказки.

Автор:  bateAz [ Сря Ное 24, 2004 6:15 pm ]
Заглавие: 

Реконструкторе, не знам как са другит, но аз без да видя къде ходят външните сигнали от схемата, не мога да кажа добро ли е, или не. И все си мисля, че и при другите е така.

Автор:  Реконструктор [ Чет Ное 25, 2004 11:43 am ]
Заглавие: 

Значи, изграждането на RC филтри е емпиричен процес? :) В интерес на истината предполагах нещо такова. Само дето дори осцилоскоп нямам...

Автор:  bateAz [ Чет Ное 25, 2004 11:53 am ]
Заглавие: 

В контекста на това, което май ще правиш:

филтърът трябва да има честота на среза поне 2.2 - 2.5 пъти по-висока от честотата, с която мериш.
Колкото е по-стръмен, толкова по-добре. По-стръмен филтър се прави само от по-висок ред и най-често активен.
Лошо! :cry: От колкото по-висок ред е филтърът, толкова по-голямо време на задържане на сигнала има. Например : един филът от 6-ти ред е честота на среза 30 kHz ще има задръжка около 100 us, зависи от типа на филтъра.

Извод: още на етап "филтър" ще трябва да се приемат компромиси и след това в софта да се отчитат тези времена. :wink:

Този проект "У" не ми е интересен като проект, но на ниво отделни блокове мога да ти ударя едно рамо.

Автор:  ToHu [ Чет Ное 25, 2004 1:19 pm ]
Заглавие: 

Абе стръмен стръмен, то лошо няма ...но ако има бърз процесор, или по скоро DSP, може да филтрира в процесора, а от пред да сложи филтър от 2 ред да речем .. а за активен такъв .. да ..... абе без ОУ нема фда минеш ако питаш мен :) ... може да позлваш някой специализиран чип но ....

Автор:  Реконструктор [ Чет Ное 25, 2004 1:29 pm ]
Заглавие: 

Ами характеристиката на сигнала от MAP сензора е почти линейна - т.е. относително плавно покачване и слизане. Има някакви микроскопични вълнички, но те са пренебрежимо малки. Самият MAP сензор е относително инертен и сигналът не съвпада 100% с физическите явления в колектора . Въпросът е, че при екстремно ниски обороти, т.е. при палене, вълничките стават доста сериозни и това ще докара сериозни проблеми. Въпроса е как да се изчистят.

Автор:  Mozfet [ Чет Ное 25, 2004 2:14 pm ]
Заглавие: 

Реконструкторе с коя програма чертаеш картинките?

А в интернет има страници и програми, които да ти изчислят пасивен или активен филтър. Задаваш само честотата на сряза и желания ред и получаваш готова оразмерена схема. Не се сещам адреси, защото скоро не съм правил подобно нещо. Пусни търсене в гугъл. А по памет за пасивен RC филтър, формулата май беше Fср = 1 / (2*pi*R*C)

Автор:  Dimitar [ Чет Ное 25, 2004 2:20 pm ]
Заглавие: 

Сложете самия MAP сензор на платката и вакума го закарайте до него с тръбичка 8) . Както сам казваш - сигнала е доста бавен и линеен и чак кой знае какви филтри не са нужни. Това, което беше на схемата е съвсем достатъчно. Може и леко да филтрираш във процесора, като например мереш няколко пъти и вземаш средно аритметично - това е най-простия начин, но би трябвало да свърши работа заедно със преместването на сензора върху платката. Между другото - какъв МАР сензор ползвате.

Автор:  ToHu [ Чет Ное 25, 2004 4:15 pm ]
Заглавие: 

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

Автор:  Dimitar [ Чет Ное 25, 2004 4:45 pm ]
Заглавие: 

Оная графика е от кнок сензор. МАР сензора има следната зависимост (например):
Изображение
Налягането в колектора не се изменя толкова бързо. А и тръбичката вкарва пренебрежими жмъцаници, в сравнение със жиците от сензора до платката.

Автор:  Dimitar [ Пет Ное 26, 2004 10:43 pm ]
Заглавие: 

Реконструкторе нищо неказваш, какво става с меренето на МАР сензора. Ша взема да напиша малко нещица за тоя филтър, пък дано ти е от полза. Та значи - изменението на налягането на въздуха във входящите колектори на двигателя при отворена дроселова клапа е в диапазона от 0 до 20Hz. Т.е. всичко над 30Hz може да се приеме за шум, т.е. честотата на среза на тоя филтър трябва да е 30Hz. Това филтърче трябва да е активен, апериодичен филтър със 6dB на октава, или -18dB при 240Hz. Според Найкуист, честотата ти на дескретизация с АЦП-то трябва да е поне 480Hz. И тъй като честотата на изменение на налягането може да е от 0 до 20 Hz трябва всичко над тези 20Hz да се елеминира, особенно кратните на моментната честота, която варира в зависимост от оборотите. Та се получава един филтър, който трябва да си сменя честотната характеристика в зависимост от оборотите на коляновия вал - доста трудно да се направи с дискретни елементи, съгласен ли си. Затова трябва да се прибегне до така любимия ти софтуер. Оказва се, че след като си избереш достатъчно висока честота на дискретизаия е достатъчно да направиш определен брой мерения и след това като им вземеш средното аритметично (интегрираш по тоя начин) и вече си отфилтрирал достатъчно сигнала. Тънкия момент тук е колко да мериш - в смисъл като време. Има една формулка: Т = 30.k / (n.z), където Т ти е времето на мерене с АЦП за конкретния цилиндър, k - ти е колко тактов е двигателя, n - ти са текущите обороти, а z - ти е броя на цилиндрите в двигателя. Ами това е - дано да свърши работа :? .

Автор:  Mozfet [ Пет Ное 26, 2004 11:05 pm ]
Заглавие: 

Добре де щом най-високата честота на сигнала е 20Hz не трябва ли честотата на дискретизация да е >=40Hz.
Защо при 240 Hz затихването трябва да е -18dB. Какво пречи филтъра му да е от по-висок ред, т.е. с по-голямо затихване. Аз доколкото знам затихването на шумовете е добре да бъде -60dB при двойна на най-високата честота.

Щом филтъра трябва да си променя предавателната функция, не може ли резистори в активния филтър, да се заменят с цифров потенциометър, който да управляваме по SPI?

Метода на пълзащото средно не е ли по-ефективен в сравнение с нормалното осредняването.

Автор:  ToHu [ Пет Ное 26, 2004 11:07 pm ]
Заглавие: 

Ами като гледам тоя датчк си дава сериозен сигнал, ако не е с достатъчно нискоомен изход винаги до него може да се лсожи един повторител, или още по добре да предаваш сигнала диференциално, тогава смущения почти няма да има. А тръбичката дори и да не вкара някакъв резонанс или забавяне винаги може да бъде смачкана, стопена или нещо подобно, аз повече разчитам на електрическите връзки. А за софтуерното филтриране има не сложни алгоритми за филтриране, особенно ако мериш с достатъчно висока честота, въпроса е обаче да имаш и памет за да може да правиш обработка на данноте. А м-у другото .... ако сигнала е с честота 20 Hz защо мериш с 480 ... мен ми се вижда неоправдано висока честота на дискретизация ...

Автор:  Реконструктор [ Съб Ное 27, 2004 12:33 am ]
Заглавие: 

Dimitar написа:
Реконструкторе нищо неказваш, какво става с меренето на МАР сензора. Ша взема да напиша малко нещица за тоя филтър, пък дано ти е от полза. Та значи - изменението на налягането на въздуха във входящите колектори на двигателя при отворена дроселова клапа е в диапазона от 0 до 20Hz. Т.е. всичко над 30Hz може да се приеме за шум, т.е. честотата на среза на тоя филтър трябва да е 30Hz. Това филтърче трябва да е активен, апериодичен филтър със 6dB на октава, или -18dB при 240Hz. Според Найкуист, честотата ти на дескретизация с АЦП-то трябва да е поне 480Hz. И тъй като честотата на изменение на налягането може да е от 0 до 20 Hz трябва всичко над тези 20Hz да се елеминира, особенно кратните на моментната честота, която варира в зависимост от оборотите. Та се получава един филтър, който трябва да си сменя честотната характеристика в зависимост от оборотите на коляновия вал - доста трудно да се направи с дискретни елементи, съгласен ли си. Затова трябва да се прибегне до така любимия ти софтуер. Оказва се, че след като си избереш достатъчно висока честота на дискретизаия е достатъчно да направиш определен брой мерения и след това като им вземеш средното аритметично (интегрираш по тоя начин) и вече си отфилтрирал достатъчно сигнала. Тънкия момент тук е колко да мериш - в смисъл като време. Има една формулка: Т = 30.k / (n.z), където Т ти е времето на мерене с АЦП за конкретния цилиндър, k - ти е колко тактов е двигателя, n - ти са текущите обороти, а z - ти е броя на цилиндрите в двигателя. Ами това е - дано да свърши работа :? .


Доста сложно като теория. :) АЦП-то съм го пуснал на възможно най-ниска скорост, но въпреки това броя мерения надхвърля 10К/сек. (коефициент на деление 128, 13-15 цикъла за конвертиране и малко загуби при обработката, това при 20 МХц кварц) за 4-те канала или 2.5К/сек за всеки канал по отделно. Да го забавя още би съставлявало определен проблем. Може да се помисли за интегриране.

Страница 1 от 3 Часовете са според зоната UTC + 2 часа [ DST ]
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
http://www.phpbb.com/