嵌入式智能鞋柜的设计
嵌入式智能鞋柜的设计
传统鞋柜的功能十分简单,仅解决鞋子的储存问题,无法做到对鞋子进行及时除湿、除臭、清洁。然而在日常生活中, “湿、臭、脏”却是鞋子最常见的状况,传统鞋柜完全无法应对这些状况,从而造成鞋子发霉、发臭、邋遢、细菌滋生等情况的发生,甚至引发各类足部疾病。这些问题亟待人们去解决,而且目前对智能鞋柜的研究和设计极少,这也是智能鞋柜发展不起来的重要原因。
为解决上述问题,我们提出了鞋柜智能化系统的解决方案,将Cortex-A9作为控制器,与传感器群以及后台嵌入式Linux服务器连接,从而实现与平板显示界面以及手机APP互相通讯,实现鞋柜自动化存储,杀菌、消毒、除臭以及进行简单的擦鞋清理等智能化、自动化、人性化的功能,其正以自动化杀菌消毒除臭、自动擦洗鞋子、鞋柜内部环境信息反馈、自动化存储鞋子等诸多优势而越来越被人们接受。鞋柜不仅拥有传统鞋柜所不具备的优点,并且相对于其他智能鞋柜,在其功能点上有更深层次的挖掘,在用户体验方面也有更为深入的考虑,在使用上也会从用户的角度来处理细节问题,而且也有其独特的创新点。同时该鞋柜物美价廉,符合广大消费者的心理需求,解决当下智能家居无法普及的问题,利于推广,而这正是本智能鞋柜系统的研发意义所在。
1、系统设计
智能鞋柜系统采用基于物联网技术的三层架构进行设计,分为感知层、网络/通信层和应用层,如图所示
(1)感知层主要用来对鞋柜的各种状态进行数据检测。采用模块化的设计思想,对每个模块进行设计,其中包含了以下几个模块:
温湿度监测模块:用于实时对鞋柜内部的温湿度进行数据的采集,通过I/O接口的传输方式将数据传送给控制器,然后控制器通过分析数据做出相关的控制处理。
鞋子位置检测模块:当用户通过平板终端的界面或者移动终端的界面选取鞋子时,终端将信息发送给服务器,服务器分析该信息后找出该鞋子的记录位置并传输给控制器,再经过单片机处理发送给鞋子位置检测模块,从而控制存储该鞋子的鞋柜门电控锁,弹开鞋柜门,方便用户取鞋。相反,用户存放鞋子时,鞋柜内部记录该鞋子对应的位置后将信息保存到数据库并传输到移动终端和平板终端[1]。杀菌、消毒、除臭模块:存储鞋子过程中,经过杀菌、消毒、除臭功能区时,该位置的红外对管发生中断,信息传输到控制器,控制器解析信息后将信息传输到移动终端,同时传送带停止,开启紫光灯进行杀毒,同时电热风扇加以烘干。鞋子运输模块:结合鞋子位置检测模块将鞋子自动运输到指定位置。
(2)网络/通信层服务器和移动终端、嵌入式网关之间采用TCP/IP协议通信,控制器和单片机之间应用RS232接口进行串口通信。
(3)应用层主要体现在服务器的功能和移动终端设计方面。本系统架构了web服务器,服务器接口所有移动终端和平板端,通过APP上传并分析处理各种用户数据以及操作指令信息。同时系统提供两种终端来与服务器通信,一种是平板显示界面的平板终端,另一种是安卓APP终端。
2 系统硬件设计
本智能鞋柜系统设计由嵌入式服务器模块、控制器模块、单片机模块、移动终端模块,传感器模块组合而成,由传感器模块作为底层感应层,51单片机对传感器数据进行分析,控制继电器完成自动化操作,同时由服务器和平板端、移动端组成通信网络进行信息交互[2]。51单片机的原理框图如下图所示,
ARM2410控制器的硬件原理图如图所示:
2.1 51单片机
以8位微处理器STC89C52来实现对紫光灯、电热风扇、制冷片、粘毛刷、红外对管以及电机的控制,通过串口与ARM2410进行通讯,接收ARM2410的控制信息,对控制信息进行判断并执行相应的操作。
2.2 ARM2410开发板
ARM2410采用的是Cortex-A9内核,内部资源丰富。智能鞋柜采用ARM2410开发板作为项目的核心板,大大提高了鞋柜系统的运行效率。通过ARM2410开发板串口与STC89C52连接,接收单片机所发送过来的信息,经过处理后将相关数据发送到服务器,并将相关的控制信息发送到单片机,达到对各工作模块的控制。除此之外,ARM2410还可采集摄像头拍摄的图片,将所得的图片上传到服务器并存储到图片文件库,用于后期鞋子的识别。
2.3 ARM2410和51单片机通信ARM2410与单片机系统之间采用RS232接口并使用串口通信协议。串口通信是按位来进行发送和接收字节的。尽管这在一定的程度上比并行通信要慢,但是串口通信可以做到同时接收和发送。而且串口通信的实现原理比较简单,传输的可靠性更强,相对于并行通信,传输的距离更长,有效长度甚至可高达1200多米。单片机将采集到的中断信息存放在字符串中,再通过串口实时发送到嵌入式网关进行数据的分析与处理,同理,嵌入式网关将接收到的移动终端信息进行数据分析和处理后,经由串口返回至单片机,单片机在进行数据的分析和处理后再发出相应的指令控制继电器,从而实现对电机、紫光灯、风扇、毛刷以及制冷片等设备的控制。
3、系统软件设计
3.1 移动端软件设计
在显示鞋柜工作状态界面中,APP端利用Socket实时和服务器进行信息交互,服务器将信息以String方式多端传送鞋柜工作状态,并实时刷新,其程序设计流程如图4所示。在各个展示鞋子信息功能界面中,使用ListView并自定义相关Adapter来实现鞋子信息的动态列表展示效果。接着用自定义的User类存储获取的用户信息包括图片属性等,然后添加到自定义的initview中,为ListView提供信息展示。而在界面的上方增添了spinner按钮通过鞋子的属性来实现更快捷地方式寻找鞋子。我们为ListView展示的信息设置了监听事件,当用户点击指定的图标的时候,可随时进行取鞋,或者删除已经丢弃的鞋子的信息。在天气界面中,我们通过解析天气网站提供的JSon数据,来完成天气信息的显示,并增加城市选择功能,方便用户定位到自己所在的城市,并且通过OpenWeatherMap传送的天气状况为用户在鞋库中筛选出适合当天穿的鞋类。
系统运行结果
4、系统运行结果
4.1 提醒和定位功能
APP端利用Socket实时和服务器进行信息交互,精确定位鞋子位置,进行更加人性化智能化的服务,见图所示
4.2 推荐、统计功能
通过对数据的统计和分析,智能鞋柜针对不同的天气情况,为用户提供鞋子穿戴建议,方便用户的出行,具体见下图
5 、结束语
智能鞋柜是一个囊括了微处理器、安卓APP、服务器、传感器等技术,能够对鞋柜内部的温湿度进行实时监控调节,对存储的鞋子进行杀菌消毒除臭,并实现自动化存储的系统。结合安卓客户端能方便地对不同用户进行分类管理,并能通过鞋子存放时间及时提醒处理存储时间长的鞋子,使鞋子的管理更加方便简单。商家销售智能鞋柜可以提高用户体验,后期的运营也可提升用户与商家的交互空间。经过测试,智能鞋柜系统运行稳定,而且具有操作简单、运行成本低、预警准确、操作选择多样等特点,具有较高的实用价值。