STPM01的SPI接口是一个两线口,其数据输入输出是同一个管脚,与标准三线SPI口不同。我们采用了图3所示方法连接两芯片。
作为SPI总线主机,LPC9401输出时钟信号,STPM01依照SCLNLC的时钟信号进行通信。为提高抗干扰性能,在连线中串联一个10~100Ω 电阻,该电阻与芯片管脚输入电容构成低通滤波器,滤除连线上的干扰。LPC9401读取STPM01数据时,使用片上的SPI模块。而向STPM01写数据时,不使用SPI总线控制模块,而采用软件模拟SPI时序输出数据。这样设计是考虑到电表运行时,LPC9401很少向STPM01写数据,而读数据非常频繁。这种设计充分利用了芯片的资源,提高了程序运行效率。
取样电路设计
电压取样采用电阻分压,考虑到贴片电阻的耐压有限,选用4只200kΩ电阻做分压器。STPM01电压通道最大输入差分电压为±0.3V,对于50Hz交流电,对应有效值为0.21VRMS,输入信号不能大于此最大值,否则会出现削峰。考虑到余量,对于220V额定电压,我们取0.16VRMS,则
取样电阻=200×4×0.16/220=581Ω,我们选560Ω作为取样电阻。
相电流传感器我们采用互感器,变比为5,000:1。该通道增益设置为8,则输入最大信号为0.105VRMS,考虑到一定余量,在40A时,输入信号选择在0.08VRMS左右,则互感器负载电阻为0.08/40×5,000=10Ω。
零线电流通道我们采用锰铜分流器,分流器阻值取250μΩ。阻值不能取得过大或过小,如果选得过小,则在小电流时取样信号太微弱,导致误差增大,容易超差。如果选得过大,则大电流时分流器发热过大,造成误差不稳定。
图3:SPI接口示意图。
对于250μΩ分流器,在40A时其两端电压信号为250×40=10,000μV,即10mVRMS。取样信号非常小,所以该通道增益应设置为最大即32倍,此时信号输入最大幅度为26.25mVRMS。实际最大输入信号小于允许的最大输入信号,分流器阻值选择合理。