基于CC3200的可视化低功耗WiFi门铃设计与实现

2020-06-04 03:56张晓丹朱琳琳
自动化与仪表 2020年5期
关键词:门铃低功耗音频

张晓丹,俞 侃,朱琳琳

(文华学院 信息科学与技术学部,武汉430074)

随着物联网和自动化技术的飞速发展,智能小区和智能家居逐渐兴起,人们对于居住环境的安全性提出了更高的要求。智能门铃作为智能家居的重要组成部分,取代功能单一的传统门铃已成为不可避免的趋势。根据前瞻产业研究院预测,2020年我国智能家居产值将突破万亿元,潜在市场规模将达5.8 万亿元。国外调查机构Technavio 发布的报告显示,未来智能门铃市场年复合增长率高达69%[1]。智能可视化WiFi 门铃能有效地提升家居生活的便利感、科技感和安全感,具有广阔的市场前景和较大的社会价值。

2014年美国德州仪器发布了业界第一款带有片上WiFi 功能的单片机CC3200,通过Cortex-M4内核可直接控制片上WiFi 模块,无需外接无线射频模块即可连接网络。在此,基于该单片机并配合使用摄像头模块、音频模块、蜂鸣器、OLED 屏、按键等外设,在IAR 集成开发环境下采用C 语言和CC3200SDK开发智能可视化、低功耗WiFi 门铃系统。

1 智能门铃系统研究进展

早期的门铃辅助安装猫眼,通过猫眼去观看门外的来访者。传统的猫眼依靠光学成像,视角范围较小,在外界光线强度较弱时难以看清门外情况,且传输距离有限。

随着移动互联网技术和物联网技术的发展,有线门铃逐渐向无线门铃过渡。文献[2]基于W77E58单片机和GSM 网络设计了具有语音合成功能的智能门铃系统;文献[3]在CPLD(complex programmable logic device)中实现了无线可视对讲门铃系统的帧同步,设计用于智能小区安全的无线可视对讲门铃系统;文献[4]提出了远程控制集可视、语音对讲、监控及提醒等众多功能于一体的移动互联门铃解决方案;文献[5]设计了基于ARM 的智能可视化电子门铃系统,采用STM32F1 芯片为主控芯片,并对其移植了UCOS-II 操作系统;文献[6]实现了一款无线编解码遥控门铃,最远空旷距离可达60 m;文献[7]提出了基于Hadoop 云平台的WiFi 移动无线门铃系统,解决用户随时随地了解访客信息的需求;文献[8]以STC89C51 单片机为控制核心,设计了基于51 单片机的无线音乐门铃;文献[9]提出了集智能手机和家庭网络系统功能于一体的物联网门铃,通过获取闭路电视的证据来帮助识别入侵者; 文献[10]针对专门的视频显示器携带不便的问题,设计了基于云服务的智能门铃系统;文献[11]引入Dashbell设计实现了廉价的家用智能门铃系统,支持WiFi设备Amazon 仪表盘连接网络;文献[12]以AT89C51单片机为主控系统,设计了智能家庭语音无线对讲门铃系统。

以上研究大多聚焦于无线可视化方面,重点解决非法入侵、开门不便、家中无人访客等待等问题,尚未着重考虑系统的功耗和节能问题。

2 系统总体设计

智能可视化低功耗WiFi 门铃系统的门铃端以CC3200 主控板为核心,搭载摄像头、麦克风、扬声器、OLED 屏、蜂鸣器等外设,配有USB 转串口、仿真器等接口,连接家庭WiFi,通过TCP、UDP 协议实现与移动终端之间的网络通信,移动终端采用具有Android 系统的智能手机。系统的总体设计如图1所示。

图1 可视化低功耗WiFi 门铃系统总体设计Fig.1 Overall design of visual low-power WiFi door bell

2.1 无线视频实时监控模块设计

无线视频实时监控模块主要实现无线语音对讲和无线实时视频播放功能。当有访客按下门铃以后,摄像头开启工作发送采集的图像数据,经JPEG编码输入CC3200 主控板,在客户端App 与CC3200主控板建立TCP 连接后,单向地向手机客户端传输实时图像并显示,用户可通过手机App 界面进行图像捕获、OLED 屏幕显示回复消息、开启语音对讲功能。该模块设计如图2所示。

图2 无线视频实时监控模块原理Fig.2 Schematic of wireless video real-time monitoring module

JPEG 是一种国际化的图像压缩标准,不仅可以保证图像的压缩性能,还拥有良好的重建质量,多应用于图像处理和视频处理领域。JPEG 的编码过程主要包括采集RGB 数据、YUV 转换、提取8×8 数据块、FDCT 变换、量化、Z 变换、霍夫曼编码,输出JPG 格式。

2.2 无线语音对讲模块设计

无线语音对讲模块原理如图3所示。其基本原理是,当开启语音对讲功能后,CC3200 主控板向客户端发送访客的语音消息,麦克风将采集到的音频数据经由ADC 转换、编码过程后通过UDP 协议,端口号5001,发送给客户端。与此同时,将接收到的音频数据将经过解码、DAC 转换后,经喇叭播放供访客接听。

图3 无线语音对讲模块原理Fig.3 Schematic of wireless voice intercom module

2.3 低功耗模块设计

设置休眠模式,当按动门铃后,CC3200 主控板从休眠模式被唤醒,初始化外围设备进行WiFi 网络连接。从每次联网成功开始计时,30 s 内若未能成功与客户端进行TCP 连接,门铃系统将再次进入休眠模式。若与手机客户端TCP 连接成功,用户则可通过手机客户端App 观看视频,回复消息至OLED屏,与来访者进行语音对讲。结束时,可通过手机客户端App 使设备立即进入休眠模式,或关闭手机客户端App,TCP 连接断开后30 s 内若未能重连,则自动进入休眠模式。该模块设计如图4所示。

图4 低功耗模块原理Fig.4 Schematic of low-power module

3 系统实现

3.1 WiFi 网络连接实现

CC3200 可快速实现AP 模式或STA 模式的网络连接,通过调用官方SDK 包中ConfigureSimple LinkToDefaultState()函数完成配置,调用sl_Strat()函数开启网络处理器,SwitchToStaMode()函数将设备切换到STA 模式,使用WlanConnect()函数连接至指定的WiFi 网络。

3.2 实时视频采集功能实现

初始化摄像头,设置摄像头输出数据格式为YCbCr4:2:2,配置DMA 并启动捕获图片数据写入sflash。以JFIF 的格式创建JPEG 文件头,采集的数据经JPEG 压缩后发送至手机客户端,通过手机客户端App 可以保存某时刻的图片数据。当手机发送停止信号时,视频设备关闭并进入休眠。实时视频数据采集的关键代码如下:

3.3 无线语音对讲功能实现

当接收到来自手机客户端发送的开启语音对讲命令后,CC3200 对外设音频模块进行初始化,并设置麦克风音量大小,分配Buffer 缓冲区存储接收和发送的音频数据,设置以DMA 方式搬运ADC 采集到的数据。以轮询的方式完成音视频的采集、发送以及音频播放。当CC3200 接收到来自客户端发送的关闭语音对讲功能的命令后,关闭对外设音频模块的使用,只进行视频的传输。

音频采集及发送的关键代码如下:

音频接收及播放的关键代码如下:

3.4 低功耗模式

开机或由休眠状态被唤醒后,定时器开始计数等待30 s。若30 s 过后仍无人接听,设备立即再次进入休眠;若在等待时间内被接听,则执行音视频通信、消息回复功能。当网络连接异常时,设备自动复位。当CC3200 收到来自手机客户端发送的休眠指令后,设备立即进入Hibernate 模式。低功耗模式的关键代码如下:

4 系统测试

4.1 系统测试环境搭建

系统测试环境包括门铃端和手机客户端两部分,如图5所示。各部分的硬件环境如下:

图5 门铃端的硬件环境Fig.5 Hardware of doorbell end

门铃端德州仪器带有片上WiFi 的MCU——CC3200 作为核心板,其具有USB 转串口、仿真器接口等接口,外接Mt9d111 8 位并行摄像头、32 mm OLED 显示屏、音频模块等,在IAR 集成开发环境下进行程序编译,烧录至片上Flash 中。

手机客户端手机小米4,搭载Android 6.0.1系统,内置2 G RAM/16 G ROM,具备视频观看、语音对讲、消息回复等功能。

4.2 音视频测试

CC3200 主控板与Android 手机均连接家庭WiFi网络,将Android 手机设定为固定IP:192.168.43.192,进行音视频测试。测试界面如图6和图7所示,测试结果音视频均可正常工作。当开启采集音频后,采集的音频数据达到2 K,通过UDP 协议,端口号5001 发送至手机端播放音频,通过端口号5002 对收到的音频数据进行解码并播放。摄像头采集的分辨率为640×480,并编码为JPEG 格式,通过TCP 协议发送至手机端显示,反复测试视频播放流畅。

图6 实时音频测试Fig.6 Test of real time audio

图7 实时视频测试Fig.7 Test of real time video

4.3 网络速度测试

采用TCP & UDP 测试工具测试网速,如图8所示。此时TCP 接收速度为634880 B/s,足以满足640×480 的图片数据和音频数据传输,反复测试可知,平均网络传送速度与网络质量和CC3200 的处理速度成正比。

4.4 低功耗测试

图8 接收TCP 数据Fig.8 Receive TCP data

系统休眠设定为Hibernate 模式,通过按键触发(设定引脚GPIO13 为唤醒源)和定时唤醒(用于处理网络连接出错时重启)2 种方式唤醒设备。当设备进入休眠后,干路消耗电流为0.649 mA,如图9所示。若使用5000 mA/h 电源供电,每天按动1 次门铃,每次工作时长1 min,则理论上可待机使用6 个月。

图9 低功耗测试Fig.9 Test of low-power

5 结语

通过设计基于物联网的智能可视化低功耗WiFi 门铃,采用CC3200 自带的片上WiFi 模块,解决了传统门铃传输距离的问题,实现了无线传输、低功耗和音视频通信功能。采用低功耗的芯片,当无访客时门铃处于休眠状态,大幅度降低对电源的消耗,从而可以使用内置电源的方式供电,且不必频繁更换电源;采用无线设计,通过连接WiFi 设备实现了门铃与移动设备之间的通信,且安装简单,节省人力物力。当有访客到来时,门铃从睡眠模式被唤醒,自动连接WiFi 设备,主人可以使用移动设备,在App 上接收到音视频流数据,远程查看来访情况,并且可实时与来访者语音对讲,从而增强家庭的安全性和用户体验。后续将进一步考虑采用H264,H265 等更高的视频数据压缩率来避免网络阻塞,开展音视频数据上传云端、人脸识别消息推送等研究。

猜你喜欢
门铃低功耗音频
一种高速低功耗比较器设计
锤子门铃
一种宽带低功耗四合一接收机设计
必须了解的音频基础知识 家庭影院入门攻略:音频认证与推荐标准篇
基于Daubechies(dbN)的飞行器音频特征提取
低功耗便携智能翻译手套系统
低功耗技术在驾驶行为管理模块中的应用
音频分析仪中低失真音频信号的发生方法
Pro Tools音频剪辑及修正
锤子门铃