* Z:\home\khalils\Downloads\files\data\raw_asc\0f372a54eaf8_Current_Sense_4_examples.asc
* Generated by LTspice 26.0.1 for Windows.
* VB/2 @ ILOAD=0
* 0V @ ILOAD=0
* 2. Very good common mode suppression, precision resistors required
* 1. Very poor common mode suppression, precision resistors required
* 28mV offset @ ILOAD=0
* 3. Very good common mode suppression, precision resistors required
* 0V @ ILOAD=0
* 4. Excellent common mode suppression, no precision resistors required
* Current Sense Circuits 1V/1A\n \n1. Single Supply, Non-Rail-Rail-Opamp\n2. Dual Supply, Non-Rail-Rail-Opamp\n3. Single Supply, Rail-Rail-Opamp\n4. Single Supply, Rail-Rail-Opamp + PNP
* Circuits 1, 2 and 3 require very precision resistors\nResistor tolerance have to be 0.01% to 0.1% \ndepending on the required current sense\naccuracy of 1% or 10%.\n \nResistor tolerance in circuit-4 can be 1%\nif 2% accuracy is required.
* * * * * * 5 star circuit
* Library below included based on ModelFile attribute of instance XU1, XU2 (C:\users\khalils\AppData\Local\LTspice\lib\sym\OpAmps\LT1001A.asy), XU4, XU3 (C:\users\khalils\AppData\Local\LTspice\lib\sym\OpAmps\LT1218.asy)
R8 N002 N001 10K
I2 N004 0 PWL(0 0 100m 1) load
R1 N004 VB .1
R13 N004 0 1Meg
R11 N005 N004 10K
I4 N011 0 PWL(0 0 100m 1) load
R24 N008 N010 20Meg
R21 C3 N009 100K
R7 N003 0 10K
R5 C1 N002 100K
R30 N012 VB 100
XU3 N011 N012 NC_04 NC_05 N014 NC_06 LT1218 ;pnba In+)In-)V+)V-)OUT)SHDN
XU1 N003 N002 VB 0 C1 LT1001 ;pnba In+)In-)V+)V-)OUT
R20 N008 0 1Meg
I1 N001 0 PWL(0 0 100m 1) load
R16 N006 0 100K
V4 N007 0 -9
XU4 N010 N009 NC_01 NC_02 C3 NC_03 LT1218 ;pnba In+)In-)V+)V-)OUT)SHDN
R17 N010 VB 10K
R10 N008 VB .1
R6 N001 0 1Meg
R23 N010 0 100K
R2 N006 VB 10K
R22 N010 0 10K
R14 C2 N005 100K
R12 0 N005 10K
R9 0 N002 10K
R3 N001 VB .1
Q1 C4 N013 N012 0 2N3906
R27 N013 N014 1k
R19 0 N009 10K
R25 N011 VB .1
R29 N011 0 1Meg
R26 C4 0 1k
XU2 N006 N005 VB N007 C2 LT1001 ;pnba In+)In-)V+)V-)OUT
R15 N006 0 10K
V1 VB 0 9 Rser=0
I3 N008 0 PWL(0 0 100m 1) load
R18 N009 N008 10K
R4 N003 VB 10K
.model NPN NPN
.model PNP PNP
.lib C:\users\khalils\AppData\Local\LTspice\lib\cmp\standard.bjt
.tran .1
.step V1 list 9 10
.options plotwinsize=0
.lib LTC.lib
.backanno
.end

* LTspice schematic (.asc):
Version 4
SHEET 1 1204 2100
WIRE -304 -96 -336 -96
WIRE -16 -96 -96 -96
WIRE 16 -96 -16 -96
WIRE 128 -96 96 -96
WIRE 816 -96 128 -96
WIRE 944 -96 816 -96
WIRE 816 -64 816 -96
WIRE 944 -64 944 -96
WIRE -16 -48 -16 -96
WIRE 128 -48 128 -96
WIRE 512 -16 448 -16
WIRE 640 -16 592 -16
WIRE -336 64 -336 -96
WIRE 816 64 816 16
WIRE 944 64 944 16
WIRE 512 96 512 64
WIRE 128 112 128 32
WIRE 448 112 448 -16
WIRE 448 112 128 112
WIRE 480 112 448 112
WIRE 640 128 640 -16
WIRE 640 128 544 128
WIRE 672 128 640 128
WIRE -16 144 -16 32
WIRE 480 144 -16 144
WIRE 512 192 512 160
WIRE -16 208 -16 144
WIRE 128 208 128 112
WIRE -336 320 -336 144
WIRE -16 320 -16 288
WIRE 128 320 128 288
WIRE -32 480 -112 480
WIRE 0 480 -32 480
WIRE 112 480 80 480
WIRE 832 480 112 480
WIRE 960 480 832 480
WIRE 832 512 832 480
WIRE 960 512 960 480
WIRE -32 528 -32 480
WIRE 112 528 112 480
WIRE 496 560 432 560
WIRE 624 560 576 560
WIRE 832 640 832 592
WIRE 960 640 960 592
WIRE 112 656 112 608
WIRE 432 656 432 560
WIRE 432 656 112 656
WIRE 496 672 496 640
WIRE 432 688 432 656
WIRE 464 688 432 688
WIRE 624 704 624 560
WIRE 624 704 528 704
WIRE 656 704 624 704
WIRE -32 720 -32 608
WIRE 288 720 -32 720
WIRE 464 720 288 720
WIRE -32 784 -32 720
WIRE 112 784 112 656
WIRE 496 784 496 736
WIRE 288 800 288 720
WIRE -32 896 -32 864
WIRE 112 896 112 864
WIRE 288 896 288 880
WIRE 496 896 496 864
WIRE -32 1056 -112 1056
WIRE 0 1056 -32 1056
WIRE 112 1056 80 1056
WIRE 288 1056 112 1056
WIRE 832 1056 288 1056
WIRE 960 1056 832 1056
WIRE 288 1088 288 1056
WIRE 832 1088 832 1056
WIRE 960 1088 960 1056
WIRE -32 1104 -32 1056
WIRE 112 1104 112 1056
WIRE 496 1136 432 1136
WIRE 624 1136 576 1136
WIRE 832 1216 832 1168
WIRE 960 1216 960 1168
WIRE 112 1232 112 1184
WIRE 432 1232 432 1136
WIRE 432 1232 112 1232
WIRE 496 1248 496 1216
WIRE 432 1264 432 1232
WIRE 464 1264 432 1264
WIRE 624 1280 624 1136
WIRE 624 1280 528 1280
WIRE 656 1280 624 1280
WIRE -32 1296 -32 1184
WIRE 288 1296 288 1168
WIRE 288 1296 -32 1296
WIRE 464 1296 288 1296
WIRE -32 1360 -32 1296
WIRE 112 1360 112 1232
WIRE 496 1360 496 1312
WIRE 288 1376 288 1296
WIRE -32 1472 -32 1440
WIRE 112 1472 112 1440
WIRE 288 1472 288 1456
WIRE -32 1632 -112 1632
WIRE 0 1632 -32 1632
WIRE 176 1632 80 1632
WIRE 832 1632 176 1632
WIRE 960 1632 832 1632
WIRE 832 1664 832 1632
WIRE 960 1664 960 1632
WIRE -32 1744 -32 1632
WIRE 0 1744 -32 1744
WIRE 128 1744 80 1744
WIRE 240 1744 128 1744
WIRE 672 1744 336 1744
WIRE 832 1792 832 1744
WIRE 960 1792 960 1744
WIRE 288 1824 288 1808
WIRE 464 1824 288 1824
WIRE 576 1824 544 1824
WIRE 672 1904 672 1744
WIRE 800 1904 672 1904
WIRE 496 1936 496 1904
WIRE 672 1936 672 1904
WIRE 128 1952 128 1744
WIRE 464 1952 128 1952
WIRE 576 1968 576 1824
WIRE 576 1968 528 1968
WIRE 176 1984 176 1632
WIRE 464 1984 176 1984
WIRE 496 2048 496 2000
WIRE 672 2048 672 2016
IOPIN -304 -96 Out
IOPIN -112 480 In
IOPIN 672 128 Out
IOPIN 656 704 Out
IOPIN 656 1280 Out
IOPIN 800 1904 Out
IOPIN -96 -96 In
IOPIN -112 1056 In
IOPIN -112 1632 In
RECTANGLE Normal 1184 352 -192 -176
RECTANGLE Normal 1184 928 -192 400
RECTANGLE Normal 1184 1504 -192 976
RECTANGLE Normal 1184 2080 -192 1552
RECTANGLE Normal 1200 2096 -208 1536
SYMBOL res 96 1200 M180
WINDOW 0 36 76 Left 0
WINDOW 3 36 40 Left 0
SYMATTR InstName R18
SYMATTR Value 10K
SYMBOL res -16 1344 M0
SYMATTR InstName R22
SYMATTR Value 10K
SYMBOL res 608 -32 R90
WINDOW 0 0 56 VBottom 0
WINDOW 3 32 56 VTop 0
SYMATTR InstName R5
SYMATTR Value 100K
SYMBOL res 96 880 M180
WINDOW 0 36 76 Left 0
WINDOW 3 36 40 Left 0
SYMATTR InstName R12
SYMATTR Value 10K
SYMBOL res 816 496 R0
SYMATTR InstName R13
SYMATTR Value 1meg
SYMBOL res 656 1920 R0
SYMATTR InstName R26
SYMATTR Value 1k
SYMBOL res -16 768 M0
SYMATTR InstName R15
SYMATTR Value 10K
SYMBOL res 96 1040 R90
WINDOW 0 0 56 VBottom 0
WINDOW 3 32 56 VTop 0
SYMATTR InstName R10
SYMATTR Value .1
SYMBOL res 112 304 M180
WINDOW 0 36 76 Left 0
WINDOW 3 36 40 Left 0
SYMATTR InstName R9
SYMATTR Value 10K
SYMBOL res 96 1616 R90
WINDOW 0 0 56 VBottom 0
WINDOW 3 32 56 VTop 0
SYMATTR InstName R25
SYMATTR Value .1
SYMBOL res -16 624 R180
WINDOW 0 36 76 Left 0
WINDOW 3 36 40 Left 0
SYMATTR InstName R2
SYMATTR Value 10K
SYMBOL pnp 336 1808 M270
WINDOW 0 70 54 VLeft 0
WINDOW 3 30 -8 VLeft 0
SYMATTR InstName Q1
SYMATTR Value 2N3906
SYMBOL res 0 48 R180
WINDOW 0 36 76 Left 0
WINDOW 3 36 40 Left 0
SYMATTR InstName R4
SYMATTR Value 10K
SYMBOL res 96 1456 M180
WINDOW 0 36 76 Left 0
WINDOW 3 36 40 Left 0
SYMATTR InstName R19
SYMATTR Value 10K
SYMBOL res 272 784 R0
SYMATTR InstName R16
SYMATTR Value 100K
SYMBOL res 272 1360 R0
SYMATTR InstName R23
SYMATTR Value 100K
SYMBOL res 112 -112 R90
WINDOW 0 0 56 VBottom 0
WINDOW 3 32 56 VTop 0
SYMATTR InstName R3
SYMATTR Value .1
SYMBOL Opamps\\LT1218 496 1280 R0
SYMATTR InstName U4
SYMBOL res -16 1200 R180
WINDOW 0 36 76 Left 0
WINDOW 3 36 40 Left 0
SYMATTR InstName R17
SYMATTR Value 10K
SYMBOL current 960 1088 R0
WINDOW 3 24 144 Left 0
WINDOW 123 0 0 Left 0
WINDOW 39 24 116 Left 0
SYMATTR Value PWL(0 0 100m 1)
SYMATTR SpiceLine load
SYMATTR InstName I3
SYMBOL res 112 48 M180
WINDOW 0 36 76 Left 0
WINDOW 3 36 40 Left 0
SYMATTR InstName R8
SYMATTR Value 10K
SYMBOL Opamps\\LT1001A 512 64 R0
SYMATTR InstName U1
SYMBOL res 800 -80 R0
SYMATTR InstName R6
SYMATTR Value 1meg
SYMBOL res 96 464 R90
WINDOW 0 0 56 VBottom 0
WINDOW 3 32 56 VTop 0
SYMATTR InstName R1
SYMATTR Value .1
SYMBOL res 816 1648 R0
SYMATTR InstName R29
SYMATTR Value 1meg
SYMBOL res 96 624 M180
WINDOW 0 36 76 Left 0
WINDOW 3 36 40 Left 0
SYMATTR InstName R11
SYMATTR Value 10K
SYMBOL res 448 1840 R270
WINDOW 0 32 56 VTop 0
WINDOW 3 0 56 VBottom 0
SYMATTR InstName R27
SYMATTR Value 1k
SYMBOL res 592 544 R90
WINDOW 0 0 56 VBottom 0
WINDOW 3 32 56 VTop 0
SYMATTR InstName R14
SYMATTR Value 100K
SYMBOL res 592 1120 R90
WINDOW 0 0 56 VBottom 0
WINDOW 3 32 56 VTop 0
SYMATTR InstName R21
SYMATTR Value 100K
SYMBOL Opamps\\LT1218 496 1968 R0
SYMATTR InstName U3
SYMBOL current 960 1664 R0
WINDOW 3 24 144 Left 0
WINDOW 123 0 0 Left 0
WINDOW 39 24 116 Left 0
SYMATTR Value PWL(0 0 100m 1)
SYMATTR SpiceLine load
SYMATTR InstName I4
SYMBOL voltage 496 768 R0
SYMATTR InstName V4
SYMATTR Value -9
SYMBOL res 0 192 M0
SYMATTR InstName R7
SYMATTR Value 10K
SYMBOL res 272 1072 R0
SYMATTR InstName R24
SYMATTR Value 20Meg
SYMBOL res 96 1728 R90
WINDOW 0 0 56 VBottom 0
WINDOW 3 32 56 VTop 0
SYMATTR InstName R30
SYMATTR Value 100
SYMBOL current 960 512 R0
WINDOW 3 24 144 Left 0
WINDOW 123 0 0 Left 0
WINDOW 39 24 116 Left 0
SYMATTR Value PWL(0 0 100m 1)
SYMATTR SpiceLine load
SYMATTR InstName I2
SYMBOL Opamps\\LT1001A 496 640 R0
SYMATTR InstName U2
SYMBOL res 816 1072 R0
SYMATTR InstName R20
SYMATTR Value 1meg
SYMBOL current 944 -64 R0
WINDOW 3 24 144 Left 0
WINDOW 123 0 0 Left 0
WINDOW 39 24 116 Left 0
SYMATTR Value PWL(0 0 100m 1)
SYMATTR SpiceLine load
SYMATTR InstName I1
SYMBOL Misc\\battery -336 48 R0
WINDOW 123 0 0 Left 0
WINDOW 39 24 132 Left 0
SYMATTR SpiceLine Rser=0
SYMATTR InstName V1
SYMATTR Value 9
FLAG 128 320 0
FLAG -336 320 0
FLAG 816 64 0
FLAG 512 192 0
FLAG -16 320 0
FLAG 944 64 0
FLAG 512 64 VB
FLAG -304 -96 VB
FLAG 112 896 0
FLAG 832 640 0
FLAG 496 896 0
FLAG -32 896 0
FLAG 960 640 0
FLAG 496 640 VB
FLAG -112 480 VB
FLAG 288 896 0
FLAG 672 128 C1
FLAG 656 704 C2
FLAG 112 1472 0
FLAG 832 1216 0
FLAG -32 1472 0
FLAG 960 1216 0
FLAG 496 1216 VB
FLAG 288 1472 0
FLAG 656 1280 C3
FLAG 496 1360 0
FLAG 832 1792 0
FLAG 960 1792 0
FLAG 496 1904 VB
FLAG 800 1904 C4
FLAG 496 2048 0
FLAG 672 2048 0
FLAG -96 -96 VB
FLAG -112 1056 VB
FLAG -112 1632 VB
TEXT -248 -312 Left 0 !.tran .1
TEXT -248 -216 Left 0 !.step V1 list 9 10
TEXT 648 184 Left 0 ;VB/2 @ ILOAD=0
TEXT 632 744 Left 0 ;0V @ ILOAD=0
TEXT 128 440 Left 0 ;2. Very good common mode suppression, precision resistors required
TEXT 120 -136 Left 0 ;1. Very poor common mode suppression, precision resistors required
TEXT 632 1320 Left 0 ;28mV offset @ ILOAD=0
TEXT 128 1016 Left 0 ;3. Very good common mode suppression, precision resistors required
TEXT 744 1944 Left 0 ;0V @ ILOAD=0
TEXT 128 1592 Left 0 ;4. Excellent common mode suppression, no precision resistors required
TEXT 88 -384 Left 0 ;Current Sense Circuits 1V/1A\n \n1. Single Supply, Non-Rail-Rail-Opamp\n2. Dual Supply, Non-Rail-Rail-Opamp\n3. Single Supply, Rail-Rail-Opamp\n4. Single Supply, Rail-Rail-Opamp + PNP
TEXT 584 -408 Left 0 ;Circuits 1, 2 and 3 require very precision resistors\nResistor tolerance have to be 0.01% to 0.1% \ndepending on the required current sense\naccuracy of 1% or 10%.\n \nResistor tolerance in circuit-4 can be 1%\nif 2% accuracy is required.
TEXT -248 -280 Left 0 !.options plotwinsize=0
TEXT -152 1856 Left 0 ;* * * * *  5 star circuit