STIM300读取数据

参数

STIM300尺寸38.6mm x 44.8mm x 21.5mm,内置24bit 陀螺仪、加速度计、倾角加速度计、温度传感器数据,使用高速422接口进行通信,采用5V供电,最大功耗2w,整体性能很不错:
陀螺仪参数
加速度计参数倾角计参数

硬件连接

我用的是绿联的422转usb线,
串口设置:在这里插入图片描述
硬件连接图:
在这里插入图片描述

服务模式

打开串口工具,设备上电后立即给设备发SERVICEMODE+回车可以进入service模式,我这个串口助手有点问题,ascii发送回车发送的多了个\r,而STIM300要以0x0D结尾,直接使用hex发送就可以了.在这里插入图片描述在这里插入图片描述在这里插入图片描述

数据格式

上电后STIM300自动转到normal模式下发送数据,数据以identifier开头,长度跟配置的有关,servicemode下可以看到,我这里设置的数据是以0x93开头,长度为38,DATAGRAME=NONE 代表数据末尾不含0x0D 0x0A
在这里插入图片描述在这里插入图片描述采集到的数据:
93 00 01 A5 00 04 42 00 01 0B 00 FF FA F1 00 00 5B 07 F6 06 00 00 4F 53 00 4B 07 3F E1 20 00 8F 02 03 47 F4 C8 3C
93 00 01 12 FF FF 52 00 01 4A 00 FF FA 38 00 01 13 07 F1 DB 00 00 4F 38 00 59 74 3F ED 90 00 90 02 03 2C 0F 40 03
93 FF FB 5D FF FC DE FF FD 54 00 FF F8 11 00 00 A8 07 ED 69 00 00 52 29 00 58 28 3F F9 FE 00 91 02 04 AD 99 DF B0
93 FF F6 CE FF FC 0A FF FB 19 00 FF F6 32 00 00 FC 07 ED 8C 00 00 4E 0A 00 49 96 40 05 B4 00 92 02 04 33 63 BA A1
93 FF FA D8 00 00 E2 00 01 51 00 FF F4 7E 00 03 82 07 F0 E1 00 00 46 39 00 40 00 40 0C 58 00 93 02 04 29 91 18 A8
93 00 02 5D 00 06 44 00 0B 00 00 FF F3 5F 00 04 AE 07 F4 66 00 00 44 D8 00 3E 3B 40 0B 48 00 94 02 04 31 87 70 ED
93 00 06 AF 00 00 81 00 09 C5 00 FF F4 3E 00 03 1F 07 F7 40 00 00 4A D3 00 3E 55 40 05 F9 00 95 02 04 ED 02 BD 60
93 00 08 9C FF FA C7 00 00 A2 00 FF F7 C2 00 02 0D 07 F6 ED 00 00 55 D2 00 41 35 40 01 F0 00 96 02 04 B3 86 CC F2
93 00 03 7C FF FF A1 FF FC 89 00 FF FB 2A 00 02 2A 07 F3 E9 00 00 63 94 00 41 A1 40 02 38 00 97 02 05 31 9A B6 AE
93 FF FB 03 00 05 38 FF FE CC 00 FF FA F7 00 02 46 07 F2 6D 00 00 6D B1 00 35 CA 40 04 9F 00 98 02 03 B2 3B 27 C1
93 FF FB 51 00 07 0A 00 04 11 00 FF F8 A3 00 03 EF 07 F3 E1 00 00 6D C3 00 23 47 40 04 12 00 99 02 03 9D FA EF 1B
93 00 01 E0 00 06 E5 00 09 D3 00 FF F5 D1 00 06 69 07 F5 1F 00 00 66 8A 00 18 BA 3F FC CF 00 9A 02 03 35 87 4D 39
93 00 05 89 00 03 0A 00 0A CB 00 FF F4 06 00 06 48 07 F3 58 00 00 5F 62 00 17 30 3F F0 04 00 9B 02 03 90 53 83 06

以其中一条为例:
93 //帧头
00 02 81 //陀螺仪x
00 04 89 //陀螺仪y
00 04 D9 //陀螺仪z
00 //陀螺仪状态
FF F2 72 //加速度计x
00 11 43 //加速度计y
07 F7 AF //加速度计z
00 //加速度计状态
00 56 4B //倾角计x
00 7F FE //倾角计y
40 35 5B //倾角计z
00 //倾角计状态
40 //自增计数器
02 04 //数据延迟
62 C4 63 99 //crc

在这里插入图片描述我设置的是陀螺仪输出角速率,陀螺仪z轴输出为:00 04 D9,计算为1241/2^14=0.07574 (deg/s) ,如果是负数需要先计算原码。
在这里插入图片描述
以加速度Z轴为例,我这里使用的量程为10g,计算 0x07F7AF/2^19=0.9959g

CRC计算

这个STIM300的CRC之前我也遇到一些问题,这里记一下,它这个CRC肯定计算没问题的,就是标准的CRC32/MPEG2,多项式为0x04C11DB7,初始值是0xffffffff,结果异或值为0x00000000,输入和输出都不反转. 但是CRC32要补足32位的整数倍,比如93 00 05 89 00 03 0A 00 0A CB 00 FF F4 06 00 06 48 07 F3 58 00 00 5F 62 00 17 30 3F F0 04 00 9B 02 03 90 53 83 06,最后4字节为CRC,去掉CRC剩34字节,要补到36字节,在02 03 后面补2字节0再计算:93 00 05 89 00 03 0A 00 0A CB 00 FF F4 06 00 06 48 07 F3 58 00 00 5F 62 00 17 30 3F F0 04 00 9B 02 03 00 00 可以在http://www.ip33.com/crc.html,选CRC-32/MPEG2就行在这里插入图片描述

串口误码问题

关于串口误码的问题也更新一下,之前我使用串口助手在windows上用921600bps采集是没问题的,但是在树莓派和ubuntu18.04上均出现误码的问题 ,后来发现是linux自带的CH340的驱动较老造成的,需要更新.http://www.wch.cn/download/CH341SER_LINUX_ZIP.html 自己编译一下,编译的时候有可能会有错误,稍微改一下几个地方,或者去下载一个别人编译好的内核更新一下就行

  • 3
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 11
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 11
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值