Discrete floating current sensor

Hi,

The purpose of the circuit attached below is sensing the state of the switch S1. If the switch is on, it should conduct ~50mA for V_POWER in the range of 6..15V. Q3 and Q4 stabilise that current. Q1 and Q2 are in fact a MUN5333DW1 which forms a current multiplexer -- there will be many clones of it. V2 enables this particular channel.

The problem: I would like to pass the binary information if the current flows through Q3 or not to the GND-referenced 3.3V logic domain. The circuit should be as simple as possible, and I can afford one V_be drop. It should also be reasonably efficient; in particular, the entire Q3 current should not be mirrored to GND. I know that I could use an INA199 or a tiny saturable reactor to sense that current, but I am interested in a discrete solution for educational purposes. The current one (based on two current mirrors) is excessively complex and does not produce a clean output: V_SENSE depends heavily on V_POWER. What would you suggest assuming that the circuit must be placed on the left of Q1 and be high-side?

Best regards, Piotr

Version 4 SHEET 1 1400 680 WIRE 176 -128 -352 -128 WIRE 512 -128 240 -128 WIRE -528 48 -528 -32 WIRE -480 48 -528 48 WIRE -352 48 -352 -128 WIRE -352 48 -400 48 WIRE -336 48 -352 48 WIRE -208 48 -256 48 WIRE -144 48 -208 48 WIRE 16 48 -48 48 WIRE 48 48 16 48 WIRE 176 48 144 48 WIRE 224 48 176 48 WIRE 320 48 224 48 WIRE 512 48 512 -128 WIRE 512 48 416 48 WIRE -208 64 -208 48 WIRE 512 80 512 48 WIRE -528 96 -528 48 WIRE 704 96 560 96 WIRE -352 128 -352 48 WIRE -256 128 -352 128 WIRE -96 128 -96 112 WIRE -96 128 -160 128 WIRE -96 144 -96 128 WIRE 96 144 96 112 WIRE 176 144 176 48 WIRE 176 144 96 144 WIRE 224 144 224 48 WIRE 256 144 224 144 WIRE 368 144 368 112 WIRE 368 144 336 144 WIRE 592 144 560 144 WIRE 96 160 96 144 WIRE 592 176 592 144 WIRE -528 192 -528 176 WIRE 512 192 512 160 WIRE 704 192 704 176 WIRE 16 224 16 48 WIRE 48 224 16 224 WIRE -96 240 -96 224 WIRE 368 240 368 144 WIRE -80 288 -320 288 WIRE 144 288 144 224 WIRE 512 288 512 272 WIRE -320 336 -320 288 WIRE -80 336 -80 288 WIRE 368 352 368 320 WIRE 144 400 144 368 WIRE 144 400 32 400 WIRE 464 400 432 400 WIRE 512 400 464 400 WIRE 672 400 592 400 WIRE 464 416 464 400 WIRE -80 432 -80 416 WIRE -80 432 -128 432 WIRE 672 432 672 400 WIRE -320 448 -320 416 WIRE -80 448 -80 432 WIRE 144 448 144 400 WIRE 1344 448 1344 416 WIRE 32 496 32 400 WIRE 32 496 -16 496 WIRE 80 496 32 496 WIRE 368 512 368 448 WIRE 464 512 464 496 WIRE 672 528 672 512 WIRE 1344 560 1344 528 WIRE -80 576 -80 544 WIRE 144 576 144 544 FLAG -528 192 0 FLAG 512 288 0 FLAG 464 512 0 FLAG 368 512 0 FLAG 672 528 0 FLAG 1344 560 0 FLAG -96 240 0 FLAG 592 176 0 FLAG 704 192 0 FLAG 144 576 0 FLAG -80 576 0 FLAG -320 448 0 FLAG -528 -32 V_POWER FLAG -128 432 V_SENSE SYMBOL voltage -528 80 R0 WINDOW 0 -35 4 Left 2 WINDOW 3 -68 92 Left 2 WINDOW 123 0 0 Left 0 WINDOW 39 0 0 Left 0 SYMATTR InstName V1 SYMATTR Value 6 SYMBOL pnp 416 112 M270 SYMATTR InstName Q1 SYMATTR Value BC557B SYMBOL res 496 176 R0 SYMATTR InstName R1 SYMATTR Value 1 SYMBOL res 240 160 R270 WINDOW 0 32 56 VTop 2 WINDOW 3 0 56 VBottom 2 SYMATTR InstName R2 SYMATTR Value 47k SYMBOL res 384 224 M0 SYMATTR InstName R3 SYMATTR Value 4k7 SYMBOL npn 432 352 M0 SYMATTR InstName Q2 SYMATTR Value BC547B SYMBOL res 608 416 M270 WINDOW 0 32 56 VTop 2 WINDOW 3 0 56 VBottom 2 SYMATTR InstName R4 SYMATTR Value 4k7 SYMBOL res 480 400 M0 SYMATTR InstName R5 SYMATTR Value 47k SYMBOL voltage 672 416 M0 WINDOW 123 0 0 Left 0 WINDOW 39 0 0 Left 0 SYMATTR InstName V2 SYMATTR Value 2.7 SYMBOL res -496 64 R270 WINDOW 0 32 56 VTop 2 WINDOW 3 0 56 VBottom 2 SYMATTR InstName R6

SYMBOL voltage 1344 432 R0 WINDOW 123 0 0 Left 0 WINDOW 39 0 0 Left 0 SYMATTR InstName V3 SYMATTR Value 29 SYMBOL res 1328 320 R0 SYMATTR InstName R7 SYMATTR Value 10 SYMBOL schottky 240 -144 R90 WINDOW 0 0 32 VBottom 2 WINDOW 3 32 32 VTop 2 SYMATTR InstName D1 SYMATTR Value PMEG3010BEA SYMATTR Description Diode SYMATTR Type diode SYMBOL res -112 128 R0 SYMATTR InstName R8 SYMATTR Value 5k SYMBOL pnp -48 112 M270 SYMATTR InstName Q3 SYMATTR Value BC807-40 SYMBOL pnp -160 64 R90 SYMATTR InstName Q4 SYMATTR Value BC557B SYMBOL res -240 32 R90 WINDOW 0 0 56 VBottom 2 WINDOW 3 32 56 VTop 2 SYMATTR InstName R9 SYMATTR Value 13 SYMBOL pnp 144 112 M270 SYMATTR InstName Q5 SYMATTR Value BC557B SYMBOL pnp 144 160 R90 SYMATTR InstName Q6 SYMATTR Value BC557B SYMBOL res 128 272 R0 SYMATTR InstName R10 SYMATTR Value 5k SYMBOL sw 512 176 R180 WINDOW 3 -118 140 Left 2 SYMATTR InstName S1 SYMATTR Value SWITCH SYMBOL voltage 704 80 R0 WINDOW 123 0 0 Left 0 WINDOW 39 0 0 Left 0 SYMATTR InstName V4 SYMATTR Value PULSE(0 1 0 1u 1u 250m 500m) SYMBOL npn 80 448 R0 SYMATTR InstName Q7 SYMATTR Value BC547B SYMBOL npn -16 448 M0 SYMATTR InstName Q8 SYMATTR Value BC547B SYMBOL res -96 320 R0 SYMATTR InstName R11 SYMATTR Value 1k SYMBOL voltage -320 320 R0 WINDOW 123 0 0 Left 0 WINDOW 39 0 0 Left 0 SYMATTR InstName V5 SYMATTR Value 3.3 TEXT -262 584 Left 2 !.tran 1 TEXT -264 624 Left 2 !.model SWITCH SW(Ron=1 Roff=1g Vt=0.5 Vh=-0.4)

Reply to
Piotr Wyderski
Loading thread data ...

Piotr Wyderski wrote:

OK, this one solves the V_SENSE levels problem. So one step further: is it possible to remove the Q5/Q6 current mirror from the path between Q3 and Q1 and use the voltage at R9? If I clone Q4 and use the collector of this "multicollector transistor" to pass the information down to the GND level, it will certainly work in Spice due to the perfect V_be matching. But will it in practice, without using germanium transistors? Can I expect the cheap SOT-23-6 duals to be sufficiently matched?

Best regards, Piotr

Version 4 SHEET 1 1400 760 WIRE 176 -128 -352 -128 WIRE 512 -128 240 -128 WIRE -528 48 -528 -32 WIRE -480 48 -528 48 WIRE -352 48 -352 -128 WIRE -352 48 -400 48 WIRE -336 48 -352 48 WIRE -208 48 -256 48 WIRE -144 48 -208 48 WIRE 16 48 -48 48 WIRE 48 48 16 48 WIRE 176 48 144 48 WIRE 224 48 176 48 WIRE 320 48 224 48 WIRE 512 48 512 -128 WIRE 512 48 416 48 WIRE -208 64 -208 48 WIRE 512 80 512 48 WIRE -528 96 -528 48 WIRE 704 96 560 96 WIRE -352 128 -352 48 WIRE -256 128 -352 128 WIRE -96 128 -96 112 WIRE -96 128 -160 128 WIRE -96 144 -96 128 WIRE 96 144 96 112 WIRE 176 144 176 48 WIRE 176 144 96 144 WIRE 224 144 224 48 WIRE 256 144 224 144 WIRE 368 144 368 112 WIRE 368 144 336 144 WIRE 592 144 560 144 WIRE 96 160 96 144 WIRE 592 176 592 144 WIRE -528 192 -528 176 WIRE 512 192 512 160 WIRE 704 192 704 176 WIRE 16 224 16 48 WIRE 48 224 16 224 WIRE -96 240 -96 224 WIRE 368 240 368 144 WIRE -16 288 -256 288 WIRE 144 288 144 224 WIRE 512 288 512 272 WIRE -256 336 -256 288 WIRE -16 336 -16 288 WIRE 368 352 368 320 WIRE 464 400 432 400 WIRE 512 400 464 400 WIRE 672 400 592 400 WIRE 464 416 464 400 WIRE -16 432 -16 416 WIRE -16 432 -64 432 WIRE 672 432 672 400 WIRE -256 448 -256 416 WIRE -16 448 -16 432 WIRE 1344 448 1344 416 WIRE 144 496 144 368 WIRE 144 496 48 496 WIRE 368 512 368 448 WIRE 464 512 464 496 WIRE 144 528 144 496 WIRE 672 528 672 512 WIRE 1344 560 1344 528 WIRE -16 576 -16 544 WIRE 144 640 144 608 FLAG -528 192 0 FLAG 512 288 0 FLAG 464 512 0 FLAG 368 512 0 FLAG 672 528 0 FLAG 1344 560 0 FLAG -96 240 0 FLAG 592 176 0 FLAG 704 192 0 FLAG 144 640 0 FLAG -16 576 0 FLAG -256 448 0 FLAG -528 -32 V_POWER FLAG -64 432 V_SENSE SYMBOL voltage -528 80 R0 WINDOW 0 -35 4 Left 2 WINDOW 3 -68 92 Left 2 WINDOW 123 0 0 Left 0 WINDOW 39 0 0 Left 0 SYMATTR InstName V1 SYMATTR Value 15 SYMBOL pnp 416 112 M270 SYMATTR InstName Q1 SYMATTR Value BC557B SYMBOL res 496 176 R0 SYMATTR InstName R1 SYMATTR Value 1 SYMBOL res 240 160 R270 WINDOW 0 32 56 VTop 2 WINDOW 3 0 56 VBottom 2 SYMATTR InstName R2 SYMATTR Value 47k SYMBOL res 384 224 M0 SYMATTR InstName R3 SYMATTR Value 4k7 SYMBOL npn 432 352 M0 SYMATTR InstName Q2 SYMATTR Value BC547B SYMBOL res 608 416 M270 WINDOW 0 32 56 VTop 2 WINDOW 3 0 56 VBottom 2 SYMATTR InstName R4 SYMATTR Value 4k7 SYMBOL res 480 400 M0 SYMATTR InstName R5 SYMATTR Value 47k SYMBOL voltage 672 416 M0 WINDOW 123 0 0 Left 0 WINDOW 39 0 0 Left 0 SYMATTR InstName V2 SYMATTR Value 2.7 SYMBOL res -496 64 R270 WINDOW 0 32 56 VTop 2 WINDOW 3 0 56 VBottom 2 SYMATTR InstName R6

SYMBOL voltage 1344 432 R0 WINDOW 123 0 0 Left 0 WINDOW 39 0 0 Left 0 SYMATTR InstName V3 SYMATTR Value 29 SYMBOL res 1328 320 R0 SYMATTR InstName R7 SYMATTR Value 10 SYMBOL schottky 240 -144 R90 WINDOW 0 0 32 VBottom 2 WINDOW 3 32 32 VTop 2 SYMATTR InstName D1 SYMATTR Value PMEG3010BEA SYMATTR Description Diode SYMATTR Type diode SYMBOL res -112 128 R0 SYMATTR InstName R8 SYMATTR Value 5k SYMBOL pnp -48 112 M270 SYMATTR InstName Q3 SYMATTR Value BC807-40 SYMBOL pnp -160 64 R90 SYMATTR InstName Q4 SYMATTR Value BC557B SYMBOL res -240 32 R90 WINDOW 0 0 56 VBottom 2 WINDOW 3 32 56 VTop 2 SYMATTR InstName R9 SYMATTR Value 13 SYMBOL pnp 144 112 M270 SYMATTR InstName Q5 SYMATTR Value BC557B SYMBOL pnp 144 160 R90 SYMATTR InstName Q6 SYMATTR Value BC557B SYMBOL res 128 272 R0 SYMATTR InstName R10 SYMATTR Value 5k SYMBOL sw 512 176 R180 WINDOW 3 -118 140 Left 2 SYMATTR InstName S1 SYMATTR Value SWITCH SYMBOL voltage 704 80 R0 WINDOW 123 0 0 Left 0 WINDOW 39 0 0 Left 0 SYMATTR InstName V4 SYMATTR Value PULSE(0 1 0 1u 1u 250m 500m) SYMBOL npn 48 448 M0 SYMATTR InstName Q8 SYMATTR Value BC547B SYMBOL res -32 320 R0 SYMATTR InstName R11 SYMATTR Value 1k SYMBOL voltage -256 320 R0 WINDOW 123 0 0 Left 0 WINDOW 39 0 0 Left 0 SYMATTR InstName V5 SYMATTR Value 3.3 SYMBOL res 128 512 R0 SYMATTR InstName R12 SYMATTR Value 1k TEXT -766 664 Left 2 !.tran 1 TEXT -768 704 Left 2 !.model SWITCH SW(Ron=1 Roff=1g Vt=0.5 Vh=-0.4)

Reply to
Piotr Wyderski

A current mirror transisor on Q3, with a high ohnmic resistor to GND, feed of that signal

Reply to
Klaus Vestergaard Kragelund

Klaus Vestergaard Kragelund wrote:

In this version I have removed the series current mirror and constructed the multicollector Q4/Q7, which sims correctly, yet inverted, which is not a problem. But I am concerned with V_be matching -- is this idea passable?

Best regards, Piotr

Version 4 SHEET 1 1400 1668 WIRE 176 -128 -256 -128 WIRE 512 -128 240 -128 WIRE -432 48 -432 -32 WIRE -384 48 -432 48 WIRE -256 48 -256 -128 WIRE -256 48 -304 48 WIRE -208 48 -256 48 WIRE -96 48 -128 48 WIRE 0 48 -96 48 WIRE 64 48 0 48 WIRE 224 48 160 48 WIRE 320 48 224 48 WIRE 512 48 512 -128 WIRE 512 48 416 48 WIRE -96 64 -96 48 WIRE 512 80 512 48 WIRE -432 96 -432 48 WIRE 704 96 560 96 WIRE -256 128 -256 48 WIRE -240 128 -256 128 WIRE -144 128 -160 128 WIRE 112 128 112 112 WIRE 112 128 -48 128 WIRE 112 144 112 128 WIRE 224 144 224 48 WIRE 256 144 224 144 WIRE 368 144 368 112 WIRE 368 144 336 144 WIRE 592 144 560 144 WIRE 0 160 0 48 WIRE 0 160 -96 160 WIRE -96 176 -96 160 WIRE 592 176 592 144 WIRE -432 192 -432 176 WIRE 512 192 512 160 WIRE 704 192 704 176 WIRE -256 240 -256 128 WIRE -240 240 -256 240 WIRE -144 240 -160 240 WIRE 112 240 112 224 WIRE 368 240 368 144 WIRE 512 288 512 272 WIRE 368 352 368 320 WIRE -48 384 -48 240 WIRE -208 400 -512 400 WIRE 464 400 432 400 WIRE 512 400 464 400 WIRE 672 400 592 400 WIRE 464 416 464 400 WIRE 672 432 672 400 WIRE -512 448 -512 400 WIRE -208 448 -208 400 WIRE 1344 448 1344 416 WIRE 368 512 368 448 WIRE 464 512 464 496 WIRE 672 528 672 512 WIRE -208 544 -208 528 WIRE -208 544 -320 544 WIRE -512 560 -512 528 WIRE -208 560 -208 544 WIRE 1344 560 1344 528 WIRE -48 608 -48 464 WIRE -48 608 -144 608 WIRE -48 640 -48 608 WIRE -208 688 -208 656 WIRE -48 752 -48 720 FLAG -432 192 0 FLAG 512 288 0 FLAG 464 512 0 FLAG 368 512 0 FLAG 672 528 0 FLAG 1344 560 0 FLAG 112 240 0 FLAG 592 176 0 FLAG 704 192 0 FLAG -48 752 0 FLAG -208 688 0 FLAG -512 560 0 FLAG -432 -32 V_POWER FLAG -320 544 V_SENSE SYMBOL voltage -432 80 R0 WINDOW 0 -35 4 Left 2 WINDOW 3 -68 92 Left 2 WINDOW 123 0 0 Left 0 WINDOW 39 0 0 Left 0 SYMATTR InstName V1 SYMATTR Value 6 SYMBOL pnp 416 112 M270 SYMATTR InstName Q1 SYMATTR Value BC557B SYMBOL res 496 176 R0 SYMATTR InstName R1 SYMATTR Value 1 SYMBOL res 240 160 R270 WINDOW 0 32 56 VTop 2 WINDOW 3 0 56 VBottom 2 SYMATTR InstName R2 SYMATTR Value 47k SYMBOL res 384 224 M0 SYMATTR InstName R3 SYMATTR Value 4k7 SYMBOL npn 432 352 M0 SYMATTR InstName Q2 SYMATTR Value BC547B SYMBOL res 608 416 M270 WINDOW 0 32 56 VTop 2 WINDOW 3 0 56 VBottom 2 SYMATTR InstName R4 SYMATTR Value 4k7 SYMBOL res 480 400 M0 SYMATTR InstName R5 SYMATTR Value 47k SYMBOL voltage 672 416 M0 WINDOW 123 0 0 Left 0 WINDOW 39 0 0 Left 0 SYMATTR InstName V2 SYMATTR Value 2.7 SYMBOL res -400 64 R270 WINDOW 0 32 56 VTop 2 WINDOW 3 0 56 VBottom 2 SYMATTR InstName R6

SYMBOL voltage 1344 432 R0 WINDOW 123 0 0 Left 0 WINDOW 39 0 0 Left 0 SYMATTR InstName V3 SYMATTR Value 29 SYMBOL res 1328 320 R0 SYMATTR InstName R7 SYMATTR Value 10 SYMBOL schottky 240 -144 R90 WINDOW 0 0 32 VBottom 2 WINDOW 3 32 32 VTop 2 SYMATTR InstName D1 SYMATTR Value PMEG3010BEA SYMATTR Description Diode SYMATTR Type diode SYMBOL res 96 128 R0 SYMATTR InstName R8 SYMATTR Value 5k SYMBOL pnp 160 112 M270 SYMATTR InstName Q3 SYMATTR Value BC807-40 SYMBOL pnp -48 64 R90 WINDOW 0 39 44 Left 2 WINDOW 3 -55 -6 VRight 2 SYMATTR InstName Q4 SYMATTR Value BC557B SYMBOL res -112 32 R90 WINDOW 0 0 56 VBottom 2 WINDOW 3 32 56 VTop 2 SYMATTR InstName R9 SYMATTR Value 13 SYMBOL sw 512 176 R180 WINDOW 3 -118 140 Left 2 SYMATTR InstName S1 SYMATTR Value SWITCH SYMBOL voltage 704 80 R0 WINDOW 123 0 0 Left 0 WINDOW 39 0 0 Left 0 SYMATTR InstName V4 SYMATTR Value PULSE(0 1 0 1u 1u 250m 500m) SYMBOL npn -144 560 M0 SYMATTR InstName Q8 SYMATTR Value BC547B SYMBOL res -224 432 R0 SYMATTR InstName R11 SYMATTR Value 1k SYMBOL voltage -512 432 R0 WINDOW 123 0 0 Left 0 WINDOW 39 0 0 Left 0 SYMATTR InstName V5 SYMATTR Value 3.3 SYMBOL res -64 624 R0 SYMATTR InstName R12 SYMATTR Value 2k SYMBOL res -144 112 R90 WINDOW 0 0 56 VBottom 2 WINDOW 3 32 56 VTop 2 SYMATTR InstName R13 SYMATTR Value 1 SYMBOL pnp -48 176 R90 SYMATTR InstName Q7 SYMATTR Value BC557B SYMBOL res -144 224 R90 WINDOW 0 0 56 VBottom 2 WINDOW 3 32 56 VTop 2 SYMATTR InstName R14 SYMATTR Value 1 SYMBOL res -64 368 R0 SYMATTR InstName R15 SYMATTR Value 10k TEXT -470 -304 Left 2 !.tran 1 TEXT -472 -264 Left 2 !.model SWITCH SW(Ron=1 Roff=1g Vt=0.5 Vh=-0.4)

Reply to
Piotr Wyderski

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.