基础实验——三轴传感器

加速度传感器是一种能够测量加速度的传感器。通常由质量块、阻尼器、弹性元件、敏感元件和适调电路等部分组成。传感器在加速过程中,通过对质量块所受惯性力的测量,利用牛顿第二定律获得加速度值。根据传感器敏感元件的不同,常见的加速度传感器包括电容式、电感式、应变式、压阻式、压电式等。
三轴加速度传感器用途广泛,可以计算物体倾斜角度,加速度以及通过算法来计算步数,比如日常用的手环计步。
ZTMR开发板上集成了一款三轴加速度计芯片(MMA7660FC)(U8),可以直接通过编程使用。


MMA7660FC

MMA7660FC是一个数字输出(I2C),超低功率,紧凑型电容式微电机加速计,它具有低通滤波器,0g偏移和增益误差补偿,6位分辨率,用户可配置输出速率等功能。该器件通过中断引脚(INT)可以提供传感器数据变化、产品方向和姿态识别等中断。MMA7660FC采用非常小的3毫米x3毫米x0.9毫米DFN封装。

测速原理

MMA7660FC 三轴加速度计的使用原理很简单,就是在 x、y、z 各个方向根据
受力情况通过数据方式呈现。测量结果范围是-32 至 31,大约为-1.5g 至 1.5g(g
为重力加速度,9.8m/s^2)。我们只需要知道以上 3 个方向的值,便可以计算出
各个方向的加速度。原理入下图:
在这里插入图片描述

加速度传感器实验

所选设备

MR开发板
在这里插入图片描述

基本案例

import pyb

acc=pyb.Accel()
while True:
	pyb.delay(1000)
	print(acc.x())          #读取X轴参数

上述例子返回-30到30之间的带符号的角度值。注意其测量结果不算精准,着意味着即使保持完全静止不动依旧会有测量数据出现。因此,x () 方法得到的数据不能当成精确值使用,而应视其为一定精度的范围值。
在这里插入图片描述

示例代码:制作水平仪

Created with Raphaël 2.2.0 导入模块 初始LED 根据获取的值亮对应的灯 像那边倾斜对应LED就亮 yes
import pyb

xlights = (pyb.LED(2), pyb.LED(3))  #绿灯,黄灯
ylights = (pyb.LED(1), pyb.LED(4))  #红灯,蓝灯
  
accel = pyb.Accel()
SENSITIVITY = 1        
  
while True:
	x = accel.x()
	if x > SENSITIVITY:
		xlights[0].on()
		xlights[1].off()
	elif x < -SENSITIVITY:
		xlights[1].on()
		xlights[0].off()
	else:
		xlights[0].off()
		xlights[1].off()
        
	y = accel.y()
	if y > SENSITIVITY:
		ylights[0].on()
		ylights[1].off()
	elif y < -SENSITIVITY:
		ylights[1].on()
		ylights[0].off()
	else:
		ylights[0].off()
		ylights[1].off()
	  
	pyb.delay(100)

相关推荐
©️2020 CSDN 皮肤主题: 鲸 设计师:meimeiellie 返回首页