矿石收音机论坛

 找回密码
 加入会员

QQ登录

只需一步,快速开始

搜索
楼主: yjmwxwx

想做个测电容的表但是又失败了

[复制链接]
     
发表于 2019-9-5 17:53:29 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

     
 楼主| 发表于 2019-9-5 22:54:51 | 显示全部楼层
bis 发表于 2019-9-5 17:53
http://www.crystalradio.cn/forum.php?mod=viewthread&tid=78426

谢谢了, 这个我也搜索过,看不懂他的电路,我现在想尽量用数字的方式处理,今天写了个DFT的程序,计算后发现数据不对,1M采样率,采100个点,计算第1个点,结果第1个点的数很小,第2个点数据很大,搞不懂哪里出的问题,不知道频率不准还是采样不准或者DFT程序有问题,正相反相大小也不一样,程序把正反和并成正的可能也有问题,本来以为很简单,实际用起来很多问题,再慢慢瞎搞搞。
回复 支持 反对

使用道具 举报

     
 楼主| 发表于 2019-9-6 12:02:15 | 显示全部楼层
继续瞎搞,DFT计算实部虚部,LCD1602左上显示上臂实部,左下显示上臂虚部,右上显示下臂实部,右下显示下臂虚部,第二行2表示量程在1K电阻,没开自动量程,显示的数没平均,跳动比较大,也没有补偿校准,先验证下算法。

        截图_2019-09-06_11-42-41.png

计算过程

截图_2019-09-06_11-32-51.png

截图_2019-09-06_11-33-13.png

截图_2019-09-06_11-34-58.png

截图_2019-09-06_11-35-15.png

截图_2019-09-06_11-36-39.png

网页版计算器
https://www.hackmath.net/en/calculator/complex-number?input=%E2%88%92335.531135531%E2%88%924363.36996337i&submit=Calculate

截图_2019-09-06_11-45-14.png


http://hyperphysics.phy-astr.gsu.edu/hbase/electric/accap.html#c2
截图_2019-09-06_11-45-51.png

搞的DFT程序不知道有没有问题,没测试,正电压采集一个表,负电压采集一个表,读负电压表时候取反。

电脑上程序生成一个COS和SI的表,不知道这程序有没有问题,结果Q15定点数。

N=点数
M= 生成第几个点

  1. #include <stdio.h>
  2. #include <math.h>
  3. #include <stdlib.h>
  4. void main() {
  5.   float m,pi,sr,si;

  6.   int rr,ii, n,i;
  7.   n=100;
  8.   m=2;
  9.   pi=3.141592;
  10.         for(i=0;i<n;i++){
  11.            sr=cos(2*pi*i*m/n);
  12.            si=-sin(2*pi*i*m/n);
  13.            rr=sr*0x8000;
  14.            ii=si*0x8000;
  15.            printf("0x%04X,0x%04X,",rr,ii);
  16. }
  17.         printf("\n");
  18. }

复制代码


单片机DFT函数,这个没测试不知道有没有问题,其实就是乘法和加法

  1. __DFT_ji_suan:
  2.         @入口R0=正相表,R1=反相表
  3.         @出口 R0= 实部,R1=虚部
  4.         push {r2-r7,lr}
  5.         mov r4, r8
  6.         mov r5, r9
  7.         mov r6, r10
  8.         push {r4-r6}
  9.         movs r6, # 0
  10.         mov r8, r6
  11.         mov r9, r6
  12.         movs r2, # 200
  13.         mov r10, r2
  14.         mov r2, r6
  15. __ji_suan_dft_xun_huan:
  16.         ldrh r3, [r0, r2]
  17.         ldrh r4, [r1, r2]
  18.         cmp r3, # 0
  19.         beq __qu_fan_r4
  20.         b __ji_suan_dft
  21. __qu_fan_r4:
  22.         mvns r4, r4
  23.         adds r4, r4, # 1
  24.         mov r3, r4
  25. __ji_suan_dft:
  26.         ldr r5, = xuan_zhuan_yin_zi
  27.         ldr r7, [r5, r6]
  28.         adds r6, r6, # 4
  29.         muls r7, r7, r3         @ 实部
  30.         asrs r7, r7, # 15
  31.         mov r4, r8
  32.         adds r4, r4, r7
  33.         mov r8, r4
  34.         ldr r7, [r5, r6]
  35.         adds r6, r6, # 4
  36.         muls r7, r7, r3         @ 虚部
  37.         asrs r7, r7, # 15
  38.         mvns r7, r7
  39.         adds r7, r7, # 1
  40.         mov r4, r9
  41.         adds r4, r4, r7
  42.         mov r9, r4
  43.         adds r2, r2, # 2
  44.         cmp r2, r10
  45.         bne __ji_suan_dft_xun_huan
  46.         mov r0, r8
  47.         mov r1, r9
  48.         pop {r4-r6}
  49.         mov r8, r4
  50.         mov r9, r5
  51.         mov r10, r6
  52.         pop {r2-r7,pc}
复制代码



单片机的程序
1.zip (9.97 KB, 下载次数: 58)










截图_2019-09-06_11-43-02.png
回复 支持 反对

使用道具 举报

     
 楼主| 发表于 2019-9-6 16:23:40 | 显示全部楼层
正反相搞反了,下臂电压也搞反了,改了下程序把这两个都改过来。

1K电阻档测1K电阻
截图_2019-09-06_16-21-09.png

测333电容
截图_2019-09-06_16-15-25.png

测332电容
截图_2019-09-06_16-15-48.png

程序

2.zip (9.96 KB, 下载次数: 54)




回复 支持 反对

使用道具 举报

     
发表于 2019-9-7 00:28:43 | 显示全部楼层
这个也算是有了雏形 ,第一代产品。二代三代,已出,这就是收藏版的

评分

1

查看全部评分

回复 支持 反对

使用道具 举报

     
 楼主| 发表于 2019-9-7 19:44:02 | 显示全部楼层
本帖最后由 yjmwxwx 于 2019-9-7 19:45 编辑

把两路ADC的104电容改成103电容,104电容时候虚部电压一直缓慢降低,改后好了。
算法好像没问题,现在量程太小,只在平衡点附近准确,这种比率桥不知道怎么改电路。

这算法读数跳动有些大,电路没放大也跳,不过好像比第一种方法的检波跳的要小。

https://v.youku.com/v_show/id_XNDM1MjgxMjkzMg==.html?spm=a2h3j.8428770.3416059.1

电路实在是不懂,不知道怎么改,信号小的臂要放大,信号大的不能放大,还要来回切换。

为啥测量电阻下臂实部是正数,测电容是负数? 下图量程100欧档

截图_2019-09-07_19-10-23.png

没摸过LCR表想要造,看样子确实不行啊。

又瞎改下程序,加入滤波缩小读数。
3.zip (9.79 KB, 下载次数: 54)
回复 支持 反对

使用道具 举报

     
发表于 2019-9-7 20:29:12 | 显示全部楼层
如果给用 Arduino 的话,直接底板就可以测电容。

我在 arduino.cn 发过这个帖子:https://www.arduino.cn/thread-83505-1-1.html

原理是 电容分压 + RC充电

评分

1

查看全部评分

回复 支持 反对

使用道具 举报

     
发表于 2019-9-7 22:49:11 | 显示全部楼层
很佩服楼主,顶一顶,要坚持下去

评分

1

查看全部评分

回复 支持 反对

使用道具 举报

     
 楼主| 发表于 2019-9-8 06:37:03 | 显示全部楼层
t3486784401 发表于 2019-9-7 20:29
如果给用 Arduino 的话,直接底板就可以测电容。

我在 arduino.cn 发过这个帖子:https://www.arduino.c ...

你这个做的很好,学习下,我以前也想做过测电容的结果失败了。
回复 支持 反对

使用道具 举报

     
 楼主| 发表于 2019-9-8 06:40:57 | 显示全部楼层
greatt1n 发表于 2019-9-7 22:49
很佩服楼主,顶一顶,要坚持下去

恩 这次一定要做个能用的表。
回复 支持 反对

使用道具 举报

     
 楼主| 发表于 2019-9-8 18:25:08 | 显示全部楼层
本帖最后由 yjmwxwx 于 2019-9-8 18:26 编辑

改了下电路,胡乱加上个放大
lcr.png



程序

4.zip (10.07 KB, 下载次数: 62)

档位不可能搞太多吧,随便测试了下100K档,只把下臂放大44倍,好像倍数大了,两个夹子靠近也变化很大,这个到底多少倍合适??

夹子不靠近
截图_2019-09-08_17-36-31.png

夹子靠近
截图_2019-09-08_17-36-50.png

测试夹子靠近视频

https://v.youku.com/v_show/id_XNDM1MzgwOTE0OA==.html?spm=a2h3j.8428770.3416059.1

回复 支持 反对

使用道具 举报

     
 楼主| 发表于 2019-9-9 10:59:49 | 显示全部楼层
lcr.png

电路大体就是这样了,程序不知道怎么写,也不知道这电路到底行不行。
回复 支持 反对

使用道具 举报

     
 楼主| 发表于 2019-9-9 14:10:01 | 显示全部楼层
yjmwxwx 发表于 2019-9-9 10:59
电路大体就是这样了,程序不知道怎么写,也不知道这电路到底行不行。

lcr.png

cd4052电源引脚画错了
回复 支持 反对

使用道具 举报

     
发表于 2019-9-9 14:35:10 | 显示全部楼层
再接再厉,,,加油我看好你,,因为我很想看看方法

评分

1

查看全部评分

回复 支持 反对

使用道具 举报

     
 楼主| 发表于 2019-9-11 17:29:47 | 显示全部楼层
本帖最后由 yjmwxwx 于 2019-9-11 18:31 编辑

放大改好了,上次那个电路根本不能用,有错误论坛的高手也不给指出来,都在看我笑话。

八月十五要收花生了,暂时没功夫玩小制作了。

lcr.png


程序两个按键控制上臂放大倍数

5.zip (10.64 KB, 下载次数: 56)
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 加入会员

本版积分规则

小黑屋|手机版|矿石收音机 ( 蒙ICP备05000029号-1 )

蒙公网安备 15040402000005号

GMT+8, 2025-4-29 19:50

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表