去年夏天开始学做LCR表,断断续续到年底实现了单个频率测电容电感,后来玩别的就放下了,程序里面很多很多错误的地方,今年8月又重新捡起来改了改,改成测量频率100HZ、1KHZ、10KHZ、100KHZ,档位10欧、100欧、1K欧、10K欧、100K欧、1兆欧,增加幅度和相位矫正,本来想加上开路短路匹配校准,后来家里修房子和收玉米打断了,现在懒的加了。
电路仿许老师电桥,单片机改用STM32F030F4P6,去掉部分放大和检相部分,程序自己写的,简单1档放大,100KHZ由于振幅小外加自平衡运放相移动精度比前面的差,程序非常简单,就是ADC采集两个电压合并成正负电压的正弦波,10倍采样率采集256点DFT算实部虚部,就是档位比较多计算显示有点麻烦,BUG超级多,自动档位只采电压没做平均滤波有的档位来回跳,人懒就简单加了个简单换档延时又切换档位速度慢,总之缺点很多,测量需要切换上下臂还要切换ADC通道耽误很多时间,100HZ档位测量速度非常慢。。
1602第一行第一个数是档位,0=10欧、1=100欧、2=1K欧、3=10K欧、4=100K欧、5=1M欧,第二行第一个数表示频率,0=100HZ、1=1KHZ、2=10KHZ、3=100KHZ,第一行第二个数据显示的是串联阻抗,第二行第二个数据显示的电感和电容。一共三个按键,按键1是显示串联电容,按键1和按键2一块按是串联电感,按键3频率加循环,三个按键一块按进入相位和幅度校准模式,一共24组校准参数每组三个数据生成一个查询表,从10欧姆开始校100HZ-100KHZ,每个频率需要校准相位和幅度两个参数,按2和3键加减角度,最好用角度确定的电阻或者电容校,我这就用一般电阻调到0度,按1键保存进入幅度矫正,电阻校准到1000就行,按1键进入下一个频率。
|