自从X-NUCLEO-IKS01A3测试板上的各个传感器分别测试成功后,便开始了应用的尝试。由于传感器评估板体积不小,不方便做穿戴式或便携式的应用,因此我的应用项目仅仅是将传感器的检测数据集中显示。受到LCD5110显示屏幕所限,一次无法显示太多的内容,只好通过分屏显示来实现。为了方便应用,我还开启了RTC日历功能,通过SysTick的毫秒计时,进行秒计时,每满60秒读取一次RTC数据,更新年月日时分秒数据。整个应用的功能大致安排如下:
1、温湿度及气压检测显示;
2、磁场方向检测显示;
3、加速度运动检测显示;
4、放置方位检测显示;
5~10、调整年月日时分数值界面;
11、联机自动传送;
12~15、前四项检测显示自动循环,每隔10秒自动切换一次检测显示内容。
各项功能的切换是通过用户按键来完成的,长按按键可以进行功能切换。
下图是开机时的界面:
系统进入主循环后,首个屏幕是显示温度、湿度和气压数据,如下图所示,这些数据每秒更新一次。
通过按下用户按键就可以进入下一显示界面。第二屏幕显示的是磁场方向,如下图所示:
从磁场强度的x,y,z轴数据来辨别方向花费了我不少的时间,我通过量角器确定好方位,然后每次旋转评估板10度,记录一次x,y,z三轴的数值。
首先确定好方位,然后记录x,y,z轴的数值:
通过统计观测发现方向主要与x,y轴数值相关,与z轴的数值关系不明显,参见下表:
我将上述x,y轴的数据标注在直角坐标系中,可以看出数值集中在第三、四象限上,方位基本形成了一个圆形。我按照十六方位进行了粗略的划分(下图黄色分界线所示,红点表示需要得到的方位),通过获得的x,y值来大致判断评估测试板的方位朝向。由于不需要精密显示,基本上可以满足评测需要。
下图是测试过程中的部分图片:
第三个屏幕是加速度运动数值显示,在这个状态下可以粗略地记录评测板的运动,只要晃动评估板,运动数值就会自动增加。
第四个屏幕是显示评估板的放置位置,可以显示出评估板是平放、侧立或者是反面放置。这个功能作为无人机飞行器的姿态监测可能作用更大,在我当前的应用中没有什么实质意义。
本来还准备添加一个振动检测的界面,但多次测试均不理想,而且功能与加速度运动有相似之处,最后放弃了。
下面是日期时间设置的界面,此处简单略过,不作细述。
之后的功能是自动连机通讯,即在电脑上图形显示传感器的部分数据;
在这个模式下,启动电脑上的Unicleo-GUI程序,连接评估板即可,参见下图:
最后是自动循环功能,进入这个功能后,每隔10秒钟自动切换显示内容,即在温湿度气压显示、磁场方向显示、运动监测显示和评估板姿态显示之间循环切换。在进入自动循环功能后长按用户按键即可退出自动循环,进入到第一个显示温湿度气压的界面。
下图是自动循环功能中显示温湿度及气压值:
下一步的应用是准备用这个评估板做一个家庭安防用的智能小车,利用磁场方位来引导小车自运巡航,已经着手在准备材料,后续进展会随时跟进的。
此内容由EEWORLD论坛网友hujj原创,如需转载或用于商业用途需征得作者同意并注明出处