第三十课--Microduino制作的直流电压电流表--C

来自Microduino Wikipedia
Pkj讨论 | 贡献2014年8月23日 (六) 15:05的版本
跳转至: 导航搜索

用Microduino制作的直流电压电流表--C#上位机显示

目的

本教程用Microduino制作了直流电压电流表,PC端的C#窗体程序可以显示被测电压电流值。通过本教程可以让读者加深对运放的理解,还可以学习C#的编程实例,为灵活运用Microduino搭建实际电路作准备。

设备

Microduino-Core 是以 Atmel ATmega328P为核心的8位单片机开发核心板,是一个开源的、与 Arduino UNO 兼容的控制器模块。

下载程序模块,可直接与 Microduino-Core 或者Microduino-Core+ 相连,让他们与计算机通讯。它的下载接口用的是MicUSB,这也是Microduino小巧的一部分。Microduino大小与一枚一元硬币差不多大。下载线与绝大多数智能手机usb数据线是一样的,方便实用。

  • 其他硬件设备
相关硬件 数量 功能
LM358 1个 常用双路运算放大器,可方便实现数学运算电路。
ICL7660 1个 负压产生芯片,用于运放负压供电。
AD620 1个 仪用放大器,该示例用于电流检测。
1/4W电阻 若干 用于差分比例运算。
0.01欧姆电阻(5W) 1个 串联于被测电路。
1欧姆电阻(10W) 1个 与0.01欧电阻串联,然后接到干电池上获取测试电流。
10uF 16V铝电解电容 3个 用于负压产生电路。
干电池 若干 测试用。
USB数据连接线 1条 连通Microduino模块与计算机。
面包板 1块 各个元器件汇聚于此。
面包板跳线 1盒 电气连接线。

AD620仪用放大器

AD620仪用放大器是美国AD公司的产品, 用户只需使用一只外部电阻器便可以设置从1到1,000任何要求的增益,本示例电阻采用外接电阻是2K,也就是说增益G=1+(49.4/2)=25.7。仪用放大器 AD620的核心是三级运放电路,有较高的共模抑制比,温度稳定性好,放大频带宽,噪声系数小,精确度高。20元一个(笔者本地零售价格)的AD620与普通1元一个的LM358有什么区别?价格。 除去价格,也不去关注datasheet中的性能参数,就本实例而言,0.01欧姆电阻流过50mA电流时,该差分信号(0.01欧姆电阻两端)经AD620放大后可以正确显示该电流值,依笔者实测,LM358不能正确显示所测电流值。

实验原理图

IV Control protelSch.jpg
该电路可以测试的量程电流为19.45A(理论值),电压为50V(理论值),如果实际应用应留出余量。

电流计算方法为: 25.7(增益G)*0.01(电阻)*I(电流)<5V ,得出I<19.45A。10毫欧电阻功率为5W,也就是说电流最大不能超过

根号下500,等于22.36A。综合来看,理论电流值应小于19.45A,需注意测试大电流时电流连接线(电阻两头)应不小于2.5方铜线(2.5平方毫米截面积)。

电压计算方法为:358输出电压不可能高于电源电压5V,又因为该差分比例运算电路把输入电压缩小到原来电压的0.1倍,所以理论测试电压为50V。

程序

int myValueA0_V=0;//for  measure  voltage
int myValueA5_I=0;//for  measure  current
void setup()
{
  Serial.begin(9600);
}
void loop()
{
  myValueA0_V=analogRead(A0);
  delay(10);
  Serial.print(myValueA0_V*5.0/1023,3);
  Serial.print('\n');//C#  program need this charactor to split 
  myValueA5_I=analogRead(A5);
  delay(10);
  Serial.print(myValueA5_I*5.0/1023,3);
  delay(300);//send data delay     fit for  c# program time_tick
}

调试

  • 参考原理图连接完毕并确认无误。
  • 把程序复制到Arduino IDE中。
  • 编译程序,选择正确的板卡与相应串口。
  • 点击Upload,下载程序。
  • 下载完Arduino程序后,打开IV_control\bin\Debug文件夹下的IV_control.exe可执行文件,可出现窗体界面。(该C#程序需要.NET framework 4.0支持,win7已自带,xp系统如果打不开,可搜索下载,大把的资源)。
  • 开始测试,观察窗体界面中电压电流值变化。下图为笔者测试两节南孚电池的电压,以及一节万用表淘汰下来的9V电池接了3欧姆(1欧姆电阻串联3个,每个10W)电阻的电流。电流值偏差很大,是因为电池带重载后内阻增大。笔者曾用该电路测试过1KW风力发电机给24V蓄电池充电,电流显示准确。
IV Control comOutput.jpg
  • C#源程序,Microduino的实拍图以及相对清晰的protel原理图可点击下载。C#程序中有相关注释,版本为VS2010。

Csharp program and picture:文件:Csharp program and pictures.rar

结果

观察电压电流值,与理论计算值对比分析。

视频