ndimo
@ndimo

Как разработать программу для моделирования электрических схем?

Здравствуйте!
Я начинающий разработчик и решил написать скромную программу для моделирования электрических схем. Например таких как: Electronics Workbench, SimOne, Qucs и т.п. Программа только для личного опыта!
Функциональность будет не таким огромным, только главные: конструкция и имитация схем. Главное было возможно работы с аналоговыми схемами.
Предпочитаемый язык программирования С# (желательно), С/С++, Java.
Программу для конструкции схем никогда не писал и не знаю с чего начать.
Можете меня направить в нужную русло? И еще интересует есть ли такие же программы с открытым исходным кодом!?
Спасибо!
  • Вопрос задан
  • 1589 просмотров
Пригласить эксперта
Ответы на вопрос 2
@vilgeforce
Раздолбай и программист
Задачку вы себе выбрали неслабую! :-) OpenSource редактор схем есть в KiCAD. Там, кажется, С++ и Qt. Я бы рекомендовал использовать именно С++ и Qt, поскольку нативный код работает быстрее, что важно при симуляции. Ну и у Qt прекрасная документация и большое сообщество разработчиков. Дополнительным бонусом - кроссплатформенность при правильном написании кода.
Ответ написан
DmitryITWorksMakarov
@DmitryITWorksMakarov
Если я правильно понял, то вы своей программой хотите не только рисовать схемы, а моделировать электрические процессы проходящие в них.

Самое простое, что можно сделать в этой области - это моделирование линейных схем при гармоническом воздействии. То есть таких схем, в которых применяются активные сопротивления R, индуктивности L, емкости C, источники гармонического тока J и источники гармонического напряжения E. В этом деле вам помогут такие методы расчета электрических цепей как метод контурных токов и метод узловых потенциалов для комплексных амплитуд. То есть по топологии схемы в соответствии с методом вы составляете матричное уравнение, решаете его и получаете токи и напряжения через каждый элемент и на каждом элементе соответственно.

Вторым шагом, будет реализация моделирования электрических процессов при произвольном воздействии. Тут вам нужно будет использовать аппарат преобразования Фурье. Сигнал произвольной формы можно представить в виде суперпозиции гармонических сигналов. А для линейных цепей при гармоническом воздействии вы уже умеете моделировать процессы.

Третий шаг, это анализ переходных процессов в линейных цепях. Тут, условно в линейную цепь добавляется переключатель, который в момент времени To, что включает/отключает/переключает. Используя операторный метод и методы контурных токов или узловых потенциалов составляем операторное матричное уравнения, решаем его, переписываем результат из операторной во временную область, рисуем графики.

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

Классический учебник Попов "Основы теории цепей" вам в помощь. Удачи.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы