在工业控制现场,经常会遇到单片机主控板来控制设备的开度大小(如蒸汽调节阀等),而蒸汽调节阀等设备,通常是通过模拟量如4-20mA或0-5V/10V来调节的。
调节命令一般是通过上位机或现场触摸屏下发给主控板,再由主控板发给设备的,这就涉及到数字量转换成模拟量的过程,主控板收到命令后通过D/A转换芯片及外围电路转换成4-20mA或0-5V/10V来调节设备。
D/A转换芯片后面的电路如下图:

上图中左侧是转换成4-20mA,右侧是转换成0-5V或0-10V,U2可以采用LM358或LM324等。
先讲左侧的4-20mA电路,D/A转换芯片输出给U2的IN0-5V可以是0-5V也可以是0-2.5V,这和D/A转换芯片的设置、供电电压以及给定的参考电压有关,如果D/A转换芯片供电3.3V,那么输出给U2的电压不可能高过3.3V。
IN0-5V是0-5V时,R6选250欧,是0-2.5V时,R6选125欧,R6要选精密电阻,至少是0.1%精度、25PPM以下。
Q1我用的是9014三极管,U2和Q1的电压VCC-24要高于12V,比如15、18、24V;我测试的结果是12V供电OUT两端的4-20mA输出有些误差。
再讲右侧的0-5V/10V电路,如果R7电阻端输入的是0-5V,R8取值20K,则电压输出为0-10V,即把输入电压放大2倍。
如果R7电阻端输入的是0-2.5V,要想电压输出为0-10V,则R8取值应为40K。
因为做工业控制工程经常要控制模拟量输入的设备,所以我把这部分功能提取出来,单独做了一个模块,由单片机通过RS485接收上位机命令,把数字量通过D/A芯片和上面的电路,转换成设备需要的模拟量来控制设备。
我使用的单片机是PIC16F1824,D/A芯片是MCP4921,从2019年就开始在控制工程里使用这个模块,一直都很稳定。
如果你对这篇文章感兴趣或者有更好的方案,欢迎在评论区留言
后续干货不断,咱们一起在单片机的世界里,共同进步。
本文原创首发于微信公众号“单片机研发老陈”,优快云同步发布,转载请注明出处。

被折叠的 条评论
为什么被折叠?



