Предыдущая тема :: Следующая тема |
Автор |
Сообщение |
Dimasm
Зарегистрирован: 25.04.2005 Сообщения: 454
|
Добавлено: Сб Сен 23 2006 18:26 Заголовок сообщения: анализ экспериментальных данных |
|
|
я занимаюсь одним вопросом, изучение динамических характеристик двигателей...
допустим есть эдектродвигатель, на его валу установленна шестерня, на против шестерни - индуктивный датчик. всё это дело пишется CoolEdit через звуковую карту.
Далее синусоида обрабатывается, строится график зависимости оборотов от времени (n=f(t)), далее интегрируем график, и получаем график зависимости ускорения от оборотов - e=f(n) - такой график по сути повторяет кривую крутящего момента двигателя, т.е. связан с ней неким коэффициентом численно равным моменту инерции ротора двигателя.
Просто разгоняем двигатель - записываем
подключаем к двигателю некую "нагрузку" - записываем
нагрузка постоянная - маховик с известным моментом инерции
сравнивая и анализируя кривые разгонов и ускорений, определяются характеристики "нагрузки" либо двигателя
это всё в теории
на практике, разгон самого двигателя происходит "красиво" без скачков, рывков, красивая кривая, можно даже выявить её уравнение
когда же подключаем нагрузку, выходит такая х..ня
теоретически должен быть тотже разгон, но растянутый во времени
а получается - какие-то рывки, то замедления в ноль... в жизни всё не так как в теории сложно даже более или менее точно выловить моменты начала и окончания разгона.
"визуальные" изучение, говорит о том, что физика процесса соответсвует тому, что должно быть - если взять напечатанный график и карандаш, то можно практически на любой повторности "от руки" нарисовать как должен быть этот график что можно подтвердить рассчётами.
но повторностей много и в ручную рисовать не будешь, к томуже это вносит элемент субъективности, наука так не делается
если же для автоматизации обработки данных аппроксимировать полиномы на полученные данные - то они далеки от того, какими должны быть, в общем всеизвестные лини тренда не дают нужного результата
а нужно сравнивать номальный результат (при холостом разгоне) и этот корявый (с нагрузкой)
в общем сам ворос: есть ли другие методы (кроме линий тренда) анализа таких данных, их приближения к теоретическим кривым?
Насколько научно обоснованными можно считать такие методы?
Кто-нибудь сталкивался с такими проблемами? _________________ С уважением Dimasm |
|
Вернуться к началу |
|
|
grf
Зарегистрирован: 05.04.2005 Сообщения: 1242 Откуда: Москва
|
Добавлено: Пн Сен 25 2006 08:40 Заголовок сообщения: |
|
|
Без наезда , я надеюсь ты учишся в ВУЗе. Сходи на курсы ЭМИ (Экспериментальные методы исследования) или как этот курс называется в твоем ВУЗе. И познакомься с методами аппроксимации, интерполяции, расчета погрешностей и пр. пр. пр.
Со своей стороны могу посоветовать книги:
1. Преображенсткий, не помню как называется дословно, что то типа "Экспериментальные методы исследования" или что-то в таком роде. Фолиант страниц на 1000 в объеме.
2. Рабинович "Теория погрешностей"
Без этих элементарных знаний вся твоя работа гроша ломанного не стоит
_________________ Errare humanum est |
|
Вернуться к началу |
|
|
grf
Зарегистрирован: 05.04.2005 Сообщения: 1242 Откуда: Москва
|
Добавлено: Пн Сен 25 2006 09:50 Заголовок сообщения: |
|
|
Делается это примерно так:
У тебя есть набор экспериментальных точек.
Ты аппроксимируешь их кривой, зависящей от типа процесса: полиномом, синусойдой, экспонентой и пр. пр. пр.
При этом получаешь уравнение этой кривой и среднеквадратичное отклонение от нее твоих точек.
Далее берешь интеграл, производную, возводишь в квадрат и все пр. что тебе необходимо, и получаешь результирующую кривую и соответствующую погрешность конечного результата.
В итоге ты имеешь, что процесс описывается, напимер уравнением y=5sin(x)+4cos(3x)
погрешность измерений составляет 15%.
_________________ Errare humanum est |
|
Вернуться к началу |
|
|
Dimasm
Зарегистрирован: 25.04.2005 Сообщения: 454
|
Добавлено: Пн Сен 25 2006 19:04 Заголовок сообщения: |
|
|
это всё мне известно, проблемме немного не в этом:
эксперимент 1: получили набор точек, под процесс подходит
полинома 2-й степени y(x) = a*x*x+b*x+c
функция зависит от времени t
на основании нескольких повторностей
получаем коэффициенты
y(t) = 13*t*t-2.2*t-0,5
чтобы уйти от времени (время начала замера точно не совпадает)
берём производную (графически, y - это скорость, y'[i] = (y[i]-y[i-1])/(t[i]-t[i-1])
и строим для себя график y'(y), то есть график зависимости ускорения от скорости - динамическая характеристика двигателя
эксперимент 2: (упрощённо) к двигателю крепится маховик, следовательно его разгон должен быть более медленным
и график скорости от времени y(t) окажется растянутым во времени по сравнению с 1-м экспр.
двигатель один и тотже, просто будет медленнее разгоняться
следовательно y'(y) - ускорения будет иметь туже форму что и при первом экспр. но проходить несколько ниже
если на y'(y) также наложить полиному, то для обоих экспериментов уравнения должны выглядеть примерно так
1: y'(y) = 11*y*y-2*y+100
2: y'(y) = 11*y*y-2*y+80
должна меняться только последняя цифра
цифры 100 и 80 отвечают за расстояние параболы от оси Х
т.е. парабола одинаковая но одна выше другой, так вот моя задача
найти эти две последние цифры, которые покажут мне разницу в ускорениях двигателя
на практике, если я автоматом аппроксимирую второй эксперимент может получиться 9*y*y-8*y+77, исследуя разные повторности разгона получются кривые с "очень" разными наклонами
в общем из-за того, что время эксперимента короткое, а скачки вносимые передаточными механизмами большие, простая аппроксимация не даёт того, что надо
я не просто хочу получить данные о процессе, необходимо получить и сравнить два процесса, причём я знаю как они должны выглядеть (формы графиков) мне нужно численно знать на сколько эти графики один выше/ниже другого
для того чтобы их сравнить, они должны иметь хотябы "примерно" одинаковую форму, чего не получается добиться
если кому интересно, могу выслать графики на мыло
можно ли поступить по другому? _________________ С уважением Dimasm |
|
Вернуться к началу |
|
|
grf
Зарегистрирован: 05.04.2005 Сообщения: 1242 Откуда: Москва
|
Добавлено: Вт Сен 26 2006 09:32 Заголовок сообщения: |
|
|
Честно говоря не много не вьехал:
1. У тебя есть квадратичная зависимость от времени
y=at**2+bt+t
Т.к. начало эксперимента неизвестно, то вводим некое время, начала эксперимента t0, которая является константой, для одного графика.
y=a(t-t0)**2+b(t-to)+c
если ты возьмешь производную от этого, ты не избавишься от t0
dy/dt=4at-2at0+b (арифметику за мной проверь, мог и ошибиться )
Соответственно эти ты точно не избавишься от времени начала эксперимента.
Для определения t0 я бы заложил некое условие, в параболе это вероятнее всего, что y'(t0)=0
После чего ты делаешь соответствующие попроавки во времени, или, что скорее всего учитываешь их в дальнейших расчетах, я их опускаю, что бы не занимать всех банальной арифметикой, и считаю, что все процессы у нас синхронизированы.
2. у тебя есть функции вида
у(t)=ax**2+bx+c
ты утверждаешь, что от условий эксперимента тебе проще работать с призводной
y'(t)=2ax+b
и в различных экспериментах у тебя меняется только константа b.
Тогда тебе просто придется решить систему уравнений, описывающих 3 условия:
1. величина а в каждом эксперименте одинаковая
2. величина b меняется в каждом эксперименте
3. среднеквадротичное отклонение экспериментальных точек должно быть минимальным с учетом вышестоящих условий.
Как это реализовать? очень хороший вопрос.
У тебя есть функция зависимость среднеквадратичного отклонения от коэффициэнтов a и b для каждого эксперимента:
G(a,b)
Если экспериментов, например 2, то соответственно
G1(a,b1)
G2(a,b2)
а вот далее возможны варианты, в зависимости от твоих желаний потребностей:
1. Искать величины a,b1,b2....bn чтобы погрешность была минимальна: работа достойная курсового, как минимума
2. Посчитать для каждого эксперимента a, соответственно a1,a2...an найти среднее значение a, пересчитать новые b1,b2..bn
Я бы пошел по следующему пути:
нашел бы для каждого эксперимента a1,a2....an соответственно.
Далее прошелся пы с малым шагом от минимального а до максимального, определяя каждый раз соответствующие b1,b2..bn, и выбрал бы тот вариант, где все (скорее всего сумма) G была бы минимальна.
В любом случае выбор a и b влияет только на итоговую погрешность.
При всех жтих вычеслениях не забудь еще хвостик погрешности от вычесления t0.
В общем задача довольно не простая, но вполне решаема.
Удачи.
_________________ Errare humanum est |
|
Вернуться к началу |
|
|
Pupan
Зарегистрирован: 26.09.2006 Сообщения: 2 Откуда: Saratov
|
Добавлено: Вт Сен 26 2006 09:58 Заголовок сообщения: |
|
|
Здравствуй Dimasm решали подобную задачу для синхронных двигателей - методы - трендирование + запоминающий осциллограф для быстрых процессов + регистрирующие приборы для измерений токов и напряжений. Насчет "некрасивого" процесса разгона - двигатель с маховиком механическая колебательная система, вот вам непонятные разгоны и остановки |
|
Вернуться к началу |
|
|
grf
Зарегистрирован: 05.04.2005 Сообщения: 1242 Откуда: Москва
|
Добавлено: Вт Сен 26 2006 09:58 Заголовок сообщения: |
|
|
Цитата: | если ты возьмешь производную от этого, ты не избавишься от t0
dy/dt=4at-2at0+b (арифметику за мной проверь, мог и ошибиться ) |
Кстати, если ты возьмешь вторую производную, то это быстрый и очень удобный способ определить a.
просто проводишь прямую через твои точки методом наименьших квадратов и находишь a, не зависящую от t0
_________________ Errare humanum est |
|
Вернуться к началу |
|
|
Dimasm
Зарегистрирован: 25.04.2005 Сообщения: 454
|
Добавлено: Вт Сен 26 2006 19:25 Заголовок сообщения: |
|
|
grf писал(а): | Честно говоря не много не вьехал:
1. У тебя есть квадратичная зависимость от времени
y=at**2+bt+t
Т.к. начало эксперимента неизвестно, то вводим некое время, начала эксперимента t0, которая является константой, для одного графика.
y=a(t-t0)**2+b(t-to)+c
если ты возьмешь производную от этого, ты не избавишься от t0
dy/dt=4at-2at0+b (арифметику за мной проверь, мог и ошибиться )
Соответственно эти ты точно не избавишься от времени начала эксперимента. |
избавлюсь
получив y' = dy/dt, я работаю с графиком y' = f(y) а не y' = f(t)
Со временем никак не угадать
grf писал(а): | ...Далее прошелся nы с малым шагом от минимального а до максимального, определяя каждый раз соответствующие b1,b2..bn, и выбрал бы тот вариант, где все (скорее всего сумма) G была бы минимальна.
.... |
То есть если я правильно понял, то: если я занаю, что должен быть
график вида y = 33*x*x-12*x-F (изменяться может только F), то мне нужно подобрать такой коэф F, чтобы было минимальное квадратичное отклонение от моих точек, так?
И получить это либо решением у-я, либо итерациями?
Я тоже над таким думал, но тут же вопрос, это можно считать "научным подходом"? учёный совет носом не ткнёт?
Pupan писал(а): | Здравствуй Dimasm решали подобную задачу для синхронных двигателей - методы - трендирование + запоминающий осциллограф для быстрых процессов + регистрирующие приборы для измерений токов и напряжений. Насчет "некрасивого" процесса разгона - двигатель с маховиком механическая колебательная система, вот вам непонятные разгоны и остановки |
Да! сегодня советовался с сторожилами у нас "система" это трактор + маховик (через вал отбора мощности) весом в 120 кг и диаметром чуть меньше метра когда крутится - страшно
Ох нам столько возможных причин "кривости" графика назвали... начиная от испорченой муфты ВОМ, заканчивая "пружинными" свойствами передаточных механизмов
Ещё получили довольно точные (ускорения по поршням видно) графики скорости техники в движении
всё ТАК ДАЛЕКО ОТ ТЕОРИИ!!!
чуть позже ради любопытства данные с легкового авто получу _________________ С уважением Dimasm |
|
Вернуться к началу |
|
|
Pupan
Зарегистрирован: 26.09.2006 Сообщения: 2 Откуда: Saratov
|
Добавлено: Ср Сен 27 2006 08:09 Заголовок сообщения: |
|
|
Добрый день
Dimasm, вы пишите что все очень далеко от теории, позвольте полюбопытствоать какой теорией вы пользуетесь.
Еще в институте студентами на курсе "Механизмы и приводы ЭТУС"
расчитывали параметры разгона эл.двигателей, по сравнению с экспериментом погрешности в приделах нормы инженнерного расчета - 20-25% |
|
Вернуться к началу |
|
|
grf
Зарегистрирован: 05.04.2005 Сообщения: 1242 Откуда: Москва
|
Добавлено: Ср Сен 27 2006 09:19 Заголовок сообщения: |
|
|
Цитата: | получив y' = dy/dt, я работаю с графиком y' = f(y) а не y' = f(t) |
Согласен
Но все же давай определимся с терминологией, а то я для меня еще много не понятного
1. Есть уравнение вида
y=ax**2+bx+c
или
ax**2+bx+(c-y)=0
или
x=(-b+-SQRT(b**2-4a(c-y))/2a
y'=2ax+b
Подставляя х в у' получим
y'=2a((-b+-SQRT(b**2-4a(c-y))/2a)+b
или
y'=+-SQRT(b**2-4a(c-y)) или
y'=+-SQRT(q-wy)
где q,w некие константы
Цитата: |
если на y'(y) также наложить полиному, то для обоих экспериментов уравнения должны выглядеть примерно так
1: y'(y) = 11*y*y-2*y+100
2: y'(y) = 11*y*y-2*y+80
|
Как ты получил, что
y'=my**2+ny+p
где m,n,p некие константы?
2. Что ты хочешь получить в первую очередь y или y', а то ты перескакиваешь с одного на другое. Тебе важно получить y'(y) или y'(x)7
3. пусть есть процесс описываемый уравнением
y=ax**2+bx+c
Пусть истинные значения будут
y=3x**2+4x+5
Ты можешь сказать, что например на отрезке x=[0 ;100]
этот процесс можно описать уравнением
y=3.01x**2+4.001x+4.999 c погрешностью 2%
А можешь сказать, что этот процесс можно описать уравнением
y=3.51x**2+4.3x+4.2 c погрешностью 25%
А можешь сказать, что этот процесс можно описать уравнением
y=351x**2+1000x+678 c погрешностью 10**8%
Все варианты вполне научны и правильны и обоснованны, какой выбрать зависит от твоих целей, понятно, что опустить погрешность ниже какой то планки не получится , однако вопрос в том насколько близко ты хочешь (тебе надо) подойти к ней.
_________________ Errare humanum est |
|
Вернуться к началу |
|
|
Dimasm
Зарегистрирован: 25.04.2005 Сообщения: 454
|
Добавлено: Ср Сен 27 2006 21:27 Заголовок сообщения: |
|
|
to grf
Давай немного цифр, кидай в Excel и строй графики
допустим у нас есть процесс разгона, зависимость
w=f(t) вернее набор точек
t; w
0,00; 0,23
0,25; 0,38
0,50; 0,51
0,75; 0,67
1,00; 0,80
1,25; 0,90
1,50; 0,98
наложив полиному 2-й степении, мы получил
у-е w = -0,1053*t*t + 0,6667*t + 0,2221
берём производную
dw/dt = -2*0,1053*t+0,6667
на основании данных коэффициентов строим "w" и "e"
t; w; e;
0,00; 0,222; 0,667;
0,25; 0,160; 0,614;
0,50; 0,307; 0,561;
0,75; 0,441; 0,509;
1,00; 0,561; 0,456;
1,25; 0,669; 0,403;
1,50; 0,763; 0,351;
e = w'
Теперь строим новый график, в котором по Х откладываем "w" а по У - "e", e = f(w)
w - обороты двигателя
e - ускорения развиваемые двигателем
Теперь ищем у-е e = f(w) накладывая полиному второй степени
e = -0,1657*w*w - 0,2094*w + 0,72 (1)
Конечно прийти к этому через формулу гараздо "красивее"
Согласно теории если двигатель чем-то равномерно загружен, то есть нагрузка не изменяется с ростом оборотов (например маховик), то форма кривой разгона не изменится, т.е. ( -0,1657*w*w - 0,2094*w ) будут одинаковы всегда,
с загрузкой только коэф. 0.72 може превратиться в 0.4, то есть кривая может немного "опуститься" к оси "w"
Проблемма в том, что при экспериментах с загрузкой двигателя, повторив весь приведённый выше алгоритм
можно получить вот такой график
w; e
0,2221; 0,366;
0,3822; 0,364;
0,5291; 0,3437;
0,6629; 0,314;
0,7835; 0,284;
0,8909; 0,255;
0,9852; 0,219;
Если его построить вместе с предыдущим, то видно, что он имеет совсем другой характер, законов Ньютона никто не отменял, такого быть не должно
Pupan писал(а): | Dimasm, вы пишите что все очень далеко от теории, позвольте полюбопытствоать какой теорией вы пользуетесь. |
Я не понял вашего вопроса, что значит какой теорией?
Электродвигатель я привёл для упрощения
В моём случае "двигатель" - это дизельный двигатель трактора
у двигателя есть своя кривая крутящего момента который он должен чётко выдавать. При "холостом" разгоне двигателя, т.е. когда двигатель разгоняет самого себя, преодолевая свой момент инерции
если в формулах то M = J*e М - крутящий момент,J - момент инерции двигателя, e- ускорение. Это аналогично F=m*a.
эту кривую (M = J*e) можно чётко определить, погрешность 2..4% (это разрабатывался метод диагностики). Честно говоря 20...25% это примерно +-10 КВт - многовато будет _________________ С уважением Dimasm |
|
Вернуться к началу |
|
|
grf
Зарегистрирован: 05.04.2005 Сообщения: 1242 Откуда: Москва
|
Добавлено: Чт Сен 28 2006 13:15 Заголовок сообщения: |
|
|
с цифрами поковыряюсь, когда время будет, но я не понял опять и снова:
Цитата: | e - ускорения развиваемые двигателем
Теперь ищем у-е e = f(w) накладывая полиному второй степени |
Почему ВТОРОЙ степени, а не первой, третьей или двадцатой?
Цитата: |
1. Есть уравнение вида
y=ax**2+bx+c
или
ax**2+bx+(c-y)=0
или
x=(-b+-SQRT(b**2-4a(c-y))/2a
y'=2ax+b
Подставляя х в у' получим
y'=2a((-b+-SQRT(b**2-4a(c-y))/2a)+b
или
y'=+-SQRT(b**2-4a(c-y)) или
y'=+-SQRT(q-wy)
где q,w некие константы
|
Либо я ошибся, тогда укажи где, либо накладывать надо полином степени 1/2
y'=+-SQRT(q-wy) _________________ Errare humanum est |
|
Вернуться к началу |
|
|
grf
Зарегистрирован: 05.04.2005 Сообщения: 1242 Откуда: Москва
|
Добавлено: Пт Сен 29 2006 08:43 Заголовок сообщения: |
|
|
Я не силен в кинематике двигателей, что бы так сходу описать ваши процессы, ди и разбираться, сию секунду у меня желания особого нет
Возможно у Вас весь процесс описывается диффуром вида:
y'=ay**2+by+c
?????????
Тогда вы пошли по некоему странному пути.
1. Я бы сперва попытался решить диффур аналитически в общем виде.
2. Если не получилось бы, решить численно.
3. подобрать коэффициэнты a,b,c исходя из минимальной погрешности
_________________ Errare humanum est |
|
Вернуться к началу |
|
|
Dimasm
Зарегистрирован: 25.04.2005 Сообщения: 454
|
Добавлено: Пт Сен 29 2006 21:26 Заголовок сообщения: |
|
|
to grf
Да... вы абсолютно правы говоря о "y'=+-SQRT(q-wy)"
и по поводу пунктов "как стоит поступить"
В процессе дискуссии для меня нарисовалась общая картина и выявились "градиенты"
Спасибо за помощь! _________________ С уважением Dimasm |
|
Вернуться к началу |
|
|
|