今天分享的这个技术,经常看一些电子展会的人可能会比较熟悉。类似乐视的游戏盒子,不同的是我们的设计需要穿一些传感器在身上。这个设计已经在机器人设计中得到了应用。
这个项目的设计初衷是想建立一个完整的身体游戏控制器,也可用在一些动画三维模型设计中。四肢分别安装4个传感器,传感器的数据通过蓝牙发送到PC上,PC上的上位机分析这些数据,并将三维动作展示在显示屏上。
下面是这个设计的演示视频:
惯性测量单元(IMUs)使用的是博士的BNO055,BNO055 集合多种传感器,包括:3轴12-bit加速度传感器,3轴地磁传感器和3轴16-bit陀螺仪,并内置Atmel 32-bit MCU以处理各类传感器相互间软件运算,是目前最小尺寸支持Windows 8.1的Sensor-hub产品。既可单独提供三类传感器(加速度/地磁/陀螺仪)的单一数据,亦可提供组合数据,透过内置 MCU 计算,为智能手机、穿戴设备等产品提供更多方面的应用支持。点击下载BNO055的数据手册
BNO055传感器的数据通过只有2根地址线的I2C进行数据传输,在传输之前,通过PCA9548A进行这些数据的控制(多路复用)。PCA9548A是一款通过I2C总线控制的八进制双向转换开关,增加了可传输的传感器数量。
在PC端,使用了Blender进行三维设计。Blender是一款开源的跨平台全能三维动画制作软件,提供从建模、动画、材质、渲染、到音频处理、视频剪辑等一系列动画短片制作解决方案。有了 Blender 后,喜欢 3D 绘图的玩家们不用花大钱,也可以制作出自己喜爱的 3D 模型了。它不仅支持各种多边形建模,也能做出动画!Blender源文件在附件里下载。
同时附件里提供了使用arduino作为微控制器的BNO055源码。
BNO055的价格较一般的惯性测量元件较贵,mouser上单价为84元,感兴趣的可以用其他传感器取代。