查看: 1342|回复: 6

[讨论] 掌控板加速度传感器小记及摇一摇功能

[复制链接]
本帖最后由 Forgotten 于 2020-8-28 11:28 编辑

记录一下对于加速度传感器的了解,仅供参考。
使用硬件为:掌控板
软件为:Mind+


使用如下程序,直接显示加速度传感器数值:
截图201905120021133894.png

将板子放置不同的状态:
1、水平躺下屏幕朝上,Z值偏离0最大,接近-1左右。(注意:最新版Mind+已经将输出单位从g改成了m-g,因此输出值在本文基础上乘以1000)
类推水平躺下屏幕朝下,应该是1左右(最新版则是1000左右)
截图201905120020471015.png
2、左短边侧立,Y值偏离最大,接近-1。(最新版则是-1000左右)
类推右短边侧立,接近1(最新版则是1000左右)
截图201905120023033368.png
3、长边侧立按键在上,X轴偏离最大,约为1.(最新版则是1000左右)
类推长边侧立按键在下,则x轴接近-1(最新版则是-1000左右)
截图201905120023257824.png



原因:
此加速度芯片受到向下的重力加速度影响,向下的方向是1g的加速度,因此:
当板子水平放置时,z轴就会收到1g左右的加速度。
同理板子竖直放置时,x轴有1g左右加速度,侧立放置时,y轴有1g左右加速度。
截图201905120031259449.png

那么这个功能有什么用呢?
答案是姿态感知,当你知道xyz三个方向上的加速度时(静止状态),通过三个方向上的分力即可得知当前板子的姿态(因为合力也就是重力加速度总是朝下的)
截图201905120040094170.png

以上为板子静止(相对地球)时的加速度,如果把板子甩起来呢?那么对应方向上就会出现加速度增加(正负)的情况,这样就知道当前板子是静止还是运动了。

发现还有一个“强度”的选项,这个其实是三个分量的矢量和,如果板子静止的时候,这个值总是接近1g。
截图201905120045163668.png
这个模块最常用的应用就是“摇一摇”的功能了,因为是三个方向的合力,因此只要这个值大于某个值,那么就是板子在摇一摇的状态了。

使用如下程序测试:
截图201905120048216001.png
如何实现随时感应而不是每次都要循环判断?偷懒点的做法当然是使用“多线程”功能了。
截图201905120050277476.png
先记录到这里,以后有时间再补充。

KIKIYA  高级技匠

发表于 2019-5-12 01:01:45

亮哥 该睡觉了
回复

使用道具 举报

Forgotten  版主
 楼主|

发表于 2019-5-12 23:10:58


回复

使用道具 举报

Storm  初级技师

发表于 2020-2-10 15:40:42

看懂了摇一摇的原理,哈哈。
回复

使用道具 举报

youjingisland  初级技师

发表于 2020-2-11 23:09:31

参考一下
回复

使用道具 举报

DFandi  学徒

发表于 前天 16:36

想知道把加速度单位改成mg有哪些好处?
回复

使用道具 举报

Forgotten  版主
 楼主|

发表于 8 小时前

DFandi 发表于 2020-11-29 16:36
想知道把加速度单位改成mg有哪些好处?

方便低年级学生理解吧
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

为本项目制作心愿单
购买心愿单
心愿单 编辑
[[wsData.name]]

硬件清单

  • [[d.name]]
btnicon
我也要做!
点击进入购买页面
上海智位机器人股份有限公司 沪ICP备09038501号-4

© 2013-2020 Comsenz Inc. Powered by Discuz! X3.4 Licensed

mail