Micro:bit系列教程6:加速度传感器

来自丢石头百科


本章将介绍Micro:bit加速计的使用,可采用Micro:bit进行姿态检测,运动捕捉等。


1.基本介绍

    Micro:bit采用的是Freescale MMA8653FC 三轴加速度传感器,I2C接口与外部通信,10位ADC精度,可设置量程为±2g,±4g,±8g,数据最大更新速率为800Hz。


    当Micro:bit处于静止或匀速运动状态时,加速计仅检测到重力加速度;将Micro:bit轻微甩动,加速计检测到甩动的加速度远小于重力加速度,可忽略不计,因此,在使用Micro:bit过程中,主要是检测当姿态变化时,重力加速度在x,y,z轴上的变化,并在此基础上应用。


    本章,将介绍加速度传感器对几个特殊姿态的检测,之后来查看俯仰,横滚角,最后,查看加速计输出的三轴原始数据。


2.Micro:bit特殊姿态的检测

    打开makecode,采用积木块的方式编写以下程序:



184016u68z811sumsr1w3d.png


下载,观察现象:


震动

将Micro:bit晃动,则可见Micro:bit显示数字1,表明,只要有晃动,无论朝哪个方向晃动,该条件都将满足。


徽标朝上

徽标指的是Micro:bit上Micro:bit这几个字以及Logo,徽标朝上示意图如下所示:



184016z61fer3ahqtf6ef3.jpg


由图可得,当徽标朝上的时候,能够显示数字2。


徽标朝下

同理,徽标朝下指的是Micro:bit上Micro:bit这几个字以及Logo朝下,徽标朝下示意图如下所示:



184017cf4ajf7dz67ak4m6.jpg


由图可得,当徽标朝下的时候,显示的是数字3(倒立的3):


屏幕朝上

    屏幕朝上指的是LED点阵朝上,当LED点阵朝上时,显示数字4。


屏幕朝下

       同理,屏幕朝下指的是LED点阵朝下,当LED点整朝下时,显示数字5


向左倾斜

       如图为Micro:bit向左倾斜示意图:



184018g5gegztb5w5i4gwz.jpg

注意Micro:bit向左倾斜为正面朝上,徽标朝前,然后再往左边倾斜,当向左倾斜时,Micro:bit显示数字6。

向右倾斜

       同理,Micro:bit向右倾斜的示意图:

184018fez8hkttoy8altyt.jpg


注意Micro:bit向右倾斜为正面朝上,徽标朝前,然后再往右边倾斜,当向右倾斜时,Micro:bit显示数字7。


自由落体

       举例:当不小心碰到Micro:bit使其从桌面掉落,则为做自由落体运动,此时,满足自由落体的条件,此时,将显示数字8。


3g,6g,8g

       如果需要满足此条件,则需要达到3倍,6倍,8倍重力加速度甩动Micro:bit。


3.旋转、横滚角

打开makecode,采用积木块的方式编写以下代码:



184019e7daltvlz9oqiki9.png


注意,需要将串行重定向到USB,同时,建议使用离线版本的makecode(可查看串口数据)。


    下载程序,待程序下载完成后,可看到makecode的显示数据按钮,如下图所示:



184019rnubuq700wun5zdq.png


点击该按钮,进入到串口数据显示界面,该界面同时将串口数据以波形的形式显示出来,如下图所示:



184020v3fiwk3kfzba13hp.png


正确显示出波形后,将Micro:bit徽标朝前,屏幕(LED点阵)朝上,依次将Micro:bit向前倾斜,向后倾斜,向后倾斜,向前倾斜,得到旋转数据;然后,将Micro:bit依次向左倾斜,向右倾斜,向右倾斜,向左倾斜,得到横滚数据;具体数据变化如上图所示。


4.加速计原始数据

       实际上,加速计输出的原始数据是三轴加速度,姿态变化时,重力加速度在三轴上的分布将发生变化,可依据三轴加速度数据变化计算出姿态角的变化,因此,加速计原始数据在项目开发中也有一定的用途,下面将观测加速计原始数据:


打开makecode,采用积木块的方式编写以下代码:



184020nmvzc4btmunuuzvy.png


下载到Micro:bit,打开数据显示(设备)按钮:



184021z2xx7r6lfl0kx2nf.png


    首先,查阅MMA8653FC数据手册,以及Micro:bit的硬件原理图得知,Micro:bit加速计坐标轴如下图所示:



184021acrsw7145ruw12i1.png


显示出如下界面:分别显示了加速度在X轴,Y轴,Z轴的分解,以及加速度的合成(重力加速度及其它外力作用的加速度合成):



184022vx13cyqewcyb8e1x.png

    实验中,先将加速计Z轴朝上,然后再将加速计X轴朝上,最后将加速计Z轴朝上,可得数据变化如上图所示。