part1 硬件介绍
STEVAL-MKSBOX1V1(SensorTile.box)是具有无线物联网和可穿戴传感器平台的即用型套件盒,很适合各类开发人员使用,可以选择板上的传感器,设置参数,数据和输出类型以及可用的特殊算法来定制应用程序。无需执行任何编程即可快速轻松地设计无线物联网和可穿戴传感器应用。
组成部分:
主控:ARM Cortex-M4(STM32L4R9)
传感器:STT751,HTS221,LPS22HH,LI2DW12,LSM6DSOX等,并且拥有BlueNRG-M2蓝牙模块
part2 任务
- 任务目的
使用SensorTile.box 立方体较大的四个面,实现四个不同的功能,如:
-
面1,测量桌面倾斜程度;
-
面2,测量温度;
-
面3,测量湿度;
- 面4,测量气压;
2.任务分解
使用四个面实现四个功能必须首先判断四个面:通过对立方体案例的分析,重力加速度的变化比较好判断,在各个面上重力加速度三个方向上的分量就可以显示明显的变化。
在1面向上时 z分量接近1(实际选择大于 0.65) xy分量选择绝对值均小于0.35
在2面向上时 y分量接近-1(实际选择小于-0.65) xz分量选择绝对值均小于0.35
在3面向上时 z分量接近-1(实际选择小于-0.65) xy分量选择绝对值均小于0.35
在4面向上时 y分量接近1(实际选择大于 0.65) xz分量选择绝对值均小于0.35
然后通过与运算来决定各个传感器的调用和输出。
3.搭建环境:
1、algoBuilder
2、stm32cubeprogrammer
3、stm32cubeide或者mdk或者iar
part3 功能实现流程
题目一主要判断条件
题目二三四的判断条件
各个平面的辅助判断条件框图
此次的流程图主要使用重力加速度计的变化来判断各个面
1面的运算主要使用倾斜传感器
本框图分别使用mode1、mode2来输出俯仰、滚动、重力倾角和theta,、psi 、 phi方向上的角度
234面主要使用温度传感器、湿度传感器、气压传感器
并且添加缓冲数组来控制数值的输出
在翻转各个面时,可以通过查看当前板卡模型的状态来实时判断当前sensorTile.box向上的方向。
下面是我整个的流程图设计(另有附件)
遇到的问题
各个传感器可以右键添加判断条件,在输入1时可以可开启传感器,输入0时关闭传感器
part4结果展示
1面显示当前桌面的倾斜度
可以通过倾角传感器(Tile.Sensoring)mode1、mode2来输出俯仰、滚动、重力倾角和theta,、psi 、 phi方向上的角度。
同时可以使用四元数融合的3D模型来显示当前的倾斜角。
2面显示当前的温度
可以通过数值显示当前的温度
也可以通过图像界面绘制当前温度的折线图
3面显示当前的湿度
当然也可以使用图像绘制工具显示当前湿度的折线图
4面显示当前的压强
通过实时输出当前的压强的准确值和图像绘制工具显示当前压强的折线图
part5 心得体会
本期Funpack活动让我感受到了st公司的生态强大,可以使用各种开发工具来创作。同时感谢热心网友对我的帮助。