Opened 6 лет ago

Closed 6 лет ago

Last modified 6 лет ago

#145 closed улучшение (сделано)

Сглаживание данных датчика давления

Сообщил: Art_M Владелец:
Приоритет: средний Этап разработки: 2-я очередь
Ключевые слова: Копия: andrei, alx

Описание

Замечено, что имеются существенные броски (шум) значений давления при отображении значений на дисплее и на отображаемых динамограммах.Ранее в Блоках УГП я не замечал таких бросков, которые сейчас видны прорабатываемом контроллере.

Согласно сведениям Александра, Блок УГП получал значение от датчика давления каждые 1мс, а с периодичностью 50мс, Блок УГП брал последние 10значений (т.е. за последние 10мс) и находил среднее значение. Вычисленное значение Блок УГП отражал и записывал в динамограмму.

В прорабатываемом контроллере был принят FIR фильтр, который сглаживает получаемое один раз в 50мс значение давления по настраиваемому коэффициенту и предыдущему значению давления. Данный FIR фильтр нам не подходит для фильтрации имеющихся бросков (шумов).

К сообщению я приложил файл Excel, а так же скриншоты, отображающие работу сглаживания в устройствах и по методикам.

Расшифровка :

  1. черная линия - график изменения "реального" давления по времени
  2. серая шумная линия - полученное случайным образом "зашумление" "реального" давления
  3. зеленая линия - сглаживание шума Блоком УГП по методу Саши зеленая линия
  4. красная линия - фильтрование шума УГП-ЧР фильтром FIR по методу Алексея
  5. синяя линия - усреднение всех 50 значений снятых с периодичностью 1мс в в течение 50мс.
  6. желтая линяя - дальнейшее фильтрование синей линии настраиваемым FIR

Так вот по графикам очевидно, что при одном и том же FIR=0,5 красная линия в случае постоянного "реальной" значения более "корявая" (практически всегда дальше от "реального" значения), а в случае динамического изменения "реального" более гладкая, чем например зеленая линия, как если бы те же самые значения видел бы Блок УГП.
Т.о. мы не можем увеличивать значение FIR, т.к. мы потеряем детальности в динамике, и уменьшать тоже, т.к. будем видеть больше шума на статике.

Очевидно применение такого способа сглаживания нам не подходит. Проверяя подходящие способы очевидно, что методика примененная в Блоке УГП лучше всего! Сглаживание округление всех значений в течение 50мс дает нам некоторое отставание синей линии от "реального" значения, что очевидно на синусном графике.

Поэтому предлагаю выполнить сглаживание данных датчика давления методом по аналогии с Блоком УГП, а настраиваемый FIR оставить как есть, т.е. накладывать поверх усредненных по методу Блока УГП значений.

Вложения (10)

График методов сглаживания.png (319.1 KB ) - added by Art_M 6 лет ago.
FIR vs округление squareform.xlsx (130.0 KB ) - added by Art_M 6 лет ago.
FIR vs округление sineform.xlsx (158.5 KB ) - added by Art_M 6 лет ago.
ДД без доработок.JPG (276.2 KB ) - added by andrei 6 лет ago.
ДД в металлорукове.JPG (293.5 KB ) - added by andrei 6 лет ago.
ДД в металлорукове_цикл.JPG (305.2 KB ) - added by andrei 6 лет ago.
1.jpg (85.5 KB ) - added by san 6 лет ago.
2.jpg (85.7 KB ) - added by san 6 лет ago.
3.jpg (87.8 KB ) - added by san 6 лет ago.
C_1uF.jpg (21.7 KB ) - added by andrei 6 лет ago.

Download all attachments as: .zip

История изменений (29)

comment:1 by san, 6 лет ago

Копия: andrei alx added

in reply to:  description comment:2 by alx, 6 лет ago

Replying to Art_M:

В прорабатываемом контроллере был принят FIR фильтр,

...

Данный FIR фильтр нам не подходит

...

Поэтому предлагаю ... а настраиваемый FIR оставить как есть

У нас в станции нет FIR фильтра. У нас применен IIR фильтр. Соответственно, все последующие моделирования и сравнения результатов работы FIR-фильтра (если это действиетльно он) получается бессмысленно - оно не имеет отношения к нашей установке...

in reply to:  description comment:3 by alx, 6 лет ago

Replying to Art_M:

Согласно сведениям Александра, Блок УГП получал значение от датчика давления каждые 1мс...

...

Поэтому предлагаю выполнить сглаживание данных датчика давления методом по аналогии с Блоком УГП

Сразу скажу, что данный метод не может быть применен на текущем "железе" - оно не может опрашивать датчик давления с такой периодичностью. Потребуется переработка платы SAM-UGP - она должна будет сама накапливать значения в какой-то своей памяти, а затем передавать в контроллер сразу "пачку" накопленных значений для последующей обработки (или, как вариант, сразу их суммировать, а в контроллер отдавать уже среднее значение).

comment:4 by alx, 6 лет ago

И еще мне непонятно, почему сразу предлагается бороться со следствием. Не будет ли лучше сначала попытаться разобраться с причиной - откуда берется этот шум, с последствиями которого предлагается бороться? Вполне может быть, что если найти и устранить причину возникновения шума в сигнале, то и бороться с его последствиями было бы не нужно...

in reply to:  description comment:5 by alx, 6 лет ago

Replying to Art_M:

Блок УГП брал последние 10значений (т.е. за последние 10мс) и находил среднее значение. Вычисленное значение Блок УГП отражал и записывал в динамограмму.

Если я правильно понимаю, это FIR-фильтр "скользящая средняя", являющийся разновидностью фильтра низких частот. Если, как я уже писал, применение такого фильтра все равно потребует изменения схемотехники (переработки платы), то может быть стоит подумать в направлении реализации подобного фильтра аналоговым способом - возможно, это потребует существенно меньших изменений и затрат, нежели прямое повторение описанного Александром алгоритма. Тем более что Андрей все равно планировал добавлять какой-то аналоговый фильтр в эту плату...

comment:6 by alx, 6 лет ago

Какая (в каких единицах) величина отложена по оси Y на этих графиках:


Меня смущает, что здесь величина шума равна половине величины полезного сигнала! Догадываюсь, что это нагрузка на штоке, но в чем - в ньютонах или в кгс?

comment:7 by Art_M, 6 лет ago

У нас в станции нет FIR фильтра. У нас применен IIR фильтр.

Пардоньте, я не запомнил, как он назывался, потому как в ТЗ сначала его назвали одним именем, а потом исправили на другое. Мне показалось, что последним было FIR, но оказалось наоборот IIR. Сути это не меняет, т.к. в графиках я использовал формулу однажды промелькнувшую в ТЗ:
Y0=K*Y1+X*(1-K).

Какая (в каких единицах) величина отложена по оси Y на этих графиках:Догадываюсь, что это нагрузка на штоке, но в чем - в ньютонах или в кгс?

Это условно кгс, а вообще не особо принципиально, важна близость полученных данных к реальному значению...

Сразу скажу, что данный метод не может быть применен на текущем "железе" - оно не может опрашивать датчик давления с такой периодичностью.

Это прискорбно, с какой периодичностью можно обеспечить опрос?

Не будет ли лучше сначала попытаться разобраться с причиной - откуда берется этот шум, с последствиями которого предлагается бороться? Вполне может быть, что если найти и устранить причину возникновения шума в сигнале, то и бороться с его последствиями было бы не нужно...

Однозначную причину установить на данный момент не удалось... Другой вариант несколько улучшающий положение дел - припайка конденсатора. Однако доработка приводов в суровых условиях Нижневартовска, я думаю, Андрея не очень радует...

in reply to:  description comment:8 by alx, 6 лет ago

Replying to Art_M:

Так вот по графикам очевидно, что при одном и том же FIR=0,5 красная линия в случае постоянного "реальной" значения более "корявая" (практически всегда дальше от "реального" значения), а в случае динамического изменения "реального" более гладкая, чем например зеленая линия, как если бы те же самые значения видел бы Блок УГП.

Если я правильно понял, здесь речь идет о выборе фильтра измеряемого сигнала, и критерием отбора является минимизация влияния помехи на результат. Если так, то методика оценки (сравнение исходного полезного сигнала с полезным сигналом, к которому добавлена помеха, прошедшему через фильтр) мне кажется неверной. Мне кажется, более правильным методом было бы применить каждый фильтр дважды: сначала к полезному сигналу без помехи, затем к полезному сигналу с помехой, после чего вычесть один результат из другого. Полученная разность и будет ошибкой, обусловленной наличием помехи. Вот величину этой разницы и следует оценивать...

in reply to:  7 comment:9 by alx, 6 лет ago

Replying to Art_M:

Это прискорбно, с какой периодичностью можно обеспечить опрос?

Опрос можно обеспечить с периодичностью 50 мс - именно на эту величину ориентировались при разработке станции. Вероятно, этот период можно уменьшить в 2-3 раза (с уверенностью сказать нельзя, нужны тесты), но точно не в 50 раз (почти на два порядка!). Также не следует забывать, что в станции запланирован еще и некий "двухлифтовый" вариант, при котором контроллер должен будет опрашивать большее число датчиков - например два дополнительных индуктивных датчика положения и еще один датчик давления, которые сейчас не используются...

Поэтому я еще раз настоятельно предлагаю рассмотреть вариант реализации фильтра "по методу Саши" до АЦП, в аналоговых цепях. Это выльется лишь в пару дополнительных резисторов и пару дополнительных конденсаторов, и исключит необходимость повышать частоту дискретизации. Это если перед нами стоит задача минимальной ценой уменьшить влияние помехи. Если менеджмент поставит задачу радикально переработать железо, фактически разработать новое, второе поколение станции - это будет другой разговор. В новой разработке можно будет применить и АЦП другого типа, рассчитанные на снятие гораздо бОльших потоков данных, и учесть еще массу других существующих недостатков, о которых мы теперь знаем по опыту разработки нашей сегодня существующей станции (искрогасящие цепи, дифференциальные линии связи, большой дисплей и т.п.).

comment:10 by andrei, 6 лет ago

Попробуем протащить кабель датчика давления через металлорукав.
Цель - избавиться от наводок.
Надо включиться и с конденсатором и без и снова посмотреть сигнал осциллографом.

by andrei, 6 лет ago

Вложение: ДД без доработок.JPG added

by andrei, 6 лет ago

comment:11 by andrei, 6 лет ago

  1. Конденсатор 10 нФ на входе уменьшает помеху.
  2. Кабель датчика давления в металлорукав, заземленный в шкафу. Результаты лучше чем в п.1.


  1. На измерительный вход ДД конденсатор 1 uF или 0,25 uF на землю. Результат как с металлорукавом, по словам Неволина 1 uF показывает лучшие результаты.
  2. Металлорукав на кабеле и конденсатор на входе убирают наведенные помехи.
  3. На неэкранированый кабель при датчике не связанным с землей помеха не наводится.

comment:12 by andrei, 6 лет ago

Решение для 14 отгруженных установок - выпустить конденсатор с креплением к корпусу УГП-ЧР. Конденсатор прикрутить на входной клеммник ДД1 силами техноойл. Будет не идеально, но трудозатраты минимальные.
В следующих установках (если будут следующие) для всех кабелей, выходящих из шкафа СУГП-ЧРП применять металлорукав вместо пластиковой гофры. В таком случае возможно и программная фильтрация не понадобится.
Артем, решение тебя удовлетворяет? Закрываем тикет?

in reply to:  12 ; comment:13 by alx, 6 лет ago

Replying to andrei:

Артем, решение тебя удовлетворяет? Закрываем тикет?

Андрей, в описании тикета Артем жалуется на (цитирую) "броски (шум) значений давления при отображении значений на дисплее и на отображаемых динамограммах". Приведенные тобой осциллограммы - это, конечно, полезная информация, но из твоих комментариев так и не ясно, привело ли добавление конденсатора и металлорукава к устранению бросков и шума, на которые, собственно, жалуется Артем, или нет...

in reply to:  13 comment:14 by san, 6 лет ago

Replying to alx:

привело ли добавление конденсатора и металлорукава к устранению бросков и шума, на которые, собственно, жалуется Артем, или нет...

Вот фото экрана динамограмм из эксперимента (ожидаемый Артёмом диапазон нагрузок 0 ... 4000 кгс)

  1. Исходное состояние, без доработок

Нет изображения "1.png" прикрепленного к Карточка #145

  1. На измерительный вход ДД конденсатор 1 uF на землю.

Нет изображения "2.png" прикрепленного к Карточка #145

  1. Металлорукав на кабеле и конденсатор 0.25 uF на землю на входе ДД.

Нет изображения "3.png" прикрепленного к Карточка #145

Version 0, edited 6 лет ago by san (следующий)

by san, 6 лет ago

Вложение: 1.jpg added

by san, 6 лет ago

Вложение: 2.jpg added

by san, 6 лет ago

Вложение: 3.jpg added

comment:15 by alx, 6 лет ago

Артем, устроит ли тебя предложенное Андреем решение, или ты настаиваешь на программной реализации фильтра?

by andrei, 6 лет ago

Вложение: C_1uF.jpg added

comment:16 by andrei, 6 лет ago

Решение: сделано
Состояние: newclosed

Никакой другой программный фильтр, кроме существующего, для текущих изделий пока реализовать не будем.
Аппаратно поставим конденсаторы 1 uF с клеммой для прикручивания к корпусу (GND).

Проблему это устраняет.
Если нужно ещё качественнее убирать помеху, то просим НПК запихать все провода в металлорукав, как предписывает инструкция к ЧРП.

comment:17 by Art_M, 6 лет ago

В сложившейся ситуации выбор мне не предоставлен. Топик был о улучшении софтового сглаживание шума, либо доведения его до состояния "как это было на Блоке УГП", которое, как оказалось, выполнить невозможно в силу особенностей разработанного контроллера. Это прискорбно. Как это в дальнейшем может сказаться на интеллектуальной функции - неизвестно. Может быть при дальнейшей переработке "железа" учтем этот момент (развязка датчика давления от основной шины), важно при этом будет постараться сохранить унификацию софта.

Ну а теперь о "железном" устраении шума, на этой партии решение только одно - ставим кондеры. На следующую партию прошу учесть в стоимости станции поставку датчика с кабелем сразу в металлогофре с припаенным концом для заземления к соответствующей клемме в станции. Андрей, что скажешь?

in reply to:  17 comment:18 by andrei, 6 лет ago

Replying to Art_M:

В сложившейся ситуации выбор мне не предоставлен. Топик был о улучшении софтового сглаживание шума, либо доведения его до состояния "как это было на Блоке УГП",

Если ты посмотришь на картинку в ПО Динамограф, то увидишь что динамограммы старого блока и нового мало чем отличаются. А другого способа сравнить вроде нет. Поправьте если ошибаюсь.

которое, как оказалось, выполнить невозможно в силу особенностей разработанного контроллера. Это прискорбно. Как это в дальнейшем может сказаться на интеллектуальной функции - неизвестно. Может быть при дальнейшей переработке "железа" учтем этот момент (развязка датчика давления от основной шины), важно при этом будет постараться сохранить унификацию софта.

Да, конечно. Я настоятельно прошу учесть рекомендации производителя ЧРП по засовыванию кабелей в металлорукав для исключения высокого уровня помех по всей длине кабелей.
Если же нет желания подключать ЧРП правильно, но хочется чтобы было хорошо, давайте вернемся к контакторам. Источник шума исчезнет и все будет как в старом добром УГП (мечты сбываются).

Ну а теперь о "железном" устраении шума, на этой партии решение только одно - ставим кондеры.

Это касается не только этой партии. Конденсатор там обязан стоять всегда. Это уже косяк разработчика, который не работал с ЧРП.

На следующую партию прошу учесть в стоимости станции поставку датчика с кабелем сразу в металлогофре с припаенным концом для заземления к соответствующей клемме в станции. Андрей, что скажешь?

А это обсуждаемо. Я думаю что дешевле одинаковые операции делать в одном месте, но не вижу проблем, если шнур подключения ДД в металлорукав будет заталкивать АДС, опыт заталкивания есть. Заложить в стоимость тоже не сложно, главное не забыть при новых разработках.

in reply to:  17 comment:19 by alx, 6 лет ago

Replying to Art_M:

Может быть при дальнейшей переработке "железа" учтем этот момент (развязка датчика давления от основной шины),

Я не понял... О какой шине идет речь? И о какой развязке - гальванической? Вроде бы датчики давления у нас ни к какой шине не подключаются, для каждого датчика свой собственный индивидуальный вход... Это датчики температуры у нас на общей шине...

Note: See TracTickets for help on using tickets.