基于ARM嵌入式及MPU—6050的体感光立方

2019-05-13 10:15钟山黄鹏王锐代鹏肖茹双
数字技术与应用 2019年1期
关键词:原始数据加速度计蓝牙

钟山 黄鹏 王锐 代鹏 肖茹双

摘要:在传统单片机控制的光立方基础上,使用高精度陀螺加速度计MPU-6050对光立方使用者的手指姿态进行判断。为解决单片机数据解算速度问题,主控系统采用STM32F103ZET6芯片,通过蓝牙将MPU-6050的原始数据发送至嵌入式主控系统。嵌入式主控系统MPU-6050原始数据进行处理,根据预设数据模型,得出使用者的手指姿态。当使用者的做出不同手势时,光立方显示对应动画,实现了手势控制光立方的目的。

关键词:光立方;蓝牙;MPU-6050;手势识别

中图分类号:TP273 文献标识码:A 文章编号:1007-9416(2019)01-0046-02

0 引言

随着信息技术的不断发展,LED显示屏广泛应用于各行各业,大多数LED都是二维显示屏,由于应用的不断加深,三维LED显示技术应运而出,这就是LED光立方[1],光立方是一种通过单片机控制的LED三维显示阵列,一般的光立方为8×8×8模式,由单片机、锁存器、译码器等电器元件驱动,利用单片机控制外部电路进行并行输出,通过层选和位选控制每一个LED灯的开关,每一帧图像一般持续50ms左右,在不断的图像切换过程中,实现连续的动画效果。

1 体感光立方硬件设计

光立方主要通过STM32F103ZET6[2]作为主控芯片,附加外围电路,MPU-6050 通过蓝牙通信的方式将数据传输至主控,主控芯片通过两片74HC245芯片扩展接口,一片74HC245芯片通过74HC138译码器实现光立方层选,另一片74HC245芯片通过将数据串行传输至8片74HC595芯片级联的驱动电路实现位选。通过不断的刷新画面,实现动画效果。如图1所示。

1.1 嵌入式主控STM32F103ZET6

STM32F103系列使用高性能的 ARM Cortex -M3的RISC内核,工作频率为72MHz,内置高速存储器(高达512K字节的闪存和64K字节的 SRAM),丰富的增强I/O端口和联接到两条APB总线的外设。所有型号的器件都包含3个12位的ADC、4个通用16位定时器和2个PWM定时器,还包含标准和先进的通信接口:多达2个IIC接口、3个SPI接口、2个IIS接口、1个SDIO接口、5个 USART接口、一个USB接口和一个CAN接口。STM32F103系列工作于-40°C至+105°C的温度范围,供电电压2.0V至3.6V,一系列的省电模式保证低功耗应用的要求。本系统中使用该系列嵌入式系统主要用于MPU-6050原始数据的处理和手势姿态的判别,并输出对应动画。

1.2 六轴加速度计MPU-6050

MPU-6050为全球首例整合性6轴运动处理组件,它集成了3轴MEMS陀螺仪,3轴MEMS加速度计,免除了组合陀螺仪与加速度计之间时轴差的问题。本文采用MPU-6050作为体感模块[3],通过蓝牙模块将原始数据传输至嵌入式主控系统,在嵌入式主控系统中对MPU-6050的原始数据进行数据融合,得到X,Y,Z轴加速度,然后分别对其X,Y,Z轴加速度求解反余弦函数,得到X,Y,Z轴倾角,从而计算出当前光立方位置信息。计算过程如图2所示。

1.3 74HC595驱动电路

本文使用8片74HC595[4]作为位选驱动电路。74HC595是一個8位串行输入、并行输出的位移缓存器:并行输出为三态输出。在SCK 的上升沿,串行数据由SDL输入到内部的8位位移缓存器,并由Q7'输出,而并行输出则是在LCK的上升沿将在8位位移缓存器的数据存入到8位并行输出缓存器。当串行数据输入端OE的控制信号为低使能时,并行输出端的输出值等于并行输出缓存器所存储的值。而当OE为高电位,也就是输出关闭时,并行输出端会维持在高阻抗状态。

1.4 APM4953驱动电路

APM4953内部包含两个独立的,P沟道金属氧化物场效应管。它有超低的导通电阻,适用于LED显示驱动,也可以做PWM开关和负载开关。本文所设计光立方为层共阳接口,通过74HC138译码器输出控制APM4953驱动电路[5]层选。

2 程序流程

在主控系统成功初始化之后,对MPU-6050进行自检,若自检成功,则开始接收来自蓝牙串口的MPU-6050原始数据,自检不成功,重新进行系统初始化。在接收到原始数据后,主控系统对原始数据进行处理,完成倾角计算,姿态判断,并且输出对应动画。在完成一帧图像后,重新接收新的原始数据,实现动画效果。软件流程图如图4所示。

3 结语

本文在传统的光立方基础上,创新采用了6轴加速度计MPU-6050,通过蓝牙将MPU-6050原始数据发送给嵌入式主控系统。通过对MPU-6050数据的一系列处理,成功实现了光立方使用者手指姿态的判断,并且根据不同的姿态输出不同的动画,完成了传统光立方不具备的体感功能,这是对于光立方的一种创新改进,对于广大光立方爱好者具有相当的指导意义,同时具有一定的市场价值。

参考文献

[1] 李振国,高敏.基于单片机的光立方设计与制作[J].计算机产品与流通,2018(02):270.

[2] 刘志龙,吴昊.STM32F103ZET6芯片在LED显示屏控制应用中的探索[J].科技创新与应用,2014(04):30-31.

[3] 徐鹏杰,张凤生,刘延杰,任锦霞.基于MPU6050的人体倾角姿态数据检测系统设计[J].国外电子测量技术,2018,37(03):117-120.

[4] 李宗瑛.STC89C52单片机控制8×8 LED点阵系统的设计[J].数字技术与应用,2018,36(02):17-18.

[5] 唐康,刘耀联,韩帅,王羽,严月.基于STM32的3D16光立方设计[J].电子技术与软件工程,2015(23):119-120.

Abstract:On the basis of optical cube controlled by traditional single chip computer, the finger gesture of optical cube user is judged by using high precision gyro accelerometer MPU-6050. In order to solve the problem of data processing speed of single chip computer, the master control system uses STM32F103ZET6 chip, and transmits the original data of MPU-6050 to the embedded master control system through Bluetooth. The original data of the embedded master control system MPU-6050 is processed, and the gesture of the user's finger is obtained according to the preset data model. When the user makes different gestures, the optical cube displays corresponding animation, which realizes the purpose of controlling the optical cube by gestures.

Key words:optical cube; bluetooth; MPU-6050; gesture recognition

猜你喜欢
原始数据加速度计蓝牙
GOLDEN OPPORTUNITY FOR CHINA-INDONESIA COOPERATION
蓝牙音箱的直线之美
基于加速度计的起重机制动下滑量测量
简单、易用,可玩性强Q AcousticsBT3蓝牙音箱
适合自己的才是最好的 德生(TECSUN) BT-50蓝牙耳机放大器
全新Mentor DRS360 平台借助集中式原始数据融合及直接实时传感技术实现5 级自动驾驶
基于遗传算法的加速度计免转台标定方法
紧急:蓝牙指尖陀螺自燃!安全隐患频出
常温下硅微谐振加速度计零偏稳定性的提高
四加速度计组合的测试方法研究