电流低过4ma后者超过20ma会不会有问题?
变送器是自动控制系统的一个重要组成部分,在仪器仪表和工业自动化领域中起着举足轻重的作用,变送器对温度、压力、液位、成分等物理量进行测量,并转换成统一的标准信号,因为使用电流做传输信号有着非常高的抗干扰性(主要对50/60HZ的工频干扰),所以一般在工业中常用的信号是电流4~20mA,其映射的是传感器物理量的整个量程。
1.最普遍的转换方案
那么在仪器仪表设计中,我们需要将4~20mA的电信号转化为微控制芯片能进行ADC转换的电压信号,然后才能得到我们需要的物理量进而进行数字运算处理,而常见的采集电信号为0~5V。一般来说许多项目对精度没有较高的分辨率要求或为了节省成本等问题,他们常用的是以下转换电路:
图1.1简单采集电路
这里我们可以计算一下,在最宽转换范围下即20mA转换为5V,可以计算得出采样电阻为:
R=Umax/Imax=250Ω (1.1)
则在4mA下的电压为:
Umin=Imin*R=1V (1.2)
所以我们的有效采集电压为1~5V,映射的即为传感器的整体量程。整体电路很简单,但是同时很明显其劣势是分辨率利用率只有80%,为解决对分辨率的要求问题,我们可以使用更高位数的ADC芯片,或将电压转换重新映射到0~5V。但若想提高ADC有效位数面临的问题是价格可能会比较高昂,所以这里介绍了另一种比较简单的方案:将4~20mA转换为0~5V。
2.方案基础
整体的方案思路是先将4~20mA的电流用采样电阻转换为某个正电压范围,然后使用运放减法器将最低电流4mA产生的偏置电压消除,得到0~5V的采样信号。
2.1减法器公式推导
图2.1减法器电路
首先令
R1 = R2 = R5 (2.1)
R3 = R4 = R6 (2.2)
由运放的虚短得到
V` = V`` = V2 · (R6/R5+R6) (2.3)
由运放的虚断得到
(V1-V`)/R5=(V`-Vo)/R6 (2.4)
(V2-V``)/R5=V``/R6 (2.5)
五个式子联立得到
Vo=(V2-V1)·(R6/R5) (2.6)
2.2参考电压源
一般而言参考电压源可以选择现成芯片,一般常见的电压有1.2V、2.5V、4.096V等等。
3.整体电路
图2.2整体电路
整体电路即为一个参考电压芯片输出和一个采集电路跟随输出接到减法器中。
3.1参数选择:
首先我们要将4mA产生的偏置电压用参考电压源进行去除,所以采样电阻使用的大小为
R7 = Vref / Imin = 625Ω (3.1)
然后在20mA时产生的电压为
Vmax = Imax · R7 = 12.5V (3.2)
此时我们可以知道在4mA时Vo的电压为0V,而20mA的电压为:
Vomax = (V2max-Vref)·(R6/R5) = 10·(R6/R5) (3.3)
所以此时只要令R6/R5=0.5即可,譬如R6=10k R5=20k,此时4~20mA的转换电压即为0~5V,这样即可完成大范围的映射,输出电压给ADC的分辨率可以达到100%。
4.补充
其实TI公司有一个芯片是RCV420,可以直接用芯片以及外部电路搭建实现0~5V的映射,但是现在价格达到了60块钱一片,成本过于高昂。
这个方案在提高了分辨率的同时会降低一定程度的精度,重点是需要在运放电路中使用精度较高的电阻,否则可能产生一定精度偏差(主要来源于热阻影响减法器倍数),但这些偏差可以在软件上做校准操作。
考虑到精度问题,还要考虑使用失调电压较低的运放芯片。
未计算在电阻误差最恶劣的情况下产生的误差,大家感兴趣的可以思考一下这个问题,目测即使是最恶劣的情况下对倍数影响不会有明显改变。
写这个帖子一方面是因为准备尝试运用这个方案到项目中,另一方面是为了练一下写文章的习惯。总体而言这个方案没有理论可行,在仿真软件中也有不错的效果(未展示),虽然精度会不及RCV420或者更复杂的转换电路,但是权衡精度与复杂程度而言,这个方案存在参考价值。毕竟在电路设计中省下来的一块钱在量产一万台的情况下能省下一万块嘛
文中公式由个人推导,若存在错误请大佬们指出!!
一个放大器做I-V转换,另一个运放做直流偏移调整不香吗?你这个乱设计的电路确定有参考价值?
解决过程还是可以赞一下的。仪表电路要尽量减少产生误差的因素,或尽量让产生误差的因素相互抵消。
引用170050051624发表于4楼的内容我模电学的不好,你说的和题主干的有什么区别吗?
估计是不采用采样电阻加跟随器,而是一个250倍的跨阻放大器,直接把4-20mA转换为1-5v的电压,到了这份上,我觉得可以直接进ADC了。
差分放大器个人感觉有时候不是很好用,影响因素有点多。跨阻放大->adc只有1个电阻决定精度,前端加上保护电路就行
估计是不采用采样电阻加跟随器,而是一个250倍的跨阻放大器,直接把4-20mA转换为1-5v的电压,...
确实转到1~5V之后就可以进ADC了,但是如果需要更高的分辨率一方面可以从芯片硬件选择更好的,另一方面可以通过硬件搭建去解决。芯片分辨率高固然好,但是一味追求高性能芯片,那外部硬件设计就失去了魅力。
思路有点偏了。
工程界有名言“大力出奇迹”。你真正需要的不是“量程利用率多少多少”,而是分辨率,分辨率不够,AD位数凑就是了。原设计10位的,升级到12位,简单省事。
于是不光要买轨到轨放大器,还要多买4个高精度电阻了
话是这么说,现在就是2080算力不够升级到3090的思想,那算法的意义就没有了
这是两码事。
工程应用,成本、可靠性、易生产性、可维护性……很多东西要折衷考虑。
常规方案信号检测有效范围1-5V,通常主机还能把0-1V用于故障检测(传感器故障、线路断线)——你要是强行转为0-5V,就把这条路堵死了。
本帖提到电流环信号,隐含了条件:这类传感器输出精度不会很高,实际能达到千分之一都算厉害了;基本是低速信号。这就是前面提到10位、12位ADC的原因。12位单路ADC,大约3元。
可能不是所有场合都适合这样的解决方法,大家就当做一个扩宽思路的方法看看吧
其实这个问题个人感觉是这样,首先4-20mA信号为啥不从0开始,有一个原因就是要用0mA的点来做开路判断,楼主这个思路看起来把这个功能给去了。
然后是分辨率的问题,这种传感器大多数的情况下精度和速度都不会很高,其实可以简单的通过10bit过采样到12bit的方式去在相同的ADC的情况下获得更高的分辨率。这样相对来说在软件上可以解决这个问题。
时段 | 个数 |
---|---|
{{f.startingTime}}点 - {{f.endTime}}点 | {{f.fileCount}} |
200字以内,仅用于支线交流,主线讨论请采用回复功能。