基于声光的无触摸式人机交互产品设计

2018-03-20 09:10中国电信股份有限公司广东研究院赖琮霖黄庆涛
电子世界 2018年4期
关键词:测距音频超声波

中国电信股份有限公司广东研究院 赖琮霖 黄庆涛

0 引言

当代,全球进入了数字智能时代,人类与机器的交互变得越来越紧密频繁,人机交互技术正向拟人化、智能化、实体化、自然化方向发展[1-2]。其中,用户体验是人机交互产品设计的重要因素[3],好的用户体验除了满足用户的功能性需求外,还要重视其享乐心理需求,简洁优雅但又不失惊喜,提升用户感官体验。传统的触摸式交互,例如键盘、鼠标、手柄等,已较难进一步提升用户体验。鉴于此,本文设计一种无触摸式的人机交互产品,基于超声波与激光物理媒介,利用Arduino处理器与上位机通信。用户只要轻触光束,便实现人—光/声—电—机的快速联系,具有低成本、响应快、部署便捷等优点,为用户带来不一样的交互体验。

1 硬件电路设计

总体设计有两种模式,模式1将用户是否遮挡光线的动作视作“1”,“0”状态。模式2在模式1的基础上增加了遮挡位置的识别,进一步扩展了可识别的操作范围,从而提升了产品的工作能力。产品硬件部分可分为激光发射模块、激光接收识别模块、超声波测距模块、音频播放模块、微控制器模块。整机以5V电源适配器供电,微控制器选用Arduino,光源选用6个300mw绿色激光管,利用uLn2003进行激光管驱动。接收部分利用光敏电阻串入LM324电压比较器,与基准电压2V作比较实现光-电转换。6路比较器结果经过74148编码后送至控制器,以此节约控制器的引脚资源。控制器在模式1开关模式下,直接进行下一步控制。在模式2,控制器会先触发超声波测距模块计算遮光处垂直距离,将垂直距离分成3段,其结果返回Arduino后通过USB串口控制上位机,并选择事先存储在SD卡内不同音调和音色的音频。外部开关可选择不同乐器,钢琴音、小提琴音和竖琴音。水平面从左到右依次do re mi fa so la,垂直面低位表示低八度,中位正常音,高位表示高8度。选出的音频经过74595并串转换和D/A数模转换器送到喇叭放音。产品框架长宽高分别为80cm,40cm,50cm(见图1)。

1.1 控制器模块设计

Arduino UNO是一款便捷灵活、跨平台、开放性的微处理器,包含32KB的Flash Memory,2KB的SRAM,1KB的EEPROM,支持USB与上位机通信,封装了底层硬件驱动,支持14个数字引脚和6个模拟引脚,16MHz的晶振频率。利用Arduino IDE进行编程操作简单,功能强大。缺点是晶振频率不够高,处理音频较为吃力,并且管脚数不够多。前者可以将音频处理转到硬件上实现,后者则使用两块控制板解决,一块控制激光发送,一块控制激光接收(见图2)。

1.2 激光发射模块设计

图1 产品框图与功能逻辑图

图2 产品模块图

图3 激光驱动电路

LED与激光均可作为光源,在光源选择上,LED节能省电,但其散射严重,手遮在光路上对光敏电阻没有明显效果。激光光路集中亮度高,当光敏电阻受光照射,测试阻值为,无光照射时阻值,区分明显,对光亮变化感应灵敏。激光属于大功能器件,为尽可能提高发射模块性能,经测试,每路激光需,当电源为2.5V180mA时最亮,180mA*6为1080mA。为同时驱动6路,需采用功率放大器件,本方案采用高压大电流达林顿晶体管阵列电路,其集成芯片uLn2003A的特点是响应快,可驱动的功率高,适用本产品(见图3)。

1.3 激光接收模块设计

产品的光-电转换能力靠光敏电阻实现,接收面较小,一般的只有0.5cm。激光具有高度指向性,在发射端只要有一丝偏移,经过一定距离后,都会产生较大的偏移。为解决该问题,产品利用反光纸制成的接收模具使得激光就算不正对光敏电阻,也会在多次的反射后射到电阻产生作用,类似漏斗的原理。以一路接收为例,根据下图组建电路,利用LM324电压比较器将连续的电压值转化成高低电平,比较器的基准电压选用2V(取和作参考电阻)。接收电路使得当有光直射R1时,结果输出高电平,反之输出低电平。之后将6路输出电压利用74148进行8-3编码后送至接收控制器(见图4)。

1.4 超声波测距模块设计

目前常用的测距方案有激光测距、红外测距(GP2D12)和超声波测距。激光测距精度高,反应时间快,但对目标颜色和角度敏感,器件价格高。红外测距原理与激光测距了类似,其发出红外光,对人体较为敏感,但其电压精度与距离是非线性关系的,基本测距范围在10cm到40cm之间,价格也较高。超声波测距方案较为理想,超声波发生装置和接收装置可集成到一块器件上,通过计算超声波的往返时间,可计算出距离。超声波的指向性较强,能耗较少,价格较低,故选用。

图4 激光接收电路

图5 超声波测距模块与接收控制板接线图

Arduino UNO处理器有6个模拟输入引脚,接受0-5V的电压输入,处理器会根据电压值自动做A/D转换成0-1023之间的值。超声波模块选用4Pin反射型,其4个引脚分别是VCC、GND、Trig、Echo。当Trig引脚收到一个大于10ms的高电频信号,则触发8个超声波,同时将Echo置高电平,当超声波接收器接收到8个超声波后(见图5),Echo立即变成低电平。Echo置成高电平的时间为,声波速度以进行计算,则声波从发射到撞到物体的具体为:

1.5 音频播放模块设计

SD卡在产品中用于存储音频文件,它可工作在SD模式和SPI模式,这里用SPI模式,与处理器进行串行通信。Arduino代码开源,可直接调用函数SD.OPEN读取SD卡,操作性好。音频文件是WAV格式,以8bit的PCM编码,可以用脉冲宽度调制(PWM)进行解码,但其对滤波电路和晶振要求高,噪声较大,并且会占用一部分处理器的能力。而DAC0832硬件解码方式不会长时占用CPU,音频的还原度较高,其缺点是I/O占用较多,但可利用74HC595串并转换解决。DAC0832采用单缓冲工作方式,当管脚获得一个上升沿信号,会自动把数据转换相应的模拟电压。但其内部运放的基准电压必须为负,在单电源供电的前提下,需使用IC7660实现-5V供电(见图6)。

图6 SD卡模块与74HC595串并转换

1.6 产品实物图(见图7)

图7 产品实物图

2 软件设计

Arduino具有类Java/C的开发环境,编写方便,结构清晰。硬件程序利用Arduino IDE完成光线遮挡识别、距离计算、开关控制、音频选择以及对上位机的控制。用Processing工具开发上位机的应用程序,例如贪吃色、推箱子、打砖头等。

2.1 硬件程序设计

硬件程序通过持续监听74148的输出起到识别激光的遮挡情况的作用。当第n路激光被用户遮住,控制器会给超声波trig管脚置10ms高电平,并开始计时,直到超声波Echo管脚变成低电平为止。之后利用公式(1)计算遮住位置的垂直距离,根据高度归类第m层。此外,外部开关可选择乐器种类。通过m,n和开关可唯一确定SD内的音频,之后放音,同时对上位机进行控制。动作完成后继续对输入口进行监听。

将超声波模块记录的Echo时长值通过串口输出至上位机测试查看,可在调整参数后对超声波的使用性能进行优化。

图8 硬件程序逻辑

2.2 应用程序设计

产品设计了4种应用程序,如图9所示。其中4根光束可控制动作,第6根光束可切换应用。

图9 产品应用程序

由于篇幅原因,下面对“推箱子”的程序设计逻辑进行描述。图9(右下)的“笑脸”表示小人,“星星”表示物品,有“X”的正方形表示箱子,其他正方形表示墙壁。推箱子的原理是利用坐标关系,游戏中的每个元素都有坐标。游戏通过坐标的加减乘除来执行和识别动作规则。小人的动作只有“上下左右”,游戏的约束条件是碰到墙壁不能往前推,因此要对小人的动作和箱子墙壁的相对位置进行判断,而成功条件是物品和箱子坐标重合。当所有物品都被箱子盖住的时候,则通往下一关。每一关的原理都相同,仅仅初始参数设置不同,这里不再详述。

图10 “推箱子”应用逻辑

3 结论

本文设计的无触摸式人机交互产品具有交互体验好,控制灵活,扩展性强,成本低等优点。当前大多激光类产品还处于“光效”应用,仅利用光束应用感时尚前卫的特点提升产品视觉效果。而光作为未来趋势的一种通信方式,具有速度快,干扰小等特点,除了视觉效果提升外,产品还利用激光实现两板间无触摸式的信息交互,使其脱离了传统触摸式的物理条件限制。本设计产品的应用领域可包含娱乐、工业控制、办公等等,在未来的数字城市中,新型人机交互产品会给人们带来更炫酷的生活体验。

[1]赵永惠.人机交互研究综述[J].信息与电脑,2017(23):24-25.

[2]周彦鹏.数字媒体时代多媒体终端的人机交互方式新发展[J].大众文艺,2017(8):272.

[3]丁一,郭伏,胡名彩,等.用户体验国内外研究综述[J].工业工程与管理,2014(4):92-97.

[4]童诗白,华成英.模拟电子线路基础[M].高等教育出版社,2006.

[5]阎石.数字电子技术基础[M].高等教育出版社,1997.

[6]孙骏荣,吴明展.Arduino一试就上手[M].科学出版社,2012.

[7]O’Reilly.爱上制作6[M].人民邮电出版社,2010.

[8]谭亮.Processing互动编程技术[M].电子工业出版社,2011.

猜你喜欢
测距音频超声波
类星体的精准测距
必须了解的音频基础知识 家庭影院入门攻略:音频认证与推荐标准篇
基于Daubechies(dbN)的飞行器音频特征提取
基于Niosll高精度超声波流量计的研究
浅谈超声波测距
音频分析仪中低失真音频信号的发生方法
蝙蝠的超声波
超声波流量计的研究
超声波流量计在兰干渠上的应用
Pro Tools音频剪辑及修正