具有一定驱动能力的波形生成方法

                                                               具有一定驱动能力的波形生成方法

我们实际电子产品验证测试时经常需要特定形状的波形,这些波形除了频率需要满足要求外,在驱动能力上也有一定要求,否则无法满足驱动目标产品的目的。

任意波形发生器是最常见的一种信号源,虽然波形发生器在波形生成上极具优势,但是一般的波形发生器都没有什么驱动能力,这就需要我们对这些信号进行放大增强以满足需求。

笔者遇到一个pdlc(调光膜)的测试需求,需要对pdlc提供60hz最峰峰值高达到100v左右的平顶的正弦波。

如果是50hz正弦波,我们可以把市电调压使用,但是60hz就需要自行产生该信号。

自行设计电路实现上述目标当然可以,但是考虑到仅临时测试而且波形还会有变动需求,故选择用波形发生器来形成波形。

我使用的波形发生器最大峰峰值20v,且没有什么驱动能力,所以对信号放大是一定要做的。现有的信号放大器可以将信号扩展两倍,即40v峰峰值10瓦,这个电压范围还是无法覆盖pdlc的调整电压范围,进一步升压我采用60hz的变压器,只是变压器进行反接进行二次升压(试验使用,合理性不追究),进而实现电压的进一步提升。因为测试的是60hz准正弦波,所以系统的线性区间应该要主要集中在这个范围即可。

我用的波形发生器如下图,型号jds6600:

运行界面如下:

因为我们要产生的波形不属于标准的波形库里面,需要自己生成,在配套的信号发生器软件里面,自定义波形是用鼠标画图,这个比较难操作出完全想要的波形,转而用程序生成波形数据导入到信号发生器软件里面。我推测这个信号发生器的加载和存储的文件就是2018个点的归一化的AD值,所以可以用octave 直接生成类似的波形文件并载入到波形发生器里面。下面是我用octave 编写的一个生成削顶正弦波的代码:

function [wave_data]=gensin(cut_peak,rate)

  %input parameter:

  % cut_peak:是否需要消顶

  % rate: 如果需要,消除比例(按照最大值是1,大于rate的值会全部设置为rate)

  x=0:2*pi/2047:2*pi;

  y=sin(x);

 if(cut_peak)

  for i=1:length(y)

    if(y(i)>abs(rate))

        y(i)=abs(rate);

    elseif(y(i)<-1*abs(rate))

        y(i)=-1*abs(rate);

   end

  end

  plot(y);

  wave_data=sprintf('%0.6f\n',y);

else

plot(y);

wave_data=sprintf('%0.6f\n',y);

end

endfunction

 

wave_data=gensin(1,55/68.)

save   2.txt  wave_data

生成的波形在octave查看如下图:

然后用notepad编辑2.txt,移除前面几个头和最后面几行非数据行将数据导入波形发生器,生成的波形如下图:

 

功率放大:

Dpa1698   10w    最大峰峰值40v,使用主芯片是lm1875l 本质上应该就是一块音频放大电路

 

变压器:输入110v 60hz, 输出12v 20w

反接接上变压器后的输出如下图,峰峰值将近80v:

 

下面是测量的几组升压情况实测表:

输入(信号源)

功放

变压器输出

5

10

80v

4

8

64v

3

6

49v

2

4

32v

1

2

16v

从图上可以看出,系统信号的放大约为16倍

经实际验证该输出电压是可以让pdlc膜片工作的。

 

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值