Logo Море(!) аналитической информации!
IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware
Архив форумов ЦИТФорума
Море(!) вопросов - Море(!) ответов
 
 FAQFAQ   ПоискПоиск   ПользователиПользователи   ГруппыГруппы   РегистрацияРегистрация 
 ПрофильПрофиль   Войти и проверить личные сообщенияВойти и проверить личные сообщения   ВходВход 
Как правильно задавать вопросы

анализ экспериментальных данных

 
Перейти:  
Этот форум закрыт, вы не можете писать новые сообщения и редактировать старые.   Эта тема закрыта, вы не можете писать ответы и редактировать сообщения.    Список форумов Архив форумов ЦИТФорума -> Математика
Предыдущая тема :: Следующая тема  
Автор Сообщение
Dimasm



Зарегистрирован: 25.04.2005
Сообщения: 454

СообщениеДобавлено: Сб Сен 23 2006 18:26    Заголовок сообщения: анализ экспериментальных данных Ответить с цитатой

я занимаюсь одним вопросом, изучение динамических характеристик двигателей...
допустим есть эдектродвигатель, на его валу установленна шестерня, на против шестерни - индуктивный датчик. всё это дело пишется CoolEdit через звуковую карту.

Далее синусоида обрабатывается, строится график зависимости оборотов от времени (n=f(t)), далее интегрируем график, и получаем график зависимости ускорения от оборотов - e=f(n) - такой график по сути повторяет кривую крутящего момента двигателя, т.е. связан с ней неким коэффициентом численно равным моменту инерции ротора двигателя.

Просто разгоняем двигатель - записываем
подключаем к двигателю некую "нагрузку" - записываем
нагрузка постоянная - маховик с известным моментом инерции

сравнивая и анализируя кривые разгонов и ускорений, определяются характеристики "нагрузки" либо двигателя
это всё в теории

на практике, разгон самого двигателя происходит "красиво" без скачков, рывков, красивая кривая, можно даже выявить её уравнение

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


в общем сам ворос: есть ли другие методы (кроме линий тренда) анализа таких данных, их приближения к теоретическим кривым?
Насколько научно обоснованными можно считать такие методы?
Кто-нибудь сталкивался с такими проблемами?
_________________
С уважением Dimasm
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
grf



Зарегистрирован: 05.04.2005
Сообщения: 1242
Откуда: Москва

СообщениеДобавлено: Пн Сен 25 2006 08:40    Заголовок сообщения: Ответить с цитатой

Без наезда Smile, я надеюсь ты учишся в ВУЗе. Сходи на курсы ЭМИ (Экспериментальные методы исследования) или как этот курс называется в твоем ВУЗе. И познакомься с методами аппроксимации, интерполяции, расчета погрешностей и пр. пр. пр.

Со своей стороны могу посоветовать книги:
1. Преображенсткий, не помню как называется дословно, что то типа "Экспериментальные методы исследования" или что-то в таком роде. Фолиант страниц на 1000 в объеме.
2. Рабинович "Теория погрешностей"

Без этих элементарных знаний вся твоя работа гроша ломанного не стоит Laughing

Wink
_________________
Errare humanum est
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
grf



Зарегистрирован: 05.04.2005
Сообщения: 1242
Откуда: Москва

СообщениеДобавлено: Пн Сен 25 2006 09:50    Заголовок сообщения: Ответить с цитатой

Делается это примерно так:
У тебя есть набор экспериментальных точек.
Ты аппроксимируешь их кривой, зависящей от типа процесса: полиномом, синусойдой, экспонентой и пр. пр. пр.
При этом получаешь уравнение этой кривой и среднеквадратичное отклонение от нее твоих точек.
Далее берешь интеграл, производную, возводишь в квадрат и все пр. что тебе необходимо, и получаешь результирующую кривую и соответствующую погрешность конечного результата.

В итоге ты имеешь, что процесс описывается, напимер уравнением y=5sin(x)+4cos(3x)
погрешность измерений составляет 15%.
Wink
_________________
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, исследуя разные повторности разгона получются кривые с "очень" разными наклонами

в общем из-за того, что время эксперимента короткое, а скачки вносимые передаточными механизмами большие, простая аппроксимация не даёт того, что надо Sad
я не просто хочу получить данные о процессе, необходимо получить и сравнить два процесса, причём я знаю как они должны выглядеть (формы графиков) мне нужно численно знать на сколько эти графики один выше/ниже другого
для того чтобы их сравнить, они должны иметь хотябы "примерно" одинаковую форму, чего не получается добиться

если кому интересно, могу выслать графики на мыло

можно ли поступить по другому?
_________________
С уважением 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 (арифметику за мной проверь, мог и ошибиться Laughing )

Соответственно эти ты точно не избавишься от времени начала эксперимента.

Для определения 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 чтобы погрешность была минимальна: работа достойная курсового, как минимума Laughing
2. Посчитать для каждого эксперимента a, соответственно a1,a2...an найти среднее значение a, пересчитать новые b1,b2..bn
Я бы пошел по следующему пути:

нашел бы для каждого эксперимента a1,a2....an соответственно.

Далее прошелся пы с малым шагом от минимального а до максимального, определяя каждый раз соответствующие b1,b2..bn, и выбрал бы тот вариант, где все (скорее всего сумма) G была бы минимальна.

В любом случае выбор a и b влияет только на итоговую погрешность.

При всех жтих вычеслениях не забудь еще хвостик погрешности от вычесления t0.
В общем задача довольно не простая, но вполне решаема.
Удачи.
Wink
_________________
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 Laughing

Wink
_________________
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 (арифметику за мной проверь, мог и ошибиться Laughing )

Соответственно эти ты точно не избавишься от времени начала эксперимента.

избавлюсь Smile
получив y' = dy/dt, я работаю с графиком y' = f(y) а не y' = f(t)
Со временем никак не угадать Sad

grf писал(а):
...Далее прошелся nы с малым шагом от минимального а до максимального, определяя каждый раз соответствующие b1,b2..bn, и выбрал бы тот вариант, где все (скорее всего сумма) G была бы минимальна.
....

То есть если я правильно понял, то: если я занаю, что должен быть
график вида y = 33*x*x-12*x-F (изменяться может только F), то мне нужно подобрать такой коэф F, чтобы было минимальное квадратичное отклонение от моих точек, так?
И получить это либо решением у-я, либо итерациями?
Я тоже над таким думал, но тут же вопрос, это можно считать "научным подходом"? учёный совет носом не ткнёт?

Pupan писал(а):
Здравствуй Dimasm решали подобную задачу для синхронных двигателей - методы - трендирование + запоминающий осциллограф для быстрых процессов + регистрирующие приборы для измерений токов и напряжений. Насчет "некрасивого" процесса разгона - двигатель с маховиком механическая колебательная система, вот вам непонятные разгоны и остановки

Да! сегодня советовался с сторожилами Smile у нас "система" это трактор + маховик (через вал отбора мощности) весом в 120 кг и диаметром чуть меньше метраSmile когда крутится - страшно
Ох нам столько возможных причин "кривости" графика назвали... начиная от испорченой муфты ВОМ, заканчивая "пружинными" свойствами передаточных механизмов
Ещё получили довольно точные (ускорения по поршням видно) графики скорости техники в движении Shocked
всё ТАК ДАЛЕКО ОТ ТЕОРИИ!!!
чуть позже ради любопытства данные с легкового авто получу
_________________
С уважением 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)

Согласен Laughing
Но все же давай определимся с терминологией, а то я для меня еще много не понятного

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% Laughing

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

Wink
_________________
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)
Конечно прийти к этому через формулу гараздо "красивее" Smile
Согласно теории если двигатель чем-то равномерно загружен, то есть нагрузка не изменяется с ростом оборотов (например маховик), то форма кривой разгона не изменится, т.е. ( -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 КВт - многовато будет Smile
_________________
С уважением 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    Заголовок сообщения: Ответить с цитатой

Я не силен в кинематике двигателей, что бы так сходу описать ваши процессы, ди и разбираться, сию секунду у меня желания особого нет Laughing
Возможно у Вас весь процесс описывается диффуром вида:

y'=ay**2+by+c

?????????

Тогда вы пошли по некоему странному пути.
1. Я бы сперва попытался решить диффур аналитически в общем виде.
2. Если не получилось бы, решить численно.
3. подобрать коэффициэнты a,b,c исходя из минимальной погрешности

Wink
_________________
Errare humanum est
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Dimasm



Зарегистрирован: 25.04.2005
Сообщения: 454

СообщениеДобавлено: Пт Сен 29 2006 21:26    Заголовок сообщения: Ответить с цитатой

to grf
Да... вы абсолютно правы говоря о "y'=+-SQRT(q-wy)"
и по поводу пунктов "как стоит поступить"
В процессе дискуссии для меня нарисовалась общая картина и выявились "градиенты" Smile
Спасибо за помощь!
_________________
С уважением Dimasm
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Показать сообщения:   
Этот форум закрыт, вы не можете писать новые сообщения и редактировать старые.   Эта тема закрыта, вы не можете писать ответы и редактировать сообщения.    Список форумов Архив форумов ЦИТФорума -> Математика Часовой пояс: GMT + 3
Страница 1 из 1

 
Перейти:  
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах


Powered by phpBB © 2001, 2002 phpBB Group
Русская поддержка phpBB

 

IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware

Информация для рекламодателей PR-акции, размещение рекламы — adv@citforum.ru,
тел. +7 495 6608306, ICQ 232284597
Пресс-релизы — pr@citforum.ru
Послать комментарий
Информация для авторов
This Web server launched on February 24, 1997
Copyright © 1997-2000 CIT, © 2001-2006 CIT Forum
Внимание! Любой из материалов, опубликованных на этом сервере, не может быть воспроизведен в какой бы то ни было форме и какими бы то ни было средствами без письменного разрешения владельцев авторских прав. Подробнее...