реклама на сайте
подробности

 
 
> ТАУ. В чем посоветуете моделировать несложные системы ?, Например, сейчас нужно смоделировать П, ПИ и ПИД - регуляторы
kovigor
сообщение Jul 8 2014, 11:29
Сообщение #1


Гуру
******

Группа: Свой
Сообщений: 5 273
Регистрация: 30-03-10
Пользователь №: 56 295



Simulink ? Или что-то другое ?

Дополню, чтобы было яснее. Читаю теорию и хочу немного попрактиковаться. Итак, задание - поддерживать обороты коллекторного моторчика. Три регулятора - П, ПИ и ПИД, соответственно имеем три маленьких исследовательских задачи.
Собрал макет - на дощечке укрепил коллекторный моторчик на 12В. Через резиновый ремешок он приводит в движение тахогенератор (обычный моторчик от CD-ROM'а). И еще, через такой же ремешок он приводит в движение второй моторчик от CD-ROM'а, который работает в генераторном режиме, нагружен на переменный проволочный резистор и служит нагрузкой, изменяя которую, можно подгружать или разгружать приводящий в движение всю эту систему моторчик на 12В.
Дальше я хочу экспериментально снять характеристики этого макета, ввести их в программу моделирования и смоделировать интересующие меня регуляторы ...
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
syoma
сообщение Jul 22 2014, 08:54
Сообщение #2


Профессионал
*****

Группа: Свой
Сообщений: 1 817
Регистрация: 14-02-07
Из: наших, которые работают за бугром
Пользователь №: 25 368



Цитата
Я никак не донесу мысль sm.gif Почему не станет яснее? Вот Вам предлагают в моделировании те самые колеса со шкивом, Вы уверены, что там уже зашито, что коэффициент передачи зависит от нагрузки и как зависит? А написали сами - сами и знаете, как.
И еще, когда пишете сами, Вы редуцируете модель, выделяя главное и пренебрегая второстепенным, это тоже формирует понимание процесса. Писатели симуляторов тоже сделали такое редуцирование, ибо нефозможно зашить в программму вообще все. Но это сделали они.

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

Следует заметить, что при этом есть продукты, которые уже предлагают готовые движки. И, ессно, понятно, что для определенной задачи движек для моделирования будет также свой. Например, все мы знаем, что Spice хорошо подходит для моделирования электронных процессов. Но попробуй его применить для механики или HDL кода - явно не то.

Поэтому даже тот же маталаб предлагает применять разные движки для разных моделей. Например Simulink - контроль. Stateflow - моделирование автоматов состояний. Simscape - физические процессы, при том SimPowerSystems - силовая электроника и электрика. Другие симуляторы включают другие движки - тот же Simplorer умеет хорошо 2D-термодинамику делать. Maxwell - FEM и т.д. И из этого вытекает, что

Цитата
Вот Вам предлагают в моделировании те самые колеса со шкивом, Вы уверены, что там уже зашито, что коэффициент передачи зависит от нагрузки и как зависит?

Это ессно зависит еще от того, какой движек выбрать. С одним это легко моделируется, с другим - это невозможно.

Но неоспорима еще пара свойств готовых симуляторов
- во- первых есть выбор. Не устраивает реализм фильтра в симулинке - вперед, рисуй схему в SimpowerSystems и проверяй. В одной и той же среде это займет гораздо меньше времени, чем переписывать все в Си.
- моделирование в разных домейнах. Например контроллер в симулинке, а объект - физический - гидравлика или электросхема. Приводить все в один вид - это трудоемко и не нужно. А так - все вместе легко проверяется.




Go to the top of the page
 
+Quote Post
AlexandrY
сообщение Jul 22 2014, 10:09
Сообщение #3


Ally
******

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



Цитата(syoma @ Jul 22 2014, 11:54) *
Если я правильно понимаю, то суть дискуссии заключается вообще в так называемом движке моделирования - собственно как описывается и решается модель. Т.е. вы предлагаете писать свой движек на Си, учитывая специфику конкретной модели.


Дискуссия уперлась в то, что Simulink сравнивается с неким абстрактным C-и. Т.е. конкретный интструмент с абстракцией. Если на то пошло, то сам Simulink написан на C-и.
Я конечно знаю, что средств писать на С-и не так уж много: MS Visual Studio, да C++ Builder.
Но мы тут притворяемся что на C-и пишется в вакууме и не догадываемся о каких библиотеках и ограничениях может идти речь.
Вот и интересно насколько можно поддерживать аргументацию за C-и так и не назвав конкретные инструменты. С тем же успехом можно продвигать ассемблер. biggrin.gif
Go to the top of the page
 
+Quote Post
Fat Robot
сообщение Jul 23 2014, 08:48
Сообщение #4


ʕʘ̅͜ʘ̅ʔ
*****

Группа: Свой
Сообщений: 1 008
Регистрация: 3-05-05
Пользователь №: 4 691



Отличительные особенности компьютерного симулятора физических (в частном случае электрических) процессов: 1. Модель часов (т.е. понятие времени) 2. Модель параллельно протекающих процессов.

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

Simulink и Spice изначально этими свойствами обладают, т.е. из коробки предоставляют этот уровень абстракции, т.е. если например вы подключили в симуляторе RC-цепочку к гидравлическому цилиндру посредством клиноременной передачи, то при подаче воздействий вы в моделируемом времени увидите то же поведение, что и в реальной жизни с точностью до учтенных в модели эффектов. Как будет описана модель и/или ее составные части: диф. уравнениями, передаточными функциями, пространством состояний, схемой, аналогиями или как-то еще - совершенно не важно.

Ни с++, ни машинные коды этими свойствами изначально не обладают.
Go to the top of the page
 
+Quote Post
kovigor
сообщение Jul 23 2014, 10:44
Сообщение #5


Гуру
******

Группа: Свой
Сообщений: 5 273
Регистрация: 30-03-10
Пользователь №: 56 295



Сложная какая-то дискуссия для меня получилась, я еще до таких высоких материй не дорос.
А дорос вот до чего. На ATMEGA8 сделал простые П - и ПИ - регуляторы, управляющие нагревателем. Нагреватель - обычная стоваттная лампочка, мощность в которой регулируется с дискретностью в один процент путем пропуска соотв. количества полупериодов питающей сети. В качестве ключа использован симистор. Датчик - обычный DS18b20. Он прижат к лампочке жесткой резинкой.
Все работает. Как и ожидалось, П-регулятор не может свести к нулю рассогласование между заданным значением температуры и реально существующим значением. С увеличением коэффициента усиления регулятора разность уменьшается, но никогда не достигает нуля.
Поэтому я сделал ПИ - регулятор. Проблема с рассогласованием решилась, зато появилось перерегулирование, и с этим нужно бороться, а это очень непросто. Например, я довольно быстро подобрал коэффициенты усиления так, чтобы перерегулирование не превышало 5%. Вроде бы, неплохо, но хочется еще лучше. А вот здесь возникают проблемы. При увеличении коэфф. усиления интегратора увеличивается перерегулирование. При уменьшении оно уменьшается, но недопустимо затягивается переходный процесс. После примерно однодневного подбора коэффициентов я сделал вывод, что теория права - регулятор нужно расчетным путем подгонять под объект. Вот здесь есть интересная статья. Там, правда, написано про электромотор, а не про нагреватель:

http://www.dynsoft.ru/PID.php

Аналогичной статьи про нагреватель я пока не нашел. Посему я пока отложу нагреватель в сторонку и вернусь к собранному и лежащему в шкафу стенду с моторчиком ...
Go to the top of the page
 
+Quote Post
Tanya
сообщение Jul 23 2014, 11:09
Сообщение #6


Гуру
******

Группа: Модераторы
Сообщений: 8 752
Регистрация: 6-01-06
Пользователь №: 12 883



Цитата(kovigor @ Jul 23 2014, 14:44) *
Сложная какая-то дискуссия для меня получилась, я еще до таких высоких материй не дорос.
А дорос вот до чего. На ATMEGA8 сделал простые П - и ПИ - регуляторы, управляющие нагревателем. Нагреватель - обычная стоваттная лампочка, мощность в которой регулируется с дискретностью в один процент путем пропуска соотв. количества полупериодов питающей сети. В качестве ключа использован симистор. Датчик - обычный DS18b20. Он прижат к лампочке жесткой резинкой.

После примерно однодневного подбора коэффициентов я сделал вывод, что теория права - регулятор нужно расчетным путем подгонять под объект. Вот здесь есть интересная статья. Там, правда, написано про электромотор, а не про нагреватель:

http://www.dynsoft.ru/PID.php

Аналогичной статьи про нагреватель я пока не нашел. Посему я пока отложу нагреватель в сторонку и вернусь к собранному и лежащему в шкафу стенду с моторчиком ...

У Вас не очень хорошо сделано.
Лампочка - нелинейный элемент с большим температурным коэффициентом сопротивления.
Ваш вывод о необходимости расчетов опровергается достаточностью простых экспериментальных итерационных процедур.
Мотор, печка, элемент Пельтье..... все это моделируется конденсатором с резисторами, так как уравнения не знают, что они обозначают.
Go to the top of the page
 
+Quote Post
AlexandrY
сообщение Jul 23 2014, 12:21
Сообщение #7


Ally
******

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



Цитата(Tanya @ Jul 23 2014, 14:09) *
У Вас не очень хорошо сделано.
Лампочка - нелинейный элемент с большим температурным коэффициентом сопротивления.


При симисторном регулировании еще большая нелинейность между углом включения и мощностью.
(Линеаризация, полагаю, сделана не была biggrin.gif )



Цитата(kovigor @ Jul 23 2014, 14:17) *
А вот еще идея - не выполнять интегрирования, если ошибка слишком велика, скажем, превышает 5 градусов

... Надо будет это обдумать ...


В правльном направлении идете.
Еще с пару десятков таких эвристических правил и у вас получится классическое управление методом fuzzy logic.
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- 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


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 21st August 2025 - 09:53
Рейтинг@Mail.ru


Страница сгенерированна за 0.01559 секунд с 7
ELECTRONIX ©2004-2016