首 页文档资料下载资料维修视频包年699元
请登录  |  免费注册
当前位置:精通维修下载 > 文档资料 > 家电技术 > 单元电路介绍 > 其它电路
基于CS5550的工业测量仪表设计
来源:本站整理  作者:佚名  2010-03-10 09:26:49




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

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

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

2.2 计算与变换模块
    经校准和初始化后,CS5550进入测量阶段,通过最新获得的N个瞬时测量值计算出转换有效值后,以满量程的相对百分比方式提供所有的测量结果。其中通道1具有可编程放大器增益选择,当工作在增益为10的情况下,如果测量结果低于10%,则系统将其增益切换成增益为50;反之,当工作在增益为50的情况下,如果测量结果高于90%,则系统将其增益切换成10。这样不仅测量的信号范围宽,而且提高了系统测量的精确性。
    从CS5550读取测量结果转化成相对百分比后,乘上相应的满量程值就可以得出实际测得的电压值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;
    //从CS5550中读取通道1数据
    temp=read(Ox16);
    //转换成百分比
    result=temp/(float)0x0l000000;
    //乘上满量程值
    result*=fullScale;
    //执行信号变换
    result=convert(result);
    这样result变量就是传感器对应的信号值,如温度。

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


上一页  [1] [2] [3] [4]  下一页

关键词:

文章评论评论内容只代表网友观点,与本站立场无关!

   评论摘要(共 0 条,得分 0 分,平均 0 分)

推荐阅读

图文阅读

热门阅读

Copyright © 2007-2017 down.gzweix.Com. All Rights Reserved .
页面执行时间:195,421.90000 毫秒