Pull to refresh

Comments 33

Да, из-за сходимости и кривых встроенных моделей перешел на Micro-Cap. Надеюсь, когда-нибудь вы запилите загрузку моделей из гуя.

Да, из-за сходимости и кривых встроенных моделей перешел на Micro-Cap

С переходом на Ngspice в качестве движка теперь проблемы со сходимостью решились. Qucsator я поддерживаю в основном для обратной совместимости со старыми версиями Qucs и некоторых специфичных задач, как моделирование микрополосковых линий, которых в Ngspice нет.

Надеюсь, когда-нибудь вы запилите загрузку моделей из гуя

Автоматическая загрузка SPICE-моделей уже есть https://qucs-s-help.readthedocs.io/en/latest/SubLib.html#usage-of-the-whole-spice-library Можно положить библиотеку в $HOME/.qucs/user_lib и оно будет видно в менеджере библиотек, но с УГО квадратиком. Если модель, совместима с Ngspice, то всё будет работать.

А я написал на javascript расчёт переходных процессов, только не в электронных схемах, а в автоматике: https://slava37md2.github.io/free-ACS-CAD/free-sapr-sau.html . Когда-то в институте мечтали с друзьями сделать и для электронных схем, но руки так и не дошли.

Интерфейс напомнил о существовании LogicCircuit (хорошая и очень простая программа для симуляции логических элементов).

А тут можно собрать какой-нибудь блок из электроники и потом оперировать им как модулем?

А тут можно собрать какой-нибудь блок из электроники и потом оперировать им как модулем?

Да, подсхемы есть. С помощью них можно решить подобную задачу.

Лет 15 назад использовал для этого Proteus

Был удобно что он поддерживал виртуальные контроллеры и можно было загрузить туда прошивку. Было прикольно как программа в виртуальном контроллере через COM порт общалась с реальным миром и датчиками. Можно было ставить точки останова и шагать по программе. И в самом протеусе одновременно можно было покрутить переменные резисторы, подключить виртуальные осциллографы и всякие мультиметры. Интересное время было )

Да, про Proteus знаю, пользовался им когда студентом был и потом работал на заводе схемотехником. Сейчас для моделирования схем на МК существует открытый SimulIDE https://www.simulide.com/

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

Но лучше всё же не заниматься пиратством, а использовать открытый аналог, тем более Arduino в SimulIDE поддерживается.

Ну.. мне не удобно пользоваться SimulIDE. Он конечно дает потрясающую наглядность для в случае крупноузловой сборки.. но неудобно. Проще воспользоваться ISIS с триальными ограничениями.

А движок редактора схем жёстко привязан к набору компонент, или его можно использовать вне qucs? Как отдельную qt библиотеку?

Отделить редактор схемы от всего остального проблематично. К тому же там УГО компонентов захардкожено на C++, что не очень хорошо. Существует ещё симулятор Caneda https://github.com/Caneda/Caneda (похоже теперь скорее мёртвый), может быть оттуда отделить редактор схемы будет проще. Там к тому же компоненты представляются в виде XML.

Вот это и проблема большинства opensource инициатив. Как правило пишется сильно связанный код, который тяжело повторно переиспользовать, мигрировать на новый фреймворк или портировать.

Некоторые попытки уйти от компонентов захардкоженных на С++ предпринимаются. Пока их было 10 это было не критично, а когда стало 100, то стало представлять проблему. Но это не только в open-source, мало где задумываются об архитектуре на начальных стадиях разработки. С другой стороны пользователю всё равно что там у программы внутри: компоненты захардкожены на C++ или сделаны на XML и какой там фреймворк. Главное чтобы симуляция работала. Старый Qucs на Qt4 (который EOL в 2015 году) до сих пор имеет по 1000 скачиваний в неделю на SF.

Отказался от QUCS во время этой его последней стагнации, и вот почему:

Четыре раза подряд я перерисовывал готовые схемы из QUCS в KiCAD, и каждый раз при этом привносил мелкие, но досадные ошибки. После чего однозначно решил, что симулятор и редактор должны быть единым целым или иметь возможность взаимнооднозначного экспорта-импорта. В это же время как раз завезли симуляцию той же ngspice в сам KiCAD, так что в нём и стал всё симулировать.

Текущие недостатки симуляции в KiCAD:

* Нет виртуальных измерительных приборов - все величины отображаются только относительно "нуля" схемы

* Отвратительный осциллограф - в нём нет не то что диаграммы Смита, но даже разноса сигнала разных порядков между левой и правой шкалой, управления шкалой Y, логарифмической шкалы. Короче, нет вообще ничего! Ощущение будто сами авторы этим осциллоскопом не пользуются.

* Мало настроек через GUI - многое приходится писать текстом на языке Spice, что мне кажется неудобным

Поэтому, с теплотой вспоминаю QUCS. Если бы функционал QUCS каким-то образом перенесли в KiCAD я был бы счастлив.

В KiCAD, насколько знаю, моделирование до последнего момента было экспериментальной функцией и не включено в дефолтной сборке. Реализовано оно довольно примитивно.

Четыре раза подряд я перерисовывал готовые схемы из QUCS в KiCAD

В моём случае совершенно не вижу проблем. Всегда моделировал только отдельные маленькие куски от большой схемы. MicroCAP и LTSpice тоже не имеют редактора ПП и нормально существуют. Всё же симулятор должен быть отдельно. На полной схеме часто имеется множество компонентов, которые не подлежат симуляции. Если не секрет, то какое именно у вас было устройство, что его можно было промоделировать 1:1 как на схеме в Кикаде?

Если бы функционал QUCS каким-то образом перенесли в KiCAD я был бы счастлив

Это сделать невозможно. Код KiCAD и Qucs слишком сильно отличается и объединить их нельзя.

А зачем объединять, когда надо работать над импорт-экспортом?

Технически сделать экспорт схемы в KiCAD возможно, но требует времени. Пока есть более важные задачи, напрямую связанные с моделированием. Ещё планируется в каком-то виде реализовать импорт библиотек LTSpice, так как сейчас библиотеки это узкое место.

Ещё существует вот такая утилита https://github.com/Valber/qucs2kicad , но она обновлялась последний раз в 2011 году. За это время кикадовцы сменили формат файла схемы.

Да, технически это сделать возможно и не очень сложно. Но трудоёмкость примерно равна написанию генератора нетлиста для SPICE. К тому же сейчас более приоритетна задача с реализацией моделей МПЛ в Ngspice, чтобы моделирование S-параметров работало полноценно. И ещё в планах восстановление поддержки цифровых компонентов.

В любом случае большое спасибо за Ваш труд.

У меня схемы начинающего: усилители, генераторы, смесители, демодуляторы. Всё на низкой частоте, ничего особенного.

В KiCAD есть крыжики "не переносить на плату" - это для симуляции элементов, которых не будет (ёмкость линии или виртуальный источник тока какой-нибудь) и "не симулировать" - для тех компонентов, что симуляции не подлежат.

Насчёт примитивности не понял: там ровно тот же ngspice используется

У меня схемы начинающего: усилители, генераторы, смесители, демодуляторы.

Понятно. Я например вот такой аппарат https://github.com/ra3xdh/TRX_RA3XDH_v2/blob/master/TRX_RA3XDH_v2.png моделировал по частям, так как там имеется много повторяющихся блоков и запихивать схему в симулятор целиком нет смысла. И обычно что-то всё равно приходится перерисовывать с даташитов и т.п.

Насчёт примитивности не понял: там ровно тот же ngspice используется

Я имел в виду, что интерфейс примитивный, многих типов диаграмм пока нет и т.п. Моделирование в KiCAD как будто сделано для галочки, чтобы было. Может быть потом они его доработают, тем более что разработчик этой подсистемы работает в CERN.

TI лочит свои модели для использования их только со своей TINA-TI, AD привязан к своему LTspice. Для быстрого моделирования силовых - SIMPLIS. Для иделизированных компонентов - idealCircuit и NL5. Немного сбоку, судя по всему умирающий из-за невозможности конкурировать с бесплатными программами, любимый аналоговиками, Micro-Cap. А для кого эта, если судя по этому тексту, её 1 человек тащит и какова перспектива?

Qucs-S имеет открытый исходный код и запускается нативно под Linux. Как показала практика, проприетарщики могут изменить условия использования своего ПО и, например, сделать его по подписке как Eagle. Поэтому открытые САПР важны. Основная аудитория Qucs -- это радиолюбители, также имеются академические пользователи, которые используют Qucs для отладки Verilog-A моделей. Пока ещё не все SPICE-модели распространяются зашифрованными. Также Qucs-S предоставляет GUI для движка моделирования XYCE, используемого в академических кругах. Google выпускает открытый SkywaterPDK для микроэлектроники. Для разработки топологии ИМС предлагается использовать KLayout, а для моделирования рисовать схему в xcircuit и запускать Ngspice в консоли. Вместо этого для симуляции вполне можно использовать Qucs-S+Ngspice.

Как долго Qucs сможет оставаться бесплатным и развиваться? Производители микросхем предоставляют свой софт сейчас бесплатно, как сервис. И так как разработчик скорее будет доверять их софту, чем стороннему, выглядит так, что сторонний софт постепенно умирает сейчас.

Столько, сколько он нужен самому автору.

Как долго Qucs сможет оставаться бесплатным

Сменить лицензию софт под GPL (чтобы закрыть исходники) может только с согласия всех его контрибуторов, которые когда-либо присылали патчи. Даже если поставить цель сменить лицензию, собрать со всех согласие невозможно, так что Qucs останется под GPL вечно.

Это всего лишь текущее состояние со всеми его багами.

А мы в вузе использовали Electronics Workbench)

У нас уже был Multisim, причём лицензионный.

Я лично использую QUCS-S на практике. Я работаю конструктормо железнйо части устрйоств силовой автоматики.

Да простит автор софта мою назойливость.

Во многом работать в QUCS удобнее, чем в проприетарных системах. Забыл LTSpice как страшный сон.

Sign up to leave a comment.

Articles