第三十课--Microduino制作的直流电压电流表--C
用Microduino制作的直流电压电流表--C#上位机显示
目的本教程用Microduino制作了直流电压电流表,PC端的C#窗体程序可以显示被测电压电流值。通过本教程可以让读者加深对运放的理解,还可以学习C#的编程实例,为灵活运用Microduino搭建实际电路作准备。 设备Microduino-Core 是以 Atmel ATmega328P为核心的8位单片机开发核心板,是一个开源的、与 Arduino UNO 兼容的控制器模块。 下载程序模块,可直接与 Microduino-Core 或者Microduino-Core+ 相连,让他们与计算机通讯。它的下载接口用的是MicUSB,这也是Microduino小巧的一部分。Microduino大小与一枚一元硬币差不多大。下载线与绝大多数智能手机usb数据线是一样的,方便实用。
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不能正确显示所测电流值。 实验原理图该电路可以测试的量程电流为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
}
调试
C# program and picture:文件:C 结果观察电压电流值,与理论计算值对比分析。 视频 |