Maker Pro
Maker Pro

Help with understanding/programming a DMM

Hello everyone,

To begin, I know next to nothing about circuits, Digital Multimeters,
and the like. Your patience with me is appreciated.

I am a programmer and have recently been assigned a project that shows
a virtual series circuit onscreen for a teaching simulation. A student
would interact with the circuit by flipping switches, circuit breakers,
unscrewing wires, and using a virtual Digital Multimeter to test a
circuit's Voltage, Current and Resistance. The simulation needs to
have total freedom to allow the student to do whatever they wish.
Faults are assigned to the circuit that cause problems that the student
is expected (with the use of the DMM) to identify.

My problem lies in getting the read-out of the virtual DMM to mimic
real life.

I have set up some initial tests, and they look very promising,
however, my lack of understanding circuits has left me with unreliable
results (mainly with voltage).

I have set up a web page (
that gives:

1) Brief descriptions of the faults (what happens and why)
2) A chart that shows the Resistance of each component when
a fault (or, no fault) is assigned (and through the V=I/R
formula, the Current and Voltage)
3) A circuit diagram
4) A testing tool to test my DMM code.

The Virtual DMM, locate just under the circuit diagram, allows you to
set a fault, toggle the circuits power, set the Circuit Breaker or
Switch of open or closed, choose your DMM setting (Voltage, Current,
Resistance) and type in a Test Point number for your DMM probes... The
calculate button then hopefully gives you the correct DMM read-out.

One problem in detail:

On the actual, real-life device, if I take a voltage measurement of the
circuit with Fault #4 set (Symptom: The lamp is dim when S1 is switched
to ON; Fault: High resistance across wire L1A20 - see the chart) with
my Positive DMM Lead is on anything from S1-T1 (TP4) through L1-T2
(TP7) and my Negative DMM Test Lead is on GND (TP8), I get about 14V...
Which makes sense due to the high resistance across the wire right
before the switch, but in my virtual test, I get 3.5V, no where near
the correct read-out.

To get this output, I am adding up the voltage in between TP4 (or
TP5-TP7, whichever you picked) through TP8: .02 + 3.48 = 3.5 (see the
chart under Fault #4 V, the first line under Fault #4). Is this not the
correct way to calculate Voltage? It seems to work in some areas, but
maybe I'm just getting lucky...?

It seems to work with resistance (adding up between the Test Points),
and current isn't a problem considering it's the same throughout a
series circuit.

Another thing I think I am unsure of is how opens are handled in the
various DMM readings: I believe the following to be true:

If reading Voltage OR Current:
- An open before the 1st DMM probe will result in a read-out of 0
- An open after the 2nd DMM probe will result in a read-out of 0
- An open in-between the DMM probes will result in the total VDC
(Does the DMM completes the circuit?)

If reading Resistance:
- An open before the 1st DMM probe or after the 2nd DMM probe will
not affect the read-out
- An open in-between the DMM probes will give the read-out "OL"

Does this sound right?

What if something is GROUNDED as above: before, after, or in-between
the DMM probes?

I will be more than happy to give further information if it is needed.

I appreciate any help, input, or maybe just a pointer to something I
could read on the web. I have looked into SPICE (and its variants) to
try to handle this, but I don't think I will be able to use that with
the final product this code will be going into. Also, I will eventually
have to do the same for a Parallel and Series-Parallel Circuit after

Thanks again and have a great day!

Daniel Goodwin

Don Kelly

Jan 1, 1970
There appear to be strange values involved in your circuit values under
faulted conditions. For example. when there is a ground on L1A20 , why do
you appear to have non-zero values of current and voltage to the right of
the grounded point.? In addition, the Circuit breaker resistance appears
very high and unrealistic. It may be that you are interpreting the circuit

Rather than play with ASCII diagrams, I will send you something directly.