如何用51单片机做一个电容测量仪?
通过RC震荡电路得到一串脉冲信号。由于R固定,那么信号的频率就由C决定了。拿几个标准电容校准一下就好了
没有做过,要做高精度大范围的可能有点难,简单的感觉可以
1.谐振,串或并一个已知电感,引脚输出频率逐渐升高的方波,检测在那个频率出现谐振峰值,根据谐振公式计算电容值
2.引脚串电阻后频率已知的方波加在电容上,采样电压峰峰值,计算电容值
3.制作一个方波发生器如555,电容做定时电容,检测振荡频率
很早以前准备电子设计竞赛时做过这道训练题,最简单并且效果也很不错的办法(亲测误差小于3%):用NE555晶元搭一个振荡电路,具体电路图你直接网上搜,很多的,主要思路就是用单片机测555产生的方波的频率,这个频率和555电路里的电阻R和电容C有关,R是已知的,频率也是你测出来的,从而可以反推求C。
追求高精度的几点注意事项:
1、注意布局布线,尽量减少ne555电路的分布电容。
2、由于51单片机性能有限,AD能高精度读的频率的范围有限,因此如果你要测的电容范围很大,要设计一个换挡电路,即那个确定的R值需要换挡。
主看你的范围还精度要求。
1 大容量低精度低成本 nF~uF级别: 充放电
2 中等范围 pF~ nF 一般精度 :谐振 如555电路等
3 高精度测量: 集成晶元类, 如 PCAP01 AD7746等
首先需要 你测试的量程和精度。 这两个是跟方案设计息息相关的。
如果是 nF~uF级别, 可以用充放电时间的方式测量
如果是pF~uF 级别, 可以用谐振的方式
如果是fF~nF 级别,可以采用 PCAP01, 算是差分充放电 内置DSP 非常精确
还有ADI 的晶元 测量范围很窄,但是精度 aF级别。
其次测试电容是极性的还是非极性的? 感测器是否纯电容?感测器工艺怎么实现?这些都与你的设计相关。
到网上搜,这其实是一个老掉牙的diy。八年前我刚毕业时,在一个论坛做版主时,组织过一次这个diy。
当然如果你想实用,还是花200多买一个现成的吧。
推荐阅读: