|
|
  |
Помогите рассчитать регулятор!, Автоматическое регулирование в электроприводе |
|
|
|
Dec 11 2015, 12:59
|
Участник

Группа: Участник
Сообщений: 47
Регистрация: 30-11-07
Пользователь №: 32 839

|
Цитата(Tanya @ Dec 11 2015, 18:10)  Скажу Вам еще раз - тут Вы ошибаетесь - у моторчика есть индуктивность и противоэдс. А еще обмотка греется и меняет величину сопротивления. А ещё там есть электронная схема, которая из входного напряжения формирует ток в обмотке, подавляя всё, что Вы сможете вспомнить. Зато от температуры там плывёт и gain, и offset. И от скорости изменения температуры всё плывёт. А ещё есть шум, про который я ничего не сказал, но он от этого никуда ни делся. Шум по умолчанию есть, и про него ничего особо даже говорить не надо. Ещё там есть асимметрия обмоток моторчика (их у него две), которую я отчётливо вижу на графиках разгона в виде короткопериодических колебаний, жёстко привязанных к частоте вращения вала, но надеюсь потом поправить, благо есть, чем. Вам зачем все эти усложнения? Вы хотите поставить под сомнение мою модель двигателя? Сомнение - штука, конечно, хорошая, но это совсем не то, что я просил в корневом посте. Цитата(Tanya @ Dec 11 2015, 18:10)  Кстати... какая-то очень маленькая у Вас собственная постоянная времени моторчика - 2.5 секунды. 1/0.4 из Вашей формулы. Уж какая есть - такая есть. "Объективная реальность, данная в ощущениях." Розовый график с синим совпадает? Почти совпадает. Значит, коэффициент 0.4 определён верно. А я снял с десяток графиков при разных напряжениях разгона и при торможении. И везде моделька с приемлемой точностью совпадает с экспериментальными графиками.
|
|
|
|
|
Dec 11 2015, 13:05
|
Гуру
     
Группа: Модераторы
Сообщений: 8 752
Регистрация: 6-01-06
Пользователь №: 12 883

|
Цитата(Vitaly_N @ Dec 11 2015, 15:59)  А ещё там есть электронная схема, которая из входного напряжения формирует ток в обмотке, подавляя всё, что Вы сможете вспомнить. Зато от температуры там плывёт и gain, и offset. И от скорости изменения температуры всё плывёт. А ещё есть шум, про который я ничего не сказал, но он от этого никуда ни делся. Шум по умолчанию есть, и про него ничего особо даже говорить не надо. Ещё там есть асимметрия обмоток моторчика (их у него две), которую я отчётливо вижу на графиках разгона в виде короткопериодических колебаний, жёстко привязанных к частоте вращения вала, но надеюсь потом поправить, благо есть, чем. Вам зачем все эти усложнения? Вы хотите поставить под сомнение мою модель двигателя? Сомнение - штука, конечно, хорошая, но это совсем не то, что я просил в корневом посте. Если бы было преобразование напряжение - ток (то, что доктор прописал), то зависимость у Вас была бы другая. Так мне кажется. Если такое есть, то это очень хорошо, но тогда непонятно, почему Вы не можете настроить регулятор. Вот добавлю, что регулятор при нормальной работе не должен зашкаливать. Вам какая точность (Вы писали, что высокая) нужна?
|
|
|
|
Guest_TSerg_*
|
Dec 11 2015, 13:06
|
Guests

|
Нормальная модель (пока без учета индуктивности) ДПТ на основе Ваших данных - кривая разгона совпадает, значит и нормальная модель совпадает:
 Уменьшено до 79%
823 x 509 (222.18 килобайт)
|
|
|
|
|
Guest_TSerg_*
|
Dec 11 2015, 13:15
|
Guests

|
Даже обычное релейное управление с частотой 1 кГц дает удовлетворительный результат: http://s015.radikal.ru/i330/1512/c1/e0cc06d7be82.jpgP.S. Что Вы там намудрили с фазовым детектором - не знаю. При обесточивании картина не должна быть симметричной, если только случайно.
|
|
|
|
|
Dec 11 2015, 15:24
|
Местный
  
Группа: Участник
Сообщений: 421
Регистрация: 2-01-08
Пользователь №: 33 778

|
Поковырял Вашу модельку, вот код на matlab/octave. CODE #!/usr/bin/octave -q
dT = 1E-2;
f = 0; Vi = 0; f_sp = 0; f_track = 0; s = 0;
p = [];
for i=1:4000
if i == 100 f_sp = 2000; end
if i == 1000 f = f / 2; end
if i == 2000 f_sp = 1000; end
% ------- START ----- % in: f_sp % out: Vi
slew = 800 * dT;
if f_track - f_sp < - slew f_track = f_track + slew; else if f_track - f_sp > slew f_track = f_track - slew; else f_track = f_sp; end end
e = f_track - (f + randn(1) * 10); s = s + e;
s = max(min(s, 1E+3), -1E+3);
Vi = 1E-1 * e + 5E-3 * s; Vi = max(min(Vi, 5), 0);
% ------ END ------
df = 274 * Vi - 0.4 * f - 30 * sign(f); f = f + df * dT;
p = [p; f f_track f_sp]; end
hold on grid on plot(p(:,[1 2 3]))
pause
Регулятор ПИ, с ограничением суммы, и с ограничением скорости нарастания по входу. Код простой, использую минимум готовых функций, должен быть понятен незнакомым с matlab. На графиках Ваша величина f и требуемое задание, а так же промежуточная f_track взятая с ограничителя скорости нарастания. А еще я задал шум в измерении f, нормальное распределение, 10 единиц (размерность f) сигма. На 1000-м такте имитируется внешнее возмущение которое мгновенно изменило f в 2 раза.
 Уменьшено до 69%
560 x 420 (2.38 килобайт)
|
 Уменьшено до 69%
560 x 420 (2.37 килобайт)
|
Коэффициенты подобраны вручную, колебаний нет.
|
|
|
|
|
Dec 11 2015, 17:25
|
Участник

Группа: Участник
Сообщений: 47
Регистрация: 30-11-07
Пользователь №: 32 839

|
Цитата(Tanya @ Dec 11 2015, 19:09)  Верно ли я понимаю, что за пару секунд скорость падет тоже в два раза. При обесточенном двигателе? Верно. Вот график торможения:  Цитата(amaora @ Dec 11 2015, 21:24)  Поковырял Вашу модельку, вот код на matlab/octave. Вот это конструктивно! Спасибо! Вроде бы я всё понял. Только у меня нет идей, как в железе реализовать вот эту строчку: CODE e = f_track - (f + randn(1) * 10);
Точнее, есть. Два преобразователя частота-напряжение и вычитание на ОУ, на котором сделан ПИ-регулятор. Чуть более громоздко, чем фазовый детектор, который я применил... Цитата(TSerg @ Dec 11 2015, 19:15)  Даже обычное релейное управление с частотой 1 кГц дает удовлетворительный результат: http://s015.radikal.ru/i330/1512/c1/e0cc06d7be82.jpgГрандиозно! Внушает! (Кстати, а что это за программный пакет?) Не могли бы Вы расшифровать условные обозначения, что есть что, и почему именно так?
|
|
|
|
Guest_TSerg_*
|
Dec 11 2015, 18:07
|
Guests

|
Vissim. Можно и в Матлабе или в отечественном продукте MVTU ( старое наименование ) - сейчас SymInTech. Vissim: http://www.vissim.comSymInTech: http://simintech.ru/Матлаб тоже известен. P.S. Если уж Вы так глубоко погрузились в эксперименты, стоит для "потенциальных советчиков" давать максимум информации для получения наиболее адекватного ответа. Поэтому: - тип двигателя ( коллекторный щеточный с постоянными магнитами, иной ); - номинальные напряжение, мощность, скорость, ток ( что - есть ) - измеренные ( обороты хх при 3-5 точках от номинального, сопротивление и индуктивность якорной цепи); - модель двигателя и ссылки на ТХ. - кривые разгона/торможения ( что-то Вы дали ); - параметры датчика скорости; - тип нагрузки (сухое трение, вискозное трение, вентиляторный момент, периодическая нагрузка, изменение момента инерции и т.д.); - наличие редуктора, его параметры.
|
|
|
|
|
Dec 12 2015, 06:18
|
Участник

Группа: Участник
Сообщений: 47
Регистрация: 30-11-07
Пользователь №: 32 839

|
Цитата(TSerg @ Dec 12 2015, 00:07)  Vissim. Можно и в Матлабе или в отечественном продукте MVTU ( старое наименование ) - сейчас SymInTech. Vissim: http://www.vissim.comSymInTech: http://simintech.ru/Матлаб тоже известен. Спасибо! (Всё-таки я продолжаю надеяться, что Вы дадите расшифровку УО, что к чему и почему.) Цитата(TSerg @ Dec 12 2015, 00:07)  P.S.
Если уж Вы так глубоко погрузились в эксперименты, стоит для "потенциальных советчиков" давать максимум информации для получения наиболее адекватного ответа. Верный способ заболтать тему и утопить её в обсуждении второстепенных деталей.
|
|
|
|
Guest_TSerg_*
|
Dec 12 2015, 11:25
|
Guests

|
Цитата(Vitaly_N @ Dec 12 2015, 09:18)  Верный способ заболтать тему и утопить её в обсуждении второстепенных деталей. Наоборот - для специалиста это существенная информация. Кроме того, целесообразно обрисовать задачу в целом, если только это не сверхсекретный привод для маршевых движков новой версии Калибра. На схеме обычная функциональная модель ДПТ ( без учета индуктивности ). Вам-то это зачем (расшифровка)? В более полном варианте модель ДПТ выглядит так:
 Уменьшено до 81%
897 x 536 (17.08 килобайт)
|
 Уменьшено до 39%
281 x 355 (8.1 килобайт)
|
|
|
|
|
Guest_TSerg_*
|
Dec 12 2015, 12:27
|
Guests

|
Цитата(Vitaly_N @ Dec 10 2015, 10:19)  Задача: высокоточная стабилизация скорости вращения вала электродвигателя. ... с указанием конкретного URL конкретной книжки по САР (а ещё лучше - по применению АР в электроприводе), где было бы толково расписано, что к чему. Для начала по регуляторам хватит:
PID_1.pdf ( 392.14 килобайт )
Кол-во скачиваний: 192
PID_2.pdf ( 311.05 килобайт )
Кол-во скачиваний: 376
PID_3.pdf ( 383.92 килобайт )
Кол-во скачиваний: 197
PID_Denisenko.pdf ( 793.75 килобайт )
Кол-во скачиваний: 510
|
|
|
|
|
Dec 13 2015, 11:02
|
Участник

Группа: Участник
Сообщений: 47
Регистрация: 30-11-07
Пользователь №: 32 839

|
Цитата(TSerg @ Dec 12 2015, 18:27)  Для начала по регуляторам хватит: Спасибо!
|
|
|
|
Guest_TSerg_*
|
Dec 13 2015, 13:17
|
Guests

|
Ждем-с высокоточных результатов
|
|
|
|
Guest_TSerg_*
|
Dec 13 2015, 16:25
|
Guests

|
Цитата(Tanya @ Dec 13 2015, 17:02)  Если не хочется Таня.. Ну какой высокоточный электропривод с моделью из конденсатора и двух резисторов? Вы - о чем?
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|