0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

MS5837-30BA水深传感器使用指南

广州工控传感科技有限公司 2023-05-06 17:48 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

大家好,【广州工控传感★科技】MS5837-30BA水深传感器事业部,张工。

深度计就是测量水下机器人垂直方向位置的重要传感器。

目前,常用的航模级水下压力深度计是MS5837-30BA水深传感器,该传感器I2C接口,内部AD分辨率达24位,传感器配上防水外壳就成为一款分辨率达2mm测量深度200米的深度传感器。此外该传感器还具有压力值温漂修正的功能,也可以作为温度计使用。该款传感器是I2C接口的,(地址:1110110X WRITE:0,READ:1),通过这一通信模式,可以得到出产标定的参数、实时检测的压力值和温度值。


标定参数

这个传感器有个优点,每个传感器出厂时,都进行了标定,标定的参数会固化保存在传感器的寄存器中,以便使用者进行读取,从而进行修正。标定参数如下表:

?url=http%3A%2F%2Fdingyue.ws.126.net%2F2022%2F0517%2Fed9c09c0p00rc0vcq001yd000j2003bp.png&thumbnail=660x2147483647&quality=80&type=jpg


I2C地址指令如下,C0~C6对应0xA0~0xAE,其中C0指令得到的16位数据,前4位是CRC校验位,后12位是出产编号,其余的就是参数对应的地址指令。

通过I2C读取了标定参数:

C0 0xB001 45057D B-1011是四位CRC校验位

C1 0x857C 34172D SENS

C2 0x872B 34603D OFF

C3 0x4E6E 20078D TCS

C4 0x5327 21287D TCO

C5 0x665A 26202D T_REF

C6 0x661E 26142D TEMPSENS

crc校验程序如下:

1.unsigned char crc4(unsigned int n_prom[]) // n_prom defined as 8x unsigned int (n_prom[8])

2.{

3.int cnt; // simple counter

4.unsigned int n_rem=0; // crc remainder

5.unsigned char n_bit;

6.n_prom[0]=((n_prom[0]) & 0x0FFF); // CRC byte is replaced by 0

7.n_prom[7]=0; // Subsidiary value, set to 0

8.for (cnt = 0; cnt < 16; cnt++) // operation is performed on bytes

9.{ // choose LSB or MSB

10.if (cnt%2==1) n_rem ^= (unsigned short) ((n_prom[cnt>>1]) & 0x00FF);

11.else n_rem ^= (unsigned short) (n_prom[cnt>>1]>>8);

12.for (n_bit = 8; n_bit > 0; n_bit--)

13.{

14.if (n_rem & (0x8000)) n_rem = (n_rem << 1) ^ 0x3000;

15.else n_rem = (n_rem << 1);

16.}

17.}

18.n_rem= ((n_rem >> 12) & 0x000F); // final 4-bit remainder is CRC code

19.return (n_rem ^ 0x00);

求解步骤

MS5837-3030BA水深传感器由于得到的标定参数都是固化的,所以只需在初始化的时候读一次即可。在获取标定参数之后,分为两个步骤,第一步是利用标定参数和测量的值,获取压力和温度值,通过标定参数进行软件补偿;第二步是对压力值进行温度补偿。

第一步 压力和温度获取和软件补偿

如图1,在得到固定的校验参数以后,结合得到的标定参数 可得到获取24位精度的压力(D1)和温度(D2)

?url=http%3A%2F%2Fdingyue.ws.126.net%2F2022%2F0517%2F31fa6986j00rc0vhp00dsd000hh00aep.jpg&thumbnail=660x2147483647&quality=80&type=jpg


图中MS5837-30BA水深传感器和温度读取以及软件补偿

第二步 温度补偿

在得到第一步的温度和压力后,对压力值进行温度补偿,步骤如图2。

1.//Second order compensation

2.if((Ms5837_Temp/100)<20){ //Low temp

3.Ti = (3*(int64_t)(dT)*(int64_t)(dT))/(8589934592LL);

4.OFFi = (3*(Ms5837_Temp-2000)*(Ms5837_Temp-2000))/2;

5.SENSi = (5*(Ms5837_Temp-2000)*(Ms5837_Temp-2000))/8;

6.if((Ms5837_Temp/100)<-15){ //Very low temp

7.OFFi = OFFi+7*(Ms5837_Temp+1500l)*(Ms5837_Temp+1500l);

8.SENSi = SENSi+4*(Ms5837_Temp+1500l)*(Ms5837_Temp+1500l);

1.//Second order compensation

2.if((Ms5837_Temp/100)<20){ //Low temp

3.Ti = (3*(int64_t)(dT)*(int64_t)(dT))/(8589934592LL);

4.OFFi = (3*(Ms5837_Temp-2000)*(Ms5837_Temp-2000))/2;

5.SENSi = (5*(Ms5837_Temp-2000)*(Ms5837_Temp-2000))/8;

6.if((Ms5837_Temp/100)<-15){ //Very low temp

7.OFFi = OFFi+7*(Ms5837_Temp+1500l)*(Ms5837_Temp+1500l);

8.SENSi = SENSi+4*(Ms5837_Temp+1500l)*(Ms5837_Temp+1500l);

9.}

10.}11.else if((Ms5837_Temp/100)>=20){ //High temp

12.Ti = 2*(dT*dT)/(137438953472LL);

13.OFFi = (1*(Ms5837_Temp-2000)*(Ms5837_Temp-2000))/16;

14.SENSi = 0;

15.}

16.

17.OFF2 = OFF-OFFi; //Calculate pressure and temp second order

18.SENS2 = SENS-SENSi;

19.

20.Ms5837_Temp = (Ms5837_Temp-Ti);

21.Ms5837_P = (((D1*SENS2)/2097152l-OFF2)/8192l);I2C接口读取流程

流程图如图3所示,先是读取标定值,然后依次对压力和温度的24位数据进行读取。读取前,需要对其进行转换(conversion),不同采样率和采样对象,对应不同的指令,指令如图4。不同的采样率对应不同的转换时间,见下:

?url=http%3A%2F%2Fdingyue.ws.126.net%2F2022%2F0517%2F5c81dd29j00rc0vi60012d000i700dwp.jpg&thumbnail=660x2147483647&quality=80&type=jpg
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 传感器
    +关注

    关注

    2574

    文章

    54402

    浏览量

    786230
  • 压力传感器
    +关注

    关注

    35

    文章

    2452

    浏览量

    181634
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    STMicroelectronics AIS25BA MEMS运动传感器深度解析与应用指南

    STMicroelectronics AIS25BA MEMS数字输出运动传感器是一款超低噪声、低延迟、高带宽、三轴数字加速度计,设有专用时分多路复用 (TDM) 接口。AIS25BA设计用于满足
    的头像 发表于 10-29 10:17 298次阅读
    STMicroelectronics AIS25<b class='flag-5'>BA</b> MEMS运动<b class='flag-5'>传感器</b>深度解析与应用<b class='flag-5'>指南</b>

    大彩讲堂:VisualHMI-LUA教程-on_screen_change回调函数使用指南

    on_screen_change回调函数使用指南
    的头像 发表于 08-31 16:32 578次阅读
    大彩讲堂:VisualHMI-LUA教程-on_screen_change回调函数<b class='flag-5'>使用指南</b>

    大彩讲堂:VisualHMI-LUA教程-on_update回调函数使用指南

    回调函数使用指南
    的头像 发表于 08-31 16:25 628次阅读
    大彩讲堂:VisualHMI-LUA教程-on_update回调函数<b class='flag-5'>使用指南</b>

    TE Connectivity 耐水性、耐氯性、屏蔽层、低功耗的数字温度复合压力传感器MS5839-02BA

    MS5839-02BA是一款耐恶劣介质的超小型数字压力和温度传感器。微型化、性能和精度是嵌入在消费类设备(如游泳手表和潜水设备)中的传感器的关键,因此对高性能和异常精确的传感器的需求越
    的头像 发表于 07-29 12:02 438次阅读
    TE Connectivity 耐水性、耐氯性、屏蔽层、低功耗的数字温度复合压力<b class='flag-5'>传感器</b><b class='flag-5'>MS5839-02BA</b>

    潜水腕表的新宠—MS5839小型温压复合传感器

    知名MS5837的升级版,后者是一款防水温度和压力传感器。而这款新版本MS5839则增加了抗氯性能,因此可以用于需要浸入水中的电子设备。它特别设计用于游泳腕表和潜水腕表(许多
    的头像 发表于 07-23 12:02 336次阅读
    潜水腕表的新宠—<b class='flag-5'>MS</b>5839小型温压复合<b class='flag-5'>传感器</b>

    【经验合集】温度复合和压力传感器AS55H-02BA的部分使用注意事项

    1压力传感器AS55H-02BA是集成压力和温度一体的工业级传感器。量程范围为300~1200mbar,补偿温度范围-40~85ºС。密封可使用2.5*1mm的O型圈。客户在使用过程中遇到加负压之后
    的头像 发表于 07-16 12:03 429次阅读
    【经验合集】温度复合和压力<b class='flag-5'>传感器</b>AS55H-02<b class='flag-5'>BA</b>的部分使用注意事项

    Quartus工具使用指南

    电子发烧友网站提供《Quartus工具使用指南.pdf》资料免费下载
    发表于 07-15 16:34 1次下载

    水深传感器分类及工作原理

    水深传感器在众多领域发挥着关键作用,如水利监测、海洋研究、工业生产以及环保工作等,它们能够精准地测量水体深度,为相关决策提供重要数据支持。目前市面上常见的水深传感器主要有压力水位计、雷
    的头像 发表于 04-28 17:32 1237次阅读
    <b class='flag-5'>水深</b><b class='flag-5'>传感器</b>分类及工作原理

    安科瑞电量传感器-霍尔与BA电流传感器

    霍尔传感器更适合复杂信号(如直流、脉冲)和高精度要求的场景,如新能源、轨道交通。 BA系列适用于工业交流电流监测,尤其是需要远程通讯或漏电检测的场合。
    的头像 发表于 04-27 13:38 469次阅读
    安科瑞电量<b class='flag-5'>传感器</b>-霍尔与<b class='flag-5'>BA</b>电流<b class='flag-5'>传感器</b>

    激光位移传感器的选型指南

    激光位移传感器的选型指南
    的头像 发表于 03-03 08:17 1261次阅读
    激光位移<b class='flag-5'>传感器</b>的选型<b class='flag-5'>指南</b>

    Nexperia SiC MOSFET LTspice模型使用指南

    电子发烧友网站提供《Nexperia SiC MOSFET LTspice模型使用指南.pdf》资料免费下载
    发表于 02-13 17:21 2次下载
    Nexperia SiC MOSFET LTspice模型<b class='flag-5'>使用指南</b>

    GD32H7xx电源旁路模式使用指南

    电子发烧友网站提供《GD32H7xx电源旁路模式使用指南.pdf》资料免费下载
    发表于 01-22 17:34 3次下载
    GD32H7xx电源旁路模式<b class='flag-5'>使用指南</b>

    GD32G5x3系列高分辨率定时器使用指南

    电子发烧友网站提供《GD32G5x3系列高分辨率定时器使用指南.pdf》资料免费下载
    发表于 01-22 17:32 1次下载
    GD32G5x3系列高分辨率定时<b class='flag-5'>器使用指南</b>

    AN198 GD32G5x3系列比较器使用指南

    电子发烧友网站提供《AN198 GD32G5x3系列比较器使用指南.pdf》资料免费下载
    发表于 01-21 17:42 0次下载
    AN198 GD32G5x3系列比较<b class='flag-5'>器使用指南</b>

    RS232接口与USB转换器使用指南

    RS232接口与USB转换器使用指南主要包括以下几个步骤和注意事项: 一、转换器选择与购买 品牌与质量 :选择知名品牌的USB-RS232串口转换线,以确保质量可靠和驱动稳定。质量有保证的转换器能够
    的头像 发表于 12-18 17:58 5853次阅读