• 回复
  • 收藏
  • 点赞
  • 分享
  • 发新帖

当A/D将模拟量转化成数字量的时候,需要计算平均值吗???

当A/D将模拟量转化成数字量的时候,对于直流输入需要计算平均值吗???
转化完成后,不就可以和自己设置的标准值比较了吗???
全部回复(95)
正序查看
倒序查看
taolei
LV.4
2
2004-09-08 08:43
计算平均值可以抗干扰,防止由于一次采样不准,造成错误动作.
0
回复
great
LV.4
3
2004-09-08 10:29
对量化后的数值进行均值处理只是抗干扰的一种方法,也是一般应用的,不过这得根据你的实际系统来考虑,因为增加采样值就会加大对A/D转换器的速度要求,增加成本,在一些功率变换器的控制中,实际上不进行均值处理对你的系统性能影响不大,除非你是做高精密电源.
0
回复
taolei
LV.4
4
2004-09-08 10:41
@great
对量化后的数值进行均值处理只是抗干扰的一种方法,也是一般应用的,不过这得根据你的实际系统来考虑,因为增加采样值就会加大对A/D转换器的速度要求,增加成本,在一些功率变换器的控制中,实际上不进行均值处理对你的系统性能影响不大,除非你是做高精密电源.
由于AD采样不可比避免的会受到外部的干扰,对于一个闭环系统反馈通道的精度决定了系统的精度.同时在电源系统中,过流保护如果仅仅依靠一次的采样值进行判断可能会出现误动作.欢迎继续探讨.
0
回复
2004-09-08 10:59
@taolei
由于AD采样不可比避免的会受到外部的干扰,对于一个闭环系统反馈通道的精度决定了系统的精度.同时在电源系统中,过流保护如果仅仅依靠一次的采样值进行判断可能会出现误动作.欢迎继续探讨.
建议采样十次(精度不高可以取五次),去掉最大和最小,然后计算平均值,
0
回复
2004-09-09 08:39
@一个好人
建议采样十次(精度不高可以取五次),去掉最大和最小,然后计算平均值,
电流的采样不是通过转化成电压来反映的吗????如果是做精度到0.1V的采样,需要计算平均值吗?那计算平均值的方式是什么样的,是将量化的数值进行什么方式的操作????有什么标准吗???我以前没做过,现在不理解啊!!!
0
回复
2004-09-09 16:52
@chengkai422
电流的采样不是通过转化成电压来反映的吗????如果是做精度到0.1V的采样,需要计算平均值吗?那计算平均值的方式是什么样的,是将量化的数值进行什么方式的操作????有什么标准吗???我以前没做过,现在不理解啊!!!
这个很简单啊,将每次采样的结果都存在A1-A10这10个寄存器中,
然后进行比较,去掉最大的,和最小的,将其它的相加,再除以8就OK了
0
回复
2004-09-10 10:28
@一个好人
这个很简单啊,将每次采样的结果都存在A1-A10这10个寄存器中,然后进行比较,去掉最大的,和最小的,将其它的相加,再除以8就OK了
就是将量化后的数值取10次,然后去掉一大一小,除以8,就可以了????我没有想到会这么简单啊!谢谢dx了!
0
回复
2004-09-10 11:23
@chengkai422
就是将量化后的数值取10次,然后去掉一大一小,除以8,就可以了????我没有想到会这么简单啊!谢谢dx了!
不用了,刚出来时,我做智能充,那时带A/D口的单片机特贵,不象现在三块多钱就能搞定,我只好用LM324做A/D口,精度不高,又怕单片机检测失误,就一直采用这个办法,很不错啊!!!
0
回复
great
LV.4
10
2004-09-10 11:29
@taolei
由于AD采样不可比避免的会受到外部的干扰,对于一个闭环系统反馈通道的精度决定了系统的精度.同时在电源系统中,过流保护如果仅仅依靠一次的采样值进行判断可能会出现误动作.欢迎继续探讨.
那也得看情况吧,在电源系统中,有的信号根本不可能去采样10次,比如开关电流波形,那你的A/D得多快呀,也就不会出现像单周期单点采样的采样算法了,当然像输出电压这类低频信号一周期可以采样多次.
0
回复
2004-09-10 11:34
@great
那也得看情况吧,在电源系统中,有的信号根本不可能去采样10次,比如开关电流波形,那你的A/D得多快呀,也就不会出现像单周期单点采样的采样算法了,当然像输出电压这类低频信号一周期可以采样多次.
jette ,你说得很有道理,特别是关系到相位检测,那更没办法,所以
要加外围专用IC,用单片机的可靠性不是很强!!!
0
回复
great
LV.4
12
2004-09-10 12:52
@一个好人
jette,你说得很有道理,特别是关系到相位检测,那更没办法,所以要加外围专用IC,用单片机的可靠性不是很强!!!
我比较喜欢的是DSP+FPGA这种控制平台,类似于PWM/相位检测,死区调节,保护等这些功能都可以来实现,而且如果用FPGA或CPLD来实现,频率也可一做高.
0
回复
taolei
LV.4
13
2004-09-10 13:41
@great
那也得看情况吧,在电源系统中,有的信号根本不可能去采样10次,比如开关电流波形,那你的A/D得多快呀,也就不会出现像单周期单点采样的采样算法了,当然像输出电压这类低频信号一周期可以采样多次.
采样的次数多一些最后处理的值,接近于实际的值一些.具体什么样的值要求采样次数多一些需要根据具体的情况而定.
0
回复
chengkai422
LV.6
14
2004-09-10 15:48
@一个好人
不用了,刚出来时,我做智能充,那时带A/D口的单片机特贵,不象现在三块多钱就能搞定,我只好用LM324做A/D口,精度不高,又怕单片机检测失误,就一直采用这个办法,很不错啊!!!
做dc的采样应该是够了,我就是不能用LM324啊,要用mcu完成所有的电压比较,做uvp,ovp及均充和浮充的控制!有没有简单一点的求平均值程序,我现在是用别人的平均值求法,觉得太长了,而且不是很懂,能不能教小虾米一下!
0
回复
great
LV.4
15
2004-09-10 17:35
@taolei
采样的次数多一些最后处理的值,接近于实际的值一些.具体什么样的值要求采样次数多一些需要根据具体的情况而定.
实际电源系统中,当然是对高频信号采样次数越多越好,按你说的,那样更接近于实际值,比如说开关电流,可事实是我们需要采样多次的信号,实际中往往不可能进行多次采样,而对于输出电压这类低频信号,一个周期采样的次数再多也没什么意义
0
回复
taolei
LV.4
16
2004-09-11 08:19
@great
实际电源系统中,当然是对高频信号采样次数越多越好,按你说的,那样更接近于实际值,比如说开关电流,可事实是我们需要采样多次的信号,实际中往往不可能进行多次采样,而对于输出电压这类低频信号,一个周期采样的次数再多也没什么意义
我说的不是一个信号的整个周期的采样,而是在一个点的多次采样然后取平均作为一次的值.你所说的一个周期的采样只要符合香农定理就可以了.
0
回复
2004-09-11 13:10
@chengkai422
做dc的采样应该是够了,我就是不能用LM324啊,要用mcu完成所有的电压比较,做uvp,ovp及均充和浮充的控制!有没有简单一点的求平均值程序,我现在是用别人的平均值求法,觉得太长了,而且不是很懂,能不能教小虾米一下!
这个程序,如果用C写就好简单了,如果用汇篇得好长好长啊
0
回复
chengkai422
LV.6
18
2004-09-11 13:46
@一个好人
这个程序,如果用C写就好简单了,如果用汇篇得好长好长啊
我现在用的就是用汇编写的,好长!c语言现在我还暂时用不到,也不是很熟悉!咳!还好现在只是对直流电压的采样!那dx能介绍一本好书,介绍c语言单片机编程的!??
0
回复
chengkai422
LV.6
19
2004-09-15 08:54
@一个好人
jette,你说得很有道理,特别是关系到相位检测,那更没办法,所以要加外围专用IC,用单片机的可靠性不是很强!!!
频率的高低对采样过程有什么样的影响???对单片机的周期有什么影响???我如果用4MHZ,8位的单片机!采样A/D位为9位,那么怎么知道我这个的适用范围啊!
0
回复
lex~
LV.2
20
2004-09-16 17:33
一般都得取平均值,要是有尖波的话,程序很容易出错,至于具体几次平滑滤波那得要考虑你的采样频率和波形的变化情况,多试几次,取最大的啦.
0
回复
chengkai422
LV.6
21
2004-09-17 08:46
@lex~
一般都得取平均值,要是有尖波的话,程序很容易出错,至于具体几次平滑滤波那得要考虑你的采样频率和波形的变化情况,多试几次,取最大的啦.
咳!我就是对这种几次采样取平均值的程序不是很了解啊!能不能给个小程序我看看!ck4221982@yahoo.com.cn!谢谢了!
0
回复
lex~
LV.2
22
2004-09-21 12:10
@chengkai422
咳!我就是对这种几次采样取平均值的程序不是很了解啊!能不能给个小程序我看看!ck4221982@yahoo.com.cn!谢谢了!
小程序???想要用哪种语言写啊?其实蛮简单,只要把采集的相邻几个的数据取平均值就行了,至于是几个得自己试试.
0
回复
eagle
LV.2
23
2004-09-21 15:34
@一个好人
jette,你说得很有道理,特别是关系到相位检测,那更没办法,所以要加外围专用IC,用单片机的可靠性不是很强!!!
很赞同在外围加IC
平均值交由单片机做
会减缓单片机的运算速度
而且对于延迟很难控制
(个人看法)
0
回复
eagle
LV.2
24
2004-09-21 15:36
@lex~
一般都得取平均值,要是有尖波的话,程序很容易出错,至于具体几次平滑滤波那得要考虑你的采样频率和波形的变化情况,多试几次,取最大的啦.
有没有可能使用外围模拟线路对 尖波 进行平滑处理 限幅一下呢?
这样保险一点吧~
0
回复
chengkai422
LV.6
25
2004-09-22 08:55
@lex~
小程序???想要用哪种语言写啊?其实蛮简单,只要把采集的相邻几个的数据取平均值就行了,至于是几个得自己试试.
用汇编语言写的!可以用51的,也可以samsung的写!!!这两个我不是太清楚!
0
回复
mr.lee
LV.5
26
2004-09-22 16:22
@great
对量化后的数值进行均值处理只是抗干扰的一种方法,也是一般应用的,不过这得根据你的实际系统来考虑,因为增加采样值就会加大对A/D转换器的速度要求,增加成本,在一些功率变换器的控制中,实际上不进行均值处理对你的系统性能影响不大,除非你是做高精密电源.
我想问问,如果我要对输出采样,怎么做?会不会设计到一次侧跟二次侧在芯片这里相矛盾的问题啊?
0
回复
chengkai422
LV.6
27
2004-09-22 20:25
@mr.lee
我想问问,如果我要对输出采样,怎么做?会不会设计到一次侧跟二次侧在芯片这里相矛盾的问题啊?
会怎么矛盾????能说清楚一点吗,这样大家一起讨论才能一起进步嘛!
0
回复
lex~
LV.2
28
2004-09-27 15:35
@chengkai422
用汇编语言写的!可以用51的,也可以samsung的写!!!这两个我不是太清楚!
把采集所存的数组连续几个求平均值就行了,用C51最简单,我现在手头没有这样的程序,不好意思
0
回复
lex~
LV.2
29
2004-09-27 15:37
@eagle
有没有可能使用外围模拟线路对尖波进行平滑处理限幅一下呢?这样保险一点吧~
这样当然可以了,但是成本一定增加,程序可以做到,当然选程序啦~~~~~~~~~
0
回复
chengkai422
LV.6
30
2004-09-28 16:24
@lex~
把采集所存的数组连续几个求平均值就行了,用C51最简单,我现在手头没有这样的程序,不好意思
我也是很郁闷啊!用51的汇编语言简单吗???我想c语言会简单一点!
0
回复
lex~
LV.2
31
2004-09-29 09:59
@chengkai422
我也是很郁闷啊!用51的汇编语言简单吗???我想c语言会简单一点!
比C51一定烦一点,把数据存到一个连续的区间,几项相加用右移求平均,这里可能会牵扯到浮点运算,查点资料吧
0
回复