|
ТАУ. В чем посоветуете моделировать несложные системы ?, Например, сейчас нужно смоделировать П, ПИ и ПИД - регуляторы |
|
|
|
Jul 8 2014, 11:29
|
Гуру
     
Группа: Свой
Сообщений: 5 273
Регистрация: 30-03-10
Пользователь №: 56 295

|
Simulink ? Или что-то другое ?
Дополню, чтобы было яснее. Читаю теорию и хочу немного попрактиковаться. Итак, задание - поддерживать обороты коллекторного моторчика. Три регулятора - П, ПИ и ПИД, соответственно имеем три маленьких исследовательских задачи. Собрал макет - на дощечке укрепил коллекторный моторчик на 12В. Через резиновый ремешок он приводит в движение тахогенератор (обычный моторчик от CD-ROM'а). И еще, через такой же ремешок он приводит в движение второй моторчик от CD-ROM'а, который работает в генераторном режиме, нагружен на переменный проволочный резистор и служит нагрузкой, изменяя которую, можно подгружать или разгружать приводящий в движение всю эту систему моторчик на 12В. Дальше я хочу экспериментально снять характеристики этого макета, ввести их в программу моделирования и смоделировать интересующие меня регуляторы ...
|
|
|
|
|
 |
Ответов
|
Jul 22 2014, 08:54
|
Профессионал
    
Группа: Свой
Сообщений: 1 817
Регистрация: 14-02-07
Из: наших, которые работают за бугром
Пользователь №: 25 368

|
Цитата Я никак не донесу мысль sm.gif Почему не станет яснее? Вот Вам предлагают в моделировании те самые колеса со шкивом, Вы уверены, что там уже зашито, что коэффициент передачи зависит от нагрузки и как зависит? А написали сами - сами и знаете, как. И еще, когда пишете сами, Вы редуцируете модель, выделяя главное и пренебрегая второстепенным, это тоже формирует понимание процесса. Писатели симуляторов тоже сделали такое редуцирование, ибо нефозможно зашить в программму вообще все. Но это сделали они. Если я правильно понимаю, то суть дискуссии заключается вообще в так называемом движке моделирования - собственно как описывается и решается модель. Т.е. вы предлагаете писать свой движек на Си, учитывая специфику конкретной модели. Следует заметить, что при этом есть продукты, которые уже предлагают готовые движки. И, ессно, понятно, что для определенной задачи движек для моделирования будет также свой. Например, все мы знаем, что Spice хорошо подходит для моделирования электронных процессов. Но попробуй его применить для механики или HDL кода - явно не то. Поэтому даже тот же маталаб предлагает применять разные движки для разных моделей. Например Simulink - контроль. Stateflow - моделирование автоматов состояний. Simscape - физические процессы, при том SimPowerSystems - силовая электроника и электрика. Другие симуляторы включают другие движки - тот же Simplorer умеет хорошо 2D-термодинамику делать. Maxwell - FEM и т.д. И из этого вытекает, что Цитата Вот Вам предлагают в моделировании те самые колеса со шкивом, Вы уверены, что там уже зашито, что коэффициент передачи зависит от нагрузки и как зависит? Это ессно зависит еще от того, какой движек выбрать. С одним это легко моделируется, с другим - это невозможно. Но неоспорима еще пара свойств готовых симуляторов - во- первых есть выбор. Не устраивает реализм фильтра в симулинке - вперед, рисуй схему в SimpowerSystems и проверяй. В одной и той же среде это займет гораздо меньше времени, чем переписывать все в Си. - моделирование в разных домейнах. Например контроллер в симулинке, а объект - физический - гидравлика или электросхема. Приводить все в один вид - это трудоемко и не нужно. А так - все вместе легко проверяется.
|
|
|
|
|
Jul 23 2014, 08:48
|
ʕʘ̅͜ʘ̅ʔ
    
Группа: Свой
Сообщений: 1 008
Регистрация: 3-05-05
Пользователь №: 4 691

|
Отличительные особенности компьютерного симулятора физических (в частном случае электрических) процессов: 1. Модель часов (т.е. понятие времени) 2. Модель параллельно протекающих процессов.
Наверное, это основное. Все остальное: движок-solver, организация связей, интерфейсы, адаптация шага, встроенный анализ сходимости - это уже вторично.
Simulink и Spice изначально этими свойствами обладают, т.е. из коробки предоставляют этот уровень абстракции, т.е. если например вы подключили в симуляторе RC-цепочку к гидравлическому цилиндру посредством клиноременной передачи, то при подаче воздействий вы в моделируемом времени увидите то же поведение, что и в реальной жизни с точностью до учтенных в модели эффектов. Как будет описана модель и/или ее составные части: диф. уравнениями, передаточными функциями, пространством состояний, схемой, аналогиями или как-то еще - совершенно не важно.
Ни с++, ни машинные коды этими свойствами изначально не обладают.
|
|
|
|
|
Jul 23 2014, 10:44
|
Гуру
     
Группа: Свой
Сообщений: 5 273
Регистрация: 30-03-10
Пользователь №: 56 295

|
Сложная какая-то дискуссия для меня получилась, я еще до таких высоких материй не дорос. А дорос вот до чего. На ATMEGA8 сделал простые П - и ПИ - регуляторы, управляющие нагревателем. Нагреватель - обычная стоваттная лампочка, мощность в которой регулируется с дискретностью в один процент путем пропуска соотв. количества полупериодов питающей сети. В качестве ключа использован симистор. Датчик - обычный DS18b20. Он прижат к лампочке жесткой резинкой. Все работает. Как и ожидалось, П-регулятор не может свести к нулю рассогласование между заданным значением температуры и реально существующим значением. С увеличением коэффициента усиления регулятора разность уменьшается, но никогда не достигает нуля. Поэтому я сделал ПИ - регулятор. Проблема с рассогласованием решилась, зато появилось перерегулирование, и с этим нужно бороться, а это очень непросто. Например, я довольно быстро подобрал коэффициенты усиления так, чтобы перерегулирование не превышало 5%. Вроде бы, неплохо, но хочется еще лучше. А вот здесь возникают проблемы. При увеличении коэфф. усиления интегратора увеличивается перерегулирование. При уменьшении оно уменьшается, но недопустимо затягивается переходный процесс. После примерно однодневного подбора коэффициентов я сделал вывод, что теория права - регулятор нужно расчетным путем подгонять под объект. Вот здесь есть интересная статья. Там, правда, написано про электромотор, а не про нагреватель: http://www.dynsoft.ru/PID.phpАналогичной статьи про нагреватель я пока не нашел. Посему я пока отложу нагреватель в сторонку и вернусь к собранному и лежащему в шкафу стенду с моторчиком ...
|
|
|
|
|
Jul 23 2014, 11:09
|
Гуру
     
Группа: Модераторы
Сообщений: 8 752
Регистрация: 6-01-06
Пользователь №: 12 883

|
Цитата(kovigor @ Jul 23 2014, 14:44)  Сложная какая-то дискуссия для меня получилась, я еще до таких высоких материй не дорос. А дорос вот до чего. На ATMEGA8 сделал простые П - и ПИ - регуляторы, управляющие нагревателем. Нагреватель - обычная стоваттная лампочка, мощность в которой регулируется с дискретностью в один процент путем пропуска соотв. количества полупериодов питающей сети. В качестве ключа использован симистор. Датчик - обычный DS18b20. Он прижат к лампочке жесткой резинкой. После примерно однодневного подбора коэффициентов я сделал вывод, что теория права - регулятор нужно расчетным путем подгонять под объект. Вот здесь есть интересная статья. Там, правда, написано про электромотор, а не про нагреватель: http://www.dynsoft.ru/PID.phpАналогичной статьи про нагреватель я пока не нашел. Посему я пока отложу нагреватель в сторонку и вернусь к собранному и лежащему в шкафу стенду с моторчиком ... У Вас не очень хорошо сделано. Лампочка - нелинейный элемент с большим температурным коэффициентом сопротивления. Ваш вывод о необходимости расчетов опровергается достаточностью простых экспериментальных итерационных процедур. Мотор, печка, элемент Пельтье..... все это моделируется конденсатором с резисторами, так как уравнения не знают, что они обозначают.
|
|
|
|
|
Jul 23 2014, 12:21
|

Ally
     
Группа: Модераторы
Сообщений: 6 232
Регистрация: 19-01-05
Пользователь №: 2 050

|
Цитата(Tanya @ Jul 23 2014, 14:09)  У Вас не очень хорошо сделано. Лампочка - нелинейный элемент с большим температурным коэффициентом сопротивления. При симисторном регулировании еще большая нелинейность между углом включения и мощностью. (Линеаризация, полагаю, сделана не была  ) Цитата(kovigor @ Jul 23 2014, 14:17)  А вот еще идея - не выполнять интегрирования, если ошибка слишком велика, скажем, превышает 5 градусов
... Надо будет это обдумать ... В правльном направлении идете. Еще с пару десятков таких эвристических правил и у вас получится классическое управление методом fuzzy logic.
|
|
|
|
Сообщений в этой теме
kovigor ТАУ. В чем посоветуете моделировать несложные системы ? Jul 8 2014, 11:29 Tanya Цитата(kovigor @ Jul 8 2014, 15:29) Simul... Jul 8 2014, 13:10 syoma ИМХО, все-таки проще Симулинком. И прозрачнее... И... Jul 8 2014, 13:39 TSerg Цитата(kovigor @ Jul 8 2014, 15:29) Simul... Jul 8 2014, 19:19 AlexeyW В VB Jul 8 2014, 19:40 AlexandrY Цитата(kovigor @ Jul 8 2014, 14:29) Собра... Jul 8 2014, 19:59 kovigor Цитата(AlexandrY @ Jul 8 2014, 22:59) Т.е... Jul 8 2014, 22:03  TSerg Цитата(kovigor @ Jul 9 2014, 02:03) Мне в... Jul 9 2014, 06:09 Tanya Цитата(kovigor @ Jul 8 2014, 15:29) , мож... Jul 9 2014, 06:41 TSerg Цитата(kovigor @ Jul 8 2014, 15:29) Читаю... Jul 9 2014, 07:02 SSerge Для не слишком сложных систем вполне можно и спайс... Jul 9 2014, 10:48 amaora Несложные надо моделировать мысленно, в голове Гл... Jul 10 2014, 17:50 AlexeyW Цитата(amaora @ Jul 10 2014, 20:50) Я пре... Jul 13 2014, 15:11  TSerg Цитата(AlexeyW @ Jul 13 2014, 19:11) Это ... Jul 14 2014, 15:10   AlexeyW Цитата(TSerg @ Jul 14 2014, 18:10) И мног... Jul 15 2014, 19:16    AlexandrY Цитата(AlexeyW @ Jul 15 2014, 22:16) Само... Jul 16 2014, 07:13     AlexeyW Цитата(AlexandrY @ Jul 16 2014, 10:13) На... Jul 16 2014, 08:18      AlexandrY Цитата(AlexeyW @ Jul 16 2014, 11:18) Мы м... Jul 16 2014, 10:42       TSerg Цитата(AlexandrY @ Jul 16 2014, 14:42) Кс... Jul 17 2014, 19:26       AlexeyW Цитата(AlexandrY @ Jul 16 2014, 13:42) Т.... Jul 19 2014, 15:51        AlexandrY Цитата(AlexeyW @ Jul 19 2014, 18:51) Я во... Jul 19 2014, 20:14         AlexeyW Цитата(AlexandrY @ Jul 19 2014, 23:14) Чт... Jul 20 2014, 19:23          AlexandrY Цитата(AlexeyW @ Jul 20 2014, 22:23) Что-... Jul 21 2014, 09:53           AlexeyW Цитата(AlexandrY @ Jul 21 2014, 12:53) На... Jul 21 2014, 21:08 syoma Цитата(amaora @ Jul 10 2014, 19:50) Я пре... Jul 15 2014, 08:42  TSerg Цитата(syoma @ Jul 15 2014, 12:42) В этом... Jul 15 2014, 17:21   syoma Цитата(TSerg @ Jul 15 2014, 19:21) Умоляю... Jul 15 2014, 18:57 fatlortroll Можно и в OpenModelica попрактиковаться. Вполне до... Jul 10 2014, 18:03 syoma ЦитатаМатлаб - это действительно не симулятор, а д... Jul 21 2014, 08:23 AlexeyW Цитата(syoma @ Jul 21 2014, 11:23) Возмож... Jul 22 2014, 06:08  AlexandrY Цитата(AlexeyW @ Jul 22 2014, 09:00) Про ... Jul 22 2014, 06:19 khach Дифуры не всегда помогут. Например, как моделиров... Jul 21 2014, 21:39 AlexeyW Цитата(khach @ Jul 22 2014, 00:39) Дифуры... Jul 22 2014, 05:50  AlexandrY Цитата(AlexeyW @ Jul 22 2014, 08:46) Да, ... Jul 22 2014, 05:56     kovigor Цитата(Tanya @ Jul 23 2014, 14:09) Лампоч... Jul 23 2014, 11:17      Tanya Цитата(kovigor @ Jul 23 2014, 15:17) Так ... Jul 23 2014, 15:02       kovigor Цитата(Tanya @ Jul 23 2014, 18:02) Но Вы ... Jul 23 2014, 15:06        Tanya Цитата(kovigor @ Jul 23 2014, 19:06) Так ... Jul 23 2014, 15:11         kovigor Цитата(Tanya @ Jul 23 2014, 18:11) Давайт... Jul 23 2014, 18:29      kovigor Цитата(AlexandrY @ Jul 23 2014, 15:21) Пр... Jul 23 2014, 12:30 Rst7 Moderator: Посты скрыл, тон дискуссии настоятельн... Jul 23 2014, 07:53 syoma ЦитатаНасчет нечеткой логики - забавно, но я пока ... Jul 23 2014, 14:41 Tanya Цитата(syoma @ Jul 23 2014, 18:41) Я дале... Jul 23 2014, 15:06  syoma Цитата(Tanya @ Jul 23 2014, 17:06) А вот ... Jul 24 2014, 10:05   AlexandrY Цитата(syoma @ Jul 24 2014, 13:05) Да у н... Jul 24 2014, 10:14    syoma Цитата(AlexandrY @ Jul 24 2014, 12:14) Т.... Jul 24 2014, 10:48    Tanya Цитата(AlexandrY @ Jul 24 2014, 14:14) У ... Jul 24 2014, 11:06    kovigor Цитата(AlexandrY @ Jul 24 2014, 13:14) Я ... Jul 24 2014, 12:05     syoma Цитата(kovigor @ Jul 24 2014, 14:05) Впол... Jul 24 2014, 12:34      AlexandrY Цитата(syoma @ Jul 24 2014, 15:34) Неправ... Jul 24 2014, 13:36       Tanya Цитата(AlexandrY @ Jul 24 2014, 17:36) То... Jul 24 2014, 13:54     Tanya Цитата(kovigor @ Jul 24 2014, 16:05) Проп... Jul 24 2014, 12:42      kovigor Цитата(Tanya @ Jul 24 2014, 15:42) Тут Вы... Jul 24 2014, 13:14     syoma Цитата(kovigor @ Jul 24 2014, 14:05) Мне ... Jul 25 2014, 07:34      kovigor Цитата(syoma @ Jul 25 2014, 10:34) Но поч... Jul 25 2014, 07:53       syoma Цитата(kovigor @ Jul 25 2014, 09:53) Есть... Jul 25 2014, 08:40        kovigor Цитата(syoma @ Jul 25 2014, 11:40) ... дл... Jul 25 2014, 09:00         syoma Цитата(kovigor @ Jul 25 2014, 11:00) Я по... Jul 25 2014, 09:12          kovigor Цитата(syoma @ Jul 25 2014, 12:12) Ну пос... Jul 25 2014, 09:18       AlexandrY Цитата(kovigor @ Jul 25 2014, 10:53) Если... Jul 25 2014, 10:10        dxp QUOTE (AlexandrY @ Jul 25 2014, 17:10) Вс... Jul 26 2014, 07:27         SSerge Цитата(dxp @ Jul 26 2014, 14:27) С ограни... Jul 26 2014, 13:09         AndreyVN Цитата(dxp @ Jul 26 2014, 10:27) С ограни... Jul 28 2014, 08:51      AlexeyW Цитата(syoma @ Jul 25 2014, 10:34) Это Ва... Aug 2 2014, 18:56   Tanya Цитата(syoma @ Jul 24 2014, 14:05) Таня, ... Jul 24 2014, 10:57 AlexandrY Цитата(syoma @ Jul 23 2014, 17:41) 7. Заб... Jul 23 2014, 15:08 Fat Robot Не стоит недооценивать тау и переоценивать возможн... Jul 23 2014, 15:32 syoma ЦитатаОчень жаль. А так бы хотелось увидеть демонс... Jul 24 2014, 10:59 amaora Вот чтобы сделать какой-то особый регулятор, без п... Jul 27 2014, 08:03 syoma Цитата(amaora @ Jul 27 2014, 10:03) Для н... Jul 28 2014, 08:18  Tanya Цитата(syoma @ Jul 28 2014, 12:18) А вот ... Jul 28 2014, 08:56   syoma Цитата(Tanya @ Jul 28 2014, 10:56) А вот ... Jul 28 2014, 10:44    Tanya Цитата(syoma @ Jul 28 2014, 14:44) Конечн... Jul 28 2014, 11:12     syoma Цитата(Tanya @ Jul 28 2014, 13:12) Раз вы... Jul 28 2014, 12:54     amaora Цитата(Tanya @ Jul 28 2014, 15:12) Раз вы... Jul 28 2014, 14:25      Tanya Цитата(amaora @ Jul 28 2014, 18:25) Сгори... Jul 28 2014, 15:21    AndreyVN Цитата(syoma @ Jul 28 2014, 14:44) Ну и п... Jul 29 2014, 04:43  kovigor Цитата(syoma @ Jul 28 2014, 11:18) Самое ... Jul 28 2014, 09:29   Tanya Цитата(kovigor @ Jul 28 2014, 13:29) Ну д... Jul 28 2014, 09:43  SSerge Цитата(syoma @ Jul 28 2014, 15:18) Самое ... Jul 28 2014, 10:08 syoma Цитата10000 x 5 минут = 50000/60 минут = 833 часа ... Jul 29 2014, 06:54
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|