|
банальное измерение частоты, как точно измерить скорость вращения ротора |
|
|
|
Jan 14 2009, 17:05
|
Группа: Новичок
Сообщений: 4
Регистрация: 29-03-08
Пользователь №: 36 320

|
уважаемые гуру, помогите, пожалуйста, советом в решении следующей задачи есть ротор турбины, он вращается с высокой скоростью - порядка 1500 об/с единственный источник получения информации - датчик вращения, который представляет собой катушку над ротором, в которой возбуждается ЭДС от магнитного поля восьмигранного сердечника. Т.о., имеем почти синусоиду (в силу наличия биений форма сигнала искажается, и возникают дополнительные гармоники) частотой порядка 12 кГц. К сожалению, исторически сложилось, что модифицировать конструкцию невозможно совершенно - турбины поставлены в серию, т.е. задача только в сборе информации с этих датчиков и ее интерпретации (все турбины объединены в блоки по 10 штук) И, собственно, вопрос - как в моей ситуации правильно измерить эту самую скорость вращения? Требуемая точность - не хуже 0,01 Гц, амплитуда сигнала - порядка 1 В, время измерения - порядка 100-200 мс. Фактически, 95% времени нужно измерять скорость вращения именно на уровне 1400-1500 об/с, однако оставшееся время - при разгоне и торможении - измерение также необходимо, допустимо только слегка загрубить точность. (Это к возможности реализации разностной схемы регистрации) Форум листал, и в одном из топиков нашел утверждение, что детектирование прохождения через нуль с последующим усреднением - это совсем по-пэтэушному  самое смешное, что нынешние приборы для регистрации именно так и работают. Вариант с БПФ для каждой машины тоже где=то назвали решением "по-программистски, в лоб", т.е. с бесцельным растрачиванием вычислительных ресурсов. И можно ли выделить гармонику с такой точностью в нужном мне временнОм диапазоне? заранее спасибо
|
|
|
|
2 страниц
1 2 >
|
 |
Ответов
(1 - 27)
|
Jan 14 2009, 21:42
|
Знающий
   
Группа: Свой
Сообщений: 775
Регистрация: 11-05-05
Пользователь №: 4 913

|
Цитата(zltigo @ Jan 15 2009, 00:27)  Здорово-то как  . Этот вопрос задан ведь не в детском саду, Быстрое Преобразование Фурье и прочие выкрутасы поминаются, раздел Матеманика.... Ни какое сомнение не закралось? Нет, ну если контроллер может измерять частоту заполнения -200мГц, то можно и контроллер. Правда, пока непонятно, хватит ли 10-15 усреднений, для получения точности 0.01Гц при искажениях. Скажите, хотя бы, какова амплитуда гармоник.
Сообщение отредактировал asdf - Jan 14 2009, 21:56
|
|
|
|
|
Jan 14 2009, 22:13
|
Гуру
     
Группа: Почетный участник
Сообщений: 6 851
Регистрация: 25-08-08
Из: Запорожье
Пользователь №: 39 802

|
Цитата(Herz @ Jan 15 2009, 02:03)  Тут нет ошибки случаем? 1500 об/сек это 90000 об/мин. С такой скоростью вращаются турбины?! А это что возникает в воображении. Если электростанция- наврано раз в 50-60 Если МИГ- раз в 5-6 А если стоматолог, то еще и мало. --- По теме. При чем тут гармоники - совершенно непонятно. Гармоники могут исказить ФОРМУ сигнала. А измерять-то нужно частоту?
|
|
|
|
|
Jan 15 2009, 05:23
|
Частый гость
 
Группа: Свой
Сообщений: 127
Регистрация: 4-04-07
Из: Ижевск
Пользователь №: 26 773

|
Цитата(xin @ Jan 14 2009, 21:05)  ...И, собственно, вопрос - как в моей ситуации правильно измерить эту самую скорость вращения? Требуемая точность - не хуже 0,01 Гц, амплитуда сигнала - порядка 1 В, время измерения - порядка 100-200 мс... Здравствуйте. Может наведет на какие-то мысли следующая веточка и пример практического воплощения (MSP430F1121A+TIC5231; время измерения 0.33 сек) обсуждаемого алгоритма и предположении, что сигнал датчика нормирован. http://electronix.ru/forum/index.php?showtopic=50159
|
|
|
|
|
Jan 15 2009, 06:56
|
Гуру
     
Группа: Свой
Сообщений: 3 020
Регистрация: 7-02-07
Пользователь №: 25 136

|
Цитата(xin @ Jan 14 2009, 20:05)  ...имеем почти синусоиду (в силу наличия биений форма сигнала искажается, и возникают дополнительные гармоники) частотой порядка 12 кГц. ...Требуемая точность - не хуже 0,01 Гц Минуточку. 0,01 Гц на 12 кГц - это точность порядка 10^-6. Ничего не путаете? Даже кварц у Вас на плате такой точности не имеет. Цитата(xin @ Jan 14 2009, 20:05)  ...время измерения - порядка 100-200 мс ...детектирование прохождения через нуль с последующим усреднением - это совсем по-пэтэушному  самое смешное, что нынешние приборы для регистрации именно так и работают. Подсчёт числа импульсов с частотой около 12 кГц за 100 мс даст около 1200 импульсов. Погрешность отсчёта (+/- 1 импульс) даёт точность порядка 10^-3. Такая точность больше похожа на правду. Вы сначала разберитесь со своими требованиями. Цитата(xin @ Jan 14 2009, 20:05)  Форум листал, и в одном из топиков нашел утверждение, что детектирование прохождения через нуль с последующим усреднением - это совсем по-пэтэушному  А по-пэтэушному - это хорошо или плохо? Если Вы свои инженерные решения таким сомнительным образом будете обосновывать, то ничего хорошего не получится.
|
|
|
|
|
Jan 15 2009, 07:16
|

чукчхэшаражогрмонтажник
    
Группа: Участник
Сообщений: 1 852
Регистрация: 13-07-07
Из: Minsk
Пользователь №: 29 094

|
Цитата(xin @ Jan 14 2009, 20:05)  ... Форум листал, и в одном из топиков нашел утверждение, что детектирование прохождения через нуль с последующим усреднением - это совсем по-пэтэушному  самое смешное, что нынешние приборы для регистрации именно так и работают. Вариант с БПФ для каждой машины тоже где=то назвали решением "по-программистски, в лоб", т.е. с бесцельным растрачиванием вычислительных ресурсов. И можно ли выделить гармонику с такой точностью в нужном мне временнОм диапазоне? заранее спасибо Ничего странного в подсчёте импульсов от датчика нет. Многие стандартные средства устроены т. о. Возможно пригодится. Rotational Speed Sensors.
--------------------
Quo vadis?
|
|
|
|
|
Jan 15 2009, 09:53
|
Знающий
   
Группа: Свой
Сообщений: 775
Регистрация: 11-05-05
Пользователь №: 4 913

|
Цитата(scifi @ Jan 15 2009, 09:56)  Минуточку. 0,01 Гц на 12 кГц - это точность порядка 10^-6. Ничего не путаете? Даже кварц у Вас на плате такой точности не имеет.
Подсчёт числа импульсов с частотой около 12 кГц за 100 мс даст около 1200 импульсов. Погрешность отсчёта (+/- 1 импульс) даёт точность порядка 10^-3. Такая точность больше похожа на правду. Вы сначала разберитесь со своими требованиями. Если измерять не частоту, а период с заполнением частотой более 200мГц, то заявленная точность достижима. В этом случае вопрос только в возможности уменьшения ошибки из-за негармоничности сигнала. В принципе, важно как возбуждается гармоника - синхронно с основной частотой или плавает. Это и амплитуда гармоники и будет определять потребное количество периодов усреднения. Аналогичная тема (измерение частоты КГ с высокой точностью за малый промежуток времени) весной прошлого года уже обсуждалась, там обсуждались и разные варианты решения. Правда, использование для решения задачи БПФ - там не обсуждалось.
|
|
|
|
|
Jan 15 2009, 10:56
|
Гуру
     
Группа: Модераторы
Сообщений: 8 752
Регистрация: 6-01-06
Пользователь №: 12 883

|
Цитата(asdf @ Jan 15 2009, 12:53)  Если измерять не частоту, а период с заполнением частотой более 200мГц, то заявленная точность достижима. scifi правильно все описал, за исключением того, что +/- один период это грубовато. Вполне возможно и точнее, но в любом случае точность будет определяться опорным кварцем. Измерять нужно 8*N периодов. Если сигнал с датчика близок к синусоиде, то грубо можно оценить погрешность, определяемую jitterом компаратора от 1/20 до 1/100 периода. Так что 10^-5 правильная верхняя оценка, согласующаяся с кварцем. И 200МГц - не нужно, хватит и 5-10. Но что можно сказать про интерпретацию результата одиночного измерения длительности 1024 периодов для реальной турбины? Много разного...
|
|
|
|
|
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
|
|
|