微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > MCU和DSP > 基于MAXQ微控制器构建增强型智能4-20mA变送器

基于MAXQ微控制器构建增强型智能4-20mA变送器

时间:09-17 来源:互联网 点击:
简单的环路工作

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

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



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

智能型4-20mA变送器

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

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

最新的第三代4-20mA变送器(图2)被认为是“增强型智能”变送器。它们增加了与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)。



图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)。



图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, #b ; DP -> 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, DP ; Activate DP

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

djnz LC[0], MAC_LOOP.

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

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

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top