|
Виж темите без отговор | Виж активните теми
Дата и час: Пон Юли 27, 2026 8:58 pm
| Автор |
Съобщение |
|
ToHu
Ранг: Форумен бог
Регистриран на: Нед Сеп 26, 2004 9:21 pm Мнения: 30686 Местоположение: София
|
Хм .... не можеш ли да го пускаш само когао искаш. Времето на преобразуване е трвърдо, но това не значи че трябва да е циклично. Обикновенно се прави прекъсване през определено време, и в това прекъсване пускаш ацп-то, така дискретизираш през определен интервал.
|
| Съб Ное 27, 2004 2:38 am |
|
 |
|
Dimitar
Ранг: Форумен бог
Регистриран на: Пет Ное 12, 2004 3:38 pm Мнения: 9103 Местоположение: Chicago, IL
|
Хмм - много въпроси. Защо минимум 480Hz ли, ами защото така казва теорията, а и практиката така е показала, а и както написах по-горе - много важно е да се избегнат кратните честоти (хармониците). По принцип - "колкото повече, толкова повече"  . Филтър с цифрови потенциометри - много смела идея, ама въобще няма да я коментирам. В графиката, която показва колебанията в изменение на налягането в зависимост от оборотите се вижда, че колебанията са с най-висока амплитуда на ниски обороти и колкото повече оборотите нарастват - амплитудата на колебанията намалява. То затова и на високи обороти са нужни по-малко на брой семплирания на АЦП-то. След като си си избрал някъква честота на семплиране - както виждам достатъчно висока - следва да вържеш времето през което правиш измервания (по онази формула) с оборотите. Мисля, че на стъпки от по 500 оборота е добре.
Когато се разглежда един ДВГ като обект на управление - базата за определяне на бързодействието на контролера е точно сигнала от този датчик, така че от тук започва всичко. Другите датчици са още по-бавни и според тях само се правят корекции на картите. Тук под бързодействие имам предвид закона на регулиране - щото както вече разбрахме има и датчици, за които се иска доста мощ. Немога да разбера и какво ви притеснява тръбичката от колекторите до контролера - това си е практика и присъства в доста голяма част от контролерите. Разбира се, че има и варианти да не е така - датчици с диференциален изход, усилватели, и т.н.
|
| Съб Ное 27, 2004 11:36 am |
|
 |
|
ToHu
Ранг: Форумен бог
Регистриран на: Нед Сеп 26, 2004 9:21 pm Мнения: 30686 Местоположение: София
|
Ами де да знам .. тръбичка ... а за честотата на семплиране .... ами според теоремата 2F ти е достатъчно за да възстановиш сигнала посредством обратно фурие преобрауване .... ако не искаш да правиш таков си трябват повечко, но при 20 Hz да правиш 480 семпъла ... мноко ми се виждат ... но може и да греша.
|
| Съб Ное 27, 2004 12:50 pm |
|
 |
|
Dimitar
Ранг: Форумен бог
Регистриран на: Пет Ное 12, 2004 3:38 pm Мнения: 9103 Местоположение: Chicago, IL
|
Неискам сега да се впускам в спорове - много ли са малко ли са тези 480Hz. Щом хората са казали толкова и го правят така, значи е толкова. Виждаш Реконструктора с колко семплира и пак има проблем. Теорията е едно, практияката е съвсем друго - мисля, че всички го знаете. А и много ми е интересно ако почне човека да семплира с 40Hz, какво ще стане  .
|
| Съб Ное 27, 2004 1:14 pm |
|
 |
|
Mozfet
Ранг: Ориентиран
Регистриран на: Съб Сеп 25, 2004 4:33 pm Мнения: 273 Местоположение: София
|
Това ме интересуваше, дали идеята е смела или все пак може да се направи подобно животно. 
_________________ Adios
Mozfet
|
| Съб Ное 27, 2004 2:36 pm |
|
 |
|
ToHu
Ранг: Форумен бог
Регистриран на: Нед Сеп 26, 2004 9:21 pm Мнения: 30686 Местоположение: София
|
Нищо, ще си работи. Имам приложения които семплират с малко над 2f и след обратно фурие сигнала се въстановява доста точно, но на входа трябва да имаш добър филтър, инче с еполучават простотии. Относно схемата на рекнструктор, не знам какво точно семплира и как. За да праивш обработка на някакъв сигнал трябва да знаеш характера му, как се променя и с каква скорост. По горе виждам какво има предавателна характеристика на сензора, но икъде няма какво има на изхода му при нормална работа на двигателя. Ако и той си няма на представа е мн лошо, задължително е да с езнае какво е поведението на системата, това много ще опрости софтуера и филтрирането, пример, ако знаеш че получаваш сигнал с определена честота и скорост на нарастване много елементарно е да отфилтрираш всички отскоци, иначе трябва д аправиш доста по сложен цифров филтър, да анализираш сигнала въз основа на много отчети и след това да провериш дали конкретния е изключение, т.е. шум .... аз ако бях на него, щях да закача един такъв сензор, да му вържа осцилоскоп, запомнящ естествено, или цифров рекордер, симулирам всички възможни режими на двигателя или поне тези в които той ще работи и веднага ще с евиди кое е полезен сигал, кое е шум, кое как може да се отфилтрира най-лесно .... това че някой го рпави така ... не значи че това е най-правилния начин. Интересно ми е как са го направили примерно бош ....това че някой е напраивл проект в интернет който може би работи не значи е това трябва да е еталон за това как трябва да с еправи, за решаване на една задача има много варианти.
|
| Съб Ное 27, 2004 2:47 pm |
|
 |
|
Реконструктор
Ранг: Форумен бог
Регистриран на: Съб Сеп 25, 2004 12:32 pm Мнения: 8382 Местоположение: София
|
Тони, идеята е не да се прилагат някакви много сложни филтри и алгоритми, ами просто да се заглажда сигналът, за да е максимално близо до права линия. Ще се пробвам да ти обясня проблема. MAP сензорът (mainfold absolute pressure) е просто датчик на налягането. При 1 атм. изкарва 5V, при вакуум - 0V. Измерва налягането (по-точно е да се каже разреждането) във входящия колектор за да се определи натоварването да ДВГ в даден момент. ДВГ сам по себе си е проста бутална помпа, която помпа въздух. Когато цилиндърът е във фаза на засмукване и буталото се движи надолу, обемът на системата цилиндър-колектор се увеличава, като съответно налягането намалява. Когато засмукването приключи и всмукателните клапани се затворят, за един много малък момент налягането се увеличава, преди следващият цилиндър да започне да засмуква. За натоварване на двигателя се приема някаква средна стойност между пиковете и падовете на налягането в колектора. Когато оборотите са високи, осредняването се извършва от самосебе си, заради инертността на датчика и ниската честота на преобразуване на АЦП-то. При ниски обороти, обаче, синосуидата е отчетлива, от което се получава "плаващо" измерване и съответно "плаващо" управление.
За съжаление нямам осцилоскоп и реално не мога да кажа какъв е сигнала при различните условия. Което ме подсеща да пусна една тема по въпроса.
|
| Съб Ное 27, 2004 3:26 pm |
|
 |
|
Реконструктор
Ранг: Форумен бог
Регистриран на: Съб Сеп 25, 2004 12:32 pm Мнения: 8382 Местоположение: София
|
Тони, идеята е не да се прилагат някакви много сложни филтри и алгоритми, ами просто да се заглажда сигналът, за да е максимално близо до права линия. Ще се пробвам да ти обясня проблема. MAP сензорът (mainfold absolute pressure) е просто датчик на налягането. При 1 атм. изкарва 5V, при вакуум - 0V. Измерва налягането (по-точно е да се каже разреждането) във входящия колектор за да се определи натоварването да ДВГ в даден момент. ДВГ сам по себе си е проста бутална помпа, която помпа въздух. Когато цилиндърът е във фаза на засмукване и буталото се движи надолу, обемът на системата цилиндър-колектор се увеличава, като съответно налягането намалява. Когато засмукването приключи и всмукателните клапани се затворят, за един много малък момент налягането се увеличава, преди следващият цилиндър да започне да засмуква. За натоварване на двигателя се приема някаква средна стойност между пиковете и падовете на налягането в колектора. Когато оборотите са високи, осредняването се извършва от самосебе си, заради инертността на датчика и ниската честота на преобразуване на АЦП-то. При ниски обороти, обаче, синосуидата е отчетлива, от което се получава "плаващо" измерване и съответно "плаващо" управление.
За съжаление нямам осцилоскоп и реално не мога да кажа какъв е сигнала при различните условия. Което ме подсеща да пусна една тема по въпроса.
|
| Съб Ное 27, 2004 3:27 pm |
|
 |
|
Dimitar
Ранг: Форумен бог
Регистриран на: Пет Ное 12, 2004 3:38 pm Мнения: 9103 Местоположение: Chicago, IL
|
Виж сега ToHu - тия неща не съм си ги изсмукал от пръстите или от някакъв проект в Интернет (MegaSquirt например). Както казах и по-рано иска се сериозно четене на теорията за управление на един ДВГ. Това за 2F е от ясно по-ясно, но тук имаме за задача да филтрираме сигнал, в който шумовете могат да достигнат 240Hz. Ако на входа имаше филтър и сигнала беше ОК - тогава 40Hz семплиране са достатъчни, да но не е така. Имаше една формула по-нагоре. Посмятай малко и ще видиш. 40Hz са 25 милисекунди между семплиранията. При 6000 оборота, на 4-и тактов двигател и 4 цилиндъра - времето за което трябва да направиш поне 2 отчета е около 5 милисекунди. Целта тук е не да мерим идеален сигнал с максимална честота 20Hz, а такъв който е зашумен с доста по-голяма честота. Нещата никога не са идеално "правоъгълни" или "синусоидални", както си ги представят повечето програмисти. И едно твърдение на Реконструктор-а, че до 20 г. всичко ще е софтуер, въобще, ама въобще не е вярно и никога няма да бъде такова, защото за съжаление (или пък не  ) заобикалящия ни свят не е дискретен - иначе всичко би било много просто.
Как го правят BOSCH ли, ами както и много други (MAGNET MARELLI, DELPHI, HITACHI и т.н.) - нямат страховити филтри на входовете на АЦП-тата - то и няма чак такава нужда от тях. Процеса не е толкова бърз, че даже и един елементарен процесор да неможе да се справи с него - виж ако почнем да си говорим за ABS-и, ASC-та, DSC-та и т.н. - нещата много силно загрубяват, но с ДВГ-то не е така - като изключим може би само тези екстремни турбо апликаций, където говорим за 1200+ конски сили поставени на колелетата  . Мога да ви напиша доста неща за това какво преставлява като обект на регулиране един ДВГ (само тази теория е около 500-600 страници  ), какво преставляват контролерите на горепосочените фирми и разни други неща, но ще трябва да се направи един цял специализиран форум само за тях. Щото така ще разводним темата за филтъра на МАР сензора, че накрая нищо няма да може да се разбере от нея.
Това си е доста сериозна наука и почти (да не кажа никога) няма да видиш в интернет сериозен проект посветен на нея - това нещо струва много пари и време и никой не е луд ей така да го даде наготово, само от любов към спорта. Какво остава пък за контролерите на големите фирми - повярвай ми - автомобилната електроника е една от най-строго пазените тайни на тая планета  . Т.е. не ни остава нищо друго освен да четем много теории, да гадаем за някой неща дето са ги направили доста по-умни от нас хора, след това да направим в много бутала дупки и така. Друг път няма. Аз неискам никой да ми вярва на 100% за нещата дето ги пиша, но пък ти ако имаш някъкво по-добро предложение или идея - кажи ги, обясни защо мислиш, че така ще стане - и човека ще пробва. Това е.
|
| Съб Ное 27, 2004 3:28 pm |
|
 |
|
Dimitar
Ранг: Форумен бог
Регистриран на: Пет Ное 12, 2004 3:38 pm Мнения: 9103 Местоположение: Chicago, IL
|
Довечера, ще се пробва да ви покажа картинки както от сигнала на МАР сензора в зависимост от оборотите, така и на разпределението на честотите в тях. Това, което казва Реконструктор-а е абсолютно вярно.
|
| Съб Ное 27, 2004 3:30 pm |
|
 |
|
ToHu
Ранг: Форумен бог
Регистриран на: Нед Сеп 26, 2004 9:21 pm Мнения: 30686 Местоположение: София
|
Аз просто казвам че трябва да се познава характера на сигнала, понякога има доста по прости методи за филтриране от осредняване или прилагане на сложни цифрови филтри, но за целта трябва да се познава харалтера на сигнала. Досега не ми се е случвало да обработвам сигнал от датчик без да знам какво точно подава датчика, вичко останало е аматьорско, без да искам никого да обидя, не можеш да управляваш процес който не познаваш, или не знаеш акво точно идва от сензора .... аз съм си имал доста работа със сензори и много добре знам че теорията е едно а практиката друго. Осредняването не е лошо но само по себе си не оказва кой знае каква флтрация ако имаш няколко последователни погрешни отчета, грешката става значителна. Не знам дали разводняваме ... просто аз расъждавам на глас .... ако мога така да се каже .......не искам и да споря .. а просто да обсъдим .. това мисля е полезно за всички.
|
| Нед Ное 28, 2004 3:20 am |
|
 |
|
Dimitar
Ранг: Форумен бог
Регистриран на: Пет Ное 12, 2004 3:38 pm Мнения: 9103 Местоположение: Chicago, IL
|
Във формулката е решението на въпроса  . Както и Рекоструктор-а каза на ниски обороти колебанията са по-големи, а на високи не са такива, поради и самата природа на датчика. Ако посмяташ малко - ще видиш, че времето за семплиране е по-голямо на ниски обороти (повече семпли) и по-малко на високи (по-малко семпли). От тук идва и отговора на въпроса ти, както и защо се сканира със поне 480Hz.
|
| Нед Ное 28, 2004 7:07 pm |
|
 |
|
Реконструктор
Ранг: Форумен бог
Регистриран на: Съб Сеп 25, 2004 12:32 pm Мнения: 8382 Местоположение: София
|
Още едно въпросче - стойностите на кондензаторите 0.1 и 0.22 означават съответно 100 и 220 mF, нали така?
|
| Сря Дек 01, 2004 12:05 pm |
|
 |
|
Mozfet
Ранг: Ориентиран
Регистриран на: Съб Сеп 25, 2004 4:33 pm Мнения: 273 Местоположение: София
|
Ако на конедназатор не е написана мерната единица се има предвид uf микрофаради
_________________ Adios
Mozfet
Последна промяна Mozfet на Сря Дек 01, 2004 12:33 pm, променена общо 1 път
|
| Сря Дек 01, 2004 12:08 pm |
|
 |
|
Mozfet
Ранг: Ориентиран
Регистриран на: Съб Сеп 25, 2004 4:33 pm Мнения: 273 Местоположение: София
|
И аз съм чувал, че така е по-правилно, но защо?
Аз правя следното - в началото на всеки цикъл правя измерването, а самия цикъл ми отнема зададено от мен време (напр. 10ms). Така на всеки 10мс семплирам и малко след това пращам резултата към хипертерминала по RS232.
Защо е по-добре да се направи с прекъсване? Какво тогава ще имаме в прекъсването и какво в осносвната програма?
_________________ Adios
Mozfet
|
| Сря Дек 01, 2004 12:15 pm |
|
|
Кой е на линия |
Потребители разглеждащи този форум: 0 регистрирани и 3 госта |
|
Вие не можете да пускате нови теми Вие не можете да отговаряте на теми Вие не можете да променяте собственото си мнение Вие не можете да изтривате собствените си мнения Вие не можете да прикачвате файл
|
|