基于ARM-STM32的手势感应无线遥控小车

2016-05-17 11:18长江大学电子信息学院潘宗春王小刚
电子世界 2016年8期

长江大学电子信息学院 潘宗春 王小刚 孙 健 石 胜



基于ARM-STM32的手势感应无线遥控小车

长江大学电子信息学院 潘宗春 王小刚 孙 健 石 胜

【摘要】手势感应无线遥控小车是基于MEMS加速度传感器的手势检测技术,采用手持板倾斜时加速度向量幅值和微分加速度幅值的绝对平均值描述手势的运动状态,进而控制小车的执行动作。兼顾算法的准确性和实时性的同时具备防止误触发,设计采用多级探测的思想,在检测时设定阀值。当检测出手势姿态变化超过设定的阀值时,处理器才会发出相关指令,使小车执行相关动作。小车与指令发射端通过无线模块NRF244L01进行通信,控制范围更广泛。

【关键词】STM32F4;M4内核;无线收发;倾角检测

1 引言

无线传输已广泛应用于各个领域,与传统的有线传输相比,无线传输无需布线,在安装,监控节点增加和节点的移动等方面都比较方便[1]。本作品使用无线传输系统将手势通过处理之后生成指令发送给小车,使小车拥有更灵活的执行动作和更广泛的运动范围。基于ARM-STM32的手势感应无线遥控小车采用MEMS加速度传感器感应使用者的手势变化来控制小车的运行动作[2],在小车行进的同时通过使用者持板的角度控制小车的转向角度,保证小车控制的实时性和准确性。

在恶劣狭小等人体不宜进去但肉眼可观察的区域以及火灾、排雷等存在危险的地方[3],基于ARM-STM32的手势感应无线遥控小车能行动自如,代替人执行任务。

2 系统方案

基于ARM-STM32的手势感应无线遥控小车主要涉及的模块有手持端控制板,小车控制板、加速度传感器模块、无线信号通讯模块以及电机驱动模块。下面为各模块的选型方案比较

2.1手持端及小车控制板模块论证

手持端控制板主要用来采集手持板的倾斜角度,通过无线传输给小车控制板;小车控制板根据接收到的信号经过处理运算后修正小车的运行姿态,包括小车前进、后退、左转弯、右转弯和速度控制等。

选择STM32F4-DISCOVERY作为手持板硬件平台,该硬件平台上集成硬件资源丰富[4],具备集成仿真器,加速度传感器,MEM话筒,音频功放芯片等资源,而且加速度计适合本设计使用。

选择 STM32F103MINI板作为小车控制板控制平台,MINI板拥有丰富的例程,板上外设齐全,功耗小,价格合适。

2.2加速度传感器模块论证

加速度传感器是判断小车运行状态的核心器件,通过对手持板状态的采集从而来控制小车的运行状态。常用的加速度传感器有ADXL345三轴加速度传感器,使用I2C接口,精度高,数据稳定,需要另外添加模块。选用STM32F4-DISCOVERY作为硬件平台时,板上自带加速度传感器LIS302DL,使用SPI接口,而且加速度计适合本设计使用。综合上述,采用STM32F4-DISCOVERY自带的加速度传感器。

2.3无线信号通讯模块论证

无线信号通讯模块主要实现手持板与小车控制板间的通讯,用来传输加速度传感器采集的手持板状态。选择红外无线通讯模块作为通讯模块,红外收发模块结构较为简单,搭载方便,但是红外通讯范围小,传送速度慢,容易被干扰。选择无线NRF24L01通讯模块,NRF24L01收发速度快,传输距离远,使用SPI接口,传输更稳定。综合上述,选择无线NRF24L01通讯模块。

3 系统硬件设计

3.1加速度传感器模块

ST公司的LIS302DL 小型低功耗(低于1mW)MEMS三轴线性加速度计,具有线性的数字输出[5],包括有传感元件和能通过I2C/SPI串行接口提供测量加速度的IC接口,满刻度量程是±2g/±8g,数据输出速率是100Hz或400Hz,广泛应用在自由降落检测,运动检测,游戏和虚拟现实输入设备以及震动检测和补偿等。图1所示为LIS302DL电路图。

图1 加速度传感器

图2 无线通讯模块

3.2无线信号通讯模块

NRF24L01是工作在2.4GHz~2.5GHz的ISM 频段的单片无线收发器芯片。无线收发器包括:频率发生器、增强型“SchockBurst”模式控制器、功率放大器、晶体振荡器、调制器和解调器。输出功率频道选择和协议的设置可以通过SPI 接口进行设置。几乎可以连接到各种单片机芯片,并完成无线数据传输工作。其接线图如图2所示。

3.3电机驱动模块

电机驱动采用飞思卡尔公司5A集成H桥芯片MC33886。MC33886芯片内置了控制逻辑、电荷泵、门驱动电路以及低导通电阻的MOSFET输出电路,适合用来控制感性直流负载,可以提供连续的5A电流,并且集成了过流保护、过热保护、欠压保护。接线图如图3所示。

图3 驱动模块

4 系统软件设计

本系统软件设计分为两个部分:手持部分、小车部分。手持部分使用STM32F407作为平台,应用stm32f4-discovery上自带的加速度传感器检测手势的变化,使用无线模块NRF24L01作为通讯模块向小车发送动作指令。手持部分程序流程图如图4所示。小车部分接受手持部分的数据进行处理之后驱动小车,具体软件流程图如图5所示:

图4 手持端软件流程图

图5 小车端软件流程图

5 评测与结论

本系统采用加速度计代替传统的按键式遥控器,既可以实现小车的无极转向,也更加方便、灵活的操作控制小车,使遥控小车更具有可控性,趣味性,以及准确实时性。基于ARM-STM32F4的手势感应无线遥控小车可以实现根据使用者的持板手势顺利流畅的完成前进、后退、左转、右转、急停等动作,完成了预期的方案。下一步可以增加小车的避障、寻迹、图像采集、图像的无线传输及组网等拓展,实现小车的智能化、多功能化。

参考文献

[1]谭勇宏,张辉.智能寻迹小车的研究与设计[J].微计算机信息,2008,3-2:310-312.

[2]盛朝强,张瑞成,周志忠.基于微处理器的智能车图像采集与识别算法研究[J].传感器与微系统,2011,30(8):22-24.

[3]李国柱.智能车起跑线识别算法及停车策略[J].价值工程,2012(18):166-167.

[4]王绍坤.基于ARMS的无线遥控车系统设计与实现[D].长春:吉林大学,2011.

[5]宋永献,马娟丽,贺乃宝,等.基于TMS320F2812的智能循迹小车控制系统设计[J].计算机测量与控制,2011,19(9):2128-2130.

潘宗春(1992—),男,大学本科,主要研究方向:嵌入式技术。

王小刚(1993—),男,大学本科,主要研究方向:检测技术与自动控制。

孙健(1993—),男,大学本科,主要研究方向:检测技术与自动控制。

石胜(1993—),男,大学本科,主要研究方向:检测技术与自动控制。

作者简介:

基金项目:长江大学大学生创新训练计划,批准文号2014014。