By Bryan Bergeron View In Digital Edition
With a circuit simulator and a basic knowledge of components and circuit theory, it’s possible to simulate just about any electronic device that can be built. Trouble is, circuit simulators and the underlying models are inherently limiting. You’re not likely to come up with a simulation of a time machine because your library of components is limited to the same resistors, capacitors, inductors, etc., that designers have used for decades.
The great thing about simulation is that you can define your own universe in software. Let’s say you want to work with flux capacitors and time resistors. You define time resistors as delay lines of sorts — increase time resistance and time slows; decrease time resistance and time accelerates. Perhaps you define flux capacitors as gravity distortion devices. It’s up to you, as long as the math is consistent across devices and within your universe. The math can be particular to your universe as well; perhaps division by zero always results in one, for example.
Why “waste” your time defining components that don’t exist in the real world, and define a world that doesn’t abide by our current understanding of physics? Because the exercise can free your mind to explore what would be required (for example) to build a real time machine, and what physical constraints of our world would have to be relaxed.
Furthermore, defining components in software that don’t have a parallel in the real world doesn’t mean that they can’t be used as software components. For example, many filter operations are performed by DSP techniques running on computer hardware, with the various filter components defined functionally in software.
Aside from defining a new universe complete with physical laws, a major challenge is getting buy-in from a large enough number of users to create a critical mass of contributors. It takes a following for technology to replicate and grow. Look at the parallels in computer software. There are dozens of language compilers introduced every year, and yet few attract enough followers from the C and C++ crowd to survive. The exceptions tend to be languages tied to specific microcontrollers or specific problem domains.
If you’re new to circuit simulation, it’s a good idea to get some experience working with the free software packages that are out there. Once you understand how circuit simulators work, you can try your hand with a generic simulation language, including something as simple as an Excel spreadsheet. You don’t need fancy graphics and icons to develop your simulations. Better to focus on the math and interrelationships, and worry about aesthetics later on.
So, go ahead, define that flux capacitor. We’re ready for someone to invent a time machine. NV