• 压力校准仪 开发实录


    2017-10-16

    目前的情况是,手头上的MS5611传感器输出不正常,判断为

    出厂参数读取不正确 ,读出值超大。

    直接套入公式,计算出的温度为20.06左右   压力为388312mmbar左右(量程为1200mmbar)

    温度原始值(SPI直接读出的值)为:16680817

    现在无法正确进行压力的温度补偿、压力计算、温度计算。

    不过,通过实验采集记录了几组数据,发现传感器的线性输出还存在。 温度输出值也能随上电时间的加长随之增大,

    当压力值变化时,传感器的输出值与压力值会大体符合y=kx+b的直线。

    于是接下来有两种方案。

    一种是换传感器,那也是最好的得到压力和温度的方法。

    第二张方法就是,忽略MS5611输出的出厂校准参数的正确与否。利用客户给的压力表,在不同温度下进行加压(加压:60.120.200.240.300mmhg)

    分别记录,不同的温度输出值对应的压力输出值

    通过从多组数据中找出规律,然后计算出温度补偿系数,实现粗略的一个温度补偿。

    但温度值无法读出,因为,我没有恒温箱,无法让传感器处于可控的温度环境下,无法将原先错误的温度输出值转化为真实温度。

    关于温度输出,记得STM32F103VC系列内部带有温度传感器,如果STM32F103C8T6也有的话可以用其输出一个大体的温度发送至屏幕显示,

    总结:

    第一种方法:

      缺点:

      需要换传感器,但是现在手头的电路板因为螺丝滑丝无法拆下罩住传感器的气室,如果要换传感器,需要再找一块电路板调试,或者直接重新开板,也可以解决之前板子上存在的电气错误。板子制作周期延长。

      优点:

      程序开发调试简单。

    第二张方法:

      缺点:

      1.在传感器已经有问题的情况下进行温度补偿,也许在程序开发调试的环境下能正常运作,一旦环境温度和工况有较大改动也许压力输出会失效。后期加入电机控制后不知道会不会出现其他问题。

      2.需要实验记录数据,程序开发调试上更复杂。

      优点:不需要更换硬件。

  • 相关阅读:
    dljd_008_jdbc中调用Statement的execute()执行DQL,DDL,DML
    dljd_007_jdbc编程中的statement执行DML/DDL
    【数据结构】可持久化线段树
    【数据结构】可持久化并查集
    【图论】TarjanLCA算法
    【图论】KruskalMST算法
    【基础】标准模板
    【数学】位运算
    【数据结构】Trie
    【数据结构】线段树(名次树)
  • 原文地址:https://www.cnblogs.com/qdrs/p/7678273.html
Copyright © 2020-2023  润新知