PC817自补偿线性光耦电路
01 光耦补偿
一、前言
这是两个光耦, 型号为 PC817。 之前通过 DH1766直流电源测量过它的输入电流和输出电流的关系。 这是一个曲线。 下面根据网络上的介绍, 利用两个PC817 进行线性矫正。
二、设计电路
这是实验电路原理图。 两个光耦的输入串联在一起, 它们的输入电流是相同的。 利用LMV321进行驱动。 输入电压, 施加在运放的正向输入端, 经过反馈之后, 它的负输入端与正输入端的电压是相同的。 流过R1 的电流, 是由第一个光耦输出电流进行反馈的。 光耦的输入电流经过反馈, 大小会满足反馈输出电流能够补偿R1 上的电流。 如果两个光耦是相同的, 那么第二个光耦输出电流应该与第一个光耦相同。 这样, 输入输出之间就满足线性关系。 设计电路板, 利用一分钟制版方法, 得到测试电路板。 电路板制作的非常完美。 下面焊接进行测试。
▲ 图1.2.1 测试电路原理图
AD\Test\2024\PC817Complemant.SchDoc
▲ 图1.2.2 测试电路板
焊接电路板。 对其进行清洗。 下面进行测试。
三、测试结果
直到加电初步检查的时候, 才发现电路原理图出错了。 电路反馈不是负反馈, 而是正反馈。 需要将原来的电路进行修改。 应用运放的输出推动光耦输入。 这样才能够形成负反馈。 在电路上, 需要将原来的这两个连线都断开。 将U2的输入连接到运放输出。 将U3的LED接到地线上。
对电路进行改造之后, 下面进行测试。 先输入一个2V的电压, 可以测量电路输出为 2.365V。 下面利用 可编程电源DH1766 提供 0V 到5V的电压。 测量对应的输出。 可以看到在 2.5V之前, 输入输出之间的线性关系还比较好。 超过3V之后, 输入输出关系出现了比较大的非线性。 因此, 应用这种自补偿光耦时, 电压范围应该限制在 2.5V之内。
▲ 图1.3.1 输入电压与输出电压
vdim=[0.0000,0.0505,0.1010,0.1515,0.2020,0.2525,0.3030,0.3535,0.4040,0.4545,0.5051,0.5556,0.6061,0.6566,0.7071,0.7576,0.8081,0.8586,0.9091,0.9596,1.0101,1.0606,1.1111,1.1616,1.2121,1.2626,1.3131,1.3636,1.4141,1.4646,1.5152,1.5657,1.6162,1.6667,1.7172,1.7677,1.8182,1.8687,1.9192,1.9697,2.0202,2.0707,2.1212,2.1717,2.2222,2.2727,2.3232,2.3737,2.4242,2.4747,2.5253,2.5758,2.6263,2.6768,2.7273,2.7778,2.8283,2.8788,2.9293,2.9798,3.0303,3.0808,3.1313,3.1818,3.2323,3.2828,3.3333,3.3838,3.4343,3.4848,3.5354,3.5859,3.6364,3.6869,3.7374,3.7879,3.8384,3.8889,3.9394,3.9899,4.0404,4.0909,4.1414,4.1919,4.2424,4.2929,4.3434,4.3939,4.4444,4.4949,4.5455,4.5960,4.6465,4.6970,4.7475,4.7980,4.8485,4.8990,4.9495,5.0000]
odim=[0.0000,0.0406,0.0851,0.1350,0.1890,0.2453,0.3041,0.3649,0.4274,0.4913,0.5559,0.6214,0.6876,0.7521,0.8185,0.8845,0.9506,1.0177,1.0819,1.1469,1.2111,1.2752,1.3386,1.4017,1.4629,1.5249,1.5861,1.6467,1.7074,1.7669,1.8259,1.8841,1.9417,1.9982,2.0553,2.1106,2.1662,2.2213,2.2754,2.3298,2.3837,2.4365,2.4887,2.5409,2.5925,2.6433,2.6930,2.7429,2.7925,2.8415,2.8895,2.9377,2.9848,3.0315,3.0784,3.1242,3.1696,3.2150,3.2597,3.3072,3.3585,3.4132,3.4733,3.5376,3.6067,3.6794,3.7560,3.8361,3.9184,3.9968,4.0675,4.1268,4.1786,4.2240,4.2651,4.3032,4.3391,4.3728,4.4047,4.4352,4.4639,4.4923,4.5198,4.5473,4.5787,4.6268,4.6958,4.7652,4.7876,4.7699,4.7625,4.7612,4.7605,4.7604,4.7605,4.7606,4.7609,4.7608,4.7605,4.7608]
#!/usr/local/bin/python
# -*- coding: gbk -*-
#============================================================
# TEST1.PY -- by Dr. ZhuoQing 2024-01-30
#
# Note:
#============================================================
from headm import *
from tsmodule.tsvisa import *
from tsmodule.tsstm32 import *
vdim = linspace(0, 5, 100)
odim = []
for v in vdim:
dh1766volt1(v)
time.sleep(2)
meter = meterval()
o = meter[0]
printff(v, o)
odim.append(o)
tspsave('measure', vdim=vdim, odim=odim)
plt.plot(vdim, odim, lw=3)
plt.xlabel("Input(V)")
plt.ylabel("Output(V)")
plt.grid(True)
plt.tight_layout()
plt.show()
#------------------------------------------------------------
# END OF FILE : TEST1.PY
#============================================================
※ 结 论 ※
本文对两个PC817光耦进行自补偿, 实现线性传输进行了测试。 发现这与已有的线性光耦的性能还是相差很多。 在输入输出信号小于 2.5V时, 线性还比较不错。 但在更大的范围内, 会出现比较明显的非线性。 所以这种方法只适合一些要求不高的场合。
■ 相关文献链接:
● 相关图表链接: