Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Моделирование импульсных источников
Форум разработчиков электроники ELECTRONIX.ru > Силовая Электроника - Power Electronics > Моделирование и Анализ Силовых Устройств – Power Supply Simulation
Страницы: 1, 2, 3, 4, 5
wim
Цитата(nl5 @ Feb 10 2009, 04:01) *
Что-то я один сюда пишу...

Просто народ хочет разобраться что к чему. Меня вот интересует анализ AC с источниками, заданными нелинейными функциями - сможет ли програма их линеаризовать. Это типичная задача при анализе устойчивости импульсных источников питания.
nl5
Цитата(wim @ Feb 10 2009, 02:38) *
Меня вот интересует анализ AC с источниками, заданными нелинейными функциями - сможет ли програма их линеаризовать. Это типичная задача при анализе устойчивости импульсных источников питания.

В NL есть два метода вычисления частотной характеристики. Первый - стандартный малосигнальный. Находится рабочая точка схемы, все нелинейные элементы линеаризуются в этой точке, и находится АЧХ линейной схемы. Для импульсных схем это не подходит.
Второй метод "Sweep AC Source" - это расчет АЧХ через транзиент, специально для импульсных/ключевых/нелинейных схем. Запускается обычный расчет транзиента, а частота входного синусоидального источника меняется, например, ступеньками с начальной до конечной заданной частоты. На каждой частоте, после того как переходный процесс стабилизируется, вычисляется амплитуда/фаза выхода на этой же частоте (DFT). Естественно, все это делается автоматически, надо только задать несколько параметров.
На этой картинке - пример расчета АЧХ цифрового ФНЧ с тактовой частотой 1 kHz. На нижнем графике - сам процесс: входной сигнал с частотой, изменяющейся от 300 Hz до 1 Hz, и выходной сигнал.
Спасибо.
wim
Цитата(nl5 @ Feb 10 2009, 19:27) *
... пример расчета АЧХ цифрового ФНЧ с тактовой частотой 1 kHz...

Да, с системой первого порядка программа справилась. Надо бы ей что-нить посложнее дать. smile.gif
nl5
Цитата(wim @ Feb 10 2009, 09:49) *
Да, с системой первого порядка программа справилась. Надо бы ей что-нить посложнее дать. smile.gif

Давайте! Я бы и сам рад посмотреть, как оно...
Вообще-то, люди считают, но примеров у меня нет.
Прохожий
Цитата(nl5 @ Feb 9 2009, 00:28) *
ШИМ контроллер я могу сделать хоть сейчас....Вам что надо: компаратор с пилой нарастающей, спадающей, с треугольным стгналом, фиксированным или произвольным, со сбросом, или что-то более хитрое? Нет проблем.

Что-то вроде UC384X и TL494.
Цитата(nl5 @ Feb 9 2009, 00:28) *
Продолжаю не понимать...sad.gif Что такое порядок расчета моделей? У меня вся схема запихивается в одну матрицу и рассчитывается одновременно. Так как не предполагается рассчитывать много тысяч компонентов, как должен делать Spice, то с памятью нет проблем. Плюс некоторые хитрости.
Проверка синтаксиса, ну так что, проверка да и всё... Я не планирую сильно его проверять, предполагаю, что он написан не ручками, а сгенерирован другой программой. А что, с этим бывают проблемы? Поделитесь, пожалуйста.

Обычно трансляция чего бы то ни было в ту же матрицу - процесс достаточно трудоемкий. Всякие там промежуточные языки, лексические анализы и грамматические разборы и прочая гадость. Хотелось бы вкратце, без секретных подробностей узнать, как это сделано у Вас.
А что касается ручек и и синтаксиса, то могу доложить, что многие ручками прямо в PSpice пишут...
Цитата(nl5 @ Feb 9 2009, 00:28) *
А почему вдруг сразу возник вопрос о цене? Не рановато ли? Вы же даже не пробовали еще, может вам это вовсе и не надо. Или платные программы принципиально не рассматриваются? Хорошо, могу предложить так: можете смело пробовать, невзирая на цены. К тому времени, как поймете, нужно ли оно вам, может и цены изменятся. А нет, так договоримся. А на ваших критических замечаниях глядишь, что-нибуди подправлю. В конце концов, я этим столько лет занимаюсь не за деньги, а для удовольствия.

Платность или бесплатность софта - исключительное право автора. На мой взгляд, софт - приложение к железкам, поэтому должен быть бесплатен.
Собираюсь заняться чем-то вроде этого. В настоящий момент исключительно для души... Пока разбираюсь с исходниками, чтобы вникнуть, как это сделано в этом конкретном случае.
wim
Например, передаточная характеристика выход-управление vo(s)/d(s) повышающего преобразователя. Малосигнальная модель здесь:
http://focus.ti.com/lit/an/slva061/slva061.pdf
Для частотного анализа через транзиент надо менять частоту тактового генератора, оставляя при этом постоянным коэффициент заполнения.
nl5
Цитата(Прохожий @ Feb 10 2009, 10:49) *
Что-то вроде UC384X и TL494.

Посмотрю описания. Если все понятно, попробую сделать.


Цитата(Прохожий @ Feb 10 2009, 10:49) *
Обычно трансляция чего бы то ни было в ту же матрицу - процесс достаточно трудоемкий. Всякие там промежуточные языки, лексические анализы и грамматические разборы и прочая гадость. Хотелось бы вкратце, без секретных подробностей узнать, как это сделано у Вас.

Есть рисунок схемы, реально: массив элементов схемы с координатами ножек и концов линий. Простым перебором всего и вся ищутся ножки компонентов соединенные между собой непосредственно, линиями или метками. Присваиваются уникальные номера узлов: получается нетлист. Если читается спайсовский текст, то он уже и есть нетлист (да, тут-то и нужен "парсинг" текста и разбор, но у меня такой опыт есть). Делается матрица размером N*N, где N - количество узлов. На самом деле не одна, и не буквально N*N, а с некоторыми хитростями (С) для экономии памяти и ускорения счета, что-то вроде "разреженной". Там все просто, даже стыдно вдаваться в детали. Есть вектор токов и напряжений, а матрица - это матрица проводимостей/импедансов. Матрица заполняется исходя из уравнений узловых потенциалов (так вроде называется?). Если что-то переключается, находится установившееся состояние итерациями, а в промежутках делается простое интегрирование методом трапеций. Это ответ на вопрос? Есть, конечно много тонкостей, о которых я не упомянул, если будут конкретные вопросы, с удовольствием отвечу.

Цитата(Прохожий @ Feb 10 2009, 10:49) *
На мой взгляд, софт - приложение к железкам, поэтому должен быть бесплатен.

NL это не приложение к железке, а приложение к мозгу на этапе, когда железки еще нет, а только "обдумывается". Если мозг ничего не стоит, или просто думать не хочется, то надо платить за NL rolleyes.gif .

Цитата(Прохожий @ Feb 10 2009, 10:49) *
Собираюсь заняться чем-то вроде этого. В настоящий момент исключительно для души... Пока разбираюсь с исходниками, чтобы вникнуть, как это сделано в этом конкретном случае.

То есть, сделать компилятор из ladder картинки в PIC код? Наверное это похожая задача, только вместо матриц генерируется текст кода...


Цитата(wim @ Feb 10 2009, 11:34) *
Например, передаточная характеристика выход-управление vo(s)/d(s) повышающего преобразователя. Малосигнальная модель здесь:
http://focus.ti.com/lit/an/slva061/slva061.pdf
Для частотного анализа через транзиент надо менять частоту тактового генератора, оставляя при этом постоянным коэффициент заполнения.

Отлично. Такая схема? Какие номиналы поставить?
Объясните пожалуйста подробнее какую передаточную характеристику надо считать. Я думал, что обычно тактовая частота не меняется, а есть какое-то внешнее возмущение, например питающего источника. А здесь надо менять частоту ШИМа? Коэффициент заполнения это duty cycle, типа 0.5 или вроде того? Что такое d(s) - deviation чего-то?
Спасибо.
wim
Цитата(nl5 @ Feb 10 2009, 22:56) *
Отлично. Такая схема? Какие номиналы поставить?
Объясните пожалуйста подробнее какую передаточную характеристику надо считать. Я думал, что обычно тактовая частота не меняется, а есть какое-то внешнее возмущение, например питающего источника. А здесь надо менять частоту ШИМа? Коэффициент заполнения это duty cycle, типа 0.5 или вроде того? Что такое d(s) - deviation чего-то?
Спасибо.

Ага, это схема силовой части boostа. Для нее управляющим сигналом является коэффициент заполнения, в общем случае - функция времени, т.е. d(t). Соответственно, в частотной области - d(s). Передаточная функция выход-управления показывает, как изменение коэффициента заполнения влияет на выходное напряжение. Собс-но, это самая сложная часть для частотного анализа импульсного источника питания, поскольку все остальное (усилители, модуляторы) - это обычные аналоговые схемы.
В PSpice это делается так:
- ключевые элементы заменяются непрерывной моделью (там в статье расписано более подробно - путем усреднения на интервале коммутации);
- соответственно, никаких импульсов в схеме уже нет и d(t) - это некий сигнал, его представляют обычно в виде источника напряжения (постоянная часть "DC" соответствует коэффициенту заполнения в заданной рабочей точке, например, 0.5V --> D=0.5, а переменная "AC" - это источник сигнала для частотного анализа);
- далее PSpice линеаризует схему в заданной рабочей точке (определяемой постоянной величиной коэффициента заполнения D) и строит АЧХ-ФЧХ.
В случае NL5 (анализа через транзиент) коэффициент заполнения остается параметром импульсного сигнала, т.е., я так понимаю, для частотного анализа нужно будет менять частоту ШИМ? Но при этом коэффициент заполнения импульсов должен оставаться постоянным, поскольку он определяет рабочую точку (коэффициент преобразования входного напряжения в выходное).
Если это в NL5 реализуемо, то можно попробовать, например, такой вариант: R1=20 мОм, L1=27 мкГн, C1=4000 мкФ, R2=9 мОм, R3=6 Ом, Vin=12 В, D=0.7 (Vo примерно 36 В).
Прохожий
Цитата(nl5 @ Feb 10 2009, 22:56) *
Посмотрю описания. Если все понятно, попробую сделать.

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

Цитата(nl5 @ Feb 10 2009, 22:56) *
NL это не приложение к железке, а приложение к мозгу на этапе, когда железки еще нет, а только "обдумывается". Если мозг ничего не стоит, или просто думать не хочется, то надо платить за NL rolleyes.gif .

Вот аналогии. Не затрагивая GNU движение.
Microchip - MPLAB, ATMEL - AVR Studio, Linear Technology - LTSpice, ONSemiconductor - PSpice модели + методики расчетов в виде Exel файлов, ST - VIPER soft... И т. д. и т. п.
Цитата(nl5 @ Feb 10 2009, 22:56) *
То есть, сделать компилятор из ladder картинки в PIC код? Наверное это похожая задача, только вместо матриц генерируется текст кода...

От то ж. Только немного не так.
В общепринятом варианте из LD картинки генерируется псевдокод под архитектуру, оговоренную неким стандартом, но не жестко. Регламентирована только основная канва.
Потенциальный клиент должен иметь право выражаться либо на LD, либо на этом самом псевдокоде. В принципе, представление LD - псевдокод должно переключаться из меню "ВИД".
Далее, оговоренная ранее архитектура, эмулируется в целевом девайсе + добавляется псевдо ОС реального времени, содержащая всякие вкусности в виде отправки и приема команд и данных по одному или нескольким стандартным протоколам, часы, АЦП и прочее в виде простых команд псевдокода или блоков LD.
Ко всему прочему, все это дело должно мониториться так, как у цитируемого автора это сделано в симуляторе, но только на реальном целевом девайсе.
Так, что простым компилятором обойтись не удасться... Но для начала мне необходимо разобраться именно с ним.
Все почему-то рекомендуют построить дерево разбора для LD (на самом деле это не картинки, а закамуфлированный текст), а на его основе уже сделать генератор кода.
Поскольку Ваша и описанная мною задачи чисто внешне похожи, я и интересуюсь Вашей методикой трансляции текста нетлиста в матрицу.
Спасибо в связи с этим за описание Вашего подхода. Если можно то про
Цитата(nl5 @ Feb 10 2009, 22:56) *
..."парсинг" текста и разбор, но у меня такой опыт есть...

поподробнее. Что курить и откуда копать? Пока нашел только это. Что можете сказать о степени необходимости этого материала?
nl5
Цитата(wim @ Feb 10 2009, 15:04) *
В случае NL5 (анализа через транзиент) коэффициент заполнения остается параметром импульсного сигнала, т.е., я так понимаю, для частотного анализа нужно будет менять частоту ШИМ? Но при этом коэффициент заполнения импульсов должен оставаться постоянным, поскольку он определяет рабочую точку (коэффициент преобразования входного напряжения в выходное).

Мне кажется (я даже уверен) что меняется не частота ШИМа, а частота девиации коэффициента заполнения, при его постоянном среднем значении. То есть:
duty = duty0 + A*sin(wt)
и w это частота от которой с строится АЧХ. Надо также задать амплитуду девиации А, так как должно быть нелинейно от неё, ну это можно просто проверить. Можно считать ее очень маленькой для начала.
Так что я могу сделать ШИМ как компаратор сравнивающий пилу с напряжением, которое имеет наложенный синус небольшой амплитуды, частота которого меняется. Самое интересное наверное будет, когда частота возмущения является субгармоникой частоты ШИМа.
Сейчас попробую.
wim
Цитата(nl5 @ Feb 11 2009, 01:29) *
Мне кажется (я даже уверен) что меняется не частота ШИМа, а частота девиации коэффициента заполнения, при его постоянном среднем значении. То есть:
duty = duty0 + A*sin(wt)
и w это частота от которой с строится АЧХ. Надо также задать амплитуду девиации А, так как должно быть нелинейно от неё, ну это можно просто проверить. Можно считать ее очень маленькой для начала.
Так что я могу сделать ШИМ как компаратор сравнивающий пилу с напряжением, которое имеет наложенный синус небольшой амплитуды, частота которого меняется. Самое интересное наверное будет, когда частота возмущения является субгармоникой частоты ШИМа.
Сейчас попробую.

Точно - так и должно быть. Частоту коммутации можно взять, например, 100 кГц.
nl5
UC3844 очень простая, в NL элементарно делается subcircuit из имеющихся компонентов и подставляется в виде квадратика с 4...8 выводами. Постараюсь вечером сделать.

Цитата(Прохожий @ Feb 10 2009, 15:27) *
Вот аналогии. Не затрагивая GNU движение. Linear Technology - LTSpice,

Отлично, а на что создатель LTSpice сейчас живет? Не платит ли ему случайно LT зарплату? А денежки от продажи железок, надо думать? А кто платит за железки? Не Вы ли?
Я бы тоже так хотел, всё мороки меньше клиентов убеждать rolleyes.gif . Да видно не дотянул пока...

Цитата(Прохожий @ Feb 10 2009, 15:27) *
От то ж. Только немного не так...Все почему-то рекомендуют построить дерево разбора для LD...я и интересуюсь Вашей методикой трансляции текста нетлиста в матрицу...Что можете сказать о степени необходимости этого материала?

Да, видно, что задача ой-ё-ёй..., со всеми эмуляциями в железе, ОС, и т.д. В этом я помочь не могу, так как этому не учился, и в общем-то даже с firmware уже совсем давно не работаю. А клепать такие вещи по-любительски "на коленке" как-то не солидно, да и неправильно. Посмотреть материалы по компиляторам, разные основополагающие "первоисточники" и чужие разработки очень полезно, только очень осторожно. По-моему, всегда есть опасность уйти в теоретические дебри, потерять связь с реальностью и вообще способность сделать реальный продукт. Как говорили: "Суха теория, мой друг..." и далее по-тексту. Пардон за лирическое отступление. В общем, не знаю как бы я мог помочь.

Насчет трансляции текста нетлиста, все-таки что имеется в виду: разборка текста, типа "R1 1k 0 5" и понимания, что тут есть что?
Rst7
Цитата
поподробнее. Что курить и откуда копать? Пока нашел только это.


Вообще, это, конечно, злостный оффтоп, но попробуйте покурить классику жанра по ключевому слову yacc.

Можно начинать прямо отсюда http://ru.wikipedia.org/wiki/Yacc
nl5
Цитата(wim @ Feb 10 2009, 15:43) *
Точно - так и должно быть. Частоту коммутации можно взять, например, 100 кГц.

Ну вот картинка, АЧХ 1...100 Hz, сделанная для амплитуды девиации 0.5, 1, и 2. Это амплитуда в вольтах синуса прложенного к компаратору ШИМа, 5V = 50% duty cycle. Пики на 50 Hz и 100 Hz - так как процесс не успевает установиться. Вверху АЧХ внизу фаза.
Похоже на что-то?
nl5
А вот картинка симуляции fly50_5 от gyratorа (см. выше). Модель UC3844 сделана как SubCircuit и вставлена в схему в виде блока. Схема упрощена, конечно. Резисторы 0.01 Ома, как я понимаю, везде для сходимости стояли? Так я их убрал. По-моему, считает правильно, но лучше скажут знатоки. И что еще с этим можно сделать, тоже.

Если хозяим схемы не возражает, я бы взял ее в качестве Demo-примера.

Спасибо,
Алексей.
wim
Цитата(nl5 @ Feb 11 2009, 03:25) *
Ну вот картинка, АЧХ 1...100 Hz, сделанная для амплитуды девиации 0.5, 1, и 2. Это амплитуда в вольтах синуса прложенного к компаратору ШИМа, 5V = 50% duty cycle. Пики на 50 Hz и 100 Hz - так как процесс не успевает установиться. Вверху АЧХ внизу фаза.
Похоже на что-то?

При частоте коммутации 100 Гц преобразователь работает в режиме разрывных токов дросселя. Стало быть, согласно малосигнальной модели, в передаточной характеристике должен быть один низкочастоный полюс (slva061, с. 18). Поэтому непонятно запаздывание фазы на 180 гр. И еще там должно быть усиление на постоянном токе - примерно 27 раз.
Вообще, интереснее режим непрерывных токов. Предлагаю попробовать с частотой коммутации 100 кГц и посмотреть частотные характеристики примерно до 1/3 частоты коммутации. Малосигнальная характеристка - там же, на с. 16. Должны увидеть двойной комплексно-сопряженный полюс, нуль в левой полуплоскости и нуль в правой полуплоскости.
nl5
Цитата(wim @ Feb 11 2009, 01:24) *
Поэтому непонятно запаздывание фазы на 180 гр. И еще там должно быть усиление на постоянном токе - примерно 27 раз.

Фаза была 180 гр. на DC потому что duty cycle у меня на самом деле уменьшался при увеличении входного AC напряжения. Исправил. Усиления на постоянном токе не было, потому 0.5 duty cycle соответствовал не 0.5В входного AC, а 5В. Сейчас на DC усиление 20 dB. Ну тоже не 27 раз.

Аналитические формулы из SLVA061 я могу явно построить в NL и сравнить с симуляцией.

А вот картинка процесса при D=0.5.
Вы уверены, что все номиналы правильные? Мне очень не нравится вид и амплитуда тока через L1 и пульсации выхода. Это должно быть 100 Гц или 100 кГц?
wim
Цитата(nl5 @ Feb 11 2009, 19:44) *
Фаза была 180 гр. на DC потому что duty cycle у меня на самом деле уменьшался при увеличении входного AC напряжения. Исправил. Усиления на постоянном токе не было, потому 0.5 duty cycle соответствовал не 0.5В входного AC, а 5В. Сейчас на DC усиление 20 dB. Ну тоже не 27 раз.

Аналитические формулы из SLVA061 я могу явно построить в NL и сравнить с симуляцией.

А вот картинка процесса при D=0.5.
Вы уверены, что все номиналы правильные? Мне очень не нравится вид и амплитуда тока через L1 и пульсации выхода. Это должно быть 100 Гц или 100 кГц?

Номиналы правильные, частота должна быть 100 кГц. А здесь ток в дросселе нелинейный, потому что на него существенно влияет падение напряжения на его омическом сопротивлении.
Аналитические выражения не всегда есть в наличии, кроме того, их надо линеаризовывать вручную. smile.gif boost - это сравнительно простой пример (система второго порядка). А вот, например, SEPIC, даже без учета паразитных элементов (ESR), - это уже четвертого порядка. Идея моделирования как раз в том и состоит, чтобы получить передаточную характеристику "автоматически".
Вот один из вариантов как это делается в PSpice:
http://www.ee.bgu.ac.il/~pel/pdf-files/jour109.pdf
gyrator
Цитата(nl5 @ Feb 11 2009, 09:05) *
А вот картинка симуляции

А вот картинка симуляции в микробульке

Кусочек включения и выход на режим стильбизации.
nl5
Цитата(wim @ Feb 11 2009, 10:52) *
Номиналы правильные, частота должна быть 100 кГц.

Прошу прощения, я по-ошибке делал 100 Гц. Пересчитаю.

Цитата(gyrator @ Feb 11 2009, 11:06) *
А вот картинка симуляции в микробульке

А что, осцилляции (на красном графике например) реальные, или артефакт симуляции?
gyrator
Цитата(nl5 @ Feb 11 2009, 21:42) *
А что, осцилляции (на красном графике например) реальные, или артефакт симуляции?

Вполне. Хотя в реалии их давят RC-демпферами, а кроме того в модельке несколько завышена индуктивность рассеяния первички транса и не учтены потери в сердечнике транса, поэтому паразитный контур имеет высокую добротность.
nl5
Цитата(wim @ Feb 11 2009, 10:52) *
Номиналы правильные, частота должна быть 100 кГц.

Вот симуляция на правильной частоте, почти что совпадающая с графиком формулы на стр. 16. (По крайней мере на низкой и высокой частоте. А почему в середине не совпадает - ошибка малосигнальной модели?

И также Discontinuous mode. (D=0.2, R=200), в общем похоже (формула на стр. 18)
wim
Цитата(nl5 @ Feb 12 2009, 00:05) *
Вот симуляция на правильной частоте, почти что совпадающая с графиком формулы на стр. 16. (По крайней мере на низкой и высокой частоте. А почему в середине не совпадает - ошибка малосигнальной модели?

И также Discontinuous mode. (D=0.2, R=200), в общем похоже (формула на стр. 18)

Может где-то ошиблись в формуле? Я вот попробовал скрипт матлаба - все очень похоже на результаты симуляции.
С режимом DCM в принципе тоже понятно - там в модели для простоты убрали ESR конденсатора.
nl5
Цитата(wim @ Feb 11 2009, 15:11) *
Может где-то ошиблись в формуле? Я вот попробовал скрипт матлаба - все очень похоже на результаты симуляции.
С режимом DCM в принципе тоже понятно - там в модели для простоты убрали ESR конденсатора.

Понял: была слишком большая амплитуда вх.сигнала (девиация скважности). Переделал с ну совсем малюсенькой амплттудой (0.01), стало идентично. Подозреваю, что с discontinouos модой была та же проблема. Ну что же, это всего лишь доказательство, что программа правильно использует закон Ома, не более того. И все неправильные результаты симуляции не от того, что симулятор плохой, а симулируется не то, что хотел пользователь.
wim
Цитата(nl5 @ Feb 12 2009, 01:42) *
Понял: была слишком большая амплитуда вх.сигнала (девиация скважности). Переделал с ну совсем малюсенькой амплттудой (0.01), стало идентично. Подозреваю, что с discontinouos модой была та же проблема. Ну что же, это всего лишь доказательство, что программа правильно использует закон Ома, не более того. И все неправильные результаты симуляции не от того, что симулятор плохой, а симулируется не то, что хотел пользователь.

Интересно еще увеличить L раз в десять, чтобы wz2 попал в диапазон исследумых частот. А сколько времени программа считала?
nl5
Цитата(wim @ Feb 11 2009, 23:52) *
Интересно еще увеличить L раз в десять, чтобы wz2 попал в диапазон исследумых частот. А сколько времени программа считала?

Вот результат для L=270mk. 25 точек по частоте, считает 4 минуты, из них ровно половина уходит на 3 низших частоты: 77, 62 и 50 Гц.
Хотя нет, на самом деле я еще сначала прогнал просто транзиент 15 секунд, и запомнил установившееся значение в IC. Так что плюс 15 секунд.
wim
Цитата(nl5 @ Feb 12 2009, 18:34) *
Вот результат для L=270mk. 25 точек по частоте, считает 4 минуты, из них ровно половина уходит на 3 низших частоты: 77, 62 и 50 Гц.
Хотя нет, на самом деле я еще сначала прогнал просто транзиент 15 секунд, и запомнил установившееся значение в IC. Так что плюс 15 секунд.

Я так понимаю, программа строит АЧХ и ФЧХ по точкам, потом соединяет их линиями. Если отбросить низкие частоты, то сколько можно получить точек на декаду за приемлемое время? Я к тому, что если точек слишком мало, а корни расположены близко по частоте, можно пропустить что-нибудь интересное?
Еще интересный вопрос - а фазовые траектории программа умеет рисовать?
Вот тут примеры применительно к силовой электронике:
http://www.hamill.co.uk/pdfs/isacipes.pdf
http://www.hamill.co.uk/pdfs/laccws__.pdf
http://www.hamill.co.uk/misc/laccws.zip
nl5
Цитата(wim @ Feb 12 2009, 11:31) *
Еще интересный вопрос - а фазовые траектории программа умеет рисовать?


Конечно...

Цитата(wim @ Feb 12 2009, 11:31) *
Я так понимаю, программа строит АЧХ и ФЧХ по точкам, потом соединяет их линиями. Если отбросить низкие частоты, то сколько можно получить точек на декаду за приемлемое время? Я к тому, что если точек слишком мало, а корни расположены близко по частоте, можно пропустить что-нибудь интересное?

Да, по точкам. Можно считать с линейным шагом (постоянным) или логарифмическим по частоте. Кстати, наверное сделаю "лист": список произвольных точек частоты, чтобы мельчить шаг в интересующем диапазоне. Есть и другие варианты, типа Zoom по частоте, когда сначала рассчитывается с крупным шагом, а затем нужный участок с мелким шагом, и все данные объединяются. Это сделано, но закомментировано, чтобы не усложнять интефейс, так как не было запросов.

О времени: если сдвинуть нижнюю частоту вверх на 100 Гц, то уже в два раза быстрее будет. И время очень примерно пропорционально количеству точек по частоте. Если предполагается считать много раз и важно время расчета, то можно много чего соптимизировать в параметрах расчета, в зависимости от того, какая нужна точность: 1%, 5% или 10%, например.
wim
Цитата(nl5 @ Feb 12 2009, 22:01) *

А диаграмму бифуркации (все время пытаюсь найти какой-то подвох smile.gif)?
nl5
Цитата(wim @ Feb 12 2009, 13:39) *
А диаграмму бифуркации (все время пытаюсь найти какой-то подвох smile.gif)?

А зачем его искать? Если что-то нужно, и пригодится другим, скажите, сделаю. Если это больше никому не надо, то тоже сделаю. Бесполезные вещи у меня уже и так есть (Nichols plot, например. Красивые картинки, но понятия не имею, кому бы оно понадобилось...только большим теоретикам?). Но это уже как договоримся rolleyes.gif
wim
Цитата(nl5 @ Feb 13 2009, 00:46) *
А зачем его искать? Если что-то нужно, и пригодится другим, скажите, сделаю. Если это больше никому не надо, то тоже сделаю. Бесполезные вещи у меня уже и так есть (Nichols plot, например. Красивые картинки, но понятия не имею, кому бы оно понадобилось...только большим теоретикам?). Но это уже как договоримся rolleyes.gif

Один из методов моделирования импульсного источника питания - представление его в виде дискретной системы. Судя по публикациям, буржуины этим методом пользуются, поскольку он позволяет, например, предсказать условия появления субгармонических пульсаций в режиме управления по пиковому току. Например, вот здесь:
http://www.ee.bgu.ac.il/~pel/pdf-files/conf45.pdf
Собс-но, почему PSpice не может строить диаграммы бифуркации - он пытается соединить точки линиями, т.е. представить это как процесс, а эти точки, на самом деле, - состояние процесса, например, возможные значения среднего тока дросселя в зависимости от коэффициента заполнения. Т.е., это точечный график.
В принципе, можно строить такие диаграммы в чем-нить матлабо-подобном, но в симуляторе это было бы, конечно, удобнее.
nl5
Цитата(wim @ Feb 13 2009, 02:04) *
В принципе, можно строить такие диаграммы в чем-нить матлабо-подобном, но в симуляторе это было бы, конечно, удобнее.

Красивые картинки! С Бен-Гурион Университетом я уже сталкивался, большие ученые там работают, и похоже, что наших немало.
Но мне кажется, что в симулятор это запихивать не стоит (там Хаоса и своего достаточно rolleyes.gif ). К тому же у меня одним из преимуществ, по многим отзывам, является простота пользования, и добавление новых возможностей должно быть очень обосновано. Хотя я человек мягкий, и это не всегда получается...
А чем не устраивает Матлаб? Там и программу можно любую написать, и графики красивые построить? А NL из командной строки запускается элементарно, опыт есть. Когда еще не было AC характеристики для импульсных схем, ее считали из Матлаба. Хлопотно, конечно, но работает.
wim
Цитата(nl5 @ Feb 13 2009, 20:08) *
Красивые картинки! С Бен-Гурион Университетом я уже сталкивался, большие ученые там работают, и похоже, что наших немало.
Но мне кажется, что в симулятор это запихивать не стоит (там Хаоса и своего достаточно rolleyes.gif ). К тому же у меня одним из преимуществ, по многим отзывам, является простота пользования, и добавление новых возможностей должно быть очень обосновано. Хотя я человек мягкий, и это не всегда получается...
А чем не устраивает Матлаб? Там и программу можно любую написать, и графики красивые построить? А NL из командной строки запускается элементарно, опыт есть. Когда еще не было AC характеристики для импульсных схем, ее считали из Матлаба. Хлопотно, конечно, но работает.

Матлаб, во-первых, платная программа. smile.gif Правда, есть бесплатный "аналог" Freemat, но там не все функции поддерживаются. Во-вторых, в Матлабе разностные уравнения придется составлять вручную - можно ошибиться. Во всяком случае, в схеме ошибиться труднее. Ну и пресловутое time-to-market поджимает - тратить "лишнее" время на еще одну модель, но в другой программе обычно не хочется.
В целом впечатление от NL5 пока что положительное, попробую ей что-нить трудненькое подсунуть. smile.gif
nl5
Цитата(wim @ Feb 13 2009, 11:41) *
Матлаб, во-первых, платная программа. smile.gif

Пардон, я об этом не подумал, так как знакомые работают на купленом...Но писать можно не только на Матлабе, а на чем угодно, где есть DOS командная строка, например на C.

Цитата(wim @ Feb 13 2009, 11:41) *
Во-вторых, в Матлабе разностные уравнения придется составлять вручную - можно ошибиться. Во всяком случае, в схеме ошибиться труднее.


Мы наверное о разном говорим. Вот реальный пример. В NL сделана схема test.nl5, и надо посмотреть зависимость среднего значения V(R1) и I(R1) от номинала C1. В Матлабе пишется программа, которая меняет номинал C1 как захочется, для каждого номинала создается скрипт-файл, например script.txt, с таким содержимым:

open test.nl5
C1=1n
log test.csv,С1,V(R1).mean,I(R1).mean
tran
log
exit

Затем Матлаб вызывает DOS-команду:

nl5.exe script.txt

NL5 запускается, открывает схему, меняет C1, вычисляет транзиент, и пишет средние V(R1) и I(R1) в csv файл в виде:

C1,V(R1).mean,I(R1).mean
1e-9,1.2345,6.789

Затем Матлаб открывает этот csv файл и берет вычисленные данные для дальнейшей обработки и построения графиков. Если C1 меняется в простом цикле, то это может делать и сама NL, например:

open test.nl5
log test.csv,С1,V(R1).mean,I(R1).mean
for C1=1n,10n,.1n
tran
log
next
exit

причем транзиент можно продолжать после смены номиналов, а не начинать с нуля, чтобы не ждать опять установления, и т.д....


Цитата(wim @ Feb 13 2009, 11:41) *
В целом впечатление от NL5 пока что положительное

Вот этого я и добивался rolleyes.gif
nl5
Цитата(wim @ Feb 13 2009, 11:41) *
В целом впечатление от NL5 пока что положительное

Перепишите это 10 раз и разошлите своим знакомым, и будет вам счасте rolleyes.gif
smk
У кого-нибудь есть рабочая в МС9 модель МС33262/МС34262? На сайте ON Semi... скачал, но она к сожалению не работает. Симулятор ругается на выв 0 (реально 6 GND). Помогите!? Спасибо.
smk
Файлик модели
smk
Цитата(Пушкарев Михаил @ Apr 29 2008, 10:42) *
В выложенной вчера модели ошибки. Новая версия.

А эту моджель как-то можно конвертировать под МС9?
Пушкарев Михаил
LTSpice и MicroCap имеют разные версии языка Spice. Но хуже другое. В модели использована функция временной задержки, которая, по-моему, отсутствует в MicroCap. По этой причине модель требует серьезной переработки. А кто мешает моделировать в LTSpice?
smk
Цитата(Пушкарев Михаил @ Jun 26 2009, 13:54) *
LTSpice и MicroCap имеют разные версии языка Spice. Но хуже другое. В модели использована функция временной задержки, которая, по-моему, отсутствует в MicroCap. По этой причине модель требует серьезной переработки. А кто мешает моделировать в LTSpice?

Скачал LTSpice. А как туда добавить эту модель?
Пушкарев Михаил
Следуя примеру.
gyrator
Цитата(Пушкарев Михаил @ Jun 26 2009, 14:54) *
В модели использована функция временной задержки, которая, по-моему, отсутствует в MicroCap. По этой причине модель требует серьезной переработки.

В микробульке есть не только задержка, но и возможность вводить в выражение номиналов и лог. выражения ф-цию времени, чего нет в свечке.
AML
Цитата
У кого-нибудь есть рабочая в МС9 модель МС33262/МС34262?

Есть - http://microcap.forum24.ru/?1-7-0-00000052-000-0-0#003
nl5
Когда-то в этом посте были картинки частотных характеристик импульсных источников, посчитаных на NL5. Хочу сообщить, что в новой версии 1.23 это можно делать значительно проще и быстрее. Так можно считать АЧХ не только источников, но и любых линейных и нелинейных схем: например цифровых фильтров с кодом, написанном на С. Примеры разных схем прилагаются в загрузочном zip-е.

В связи с появившимся "лекарством" (кстати, просроченным: для старой версии), предлагаю желающим "альтернативную медицину" - лицензию на год. Преимущество - можно будет всегда пользоваться последней версией NL, и без возможных "побочных" эффектов. Лицензию можно заказать на сайте: надо пойти в Trial License, заполнить все что надо, а в окне "Licensed To" к обычному имени обладателя лицензии добавить: "Electronix.ru".

И еще раз напоминаю, что для учебных заведений и лабораторий есть постоянная бесплатная сетевая лицензия. Она еще, правда, тестируется, вот и помощь с отладкой заодно будет...

Спасибо,
Алексей.
wim
Цитата(nl5 @ Aug 4 2009, 01:53) *
... предлагаю желающим "альтернативную медицину" - лицензию на год...

Триальная - хорошо, а бесплатная - лучше. smile.gif Тут Microchip подсуетился со своей Mindi - они тоже умеют рисовать частотные характеристики в режиме Transient. А еще там можно "зубастые" американские резисторы привести к привычному нам "европейскому" виду. Мелочь, а приятно. smile.gif
orthodox
Цитата(wim @ Aug 4 2009, 15:11) *
Тут Microchip подсуетился со своей Mindi - они тоже умеют рисовать частотные характеристики в режиме Transient.


Госпади, а это еще как-с? (с) Ржевский

Пошел скачивать и смотреть...
На вс случай спасибо за инфу...
nl5
Цитата(wim @ Aug 4 2009, 07:11) *
Триальная - хорошо, а бесплатная - лучше. smile.gif

Ну дак она и есть бесплатная. А на год исключительно для того, чтобы старые версии не залеживались, а вовремя обновлялись. Все-таки ошибочки находятся время от времени. Когда лицензия закончится, будет хороший повод заставить обновить версию.
Цитата(wim @ Aug 4 2009, 07:11) *
Тут Microchip подсуетился со своей Mindi - они тоже умеют рисовать частотные характеристики в режиме Transient.

Надо будет посмотреть. Если нервов хватит. Вот только что пытался сравнить NL с PSim-ом, не хватило терпения. Предлагаю специалистам по другим симуляторам: помогите посравнивать схемы (транзиент и АС), я по такому случаю и постоянную лицензию дам. Нет времени самому разбираться, как там надо рисовать и где параметры задаются...
Цитата(wim @ Aug 4 2009, 07:11) *
А еще там можно "зубастые" американские резисторы привести к привычному нам "европейскому" виду. Мелочь, а приятно. smile.gif

Ну это уже прям как "вам хочется песен, их есть у нас". В NL это тоже есть, так же как и многое другое, о чем мало кто подозревает, потому что некоторых вещей в других программах никогда не было и скорее всего не будет, если только "не подсуетятся" smile.gif Читайте Мануал (к сожалению, только английский).
nl5
И вот еще хочу сказать пару слов пользователям симуляторов.
Товарищи! У вас есть реальная возможность не ждать милостей от природы, а в буквальном смысле сделать инструмент "под себя" - удобный для работы, с нужными именно вам возможностями и "фичами". Я не думаю, что вы можете написать/позвонить в Microchip, он подсуетится и за пару дней сделает вам белый верх черный низ, и пуговицы перламутровые в нужном месте. Я же пока вынужден это делать, чтобы завоевать доверие клиентов, и в конечном счете поиметь какой-то рынок. Не совсем, конечно, "вынужден", я считаю, что так оно и должно быть. Естественно, большинство из того что сделано - это моё, но есть и ценные вещи, добавленные по просьбам юзеров. Иногда с боем, с длинными обсуждениями, а иногда на следующий день.

Есть всего несколько областей, куда я (NL) точно не собираюсь внедряться (хотя от тюрьмы и от сумы...), это во-первых, импорт/экспорт спайса. Сделаю, конечно, если получу предложение, от которого не смогу отказаться, но мне лично это не надо и не интересно. И второе - цифровая область. Это будет развиваться только постольку, поскольку необходимо для управления аналоговыми системами. Думаю, что максимум - это линк к МоделСиму (уже в процессе), так что счастливые цифровики сражу же и отвалят.

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

Я вижу, что на этом форуме вполне компетентные люди сидят: товарищи, вас то мне и надо! Давайте работать вместе на наше общее благо... уффф.

Спасибо,
Алексей.
gyrator
Цитата(nl5 @ Aug 5 2009, 06:45) *
Я вижу, что на этом форуме вполне компетентные люди сидят

ИМХО, компетентные товарищи давно определились с рабочим инструментом, который многократно протестировали на соответствие реальным результатам. Поэтому очередной новодел, ИМХО, так и останется на лотке уважаемого офени. А неофиты, скорее всего, выберут бесплатный и отлично зарекомендовавший себя SwCAD. biggrin.gif
wim
Цитата(nl5 @ Aug 5 2009, 03:41) *
... Читайте Мануал ...

Как это ни смешно звучит, но я читаю мануалы. smile.gif Есс-но, я сравнивал с другими программами предыдущую версию NL5 (Version 1.0 (Build 4, 02/08/2009)). И не нашел там ничего касаемо редактирования графики компонентов. Кстати, и в новой версии тоже (только выбор вариантов). Либо "Edit component button" хорошо спрятана, либо ее нет в демо-версии. Хотя, в принципе, это не сильно надо для симулятора.

Цитата(gyrator @ Aug 5 2009, 11:14) *
ИМХО, компетентные товарищи давно определились с рабочим инструментом, который многократно протестировали на соответствие реальным результатам. Поэтому очередной новодел, ИМХО, так и останется на лотке уважаемого офени. А неофиты, скорее всего, выберут бесплатный и отлично зарекомендовавший себя SwCAD. biggrin.gif

Сила подобных программ - в наличии готовых моделей и примеров. Можно, конечно, ваять схему с чистого листа, но проще брать готовое и отсекать все лишнее. smile.gif У буржуинов по этой причне наиболее популярен OrCAD благодаря бесплатной демо-версии 9.1 и куче проектов, выполненных в нем. Есть также несколько книг по силовой электронике с примерами на CD. Некоторые из них я тут выкладывал.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.