新闻中心

EEPW首页 > 测试测量 > 设计应用 > 基于CS5550的工业测量仪表设计

基于CS5550的工业测量仪表设计

作者:时间:2010-03-10来源:网络收藏

如图6所示,rx为待测电阻,沩流经rx的电流,所产生的压降为u,由欧姆定律得到式(1)、(2)。

本文引用地址:http://www.eepw.com.cn/article/195507.htm

整理后得式(3),其中V,R为未知数,u是由本系统测得的数据。通过连接精密电阻箱来取代待测电阻,取定rx两个值,如100Ω和400Ω。代入式(3),解方程组可得V和R的校准值,并存入EEPROM中作为系统参数。

经校准后便可根据式(4)精确地计算出待测电阻rx的值。

2.2 计算与变换模块
经校准和初始化后,进入测量阶段,通过最新获得的N个瞬时测量值计算出转换有效值后,以满量程的相对百分比方式提供所有的测量结果。其中通道1具有可编程放大器增益选择,当工作在增益为10的情况下,如果测量结果低于10%,则系统将其增益切换成增益为50;反之,当工作在增益为50的情况下,如果测量结果高于90%,则系统将其增益切换成10。这样不仅测量的信号范围宽,而且提高了系统测量的精确性。
读取测量结果转化成相对百分比后,乘上相应的满量程值就可以得出实际测得的电压值u,如果输入的是电流值,则除以系统参数r即为所测得的电流值,如果是测量输入电阻,则根据式(4)计算所测得的电阻值。
得到相应测量信号的实际值后需再进一步地变换。如热电偶输入的是电压信号,需变换成相对应的温度信号,而且电压一温度之问不是线性的变换关系。变换方法可以采用多项式曲线拟合方法或者小区间线性化处理方法。
本系统可进行十几种的信号变换,真正做到一表多用,下面介绍信号变换切换的C语言实现方法,这是通过函数指针来实现的。首先声明函数指针,
typedef float,(*convert_t)(float val);
然后定义该函数指针的一个变量,
convert_tconvert:
下面是一些信号变换的函数原形声明,函数中的参数是测量的电压值,函数返回的是变换后的值,
float lkConvert(float val): //热电偶K级
float lsConveit(float val)://热电偶S级
float Pt100Convert(float val)://热电阻Pt100
float Cu50Conveit(float val): //热电阻Cu50
信号变换切换方法示例如下,
SWitch(opNum){
case 1: //热电偶K级
convert=lkConvert:
break:
……

确定了信号变换函数,最后是函数调用,举例如下,
unsigned long temp;
float result;
//从中读取通道1数据
temp=read(Ox16);
//转换成百分比
result=temp/(float)0x0l000000;
//乘上满量程值
result*=fullScale;
//执行信号变换
result=convert(result);
这样result变量就是传感器对应的信号值,如温度。

3 结束语
本系统使用CS5550进行硬件核心电路设计,性价比极高,使用简单的配置实现一表多用,体积小、集成度高、运行可靠,有很好的推广价值。



上一页 1 2 3 4 下一页

关键词: 5550 CS 工业测量 仪表

评论


相关推荐

技术专区

关闭