Предупреждение! Программа работает только с английской раскладкой клавиатуры.

Содержание:
- → Как пользоваться программой
- → Рисование и редактирование схем
- → Высокочастотные схемы
- → Моделирование - не реальность
- → Некоторые ошибки
- → Лицензия

Основная часть информации взята из http://lushprojects.com/circuitjs/

### Как пользоваться программой

Когда программа запускается, на экране появляется анимированная схема LRC-контура. По умолчанию зеленый цвет провода обозначает положительное напряжение, серый цвет - землю, а красный - отрицательное напряжение. Движущиеся желтые точки обозначают ток.
Чтобы включить или выключить переключатель, просто нажмите на него. Если вы переместите указатель мыши на любой компонент схемы, вы увидите краткое описание этого компонента и его текущее состояние в правом нижнем углу окна. Чтобы изменить компонент, наведите указатель мыши на него, щелкните правой кнопкой мыши (или нажмите "Control", если у вас есть Mac) и выберите "Изменить". Вы также можете получить доступ к функции редактирования, дважды щелкнув на компонент.
В нижней части окна есть три графика; они действуют как осциллографы, каждый из которых показывает напряжение и ток по конкретному компоненту. Напряжение отображается зеленым, а ток - желтым. Ток на графике может быть не виден, если график напряжения перекрывает график тока. Также показано пиковое значение напряжения. Переместив указатель мыши на один из графиков, компонент, который он представляет, будет подсвечен в схеме определенным цветом. Чтобы изменить или удалить область, щелкните правой кнопкой мыши на ней и в контекстном меню выберите "Удалить". В этом контекстном меню также есть много других возможностей графиков. Чтобы просмотреть компонент в графике, щелкните правой кнопкой мыши над компонентом и выберите "Подключить осциллограф".
Меню "Схемы" содержит множество примеров схем.
Некоторые схемы, например Основы->Потенциометр, содержат потенциометры или источники переменного напряжения. Их можно настроить с помощью ползунков, которые добавляются в боковую панель, или путем установки указателя мыши на компонент и с помощью колеса мыши.

### Рисование и редактирование схем

Вы можете получить пустую рабочую область, выбрав «Пустая схема» в меню «Схемы». Для запуска симулятора вам нужно будет добавить хотя бы один источник напряжения.
Чтобы добавить компоненты или провод, выберите один из компонентов в меню «Рисовать». Обратите внимание, что основные компоненты имеют привязку к клавишам для быстрого добавления. Когда в режиме добавления курсор меняется на "+", кликните левой кнопкой мыши и перетащите курсор с одной точки на другую не отпуская левую кнопку мыши, чтобы добавить компонент.
Компоненты могут быть перемещены в режиме выбора (в режиме выбора "+" меняется на стрелку). Выберите "Выбрать/Переместить" из "Рисовать" или нажмите «Пробел» или «Esc» для перехода в режим выбора. При наведении курсора на компонент, он будет выделен определенным цветом и информация об этом компоненте будет отображена в области информации. Щелчок и перетаскивание компонента переместит компонент. Если вы нажмете на квадратные точки, иммитирующие соединения и перетащите или нажмете на элемент удерживая клавишу «ctrl», это изменит размер компонента и переместит клемы.
Провода соединяются только на концах, а не посередине, поэтому вы должны провести каждый сегмент провода отдельно. Если симулятор видит не связанные точки, которые, по его мнению, вы собираетесь подключить, он выделяет их красным кружком.
Многие компоненты имеют настройки, которые могут быть выполнены с помощью функции редактирования, описанной выше. Для резисторов, конденсаторов и катушек индуктивности будет удобно устанавливать значение путем прокрутки колеса мыши при наведении на эти компоненты
Меню «Файл» позволяет вам импортировать или экспортировать файлы схем.
Кнопка «Restart» сбрасывает цепь в исходное состояние. Если симуляция приостановлена, то дважды нажмите кнопку «Restart», чтобы перезапустить ее. Кнопка «Start/Stop» позволяет приостановить симуляцию. Ползунок «Скорость симуляции» позволяет вам регулировать скорость моделирования. Если симуляция не зависит от времени (то есть, если нет конденсаторов, индукторов или источников напряжения, зависящих от времени), то это не будет иметь никакого эффекта. Ползунок «Скорость тока» позволяет вам регулировать скорость точек, изображающих ток, т.к. если токи очень слабы (или сильны), то точки движутся слишком медленно (или слишком быстро).

### Высокочастотные схемы

Эта программа симулирует схему, используя серию коротких временных шагов. На каждом шаге изменения напряжений и токов в цепи рассчитываются на основе моделей компонентов и состояния текущей схемы. Чтобы этот процесс работал, используемые временные шаги должны быть значительно короче, чем продолжительность любого события, представляющего интерес для схемы. Или, если хотите, временные шаги должны быть значительно короче, чем период наибольшего частотного сигнала, представляющего интерес.
По умолчанию симулятор использует время шага 5 мкс. Это нормально для звуковых частотных сигналов, но не для радиочастотных сигналов или быстрых цифровых сигналов. Время шага может быть изменено во вкладке «Другие настройки...» в меню "Опции". Для сравнения, пример линии передачи в приложении использует время шага 5 пс.
Время шага моделирования не следует путать с «Скорость симуляции» в правой панели. Время шага моделирования определяет промежутки каждого шага (в симулированном времени). «Скорость симуляции» контролирует, как часто (в режиме реального времени) компьютер вычисляет шаг.

### Моделирование - не реальность

Физическое моделирование не является реальностью и не предполагает, что симуляция и реальность идентичны! Эта симуляция идеализирует многие компоненты. Провода и компоненты не имеют сопротивления. Источники напряжения идеальны - они будут пытаться подавать бесконечный ток, если вы им это позволите. Конденсаторы и катушки на 100% эффективны. Входы логических затворов потребляют нулевой ток - не так уж плохо в качестве приближения для КМОП логики, но не типичны, например, для ТТЛ 1980-х годов. Во что бы то ни стало, используйте этот симулятор, чтобы визуализировать схемы, но всегда проверяйте на практике.
Симулятор лишь численно аппроксимирует модели компонентов, которые также приблизительны. Даже без учета каких-либо ошибок, это просто грубый гайд к реальности. Этот симулятор может быть полезен для визуализации, но порой используется неправильным образом, т.к. любой симулятор может дать ложное чувство безопасности. Некоторые люди действительно не понимают эту важную концепцию. У меня даже был один пользователь, обвиняющий симулятор во «лжи» просто потому что он (или она) не учитывал идеализацию компонентов и не понимал фактической производительности компонентов, которые он выбрал для использования. Для всех инженеров, связанных с электроникой, важно, чтобы они всегда были полностью осведомлены о характеристиках компонента (и системы) в реальном мире и о том, как они отличаются от любого конкретного симулятора, который они используют. Если вам нужны более точные модели реальных компонентов, то симуляторы на SPICE являются гораздо более подходящими инструментами, чем этот, но даже тогда вам следует знать об отклонениях от реальности.
Одним из следствий использования идеальных компонентов является то, что симулятор не сходится к результату для цепей, которые не имеют определенного поведения - например, идеальный источник напряжения, закоротившийся на идеальном проводе. Другой ситуацией, которая не может быть смоделирована в этих предположениях, является распределение тока между проводниками, если два совершенных проводника соединены параллельно. При использовании симулятора вы должны учитывать места, где реальная электроника отличается от идеала.

### Некоторые ошибки

Вот некоторые ошибки, которые могут возникнуть:

- Voltage source loop with no resistance! - это означает, что один из источников напряжения в вашей цепи закорочен. Удостоверьтесь, что у каждого источника напряжения есть определенное сопротивление
- Capacitor loop with no resistance! - не допускается наличие каких-либо токовых контуров, содержащих конденсаторы без сопротивления. Например, конденсаторы, подключенные параллельно, не допускаются; вы должны установить резистор последовательно с ними. В противном случае конденсаторы считаются закорочеными.
- Singular matrix! - это означает, что ваша цепь несовместима (два разных источника напряжения подключены друг к другу) или что напряжение в какой-либо точке не определено. Это может означать, что клемы некоторых компонентов не подключены; например, если вы создаете операционный усилитель, но еще ничего не подключили к нему, вы получите эту ошибку.
- Convergence failed! - это означает, что симулятор не может понять, каково должно быть состояние цепи. Просто нажмите «Restart» и, возможно, это исправиться. Ваша схема может быть слишком сложной. Иногда это случается даже с примерами.
- Transmission line delay too large! - задержка линии передачи слишком велика по сравнению с тайм-аутом симулятора, поэтому потребуется слишком много памяти. Уменьшите задержку.
- Need to ground transmission line! - нижние два провода линии передачи всегда должны быть заземлены в этом симуляторе.

### Лицензия

Симулятор не имеет поддержки или гарантии. Абсолютно никакая гарантия не предусматривает пригодность для каких-либо целей.
Это свободная программа: вы можете перераспространять ее и/или изменять ее на условиях Стандартной общественной лицензии GNU в том виде, в каком она была опубликована Фондом свободного программного обеспечения; либо версии 2 лицензии, либо (по вашему выбору) любой более поздней версии.
Эта программа распространяется в надежде, что она будет полезной, но БЕЗО ВСЯКИХ ГАРАНТИЙ; даже без неявной гарантии ТОВАРНОГО ВИДА или ПРИГОДНОСТИ ДЛЯ ОПРЕДЕЛЕННЫХ ЦЕЛЕЙ. Подробнее см. в Стандартной общественной лицензии GNU.
Вы должны были получить копию Стандартной общественной лицензии GNU вместе с этой программой. Если это не так, см. http://www.gnu.org/licenses/.
Компоненты программы:
JQuery - Распространяется по лицензии MIT
jQuery.NiceScroll - Распространяется по лицензии MIT
jQuery.scrollSpeed взят из github.com/nathco/jQuery.scrollSpeed
NW.js - Распространяется по лицензии MIT

Оригинал: Paul Falstad.
http://www.falstad.com/
Компиляция в JavaScript: Iain Sharp.
http://lushprojects.com/
Компиляция программы в исполняемые файлы для Windows, MAC OS и Linux: Хаткевич Всеволод.
https://my77thblog.pp.ua/