[发明专利]一种基于惯性测量元件的三维定位系统有效
| 申请号: | 201810686836.X | 申请日: | 2018-06-28 |
| 公开(公告)号: | CN108827293B | 公开(公告)日: | 2020-06-09 |
| 发明(设计)人: | 曾祥烨;倪立强;王静宜;苏彦莽 | 申请(专利权)人: | 河北工业大学 |
| 主分类号: | G01C21/16 | 分类号: | G01C21/16;G01C21/20 |
| 代理公司: | 天津翰林知识产权代理事务所(普通合伙) 12210 | 代理人: | 付长杰 |
| 地址: | 300130 天津市红桥区*** | 国省代码: | 天津;12 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 基于 惯性 测量 元件 三维 定位 系统 | ||
1.一种基于惯性测量元件的三维定位系统,其特征在于该系统包括数据采集终端与服务器端;所述数据采集终端包括传感器模块、第一微控制器、第一无线模块,所述第一微控制器的输入端连接传感器模块,第一微控制器的输出端连接第一无线模块,传感器模块、第一微控制器、第一无线模块集成在一起,数据采集终端固定在行人腰部;所述服务器端包括第二无线模块、第二微控制器、PC机,所述第二微控制器的输入端通过第二无线模块与数据采集终端的第一无线模块连接,第二微控制器的输出端连接PC机;所述传感器模块包括9轴惯性传感器模块和带温度补偿的气压传感器模块,所述第一微控制器内加载有行人航位推算方法;
数据采集终端的工作方式为:
1)上电后,完成系统初始化、步数清零、获取初始欧拉角,开启第一微控制器中的定时器,定时25ms,定时时间到达之后对行人行走过程中的线性加速度进行采样,获取行人的线性加速度;
2)根据线性加速度的值判断是否达到计步阈值,若线性加速度的值不小于计步阈值则返回继续判断是否到达定时时间;若线性加速度的值小于计步阈值,则使用滑动窗口的方法求谷值,再判断当前采样点是否为谷值,若不为谷值则返回继续判断是否到达定时时间;若为谷值,则达到计步条件,步数加一,再利用线性加速度采样点的谷值结合行人的步频对步长进行估计;
3)延时250ms,判断延时时间是否到达,若到达延时时间则进入步骤4);
4)读取9轴惯性传感器模块中当前欧拉角的值,结合初始欧拉角对当前的欧拉角进行校正,然后通过第一无线模块将校正后的欧拉角、步骤2)得到的估计后步长、从气压传感器模块中读取的温度及高度信息发送到服务器端。
2.根据权利要求1所述的基于惯性测量元件的三维定位系统,其特征在于所述行人航位推算方法包括步伐检测、步长推算、方向推算三个部分,通过行人身上携带的9轴惯性传感器模块中的三轴加速度计的输出数据与计步阈值比较,判断行人是否跨出一步,若成功检测到行人跨出一步,则根据行人走动时9轴惯性传感器模块的航向角输出和估计的步长l来计算行人跨步完成后的位置坐标;若已知行人第k-1步的位置坐标为(Xk-1,Yk-1),则其第k步的位置坐标(Xk,Yk)为:
3.根据权利要求1所述的基于惯性测量元件的三维定位系统,其特征在于9轴惯性传感器模块的型号为LPMS-ME1,气压传感器模块的型号为BMP180;所述第一微控制器的核心芯片为STM32芯片;所述第二微控制器的核心芯片选用STM8L101芯片;所述第一无线模块和第二无线模块为CC1101无线数据传输模块。
4.根据权利要求3所述的基于惯性测量元件的三维定位系统,其特征在于所述第一微控制器的核心芯片为STM32F103ZET6芯片。
5.根据权利要求1所述的基于惯性测量元件的三维定位系统,其特征在于,计步阈值设定为-0.23。
6.根据权利要求1所述的基于惯性测量元件的三维定位系统,其特征在于服务器端的工作方式为:
1)系统初始化,导入Python中的串口、matplotlib模块,定义串口子线程,以七个字节为单位接收串口数据;
2)判断在3s内是否接收到7个字节的串口数据,如果没有接收到,则程序结束,如果接收到,则根据接收到的串口数据中第二个字节的值,继续判断第二个字节是否为0x00~0x02;
3)若第二个字节为0x00~0x02,则调用程序中的cal_position方法,再判断第二个字节是否为0x00,若第二个字节为0x00,表示步数清零,再返回判断在3s内是否接收到7个字节的串口数据;若第二个字节不为0x00,则判断第二个字节是否为0x01,若第二个字节为0x01,表示步数加一并获取航向角,再返回判断在3s内是否接收到7个字节的串口数据;
若第二个字节不为0x01,则获取步长计算行人二维坐标,实时更新二维定位图,程序结束;
若第二个字节不为0x00~0x02,则判断第二个字节是否为0x10,若第二个字节不为0x10,则判断第二个字节是否为0x20,若第二个字节为0x20,则调用程序中的altitude方法,获取高度信息并将高度信息打印到命令行窗口,再返回判断在3s内是否接收到7个字节的串口数据;若第二个字节不为0x20则返回判断在3s内是否接收到7个字节的串口数据;
若第二个字节为0x10时,调用程序中的temperature方法,获取温度信息并将温度信息打印到命令行窗口,再返回判断在3s内是否接收到7个字节的串口数据。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于河北工业大学,未经河北工业大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810686836.X/1.html,转载请声明来源钻瓜专利网。





