mirror of
https://github.com/UtilitechAS/amsreader-firmware.git
synced 2026-01-18 01:11:58 +00:00
Solution to make zener drop pulse properly
The design in mbus_master_004.qucs-s.sch only "works" when given a constant initial 5V or 0V input. When given a pulse as input mbusminus does not properly go back to VCC as intended. This redesign provides a solution to do so.
This commit is contained in:
parent
bc5e964003
commit
6d11d6a73f
25
Electrical/Board_003/simulation/zener_test.dpl
Normal file
25
Electrical/Board_003/simulation/zener_test.dpl
Normal file
@ -0,0 +1,25 @@
|
||||
<Qucs Schematic 0.0.20>
|
||||
<Properties>
|
||||
<View=0,-90,1202,800,1,0,0>
|
||||
<Grid=10,10,0>
|
||||
<DataSet=zener_test.dat>
|
||||
<DataDisplay=zener_test.sch>
|
||||
<OpenDisplay=1>
|
||||
<Script=zener_test.m>
|
||||
<RunScript=0>
|
||||
<showFrame=0>
|
||||
<FrameText0=Title>
|
||||
<FrameText1=Drawn By:>
|
||||
<FrameText2=Date:>
|
||||
<FrameText3=Revision:>
|
||||
</Properties>
|
||||
<Symbol>
|
||||
</Symbol>
|
||||
<Components>
|
||||
</Components>
|
||||
<Wires>
|
||||
</Wires>
|
||||
<Diagrams>
|
||||
</Diagrams>
|
||||
<Paintings>
|
||||
</Paintings>
|
||||
98
Electrical/Board_003/simulation/zener_test.sch
Normal file
98
Electrical/Board_003/simulation/zener_test.sch
Normal file
@ -0,0 +1,98 @@
|
||||
<Qucs Schematic 0.0.20>
|
||||
<Properties>
|
||||
<View=0,60,1687,992,1,0,0>
|
||||
<Grid=10,10,1>
|
||||
<DataSet=zener_test.dat>
|
||||
<DataDisplay=zener_test.dpl>
|
||||
<OpenDisplay=1>
|
||||
<Script=zener_test.m>
|
||||
<RunScript=0>
|
||||
<showFrame=0>
|
||||
<FrameText0=Title>
|
||||
<FrameText1=Drawn By:>
|
||||
<FrameText2=Date:>
|
||||
<FrameText3=Revision:>
|
||||
</Properties>
|
||||
<Symbol>
|
||||
</Symbol>
|
||||
<Components>
|
||||
<Lib D1 1 520 140 -34 6 0 3 "Z-Diodes" 0 "1N5350B" 0>
|
||||
<GND * 1 40 210 0 0 0 0>
|
||||
<_BJT BC337AP_1 1 520 600 8 -26 0 0 "npn" 0 "3.94e-14" 0 "1" 0 "0.974" 0 "0.8" 0 "0.1" 0 "109.4" 0 "14.25" 0 "7.4e-15" 0 "1.3" 0 "3.16e-13" 0 "1.2" 0 "175" 0 "20.5" 0 "0" 0 "0" 0 "0.0539" 0 "0.1259" 0 "1.1" 0 "6.3e-11" 0 "0.75" 0 "0.33" 0 "1.58e-11" 0 "0.505" 0 "0.39" 0 "1" 0 "0" 0 "0.75" 0 "0" 0 "0.5" 0 "7.5e-10" 0 "0" 0 "0" 0 "0" 0 "8.5e-08" 0 "26.85" 0 "0" 0 "1" 0 "1" 0 "0" 0 "1" 0 "1" 0 "0" 0 "0" 0 "3" 0 "1.11" 0 "26.85" 0 "1" 0>
|
||||
<Vrect V2 1 40 640 18 -26 0 1 "5 V" 1 "1 ms" 1 "1 ms" 1 "1 ns" 0 "1 ns" 0 "0 ns" 0>
|
||||
<Vdc V3 1 160 670 18 -26 0 1 "5 V" 1>
|
||||
<GND * 1 160 730 0 0 0 0>
|
||||
<IProbe Pr3 1 520 370 -41 -26 0 3>
|
||||
<R R1 1 240 600 -26 15 0 0 "10k" 1 "26.85" 0 "0.0" 0 "0.0" 0 "26.85" 0 "european" 0>
|
||||
<IProbe Pr1 1 380 560 -26 16 0 0>
|
||||
<.SW SW3 1 230 720 0 59 0 0 "SW2" 1 "lin" 1 "R2" 1 "500" 1 "8.6k" 1 "20" 1 "false" 0>
|
||||
<GND * 1 520 670 0 0 0 0>
|
||||
<GND * 1 40 730 0 0 0 0>
|
||||
<_BJT BC337AP_Q2 1 400 250 8 -26 0 0 "npn" 0 "3.94e-14" 0 "1" 0 "0.974" 0 "0.8" 0 "0.1" 0 "109.4" 0 "14.25" 0 "7.4e-15" 0 "1.3" 0 "3.16e-13" 0 "1.2" 0 "175" 0 "20.5" 0 "0" 0 "0" 0 "0.0539" 0 "0.1259" 0 "1.1" 0 "6.3e-11" 0 "0.75" 0 "0.33" 0 "1.58e-11" 0 "0.505" 0 "0.39" 0 "1" 0 "0" 0 "0.75" 0 "0" 0 "0.5" 0 "7.5e-10" 0 "0" 0 "0" 0 "0" 0 "8.5e-08" 0 "26.85" 0 "0" 0 "1" 0 "1" 0 "0" 0 "1" 0 "1" 0 "0" 0 "0" 0 "3" 0 "1.11" 0 "26.85" 0 "1" 0>
|
||||
<R R4 1 230 170 15 -26 0 1 "10k" 1 "26.85" 0 "0.0" 0 "0.0" 0 "26.85" 0 "european" 0>
|
||||
<R R5 1 400 160 15 -26 0 1 "10k" 1 "26.85" 0 "0.0" 0 "0.0" 0 "26.85" 0 "european" 0>
|
||||
<Vdc V1 1 40 140 18 -26 0 1 "42 V" 1>
|
||||
<.TR TR1 1 870 90 0 59 0 0 "lin" 1 "0" 1 "5 ms" 1 "101" 0 "Trapezoidal" 0 "2" 0 "1 ns" 0 "1e-16" 0 "150" 0 "0.001" 0 "1 pA" 0 "1 uV" 0 "26.85" 0 "1e-3" 0 "1e-6" 0 "1" 0 "CroutLU" 0 "no" 0 "yes" 0 "0" 0>
|
||||
<.SW SW1 1 620 370 0 59 0 0 "DC1" 1 "lin" 1 "R1" 1 "100 Ohm" 1 "100kOhm" 1 "1000" 1 "false" 0>
|
||||
<.DC DC1 1 620 300 0 37 0 0 "26.85" 0 "0.001" 0 "1 pA" 0 "1 uV" 0 "no" 0 "150" 0 "no" 0 "none" 0 "CroutLU" 0>
|
||||
<IProbe Pr4 1 630 210 -41 -26 0 3>
|
||||
<.SW SW2 1 370 720 0 59 0 0 "DC1" 1 "lin" 1 "V1" 1 "12V" 1 "40V" 1 "29" 1 "false" 0>
|
||||
<R_SPICE R2 1 520 510 15 -26 0 1 "8.6k" 1 "" 0 "" 0 "" 0 "" 0>
|
||||
<IProbe Pr2 1 120 490 16 -26 0 1>
|
||||
<GND * 1 230 500 0 0 0 0>
|
||||
<IProbe Pr5 1 230 440 -41 -26 0 3>
|
||||
<_BJT BC337AP_Q1 1 230 340 8 -26 0 0 "npn" 0 "3.94e-14" 0 "1" 0 "0.974" 0 "0.8" 0 "0.1" 0 "109.4" 0 "14.25" 0 "7.4e-15" 0 "1.3" 0 "3.16e-13" 0 "1.2" 0 "175" 0 "20.5" 0 "0" 0 "0" 0 "0.0539" 0 "0.1259" 0 "1.1" 0 "6.3e-11" 0 "0.75" 0 "0.33" 0 "1.58e-11" 0 "0.505" 0 "0.39" 0 "1" 0 "0" 0 "0.75" 0 "0" 0 "0.5" 0 "7.5e-10" 0 "0" 0 "0" 0 "0" 0 "8.5e-08" 0 "26.85" 0 "0" 0 "1" 0 "1" 0 "0" 0 "1" 0 "1" 0 "0" 0 "0" 0 "3" 0 "1.11" 0 "26.85" 0 "1" 0>
|
||||
<R R3 1 150 340 -26 -53 0 2 "10k" 1 "26.85" 0 "0.0" 0 "0.0" 0 "26.85" 0 "european" 0>
|
||||
</Components>
|
||||
<Wires>
|
||||
<40 110 230 110 "" 0 0 0 "">
|
||||
<40 170 40 210 "" 0 0 0 "">
|
||||
<400 110 520 110 "" 0 0 0 "">
|
||||
<400 110 400 130 "" 0 0 0 "">
|
||||
<230 110 400 110 "" 0 0 0 "">
|
||||
<230 110 230 140 "" 0 0 0 "">
|
||||
<230 200 230 250 "" 0 0 0 "">
|
||||
<400 190 400 220 "" 0 0 0 "">
|
||||
<400 280 520 280 "" 0 0 0 "">
|
||||
<40 600 40 610 "" 0 0 0 "">
|
||||
<160 600 160 640 "" 0 0 0 "">
|
||||
<40 600 120 600 "Vin" 40 560 35 "">
|
||||
<120 600 160 600 "" 0 0 0 "">
|
||||
<520 280 520 340 "" 0 0 0 "">
|
||||
<160 600 210 600 "" 0 0 0 "">
|
||||
<410 600 490 600 "" 0 0 0 "">
|
||||
<410 560 410 600 "" 0 0 0 "">
|
||||
<270 600 350 600 "" 0 0 0 "">
|
||||
<350 560 350 600 "" 0 0 0 "">
|
||||
<520 630 520 670 "" 0 0 0 "">
|
||||
<520 240 520 280 "out" 550 270 21 "">
|
||||
<520 240 630 240 "" 0 0 0 "">
|
||||
<520 170 630 170 "" 0 0 0 "">
|
||||
<630 170 630 180 "" 0 0 0 "">
|
||||
<520 400 520 480 "" 0 0 0 "">
|
||||
<520 540 520 570 "" 0 0 0 "">
|
||||
<120 520 120 600 "" 0 0 0 "">
|
||||
<230 470 230 500 "" 0 0 0 "">
|
||||
<230 370 230 410 "" 0 0 0 "">
|
||||
<230 250 230 310 "coll" 170 260 31 "">
|
||||
<230 250 370 250 "" 0 0 0 "">
|
||||
<120 340 120 460 "" 0 0 0 "">
|
||||
<180 340 200 340 "" 0 0 0 "">
|
||||
<40 670 40 730 "" 0 0 0 "">
|
||||
</Wires>
|
||||
<Diagrams>
|
||||
<Rect 526 916 495 202 3 #c0c0c0 1 00 1 12 2 40 0 0 0.002 0.001 1 -1 0.5 1 315 0 225 "" "" "">
|
||||
<"ngspice/i(pr4)" #0000ff 0 3 0 0 0>
|
||||
</Rect>
|
||||
<Rect 870 549 555 139 3 #c0c0c0 1 00 1 0 0.0005 0.005 1 -3.47585 10 40 1 -1 0.5 1 315 0 225 "" "" "">
|
||||
<"ngspice/tran.v(coll)" #ff0000 0 3 0 0 0>
|
||||
</Rect>
|
||||
<Rect 870 377 557 147 3 #c0c0c0 1 00 1 0 0.0005 0.005 1 -3.47585 10 40 1 -1 0.5 1 315 0 225 "" "" "">
|
||||
<"ngspice/tran.v(vin)" #0000ff 0 3 0 0 0>
|
||||
<"ngspice/tran.v(out)" #ff00ff 0 3 0 0 0>
|
||||
</Rect>
|
||||
</Diagrams>
|
||||
<Paintings>
|
||||
<Text 1050 720 12 #000000 0 "With a constant 5V input (e.g. V3 connected):\n\nFor R2 values up till 8.6k, D1 is loaded with 1mA or more for all\nV1 voltages over 21V (the minimum M-Bus bus voltage).\n\nThus, assuming the zener diode operates down to 1mA,\n8.6kOhm is the highest usable value for R2.\nIf the diode needs mode current than 1mA decrease\nR2 correspondingly. If the power supply is well above 21V\nthen 10kOhm is fine.\n">
|
||||
<Text 1030 80 12 #000000 0 "With a 0/5V pulse input (e.g. V2 connected):\n\nQ1 inverts the input and shifts the voltage levels, e.g. 0V in (base)\ngives Vcc out (collector), and 5V in gives 0V out.\n\nR5 is a pullup resistor turned on/off by Q2. Without R5 then\nVout will not properly transition back to VCC.">
|
||||
</Paintings>
|
||||
BIN
Electrical/Board_003/simulation/zener_test_v2.png
Normal file
BIN
Electrical/Board_003/simulation/zener_test_v2.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 160 KiB |
BIN
Electrical/Board_003/simulation/zener_test_v3.png
Normal file
BIN
Electrical/Board_003/simulation/zener_test_v3.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 196 KiB |
Loading…
x
Reference in New Issue
Block a user