唐明星,叶捷杰,朱洪恩
(惠州学院,惠州 516007)
如今,餐饮行业竞争已不仅是环境、卫生、规模、以及菜品味道的竞争,而是服务质量的比拼,高品质的用餐服务与良好的顾客体验能极大地提升餐饮店的品牌形象,使自身更好地适应残酷的行业竞争。传统的智慧餐厅仅停留在移动订餐,平板点菜上,并不能真正解决人力成本高、管理效率低、就餐体验差等问题。这也是传统智慧餐厅发展不起来的重要原因。
一个新型的智能餐饮管理系统,在嵌入式硬件中:用Cortex-A9处理器、ZigBee无线通讯设备、各类传感器和监控设备,对环境条件参数和室内影像进行读取,实现对空调、灯光、音响等设备的控制和摄像设备的影像数据的处理。在服务器方面服务器主要基于Linux操作系统,通讯协议运输层采用TCP/IP协议来提供可靠的、面向连接的服务,保障了通讯的实时性和有效性。在软件应用以采用占用资源较小MySQL数据库,动态网页的采用的是AJAX,实现自助点菜、呼叫服务员和厨师需炒菜信息,在各个应用端及时更新和处理信息。
该系统的功能实现主要体现在顾客和餐厅服务与管理两个方面。顾客方面:自主点餐、后厨互动、查看烹饪过程、结账、餐桌预定以及信息反馈等功能。餐厅服务与管理方面:及时为顾客提供服务、厨师根据点菜单同时炒同一个菜节约了时间和能源、管理信息并统计分析和易燃气体的浓度检测与提醒等功能。将餐厅客户需求和自身需求结合起来的新型智能餐饮管理系统以解决传统智慧餐厅的弊端。整套设备体积小、功能强、灵活方便,相对于当前市场上的智能餐饮管理系统有绝对优势。
智能餐饮管理系统以物联网技术的三层架构进行设计,分为感知层、网络/通信层和应用层。顾客端(平板顾客端和顾客手机端)、后厨操作面板、服务员的手持端以及管理员端四个部分组成。如图1所示。
在感知层中,各传感器节点的室内环境参数通过ZigBee组成的星形的网络,传送到Cortex-A9开发板上进行数据的处理。网络/通信层中,ZigBee传送的数据通过网关进行转为TCP/IP协议与服务器进行连接,通过搭建Web服务器及CGI接口,实现手机端和平板端的自助点菜和与工作人员进行交流。在应用层中,各应用端可以查看室内环境条件的参数,调节室内的环境,各端口可实时进行信息通讯了解彼此间的信息情况。
图1 系统整体结构
智能餐饮管理系统的硬件主要由单片机系统组成。
以ZigBee和嵌入式网关组成的控制器为中心,通过ZigBee网络实现环境参数无线采集和室内外设的无线控制,ZigBee协调器与网关通过串口进行数据传输。本系统硬件设计主要体现在包间硬件模块和厨房硬件模块,下面对一些功能进行分析:
(1)灯光强度控制:用光敏传感器¢5系列型号LXD/GB5-A1E检测包厢和厨房的光照强度,它是一种低成本的环境光强度的变化与输出的电流成正比光敏传感器。其自身稳定性好,一致性强,实用性高,可直接替代传统硫化镉(CdS)光敏电阻。将把检测到的光照参数传送给控制器,根据它的光照强度判断开关灯的数量,对室内的光强进行调节。也可通过应用端进行无线控制。
(2)温度和湿度的智能调控:温湿传感器采用DHT11数字温湿度传感器,是一款含有已校准数字信号输出的温湿度符合传感器。它应用专用的数字模块采集技术和温湿传感技术,校准系数以程序的形式存储在OTP内存中,确保产品具有极高的可靠性和长期的稳定性。信号传输距离可达20米以上,满足了在包厢和厨房的应用范围。并检测温湿传感器传回来的室内温度和湿度的参数,若温度高于或低于所设定范围,控制器自动打开空调的制冷功能。若湿度高于或低于所设定范围,控制器自动控制外设进行保湿和抽湿。
(3)安全报警:厨房的MQ-2气体传感器,用于检测液化气、丁烷、丙烷、甲烷、酒精、氢气,它的电导率随空气中可燃气体浓度的增加而增大。使用电路即可将电导率的变化转换为与该气体浓度相对应的输出信号。ZigBee协调器实时接收广谱气体传感器检测到的燃气浓度参数,经过分析处理后;若有危险发生,触发声光警报器,将危险信号通过网关发送到服务器。
(4)视频监控:获取厨房的摄像头的数据,用开发板ARM9内核是S3C2410,摄像头采用ov7620,是一款彩色CMOS型图像传感器,提供高性能的单一小体积封装,该器件分辨率可以达到640×480,传输速率可以达到30帧。将获取的数据传输给Cortex-A9开发板中的DM3730处理器进行视频画面的编解码处理后,将处理后的实时视频数据通过网关上传到服务器,各终端等待下载。
(5)在整个硬件系统设计中,所有ZigBee设备采用CC2530芯片,低复杂度、低成本、低功耗、低速率的无线连接技术,使得数据传输速率更快,传输稳定性更高。其中网关使用四核Cortex-A9处理器,Cortex-A9处理器能与其他Cortex系列处理器以及广受欢迎的ARM MPCore技术兼容,因此能够很好延用包括操作系统/实时操作系统(OS/RTOS)、中间件及应用在内的丰富生态系统,从而减少采用全新处理器所需的成本。通过首次利用关键微体系架构方面的改进,Cortex-A9处理器提供了具有高扩展性和高功耗效率的解决方案。控制传感器的系统框架图如图2。
图2 控制传感器的系统框架图
系统软件主要分为运行于Cortex-A9上的服务器模块软件和运行于Android系统上的移动应用软件。
(1)智能餐饮管理系统设计时采用的服务器主要基于Linux操作系统,由Linux C编写,通过调用Socket API来实现网络通信,主要采用TCP/IP通信协议,运输层采用TCP协议来提供可靠的、面向连接的服务。服务器首先初始化一个Socket套接字,用于监听客户的连接,当服务器监听到客户连接时,派生一个子进程,主进程继续监听是否有连接。子进程通过调用accept方法接收用户的连接,调用read方法来读取用户的请求,分析请求后,通过write方法将响应发送到客户端。同时,为了实现进程间的通信以及防止多个进程竞争同一资源,本服务器建立了一个共享内存区,并且在共享内存区上映射了共享数据、互斥锁以及Posix信号量,确保多个进程间可以共享数据,以及同步进程间的数据共享。其实现流程如图3。
图3 服务器整体思路
(2)服务器与移动终端之间的通信采用的是Wi-Fi通信协议以及TCP/IP通信协议(Socket)。移动终端通过请求URL链接的方式来传递用户的操作信息给服务器相应的Socket中,并进一步的分析和处理,最后转发。而服务器的返回信息是通过页面内容呈现的,然后移动终端解析指定页面的内容,获取服务器返回的操作信息。
(3)数据库采用的是MySQL,它具有短而精细、快速、占用较少的系统资源的特点;多线程、多用户、高稳定性,MySQL具有快速和稳定的基于线程的内存分配系统,足以应对大型数据库;跨平台,MySQL可以在Linux,Windows和OS等操作系统平台上运行。在操作系统中实现的应用程序可以轻松地移植到其他操作系统。
移动应用软件由顾客端(平板顾客端和顾客手机端)、后厨操作面板、服务员的手持端以及管理员端四个部分组成。开发前端的框架技术是Bootstrap是一种灵活性高,易配置的前端框架(开发工具包)和交互式组件,与目前绝大多数的jQuery插件兼容。管理后台模板用的是Bootstrap Ace,它拥有轻量、功能丰富、响应式等特点,更是支持在多种移动终端上浏览,它是基于CSS框架Bootstrap制作的,因为其基于Bootstrap,Bootstrap Ace组合了许多插件和组件,从另一个角度说,作为模版,它基本上可以满足绝大多数的后台管理系统的需要。为了让页面实时更新采用AJAX创建动态网页,通过在后台与服务器进行少量数据交换,AJAX可以使网页实现异步更新。这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新。在数据交换中用的是JSON格式,是一种轻量级的数据交换格式,能在嵌入式有限的设备资源得到充分的应用。五个终端的体系结构如图4。
图4 五个终端的体系结构
图5 餐厅管理员端软件设计
(1)餐厅管理员端使用BMOB云平台存储数据,通过云平台提供的SDK进行数据通讯,具有数据流动性,实时性,完整性方面的优势。SDK封装了Socket通信协议,实现包括获取热门菜式、获取个人信息、员工信息管理、会员管理等功能。数据按照mbomSDK要求构造对象,经由封装的方法发送给云平台,接收数据则由mbobSDK处理为对象形式。应用程序中包含餐厅监控信息界面、菜单信息界面、预订信息管理界面、账单管理界面、室内环境控制界面和顾客评价界面。餐厅管理员端软件设计如图5。
(2)顾客端(Android端和平板端),Android端通过扫平板端的二维码,使用Socket向服务器发送请求,并接受响应功能完成该App与服务器的信息传输,完成个人信息、登录信息、注册账号、分享、收藏等功能与平板端同步。在APP局方面用Viewpage+Fragment和底部的LinearLayout实现底部标签导航,第一个Fragment有滚动的广告图片和六个按钮分别是点菜、活动、预约、餐厅信息、反馈和呼叫服务。
(3)后厨平板端通过获取服务器的IP地址以及端口号,实现与服务器的连接。在App主界面布局方面用两个自定义的ListView,再加上左右滑动删除的功能,实现右边标题栏的菜单按钮的设计,检测统计是否有相同的菜,一次性做完,达到节约时间成本的效果。当把菜做完了之后,按完成按钮将完成信息发送到各端口。
(4)服务员端主要通过接受服务器发来的信息,接收各端口的呼叫信息。在服务员端主界面中,左边是ListView,用于存放顾客呼叫信息,右边也是ListView,存放厨师的呼叫信息。服务器会接收来自厨师端或者餐桌平板的呼叫信息,然后通过最短路径算法找到距离最近的服务员。服务员端内部开启一条线程来无限循环地监听服务器通过Socket发送过来的信息,当判断有顾客呼叫,就进入顾客的处理逻辑中,再将信息显示到的ListView中,厨师呼叫也是如此。服务员提供完服务后,可点击每一条记录的删除按钮即可删除该项呼叫。
(1)手机App通过注册登陆后,将点好的菜通过扫码同步到餐桌平板上,并可以在餐桌平板点餐或进行其他操作,如图5。
图5 菜单同步运行图
(2)用户将菜单上传后,后厨平板便显示顾客的菜单。更新菜肴的完成进度,当菜肴完成后,服务员端也将收到上菜通知,如图6。
图6 下单到上菜流程演示
(3)餐桌管理端实现了餐厅、顾客信息、菜式、会员、订单、评价、发布招聘信息、员工管理系列功能,展示如图7。
智能餐饮管理系统是一个基于无线局域网的系统,主要由顾客端(平板顾客端和顾客手机端)、后厨操作面板、服务员的手持端以及管理员端四个部分组成。针对传统餐厅存在的服务人员数量不足,现在的人力成本逐年上升,服务品质亟待提升;顾客点菜耗时过长、点菜信息传递慢而服务员处理上菜信息时极易出错;管理滞后,经营成本偏高等问题,智能餐饮管理系统能很好地避免以上问题,不仅可以提升餐厅的点餐速度,让餐厅翻台率也跟着提升,可直接提升餐厅的收益。
[1]张新超.基于无线局域网的点菜系统终端.电子科技大学,2010.
[2]凡海飞.基于Android平台的无线点菜系统的设计与实现.华中科技大学,2011.
[3]袁安富等.基于ARM和DM9000网络接口设计及驱动实现[J].计算机工程与科学,2011.
[4]Lean Jeremy Bentham.嵌入式系统Web服务器TCP/IP,2003.
[5]李刚.疯狂Android讲义.电子工业出版社,2014-7.
[6]郭霖.第一行代码.人民邮电出版社,2014-8.
[7]郭天祥.新概念51单片机C语言教程.电子工业出版社,2009-1.