ok i actually just realized the flaw after i last posted. i thought of mentioning it, but i thought it will have you guys think that i am trolling. (i actually just checked again for additional posts from you guys)
yes, hero999 there needs to be a common ground here for this to be a universally applicable (aside from the aforementioned caveat that you have to balance the R1 and R2).
to see why, we need to visit what was posted in this thread (hence my fear of this being seen as trolling):
http://www.electronics-lab.com/forum/index.php?topic=39704.0
basically, V1 and V2 are just voltage drops, but the actual voltage potential of both grounds of V1 and V2 may be different (can be taken by using a third reference voltage or if you want to be absolute, the negative elementary charge).
so in actuality:
|V3| =
(V_ref_pos1 - V_ref_gnd2) - (V_ref_gnd1 - V_ref_gnd2)
if V_ref_gnd1 >= V_ref_gnd2
or
(V_ref_gnd2 - V_ref_gnd1) - (V_ref_pos2 - V_ref_gnd1)
if V_ref_gnd1 < V_ref_gnd2
notice that (V1 = V_ref_pos1 - V_ref_gnd1) need not be greater than (V2 = V_ref_pos2 - V_ref_gnd2) to have a positive V3 = V1 - V2, the opposite can actually happen. it really is dependent on the relationship of V_ref_gnd1 to V_ref_gnd2.
anyways, this can be further compactified as:
|V3| = | (V_ref_pos1 - V_ref_uni_gnd) - (V_ref_pos2 - V_ref_uni_gnd) |
where
V_ref_uni_ground = min(V_ref_gnd1, V_ref_gnd2), which is obviously the offset or translation along the x axis our values.
but if we allow V_ref_gnd1 = V_ref_gnd2 = 0V, then we simply have
|V3| = | V1 - V2 |
as for my part on drawing 2 independent voltage sources, i was trying to be general. but, i probably should've explained or added after i realized it; that we still need a common ground. of course, we can't simply add a shorting wire on both grounds of V1 and V2, as that would bypass the V3 path. a high resistance short also would not work, basically you just have another non-functioning comparator.
what we can do is ALSO have V1 and V2 be sourced from another common voltage source V0, so practically they are biased in a V_ref_uni_gnd which is V_ref_gnd0 from either a single V0 or if you have several individual sources, their grounds must be shorted.