基于Android手机手势和语音控制的人机交互系统设计 作者:郭慧敏 孟游 迟少华 丁培甫
来源:《南京信息工程大学学报(自然科学版)》2019年第02期
摘要 针对普通遥控器控制智能小车的局限性,结合移动互联网的应用,提出了一种新的人机交互智能小车控制系统的研究方案——一种基于Android手机方向(重力)传感器和语音控制的蓝牙小车控制系统.以Android手机作为上位机,包括语音系统、方向(重力)传感器系统,利用蓝牙通信技术与单片机总控制中心、蓝牙模块、电机驱动模块、蜂鸣器和LED模块、避障模块等组成的下位机进行通信,实现对蓝牙智能小车的实时控制.通过实 物制作和测试,验证了系统的可操作性和实用性,同时也为智能轮椅、仓库管理等领域的实际应用奠定了一定的技术基础.
关键词 方向(重力)传感器;语音控制系统;Android 手机;无线智能控制;智能小车.
中图分类号 TN79;TP311.5
文献标志码 A
超声波马达 0 引言
人机交互技术的飞速发展,促使遥感技术蓬勃发展,人们的生活方式将渐趋智能化.让机器了解你的言语、表情和肢体语言,将给人们带来更加轻松、舒适和便捷的生活方式[1],而传统的人机交互系统远远满足不了人们的需求.
目前市场上的一些遥控车都是一个产品对应着一个遥控设备,即使可以通用的遥控设备也需要手动按键去控制[2-3],操作起来十分不便.Android设备以本身独特的开源性和可操作性的优势,迅速成为最大的智能手机操作平台,无论高端机还是低端机,大多集成了
方向传感器、语音和蓝牙系统,为本系统的研究提供了便利[4-5].相对于传统的遥控器控制技术,基于Android手机手势和语音技术的智能小车的控制方式更加方便快捷,适用于多种带有方向传感器和语音功能的Android手机.
1 系统结构
本设计着眼于无线智能设备的传感器控制[6],如Android手机、智能手表等.抛弃了传统的遥控器技术,利用App Inventor[7]作为手機软件的开发平台,通过智能手机携带的方向传感器[8]和语音系统,根据翻转手机或语音识别便可实现小车停止、前进、后退和左右转等,从而达到人机交互的目的.
通过设计带有方向感应器、语音系统和蓝牙功能的Android手机软件,与带有HC-05蓝牙模块、STC89C52RC主控制芯片、L9110H电机驱动模块和红外避障模块等硬件电路组成的智能小车控制系统,共同实现了一种新型无线控制智能小车的方法——通过摇晃手机或语音便可对小车进行控制.同时,还在下位机增加了环境检测系统.本设计框架如图1所示.
2 下位机硬件电路设计
小车设计的硬件电路由单片机总控制中心、电机驱动模块、避障模块、电源供电电路、蜂鸣器和LED控制电路等模块组成.
电视制作 2.1 电机控制模块设计
智能小车最基本的功能是行走,利用单片机驱动直流电机带动车轮的转动,但是由于单片机驱动能力有限,无法驱动大功率的直流电机,所以需要在直流电机与单片机之间加一个驱动模块L9110H.L9110H连接电机的正负极,由两个输出端,直接控制电机的正反转.原理如图2所示.
2.2 蜂鸣器模块设计
设计过程中,考虑到单片机I/O口驱动能力不能让蜂鸣器发声,需要利用8550三极管放大驱动电流让蜂鸣器发出声音.当输入为低电平时,三极管导通,集电极电流通过蜂鸣器,蜂鸣器发出声音;当输入为高电平时,三极管截止,无电流通过蜂鸣器,蜂鸣器不发声.设计原理如图3所示.
2.3 HC-05蓝牙模块
本设计选用HC-05蓝牙串口通信模块.它是主从一体的蓝牙串口模块,简单地说,就是当蓝牙设备与蓝牙设备配对成功后,可以忽视蓝牙内部的通信协议,直接将蓝牙当串口用.当建立连接时,两个设备共用一个通道也就是同一个串口,一个设备发送数据到通道中,另一个设备便可以接收通道中的数据.但是,建立这种通道连接是有一定条件的,需要先对蓝牙模块进行AT指令参数设置.
2.4 红外避障模块
该模块具有一对红外发射器和接收器,通过发射管发出红外线,当检测到前方障碍物时,发射光被接收器接收,经过电路处理,发送给主控制中心.避障距离可以利用电位器进行调节,具有装配方便和干扰小的特点,如图4所示.
3 下位机硬件程序设计
本控制系统需要小车的硬件系统作为支撑.下面分别对蓝牙接收信息传递给单片机和单片机接收信息后对电机、蜂鸣器以及LED做出相应的控制进行介绍.程序设计采用的是Keil4 for 51作为单片机程序的编程软件.
3.1 蓝牙接收系统程序USB重定向
通过蓝牙模块对接收手机端发送过来的控制指令信息进行接收处理,如停止、前进、后退、左右转等,程序流程如图5所示.
利用蓝牙模块与51单片机进行连接,串口通信进行数据传输.接收时,中断标志RI=0,置允许接收位REN=1,数据进入移位寄存器,装载到SBUF缓冲寄存器,置RI=1;由缓冲接收器SBUF通过总线发送给CPU.串行通信在数据传输、人机交互设计等方面起着重要作用[9].设计要求串口通信晶振为11.059 2 MHz,波特率9 600 bps,设置计数器1的工作方式(SM0=0,SM1=1,即SCON=0x05),T1的初值为253(X值为FDH).cn1069
3.2 电机、蜂鸣器及LED控制系统程序
网络视频编码器
小车运动状态的控制方式如下(蓝牙接收控制指令流程如图5所示):
1)小车运动:控制电机的转动;
2)灯:控制LED1及LED2灯的亮灭;
3)蜂鸣器:模拟喇叭,控制蜂鸣器的开关.
4 上位机APP设计
4.1 软件界面设计
App中添加的控件有:
1)Button按键(前进、后退、停止、左转、右转、灯、喇叭、方向传感器以及语音开关键):按下后通过蓝牙发送相应的数据;