一乐电子

一乐电子百科

 找回密码
 请使用微信账号登录和注册会员

QQ登录

只需一步,快速开始

快捷登录

手机号码,快捷登录

搜索
查看: 22161|回复: 34
收起左侧

[其他综合] 图解自校正多路电压电流表的制作实验

  [复制链接]
发表于 2009-4-18 19:11 | 显示全部楼层 |阅读模式
<P>*********************************************************************** ******************************************** <BR>    题外话:由于CT发图的限止,加上自己又不会图编缉。每次发贴总是小心翼翼,</P>
<P>生怕违规。期望这里不会有太多的限止,同时也期望CT以后会有所改变。</P>
<P>************************************************************************************************************************</P>
<P><BR>    STC单片机由于无需编程器仿真器,在系统可编程,做实验相当的方便,</P>
<P>本实验用的是STC12C5410AD。1T单片机,20引脚和AT89c2051相同。</P>
<P>系统时钟兼容AT8051。</P>
<P> 图一。引脚.JPG </P>
<P>   </P>
<P> 更正说明:</P>
<P>  </P>
<P>  (谢老弹弓指正) STC12C5410AD应为2K-data-FLASH. 10k-FLASH。</P>
<P><BR>  <BR>    实际制作图。</P>
<P>    图二。全图.JPG </P>
<P>   </P>
<P> </P>
<P> *******图不是很清晰,请谅解!</P>
<P> </P>
<P> </P>
<P>    一。电路简介<BR>    <BR>    1.自校正原理</P>
<P>        为保证测量数据的准确性,减少零位误差和由电源引起的线性量化误差。</P>
<P>    系统用二个A/D转换通道资源P3.7(电源基准电压测试),和P3.6 (零位检测)。</P>
<P>  </P>
<P>        有关这方面的问题见手册。下摘录如下:</P>
<P> 图三。参考电压源.JPG </P>
<P>     </P>
<P> </P>
<P>         本实验修正方法是:系统在实时检测电压电流通道时,先检测这二个基准通道。</P>
<P>    并根据测量结果,实时地跟踪修正电压电流通道的测量结果。同时软件中采</P>
<P>    用一次线性方程线性化校正。所谓的动态校正。当然也可用键盘校正,但</P>
<P>    键盘校正误差是定值。是静态校正,用一时间后,需要用键盘重新修正。</P>
<P>    <BR>    2.测量精度</P>
<P>       10位ADC分辩率理论上达0 ~ 1023。</P>
<P>       电压测量基本档采用0 ~ 5V。四位数码管显示。也就是最小分辩电压为5MV。</P>
<P>    实际制作个位(5MV) 很少漂动。当然10MV(0.01V)精度还是能保证的。</P>
<P>       电流测量基本档采用为0 ~ 1A。四位数码管显示。也就是最小分辩电流为1MA。</P>
<P>    基本能保证测量精度。</P>
<P>       如分辩率要更高的朋友 ,可采用专用的ADC转换电路。</P>
<P>    3.测量分档</P>
<P>      第一路:P1.5为电压档V1,  P1.4为电流A1.</P>
<P>      第二路:P1.3为电压档V2,  P1.2为电流A2.    <BR>      第三路:P1.1为电压档V3,  P1.0为电流A3.</P>
<P> </P>
<P>      共三路六个通道。档位由键盘分别设置。</P>
<P>      电压档:0 ~ 5 V。  0 ~ 50V。  0 ~ 500V。</P>
<P>      电流档:0 ~ 1A。  0 ~ 10V。  0 ~ 99A。</P>
<P><BR>    4.键盘设置</P>
<P>      先按K1:设置U1</P>
<P>            六位显示:      U1_005.  表示第一档V1--为5V档。<BR>       <BR>            如按K2:显示:  U1_050.  表示第一档V1--为50V档。</P>
<P>            再按K2:显示:  U1_500.  表示第一档V1--为500V档。<BR>     <BR>      再按K1:设置A1</P>
<P>            六位显示:      A1_001.  表示第一档A1--为1A档。<BR>       <BR>            如按K2:显示:  A1_010.  表示第一档A1--为10A档。</P>
<P>            再按K2:显示:  U1_100.  表示第一档A1--为100A档。</P>
<P>      连续按K1,可以设置V2-A2-V3-A3-确认,改变档位,按上述方法<BR>           <BR>            按K2即可。</P>
<P>     下图为U2设置为500V的实际界面图</P>
<P> 图四。设置.JPG </P>
<P> </P>
<P><BR>      5.显示方式</P>
<P>       显示采用沈兄的6位LED,串行方式,芯片为74LS164。</P>
<P>       循环显示V1—A1--V2--A2--V2--V3--A3</P>
<P>       图五.JPG <BR>       </P>
<P> 图六.JPG </P>
<P> </P>
> 图七.JPG    6.上位机界面
      测量结果可通过串口直接发送至PC。</P>
      界面见图</P>
上位机界面图.JPG
 楼主| 发表于 2009-4-18 19:11 | 显示全部楼层
<P>&nbsp;</P>
<P>**********************************************************</P>
<P>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 整理资料太化时间。只能边整理边发</P>
<P>*********************************************************</P>
<P>&nbsp;</P>
<P>二。制作简介</P>
<P>&nbsp;</P>
<P>&nbsp;&nbsp;&nbsp;&nbsp; 1.电源部分</P>
<P>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 见图</P>
<P> 电源图.JPG <BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 实验用电源变压器次级为8V,经整流滤波后一路送三端7805</P>
<P>&nbsp; 产生5V电源电压。另一路送TL431产生5V基准电压源。</P>
<P><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 调整方法:测量5V电源电压,( 一般在4.96~ 4,98左右),然</P>
<P>&nbsp; 后调整W使基准电压源和测量的电源电压一致即可。</P>
<P>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 如需更高精度,建议用LM317将电源电压调整为5V。</P>
<P>&nbsp;&nbsp;&nbsp;&nbsp; <BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 2. rs232电平转换电路</P>
<P>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 由于单片机输入输出的是5v的TTL电平,不同于PC串口RS232电平</P>
<P>(-5~+15V),故不能直接相接,要电平转换后方可通信。</P>
<P>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 电平转换电路如图:此电路常用于手机数据线,它的巧妙在于利用</P>
<P>C7和D1从RS232接口获取通信所需的负电源,以实现PC和单片机间的电平</P>
<P>转换和数据通信。经多次实验应用,性能优良,波特率115200时,通信效</P>
<P>果仍十分稳定。</P>
<P>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 本制作电平转换电路一是用于STC5410AD的下载编程用。二是用于</P>
<P>将6路通道信息发送到PC。</P>
<P> 232电平转换.JPG <BR>&nbsp;&nbsp;&nbsp;&nbsp; 电源实图.JPG </P>
<P>&nbsp;</P>
<P>&nbsp;</P>
<P>&nbsp;</P>
<P>&nbsp;&nbsp;&nbsp;&nbsp; 3.下载编程时一个不容忽视的错误。</P>
<P>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 曾有一朋友,用STC单片机发现总觉得延时不对,要我看看源程序。</P>
<P>我看了下,觉得没错,又将程序中的延时部分单独运行也是没错,却找</P>
<P>不到原因。过后这位仁兄告知,找到了原因。</P>
<P>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 请看手册:</P>
<P> 下载编程时一个不容忽视的错误.JPG </P>
<P>&nbsp;</P>
<P>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 看后手册中内容,就会明白是何原因了!</P>
<P>&nbsp;</P>

[ 本帖最后由 倪大德 于 2009-4-19 09:39 编辑 ]
 楼主| 发表于 2009-4-18 19:12 | 显示全部楼层
<P>3.显示电路</P>
<P>&nbsp;</P>
<P>&nbsp;&nbsp;&nbsp;&nbsp; 由于手头只有20引脚的STC12C5410AD,IO口有限,本实验选用的显示板</P>
<P>是沈兄的164六位显示板,静态显示。</P>
<P>&nbsp;</P>
<P> 图一.JPG (29.62 KB, 下载次数: 44) </P>
<P>&nbsp;</P>
<P>&nbsp;&nbsp;&nbsp;&nbsp; 用164作显示,个人不太喜好,原因是:</P>
<P>164由于是串行移位输出显示码,执行一次扫描,所有的显示码都必须按序依次输出一遍,<BR>任何一个输出口的电平都会频繁变化(无输出锁存),如程序处理不好,会导致数码管所有项微亮,</P>
<P>差一点会串位和乱显。如调用显示过频,显示模糊,如长期不刷新,又容易因干扰而错显。</P>
<P><BR>&nbsp;&nbsp;&nbsp;&nbsp; 但优点是占用IO口少,六位显示共用二个IO口。</P>
<P>&nbsp;</P>
<P>&nbsp;&nbsp;&nbsp;&nbsp; 有关164六位显示板祥细情况,有兴趣的可向沈兄咨询!</P>
<P>&nbsp;</P>
<P> 显示板.JPG (52.91 KB, 下载次数: 20) </P>
<P>&nbsp;</P>
<P>&nbsp;</P>
<P>&nbsp;&nbsp;&nbsp;&nbsp; ***需要说明的是:<BR>&nbsp;&nbsp;&nbsp; <BR>&nbsp;&nbsp;&nbsp;&nbsp; 164由于是串行移位输出,配合程序,正确取码。</P>
<P>&nbsp;&nbsp;&nbsp;&nbsp; 设置图</P>
<P>&nbsp;&nbsp;&nbsp;&nbsp; 取码设置.JPG (42.07 KB, 下载次数: 18) </P>
<P><BR>&nbsp;&nbsp; 测试程序:</P>
<P> </P>
<P>&nbsp;&nbsp; 此是去年为此六位显示板用汇编写的测试程序,</P>
<P><BR>&nbsp;&nbsp; 由于本实验占用的是P3.4,P3.5二个接口。测试时请重新定义接口。</P>
<P><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; U1_DATA EQU P3.5<BR>&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; U1_CLK&nbsp; EQU P3.4</P>
<P><BR>&nbsp;&nbsp;&nbsp; 附件: </P>
<P> s164_6.rar (8.75 KB, 下载次数: 171) </P>
<P>&nbsp;</P>
<P>&nbsp;4.检测部分</P>
<P><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 由于基本档为5V,和1A。为了满足大电压,大电流的测量。</P>
<P>&nbsp;&nbsp; ,必须进行电压转换。</P>
<P>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 见图</P>
<P> f1.JPG (10.98 KB, 下载次数: 19) </P>
<P>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 50v档:&nbsp;&nbsp; R和W的分压比&nbsp;&nbsp; 50/5=10</P>
<P>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 500V档:&nbsp; R和W的分压比&nbsp;&nbsp; 500/5=100</P>
<P><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 10A档:&nbsp;&nbsp; R和W的分压比&nbsp;&nbsp;&nbsp; 10/1=10</P>
<P>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 100A档:&nbsp;&nbsp; R和W的分压比&nbsp;&nbsp; 100/1=100</P>
<P><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 电流取样电阻如图:</P>
<P><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; R=v/I&nbsp; 取决于电源电压和电流。可根据各人所需决定!<BR></P>
<P> f2.JPG (48.2 KB, 下载次数: 18) </P>
<P>&nbsp;</P>

[ 本帖最后由 倪大德 于 2009-4-20 08:04 编辑 ]
 楼主| 发表于 2009-4-18 19:12 | 显示全部楼层
待续
发表于 2009-4-18 20:15 | 显示全部楼层
学习下,最近在想3S锂电怎么测量好。 也就是说做个电量显示的东西,省的每次拿出万用表。
充满电4.2V的话,3S 12.6V,10位分辨率精度达到0.0123V。 总感觉不太爽。不知道传说中的过采样有用不,如果只是单纯增加一位不确定的显示的话。
发表于 2009-4-18 23:04 | 显示全部楼层
铺张报纸地上占个座学习,准备仿制
发表于 2009-4-19 00:35 | 显示全部楼层
我也占个位置.
过采样应该有用吧
最好研究一下M8负载的做法.
我看了电路怎么也没看到怎么加扰动的.

做显示10位AD感觉还是低了点.
最好能到12-14位
发表于 2009-4-19 00:49 | 显示全部楼层
学学,准备仿制。
 楼主| 发表于 2009-4-19 09:55 | 显示全部楼层
<P>
原帖由 <I>litchiate</I> 于 2009-4-18 20:15 发表 <A href="https://www.yleee.com.cn/redirect.php?goto=findpost&pid=6428&ptid=901" target=_blank><IMG alt="" src="https://www.yleee.com.cn/images/common/back.gif" border=0></A> 学习下,最近在想3S锂电怎么测量好。 也就是说做个电量显示的东西,省的每次拿出万用表。充满电4.2V的话,3S 12.6V,10位分辨率精度达到0.0123V。 总感觉不太爽。不知道传说中的过采样有用不,如果只是单纯增加一位 ...
</P>
<P> </P>
<P>        如仅仅是省的每次拿出万用表测量,可以 做一个简单的,用AT89C2051内置比较器。</P>
发表于 2009-4-19 10:44 | 显示全部楼层
倪老师,我买了一片STC12C5410AD,想做一个。在你这个电路前面,是不是也需要加分压电阻,和分流器。

本版积分规则

QQ|一淘宝店|手机版|商店|电子DIY套件|一乐电子 ( 粤ICP备09076165号 ) 公安备案粤公网安备 44522102000183号

GMT+8, 2024-4-28 00:18 , Processed in 0.067823 second(s), 47 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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