Tuesday, March 23, 2010

NL5 - "Concept Proving" Tool

The main idea of NL and any other tool used for what I call "concept proving" is ability to

1) simulate schematic with true ideal components;
2) simulate schematic with arbitrary, even non-realistic, topology and component values;
3) have a minimal number (if any) of simulation parameters.

For instance, LTSpice gave a wrong solution for simple switching capacitors circuit, where I just tried to understand the principle, so I used ideal switches, floating capacitors with C=1F, and switching interval 1s. When I asked for explanation on one of LTSpice forums, I was literally accused of simulating "silly" circuits, "intentionally selecting difficult component values", and suggested to use "more reasonable" component values and parameters (TrTol, RelTol, etc.)

I don't think simulating silly circuits with unreasonable component values is a bad thing to do: this must be the only way to invent something really new or at least understand how things work. Of course it would be advantageous to have an easy to use and fast simulation tool as well, but this is another story...

Monday, March 22, 2010

Using circuit simulator in other disciplines

Here is an example of using NL5 for simulation in other disciplines using electrical analogy principle. If you know differential equations for the process - mechanical, heat transfer, fluid flow, whatever - and you know at least basics of electricity, it's not going to be much of a problem to find a correlation between two. Having simple ideal components, where none of parameters are hidden "under the hood" and component behaviour is clear and predicted - is absolutely required. And that's why NL5 is good for this type of analysis.

Sunday, March 21, 2010

Circuit Simulation Tools

(Some excerpts from discussion on LinkedIn)

I think a typical schematic design consists of 3 stages:

1. System level simulation
2. Schematic concept proving
3. Detailed analysis

Number 1 is testing the principle of a design on “block-diagram” level – no specific components/models, just functional blocks or equations. Not much choice of tools here: Matlab/Simulink/SimPowerSystems or PLECS (which is basically Simulink). Just use what your company purchased.

Let me jump to number 3: a huge selection of tools with wide ranges of features, performance, and prices (from free LTSpice to “multi-zeroes” Saber) are available, and almost all are SPICE-based. The best choice would be the one a) with the most accurate models, or at least ones you trust, b) that can perform all types of schematic analysis required by the company’s development process, and c) that can be integrated with other tools used by the company, such as PCB design, etc. In my opinion, in most companies engineers do not have much, if any, influence here. Depending on who makes a decision, the tool is selected based on either price (the higher the better :) or “shiny” ads and presentations. Maybe this is fine: since just ONE official tool for the company has to be selected, there will always be people who like it and who don’t. C’est la vie.

Number 2, I think, is the most important stage of a development. It is supposed to provide the right concept of a design prior to detailed analysis. Verifying your schematic idea with very simple “ideal” models you can catch and fix many essential schematic problems much quicker and easier, thus saving time, money, etc. And I believe that a “concept proving” tool MUST be personal engineer’s choice: the more comfortable the tool is to work with, the more efficient it is. I don’t think it’s going to be a problem for the company if engineers are using different tools – such a tool should be reasonably simple and cheap, no integration is needed, no models and libraries to support.

What candidates do we have on the market? Not much. I’m not considering SPICE-based simulators: even LTSpice, which is surprisingly very fast, failed at several simple schematics with ideal components. (And my personal opinion: the LTSpice interface is the worst I’ve ever seen). PSIM deals with ideal components, is fast, and provides AC response of switching circuits, which is good. But it also failed my tests with ideal components. SIMPLIS – I have not tested it yet. And, of course, NL5 – that’s why I’m writing all this :). By the way, although it is new to the public, the core of the NL algorithm was developed in the late 80s, and earlier DOS/Windows versions have been extensively used by a limited number of users since the 90s. It has been tested and proven, unlike many products announced for sale before they’re actually completed.