|
банальное измерение частоты, как точно измерить скорость вращения ротора |
|
|
|
Jan 15 2009, 13:34
|

Ambidexter
    
Группа: Свой
Сообщений: 1 589
Регистрация: 22-06-06
Из: Oxford, UK
Пользователь №: 18 282

|
Цитата(xin @ Jan 14 2009, 17:05)  И, собственно, вопрос - как в моей ситуации правильно измерить эту самую скорость вращения? Требуемая точность - не хуже 0,01 Гц, амплитуда сигнала - порядка 1 В, время измерения - порядка 100-200 мс. Фактически, 95% времени нужно измерять скорость вращения именно на уровне 1400-1500 об/с, однако оставшееся время - при разгоне и торможении - измерение также необходимо, допустимо только слегка загрубить точность. (Это к возможности реализации разностной схемы регистрации) Посмотрите здесь http://electronix.ru/forum/index.php?showtopic=29796, в посте #23 и далее представлены зачатки теории. Для входной частоты 12 кГц достижимая точность указанным методом на авр МК не хуже 0,001 Гц за период 0,2 с.
--------------------
Делай сразу хорошо, плохо само получится
|
|
|
|
|
Jan 15 2009, 15:56
|
Знающий
   
Группа: Свой
Сообщений: 775
Регистрация: 11-05-05
Пользователь №: 4 913

|
Цитата(Tanya @ Jan 15 2009, 13:56)  scifi правильно все описал, за исключением того, что +/- один период это грубовато. Вполне возможно и точнее, но в любом случае точность будет определяться опорным кварцем. Измерять нужно 8*N периодов. Если сигнал с датчика близок к синусоиде, то грубо можно оценить погрешность, определяемую jitterом компаратора от 1/20 до 1/100 периода. Так что 10^-5 правильная верхняя оценка, согласующаяся с кварцем. И 200МГц - не нужно, хватит и 5-10. Но что можно сказать про интерпретацию результата одиночного измерения длительности 1024 периодов для реальной турбины? Много разного... Таня, Вы не совсем правы. До тех пор пока автор не указал вид и амплитуды гармоник, нельзя катигорично говорить, что хватит 5-10 мГц. Может и двухсот не хватить. Ну а КГ со стабильностью 10^-6 - не такая уж и проблема. Компараторы - у многих достаточно дешевых - J<100pS. Другое дело, что получить разрешение 10^-6 при входном синусе 1V, без фильтрации практически невозможно. И, действительно, нужна ли в данном случае точность 0.01Гц?
|
|
|
|
|
Jan 15 2009, 16:58
|
Группа: Новичок
Сообщений: 4
Регистрация: 29-03-08
Пользователь №: 36 320

|
Во-первых, спасибо всем большое за обсуждение и особенно за полезные ссылки Сейчас пойду их все разбирать Во-вторых, внесу уточнения 1. Частота вращения моих турбин в самом деле порядка 1500 оборотов в секунду - не оговорка - и даже несколько выше: это не электростанция и стоматологический бур, это газовые турбины 2. Амплитуда выходного сигнала в различных конструктивных исполнениях меняется, но почти всегда составляет от 1 до 2 вольт. Амплитуды гармоник сегодня посмотрю, завтра постараюсь выложить 3. Индуктор, возбуждающий ЭДС в датчике вращения, имеет восьмигранную форму, кроме того, один из углов срезан - для определения направления биений. В силу этого факта, а также того, что роторы моих турбин вращаются не строго вдоль оси симметрии, возникают дополнительные гармоники. Причин много, но банально - в первую очередь изначальный дисбаланс, во вторую - возникающие напряжения в материале ротора деформируют его и дальше уже возникают изгибы и колебания различного вида, которые, разумеется, модулируются частотой вращения, умноженной на 8. Примерно такова исходная физическая картина. 4. Вероятно, с величиной точности на уровне 0,01 Гц я слегка погорячился - можно обойтись разрешением (шагом квантования) на уровне 0,001 Гц, а точности достаточно 0,05, ну в совсем плохом случае при быстрой оценке - даже 0,1 Гц. Специфика работы этих машин такова, что контроль скорости вращения происходит постоянно и имеет критически важное значение, отсюда столь жесткие требования. 5. БПФ я упомянул, поскольку вместе с задачей определения скорости вращения, параллельно необходимо решать еще и задачу определения осевых биений ротора турбины, правда требования к ней значительно мягче  . Т.о., резюмируя (и заодно извиняясь за некоторую недосказанность в первом посте), имеем блок из десятка газовых турбин, в котором нужно измерять 1) скорость вращения и 2) величину биений роторов. Точность измерения частоты - лучше 0,05 Гц (при увеличенном времени измерения, скажем до 0,5 сек на одну машину) и 0,1 Гц, с меньшим временем. Повторюсь, я задал вопрос, чтобы выяснить, нет ли уже готовых, более современных, чем имеем мы, решений и способов контроля данных параметров. В качестве идеи - индуктор имеет срезанный угол - т.е. метку - если попытаться отследить именно ее скорость? (Но в качестве ложки дегтя - биения роторов турбины могут достигать величины больше размеров этой самой метки, т.е. больше величины срезанного радиуса  ). Амплитуда сигнала тоже слегка плавает как функция частоты (при разгоне-торможении), температуры и других параметров, связанных с неидентичностью изготовления машин. Задача не совсем простая, как может показаться на первый взгляд. Проблема в том, что сегодня мы имеем решение на уровне знаний 70-х годов и элементной базы той же эпохи (могу соврать, но там даже процессор буквально 580-й используется) и морально оно устарело. p.s. на первом шаге - только проекте, постройке алгоритма - можно и не говорить о типе контроллеров, но, наверное, с учетом объемов математики, которые нужно переварить, следует задуматься о DSP или ARM
Сообщение отредактировал xin - Jan 15 2009, 17:06
|
|
|
|
|
Jan 16 2009, 09:52
|

Ambidexter
    
Группа: Свой
Сообщений: 1 589
Регистрация: 22-06-06
Из: Oxford, UK
Пользователь №: 18 282

|
Цитата(xin @ Jan 15 2009, 16:58)  на первом шаге - только проекте, постройке алгоритма - можно и не говорить о типе контроллеров, но, наверное, с учетом объемов математики, которые нужно переварить, следует задуматься о DSP или ARM Слушайте, а вам не надо момент вращения ваших турбин измерять? Мы тут как раз делаем такие датчики на DSP для дистанционного измерения, правда, выше 18000 rpm на автомобильном движке не поднимались, но инженеры, разрабатывающие этот двигатель, были слегка ошарашены точностью результатов.
--------------------
Делай сразу хорошо, плохо само получится
|
|
|
|
|
Jan 16 2009, 11:37
|
Гуру
     
Группа: Свой
Сообщений: 3 020
Регистрация: 7-02-07
Пользователь №: 25 136

|
Это не те самые пресловутые турбины для перекачки транзитного газа?  Цитата(xin @ Jan 15 2009, 19:58)  Точность измерения частоты - лучше 0,05 Гц (при увеличенном времени измерения, скажем до 0,5 сек на одну машину) и 0,1 Гц, с меньшим временем. Всё-таки уточняющий вопрос: 0,05 Гц на 1500 Гц или 0,05 Гц на 12000 Гц? Разница почти на порядок. Цитата(xin @ Jan 15 2009, 19:58)  Проблема в том, что сегодня мы имеем решение на уровне знаний 70-х годов и элементной базы той же эпохи (могу соврать, но там даже процессор буквально 580-й используется) и морально оно устарело. Если старое решение с задачей адекватно справляется, то нужно ли напрягаться? Если нет, тогда другой разговор...
|
|
|
|
|
Jan 16 2009, 11:51
|
Профессионал
    
Группа: Участник
Сообщений: 1 264
Регистрация: 17-06-08
Из: бандустан
Пользователь №: 38 347

|
Цитата Всё-таки уточняющий вопрос: 0,05 Гц на 1500 Гц или 0,05 Гц на 12000 Гц? Разница почти на порядок цитата : Цитата время измерения - порядка 100-200 мс накопить и измерить за 100-200мс можно и на 1.5КГц и на 12КГц (с предделителем), результат будет один. еще автор не указал амплитуду помех, может подойдет и простейший аналоговый фильтр 1-2го порядка.
Сообщение отредактировал ukpyr - Jan 16 2009, 11:53
|
|
|
|
|
Jan 18 2009, 16:28
|
Группа: Новичок
Сообщений: 4
Регистрация: 29-03-08
Пользователь №: 36 320

|
замечено совершенно точно - нужно знать скорость вращения с точностью до сотых оборота в секунду, т.е. на частоте 12 кГц можно загрубить величину в 8 раз
амплитуда помех обычно невелика - на уровне 20-30 мВ
старое решение с задачей справляется, но неэффективно, как в скорости подсчета, так и в банальном устаревании электроники - она ломается (время наработки уже велико), замена стоит дорого, поиск неисправности тоже чрезмерно затратен, но, как говорится, это уже совсем другая история
|
|
|
|
|
Jan 18 2009, 17:24
|
Гуру
     
Группа: Модераторы
Сообщений: 8 752
Регистрация: 6-01-06
Пользователь №: 12 883

|
Цитата(xin @ Jan 18 2009, 19:28)  замечено совершенно точно - нужно знать скорость вращения с точностью до сотых оборота в секунду, т.е. на частоте 12 кГц можно загрубить величину в 8 раз
амплитуда помех обычно невелика - на уровне 20-30 мВ
старое решение с задачей справляется, но неэффективно, как в скорости подсчета, так и в банальном устаревании электроники - она ломается (время наработки уже велико), замена стоит дорого, поиск неисправности тоже чрезмерно затратен, но, как говорится, это уже совсем другая история Никакого повышения эффективности на новой элементной базе не будет. Если нужно измерить интервал времени между двумя событиями, то относительная погрешность будет определяться (абсолютной точностью регистрации этих событий)/(время измерения - временем между ними) и точностью часов - кварца. У Вас один оборот - (грубо) 500 мкс, точность регистрации - хорошо, если 1 мкс. Вот и считайте... P.S. В PICах есть TIMER0 перед которым стоит асинхронный предделитель, работающий до (не помню точно) 40 MHz.
|
|
|
|
|
Jan 18 2009, 23:04
|
Гуру
     
Группа: Свой
Сообщений: 3 020
Регистрация: 7-02-07
Пользователь №: 25 136

|
Цитата(xin @ Jan 18 2009, 19:28)  старое решение с задачей справляется, но неэффективно, как в скорости подсчета, так и в банальном устаревании электроники - она ломается (время наработки уже велико), замена стоит дорого, поиск неисправности тоже чрезмерно затратен, но, как говорится, это уже совсем другая история Предлагаю перейти на новую элементную базу, но оставить старый алгоритм. Это называется "здоровый консерватизм". Другими словами, "лучшее - враг хорошего". Я понимаю, что могут быть "более продвинутые" решения, что есть желание "оптимизировать". Этому нерациональному желанию надо сопротивляться. Слышали такое: "if it ain't broken, don't fix it"?
|
|
|
|
|
Mar 11 2009, 13:09
|
Группа: Участник
Сообщений: 5
Регистрация: 13-07-07
Пользователь №: 29 096

|
да можно много чего придумать. мы вот частоту измеряем как производную мгновенной фазы. реализуется на плиске относительно просто. Гильберт -> тангенс (табличный 1/cos * sin) -> табличный atan -> производная. её уже и по времени можно усреднять и всякие штуки по выделению шумов делать. а перед всей штукой для уменьшения разрядности можно еще ЦФильтр со следящим циф гетеродином забабахать чтоб полосу обузить
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|