0

关于投票
为微控制器提供4到20mA回路的电路
在制造业设备的控制领域中,4到20mA的电流回路普遍存在。离散逻辑、微处理器和微控制器可以很容易使用控制方案的数字部分,例如:限制开关、按钮和信号灯。对初级微控制器而言, 4到20mA的输出接口存在问题。内置A/D转换器固然很好,但这样的设备对处理器来讲不经济。串行4到20mA芯片的确存在,但相对昂贵的,且需要串行设计,会使处理器价格过高。大部分低端芯片缺少专门的串行接口,并需要管脚编程。

  图1中的电路成本较低,不仅可以提供4到20mA的输出,而且提供数字反馈信号表征电流环中的明线。一个输出端口引脚用来输出电流,一个输入管脚用来监控回路线中的开路电流。这个电路的运行不需要电流环的开环反馈部分,为节省成本可省略这部分。

为微控制器提供4到20mA回路的电路

  电路由微处理器中简单的定时器输出驱动。定时器的占空比决定着电路的输出电流。第一个运放信号前端的RC网络调制来自处理器的脉动序列,以便运放认定其为直流电压。另外,这个网络确保即便输入接地时,最小输入电压也接近100mV,。当NPN晶体管Q1关闭时,最小电压确保第一个运放的反馈回路不会折回正极去。如果使用双极性供电,晶体管会有额外的电压在地电压下摆动,保

持其处于导通区而不被关断。NPN型晶体管Q1的射极电阻决定电流范围。微控制器由5V电压驱动,输出电流为20mA。而输入接地的输出电流小于1mA。12.5%的占空比驱动4mA的电流回路,显示了整个范围上的线性控制。尽管这并不是强制的,但大部分电流回路都有接地回路。第二个运放的目的是提供电流源,而不是前端电路的电流减小,提供接地回路。因此,PNP型晶体管Q3提供高位驱动。双极结合晶体管Q1和Q3满足成本考虑,但也可以用MOSFET获得稍好的性能。

  电路的开关反馈部分使微处理器分辨线路中存在的错误条件。处理器可执行报警,关机或其他控制功能来减少安全隐患。当开环情况发生时,Q3通过射-基极连接隔离整个回路电流,而通过680Ω电阻接到运放。电压经过680Ω电阻并导通Q2,导致微处理器处于逻辑为1的反馈。注意到,对这类控制系统的“零”输出状态而言,开环回路需要至少1mA电流表征开路的功能,这个电流低于正常的4mA。

  指令改变的响应时间约为500毫秒,对大多数的电流回路控制设备是可接受的,例如控制阀门。如果选择的微处理器有内置A/D转换器,响应时间通过消除输入滤波网络的两个多阶幅值而减少。如果使用单电源拓扑,运放的选择就很重要。运放维持接近其负极、地或轨的稳定性是很重要的指标。

系统分类: 工业控制
用户分类: 4-20mA电流环
标签: 4-20mA
来源: 整理
发表评论 阅读全文(193) | 回复(0)

0

关于投票
基于MAXQ微控制器构建增强型智能4-20mA变送器
简单的环路工作

  在电流环路中,传感器的输出电压首先按比例转换成电流,一般4mA表示传感器的零电平输出,20mA表示满量程输出。远端接收器将4-20mA电流又转换为电压,利用计算机或显示模块做进一步处理。

  典型的4-20mA电流环电路包括四个部分:传感器/变送器、电压-电流转换器、环路电源和接收器/监视器。在环路供电的应用中,传感器驱动电压-电流转换器,其他三个部分串联连接,构成闭环回路(图1)。

4-20mA环路供电电路框图

图1. 4-20mA环路供电电路框图

  智能型4-20mA变送器

  传统上,4-20mA变送器包括一个安装在现场的器件,该器件感测物理参数并产生4-20mA标准范围内的比例电流。为适应工业需求,出现了称作“智能型变送器”的第二代4-20mA变送器,这种变送器采用微控制器(µC)和数据转换器调理远端信号。

  智能型变送器可以对增益和失调进行校准,通过将传感器模拟信号数字化(如RTD传感器和热电偶)实现线性化处理,用驻留在µC内部的数学算法处理信号,再将数字信号转换回模拟信号,结果以标准电流的形式沿环路传输。

  最新的第三代4-20mA变送器(图2)被认为是“增强型智能”变送器。它们增加了与4-20mA信号共享双绞线的数字通信功能。所提供的通信通道在传输传感器数据的同时,还可传输控制和诊断信号。

4-20mA增强型智能变送器框图

图2. 4-20mA增强型智能变送器框图

  智能型变送器所使用的通信标准是Hart协议,该协议基于Bell 202电话通信标准,采用频移键控(FSK)方式。其数字信号1和0分别由1200Hz和2200Hz频率表示。这些频率的正弦波叠加在传感器的直流模拟信号上,同时提供模拟和数字通信(图3)。

模拟和数字信号同时通信

图3. 模拟和数字信号同时通信

  因为FSK信号的平均值始终为零,4-20mA模拟信号在此过程中不受影响。数字状态每秒钟可以转换两到三次,而不会妨碍模拟信号。允许的最小环路阻抗为23。

  4-20mA增强型智能变送器对µC的基本要求

  要实现这种4-20mA电流环路应用,µC必须具备三种特定性能:

  串行接口,连接用于数据采集的ADC和用于设置环路电流的DAC。

  因为电流预算为4mA,所以要求低功耗。

  乘法-累加单元(MAC),既完成输入信号的数字滤波,又同时编码和解码Hart协议中的两种频率。

  选择µC

  MAXQ系列RISC µC具备上述所有必需的功能(图4)。

MAXQ µC架构框图

图4. MAXQ µC架构框图

  模拟功能

  MAXQ µC包含若干模拟功能。采用的时钟管理方案只对当前使用的模块提供时钟。例如,如果一条指令用到数据指针(DP)和算术逻辑单元(ALU),那么只给这两个模块提供时钟。这一技术降低了功耗和开关噪声。

  低功耗

  MAXQ µC具有先进的电源管理功能,通过动态地将µC处理速度与需要的性能水平相匹配,可使功耗降至最低。例如,工作量减少的情况下,功耗较低。要投入更多的处理能力时,µC就需要提高工作频率。

  软件可选的时钟分频操作,允许灵活地选择1、2、4或8个振荡器周期作为一个系统时钟周期。通过软件实现这一功能,因此µC在不需要增加额外硬件成本的情况下即可进入低功耗状态。

  还可为那些对功耗极其敏感的应用提供另外三种低功耗模式:

  PMM1: 256分频电源管理模式

  PMM2: 32kHz电源管理模式(PMME = 1,其中PMME是系统时钟控制寄存器的第2位)

  停止模式(STOP = 1)

  在PMM1模式下,一个系统时钟周期等于256个振荡器周期,µC降速工作,从而大大降低了功耗。在PMM2模式下,器件以32kHz振荡器作为时钟源,工作速度更低。使能的中断源发生中断时,可选的时钟返回功能可使器件快速退出电源管理模式,并返回到更快的内部时钟频率上。这些使能的中断源可以是外部中断、UART和SPI模块。所有这些功能使MAXQ µC的处理能力达到3MIPS/mA,性能远远超出最接近的其它处理器(图5)。

MAXQ与其他竞争产品的MIPS/mA性能比较

图5. MAXQ与其他竞争产品的MIPS/mA性能比较。

信号滤波处理

  MAXQ µC内部的MAC完成4-20mA应用所需的信号处理功能。模拟信号输入到ADC,在数字域滤波采样流。用以下等式可实现通用滤波功能:

  y[n] = bix[n-i] + aiy[n-i]

  式中,bi和ai分别表征系统的前馈和反馈响应特性。根据ai和bi的不同取值,数字滤波器可分为有限长冲激响应型(FIR)或无限长冲 激响应型(IIR)。当系统不包含反馈(所有ai = 0)时,滤波器为FIR型:

  y[n] = bix[n-i]

  然而,如果ai和bi都不为零,则滤波器是IIR型。

  从上面的FIR滤波器方程可以看出,主要的数学运算是将各输入采样乘以一个常数,然后将n个乘积累加。下面这段C程序可说明该运算:

  y[n]=0;

  for(i=0; i

  y[n] += x[i] * b[i]

  MAXQ µC的MAC需要4 + 5n个周期完成此运算,代码空间只有9个字(而传统µC和MAC需要12个字)。

  move DP[0], #x    ; DP[0] -> x[0]

  move DP[1], #b    ; DP[1] -> b[0]

  move LC[0], #loop_cnt   ; LC[0] -> number of samples

  move MCNT, #INIT_MAC  &nbs

p;; Initialize MAC unit

  MAC_LOOP:

  move DP[0], DP[0]    ; Activate DP[0]

  move MA, @DP[0]++    ; Get sample into MAC

  move DP[1], DP[1]    ; Activate DP[1]

  move MB, @DP[1]++    ; Get coeff into MAC and multiply

  djnz LC[0], MAC_LOOP.

  (MAXQ架构的数据存储器访问细节参见附录)。

  注意:在MAXQ的MAC中,装入第二个操作数时,自动执行被请求的操作,运算结果存入MC寄存器。还须注意:溢出前,MC寄存器宽度(40位)可以累加大量的32位乘法结果。该功能是对传统方法的改进,传统方法在每次基本操作后都要验证是否溢出。

  MAXQ2000 µC的独特性能

  低功耗、16位RISC微控制器MAXQ2000是Maxim MAXQ家族的第一个成员。它具有液晶显示器(LCD)接口,可驱动多达100 (-RBX)或132 (-RAX)段。MAXQ2000极为适合血糖监测应用,并且适合任何需要高性能、低功耗工作的应用。工作频率最大为14MHz (VDD > 1.8V)或20MHz (VDD > 2.25V)。

  MAXQ2000含有32k字的闪存(适合原型设计和小批量生产)、1k字RAM、3个16位定时器,以及1或2个通用同步/异步收发器(UART)。为了灵活起见,微控制器内核电源(1.8V)与I/O子系统电源独立。超低功耗的休眠模式使MAXQ2000成为便携式和电池供电设备的理想选择。

  MAXQ2000评估板

  功能强大的MAXQ2000 µC可以利用其评估板(EV)进行评估,该评估板提供了完整的MAXQ2000硬件开发环境(图6)。

 MAXQ2000评估板方框图

图6. MAXQ2000评估板方框图

  MAXQ2000评估板具有下列特点:

  板上MAXQ2000内核电源和VDDIO电源。

  可调电源(1.8V至3.6V),可用作VDDIO或VLCD电源。

  对应MAXQ2000所有信号和电源的插头引脚。

  独立的LCD子板连接器。

  LCD子板,装有3V、3.5位静态LCD显示器。

  连接串行UART (端口0)的RS-232电平驱动器,包括流量控制线。

  外部中断按钮和微控制器系统复位按钮。

  MAX1407多功能ADC/DAC芯片,连接到MAXQ2000的SPI总线接口。

  1-Wire接口和1-Wire EEPROM芯片。

  条型LED显示,指示端口引脚P0.7至P0.0的电平状态。

  JTAG接口,用于应用程序下载和在系统调试。

  因此,MAXQ2000评估板具备了构建智能型4-20mA变送器需要的所有功能:具有真正乘法-累加单元(用于滤波和频率编码/解码)的低功耗µC;转换传感器信号的ADC;产生模拟输出信号的DAC (图7)。加上一个低功耗Codec,如MAX1102,就可以实现一个HART调制解调器。

 MAXQ2000评估板方框图

图7. 基于MAXQ2000 µC的4-20mA变送器HART调制解调器的实现

  如果系统包含1 200Hz和2200Hz (分别代表1和0)频率编码器,同时要对这些频率进行检测,可以采用MAC实现HART调制解调器要求的这些功能。

  要产生所需的正弦波形,可以利用下述差分方程描述的两极点滤波器形式实现递归数字式谐振器:

  Xn = k * Xn-1 - Xn-2,

  式中,常数k等于2 cos(2*频率/采样率)。可以预先计算k的两个值,并存在ROM中。例如,要用8kHz采样率产生1200Hz频率,该值为k = 2 cos(2*1200/8000)。

  必须计算能使振荡器开始振荡的初始激励。如果 Xn-1和 Xn-2都为0,接下来的每个Xn也都将为0。要启动振荡器,将 Xn-1设为0, Xn-2采用如下设置:

  Xn-2 = -A*sin[2(频率/采样率)]

  在本例中,假设采用单位幅度的正弦波,该式简化为 Xn-2 = -1sin[(2(1200/8000)]。为进一步简化编码,首先,初始化两个中间变量(X1, X2)。X1初始化为0,X2为初始激励值(上面的计算结果),以启动振荡器。这样,要产生一个正弦波的采样,可进行下列运算:

  

X0 = kX1 - X2

   X2 = X1

   X1 = X0

  每个新的正弦值都需要一次乘法运算和一次减法运算。利用MAXQ µC的单周期硬件MAC,可以采用如下操作产生正弦波:

  move DP[0], #X1    ; DP[0] -> X1

  move MCNT, #INIT_MAC   ; Initialize MAC unit

  move MA, #k     ; MA = k

  move MB, @DP[0]++    ; MB = X1, MC="k"*X1, point to X2

  move MA, #-1     ; MA = -1

  move MB, @DP[0]--    ; MB = X2, MC="k"*X1-X2, point to X1

  nop       ; wait for result

  move @--DP[0], MC    ; Store result at X0.

  因为我们只需要检测两种频率,所以采用改进的Goertzel算法,这种算法可以用简单的二阶滤波器实现(图8)。

利用简单的二阶滤波器实现Goertzel算法

图8. 利用简单的二阶滤波器实现Goertzel算法

  要使用Goertzel算法检测特定频率,编译时要首先使用下式计算出常数:

   k = tone frequency/sampling rate

   a1 = 2cos(2k)

  随后,将中间变量D0、D1和D2初始化为0,并对每个收到的采样X进行下列计算:

   D0 = X + a1*D1 - D2

   D2 = D1

   D1 = D0

  得到足够多的采样值以后(采用8kHz采样率时,通常为205个采样),用最新计算出的D1和D2值进行下列计算:

   P = D12 + D22 - a1 * D1 * D2.

  这时,P包含了输入信号中测试频率的平方。

  要对两种频率解码,我们用两个滤波器处理每个采样。每个滤波器都有自己的k值和自己的一组中间变量,每个变量都是16位长,所以,整个算法需要48字节的中间存储器空间。

系统分类: 工业控制
用户分类: 4-20mA电流环
标签: 4-20mA
来源: 转贴
发表评论 阅读全文(179) | 回复(0)
总共 , 当前 /