本文描述了如何在IIS2ICLX上配置机器学习核心(MLC),以实现-20至+20度范围内的倾斜角度检测,即设备的当前倾斜度。使用的硬件是带IIS2ICLX适配器的ProfiMEMS(STEVAL-MKI209V1K),MLC输出使用Unico GUI进行可视化。

目录
 

  1. 为什么准确测量物体的倾斜角度很重要?
  2. 问题场景
  3. 传感器配置
  4. 数据收集
  5. 算法配置
  6. 使用Unico GUI实现数据可视化
 

为什么准确测量物体的倾斜角度很重要


物体或结构倾斜角(倾斜度)的精确测量越来越重要,尤其是在工业和结构预测性维护(IIoT)领域以及资产良好状态的监测中。对基础设施进行持续实时监控对于防止人员和物体受到严重损坏非常重要。IIS2ICLX智能倾角仪(高精度低功率双轴加速度计)是实现这一目标的理想传感器,因为它结合了倾角仪的精度和智能传感器的数字核心。
 

问题场景


在本文中,通用参考设计STEVAL-MKI109V3(ProfiMEMS工具)与IIS2ICLX倾角仪STEVAL-MKI209V1K适配器和Unico GUI接口已用于数据采集和机器学习阶段。

此MLC示例实现了倾斜角,即设备的当前倾斜度,在-20度到+20度的范围内。
生成了两个具有255个节点的决策树,这些节点被配置为检测不同的类-以检测x轴(1st公司决策树)和y轴(2第二次决策树)和水平平面图。


输出可以从MLC0_SRC和MLC1_SRC寄存器中读取,并表示为二进制补码中的8位值。以度为单位的倾斜角度是通过将输出乘以0.15748度/LSB的灵敏度而获得的。
有关所涉及的传感器和两个决策树的配置的详细描述,请参阅Github文档:LINK
 

传感器配置

 

使用Unico GUI,加速度计配置为±0.5全刻度和26Hz输出数据速率。当两个检测到的倾斜角度都为0度时,参考位置是当传感器的x-y平面与重力矢量正交时。

注:角度是在感应轴和由感应轴所在的水平面和垂直面相交形成的线之间测量的。通常,感测轴所在的两个垂直平面彼此不正交,这不符合航空术语。因此,在应满足滚转角航空定义的应用中,倾斜必须始终仅应用于一个轴,而另一个轴保持垂直于重力矢量。另一个轴上的任何倾斜都会降低感应轴上的加速度(由于重力),从而导致角度计算中的误差。
 

数据收集

 

配置传感器后,可以使用Unico GUI直接获取数据,并以正确的方式标记数据日志。
值得注意的是,这里没有考虑典型的传感器误差(如零g偏移、灵敏度误差等)。如果需要更精确的测量,则必须进行校准,然后将其投影到计算的阈值水平中(然后需要进行程序调整)。
参考AN5536申请说明:

 

算法配置

 

A 2第二次具有5Hz的截止频率和增益=1(对于ODR=26Hz)的阶低通IIR滤波器被配置为对加速度计数据进行滤波。两个特征被用于构建决策树:滤波的加速度计数据的x轴平均值和y轴平均值。MLC以26 Hz的频率运行,在1个样本的窗口上计算功能(对应于38.5毫秒),以确保最大的响应能力。如前所述,两个具有255个节点的决策树被配置为检测不同的类。每个类别表示给定范围内的倾斜角度。不使用元分类器。为了构建决策树,可以使用Weka工具(LINK),也可以使用专用的内置程序(LINK)。
 

  • 决策树1:输出值对应于x轴和水平面之间的角度。
  • 决策树2:输出值对应于y轴和水平面之间的角度。

输出值表示为二进制补码中的8位值,对应于-20到+20度范围内的倾斜角度。当实际倾斜角度超出给定倾斜范围时,输出饱和(在最大值上)。以度为单位的倾斜角度可以通过将输出乘以0.15748度/LSB的灵敏度来获得。每当寄存器MLC0_SRC(70h)被更新为新值时,该配置在INT1引脚上产生中断(脉冲和有效高)。在这种配置中,中断脉冲的持续时间是38.5ms。
有关的更多详细信息,请访问此处-->链接
 

使用Unico GUI实现数据可视化

 

评估结果的最简单方法是使用ProfiMEMSTool教授装卸工MKI209V1KUnico GUI.运行Unico GUI,并使用微型USB电缆将插入STEVAL-MKI209V1K板的ProfiMEMSTool连接到PC。从设备名称列表中选择IIS2ICLX,保留“与主板的通信[已启用]”选项框,然后单击选择设备按钮转到加载/保存选项卡,单击负载按钮,浏览生成的UCF文件,然后单击打开按钮等待,直到文件已加载,单击开始按钮并打开数据窗口中单击数据左侧选项面板中的按钮。

MLC输出值表示为二进制补码中的8位值,必须乘以角灵敏度在的输出中提到iis2iclx_tilt_angle_DT_generator.exe程序(默认值为0.15748度/LSB)。

例如,在上图中,文本框1显示值36,文本框2显示值107。这些值对应于x轴和y轴上的倾斜。这些值表示为二的补码数,由此可以确定两者都是正数。因此,通过将它们乘以角度灵敏度,可以将它们直接转换为以度为单位的倾斜角度值:

36*0.15748=5.67度107*0.15748=16.85度