基于STM32C和μC/OSⅢ的双触摸屏无线自助点餐系统设计AET

人们生活水平的提高推动着餐饮行业的发展,但是很多企业依旧依靠传统的人工服务、核算和查询,对服务员的要求高;单据多、信息量大、出错率高,服务员等候客人点菜耗时多[1],降低了效率。而已有的点餐器采用的是ARM9或ZigBee,成本都太高,而WiFi可靠性不强[2-3]。对此本文提出了双触摸屏、无人服务的无线智能点餐系统,通过降低硬件加强软件来减少成本。系统以STM32为硬件基础结合滋C/OS-Ⅲ嵌入式实时操作系统[4-5],利用STR-18模块构成组网[6]与PC(以VisualStudio作为开发工具[7]开发的前台软件)进行无线数据交换[8],实现无线点餐。该无线点餐系统融合了无线通信技术、计算机网络和数据库技术,数据无线实时传输、实时处理等。系统硬件配置价格低,减少了人员需求,从而降低了成本,并且提高了工作效率和服务质量,优化了业务流程。

1系统总体架构

系统主要由一台PC主机和多个从机(点餐终端系统)组成,以一个从机为例,其系统框图如图1所示。从机上连接2个显示菜单信息的TFTLCD触摸屏,当在一个屏上点菜时,另一个屏上会实时显示点菜的信息。屏上有呼叫人工服务按钮,便于文明呼叫人工服务。当点菜完毕,选择“完成”即可将菜单发送到主机上。主机上有由VisualC#编写的上位机软件,主机和从机通过无线数传模块进行数据传输,主机连接打印机将菜单信息打印出来,用于厨师做菜和结账。当餐厅需要修改菜单时,通过主机将新菜单通过串口发送给从机进行修改。

2下位机设计

2.1硬件设计

下位机主控芯片选用STM32f103VBT6,它是意法半导体公司增强型的32位微控制器,采用先进的ARMCortex-M3内核,拥有72MHz的时钟频率、128KB的Flash、20KB的SRAM;有2个SPI总线接口、2个IIC接口、3个USART、1个USB、1个CAN总线以及2个12bit的ADC转换,80个通用的I/O端口。本设计主芯片上主要连接2个TFTLCD、EEPROM24C02(用于存储触摸屏的校准值)、LED指示灯和JTAG下载口、串口1(PA9、PA10)用于连接到STR-18无线模块与上位机通信。

TFTLCD采用自带XPT2046控制芯片的四线电阻式触摸屏。XPT2046是一款四导线制触摸屏控制器,内含12位分辨率125kHz转换速率逐步逼近型A/D转换器;支持从1.5V~5.25V的低电压I/O接口,能通过执行2次A/D转换查出被按的屏幕位置。触摸屏共有34个管脚,引脚分布如图2所示,BD1~DB16为数据位,RST、CS、RS、WR、RD实现复位、片选、指令数据切换、读写等控制功能,MISO、MOSI、CLK、T_PEN、T_CS用于触摸屏控制。

两个LCD触摸屏分别与STM32f103VBT6连接。两屏16位的数据位分别与STM32f103VBT6的PD口、PE口相连,其中一个TFT屏的连线如图2所示,另一屏的MISO、MOSI、CLK、T_PEN、T_CS依次对应PB0、PB1、PC4、PC5、PB11,BL、CS、RS、WR、RD依次与STM32F103VBT6的PB10、PB6、PB7、PB8和PB9相连。

2.2无线数传模块在本系统中的实现

主机和从机通信采用STR-18微功率无线数传模块,它具有功率小、ISM频段工作频率无需申请频点、抗干扰能力强、误码率低、通信协议完善、数据实时同步和传输距离远等优点,支持1200b/s、2400b/s、4800b/s、9600b/s等接口波特率。

在本系统中,使用了2块STR-18无线数传模块,一块通过USB转串口模块与上位机连接(TXD、TXD、GND和VCC4个引脚一一对应即可);另一块与下位机相连时,除VCC和GND是直接连接以外,TXD和TXD交叉相连。并把设置波特率的焊盘跳线J4~J2接成011态(即9600b/s),J1的E=1(即插上断路器)传输不带奇偶校验的8位数据位。

STR-18无线串口通信有点对点、点对多点和多点对多点三种方式,本设计采用点对多点无线串口通信,如图3所示。

2.3μC/OS-Ⅲ操作系统在本系统中的应用

μC/OS-Ⅲ是一个结构简单、功能完备和实时性很强的嵌入式操作系统内核[5],适合于如STM32F103VBT6这种没有MMU的CPU。下位机的点菜界面如图4所示[9],左边是菜单,分页显示,顾客选择一道菜时,通过μC/OS-Ⅲ发送信号量,此时等待该信号量的任务首先完成在本屏上使该道菜变为蓝底白字且显示在右边,并使另一触摸屏完成相同的任务[10],使之显示相同的信息。当选择“上一页”之类非菜单的选项时不会发送该信号量。当“完成点餐”时会弹出“点餐完成”窗口,并等待PC扫描信号后将顾客菜单发送到PC,打印给厨师。

3系统软件设计

主机的上位机软件由VisualC#编写,系统软件流程图如图5所示。首先从机上电完成初始化,如果要更改菜单,则由上位机通过无线数传模块发送给所有从机,从机遇到串口接收中断,则更新菜单显示;如从机在完成初始化后直接点菜,有顾客在一个触摸屏菜单上点菜,则两触摸屏间进行通信,更新两屏上已点菜品的显示。点菜完成后,将菜品通过无线数传模块发送给主机显示并打印菜单。本设计由于从机较多且用到的是串口通信方式,为防止多个从机有可能在同一时刻发送菜单给主机,采用先给从机编码,主机循环发送从机地址,当从机已经准备好并接收到是本机的地址时,才发送菜单给主机。

privatevoidserialPort1_DataReceived_1(objectsender,

System.IO.Ports.SerialDataReceivedEventArgse)

{indata="";indata=this.serialPort1.ReadExisting();}

本文设计的双触摸屏的无线自助点餐系统,相比于之前的点餐器,既方便快捷智能,又减少了服务员,节约了成本。

参考文献

[1]陈晓峰,林正浩.基于Android的无线点餐系统设计[J].上海师范大学学报(自然科学版),2012,41(4):369-373.

[2]李泉溪,吴硕.ZigBee无线点餐系统研究[J].河南科技大学学报(自然科学版),2011,32(5):28-32.

[3]杨保亮,王庆阁.触摸式无线点餐终端系统的设计[J].重庆文理学院学报(自然科学版),2012,31(1):76-79.

[4]李正民,姬晓阳,陈京育.嵌入式实时操作系统在测控系统中的应用研究[J].计算机与现代化,2010(6):153-155.

[5]党宏社,姚勇,张新院.一种用于触摸屏的多级菜单界面实现方法[J].计算机应用与软件,2013,301(10):159-161.

[6]邱红兵,邱晓燕.基于WinCE的点餐系统设计[J].数字技术与应用,2011(8):127-130.

[7]孙凯明,石磊,甄海涛,等.基于Cortex-M3处理器和CC2430的无线网关设计[J].自动化技术与应用,2011,30(8):34-35.

[8]丁顺莺.RFlD触控屏幕点餐系统[J].计算机时代,2013(3):21-22,25.

[9]宋亮,苗琼.嵌入式实时操作系统μC/OS-II串口通信的设计与实现[J].电子设计工程,2011,19(1):42-45.

[10]LABROSSEJ.嵌入式实时操作系统μC/OS-Ⅲ[M].宫辉,曾鸣,龚光华,等,译.北京:北京航空航天大学出版社,2012.

THE END
1.毕业论文(设计)餐厅点餐系统的设计与实现.doc餐厅点餐系统的设计与实现 摘要 本设计使用Java语言开发了基于B/S模式的餐厅点餐系统,开发工具是MyEclipse,数据库采用的是SQLServer 2008。系统主要用于餐厅点餐信息管理。本系统有员工和管理员两个角色。管理员模块功能主要包括菜品信息管理、员工信息管理、营业信息统计等;员工模块功能主要包括点菜、会员信息管理、餐桌管...https://www.taodocs.com/p-125154992.html
2.基于微信小程序点餐系统的设计与实现毕业论文本文以实际运用为开发背景,运用软件工程原理和开发方法,它主要是采用java语言技术和mysql数据库来完成对系统的设计。整个开发过程首先对微信点餐小程序进行需求分析,得出微信点餐小程序主要功能。接着对微信点餐小程序进行总体设计和详细设计。总体设计主要包括小程序功能设计、小程序总体结构设计、小程序数据结构设计和小...http://www.biyezuopin.vip/onews.asp?id=13738
3.计算机毕业设计Springboot餐厅点餐系统论文毕业设计(论文)题 目:高校校园点餐系统姓 名:学 号:所属学院:专业班级:指导:职 称:完成日期 xxxx 年 xx月摘 要21世纪的今天,随着社会的不断发展与进步,人们对于信息科学化的认识,已由低层次向高层次发展,由原来的感性认识向理性认识提高,管理工作的重要性已逐渐被人们所认识,科学化的管理,使信息存储达到准确...http://www.360doc.com/document/24/0318/09/84157872_1117538071.shtml
1.基于SSM的在线点餐系统的设计与实现餐厅点餐网站的设计基于SSM的在线点餐系统的设计与实现 项目介绍: 该系统创作于2022年4月,包含详细数据库设计。本次的设计主要结合SSM技术和Java语言续写前后端的整体框架和系统的运用。通过大量的线上查阅和线下调查,并分析目前国内外对于网上订餐的需求量以及运行的可行性,从几大方面的考虑和设计,以解决人们日常的实际需求为目的,依靠...https://blog.csdn.net/mxg74110/article/details/143744642
2.餐饮业智能点餐系统的设计与实现28孙丽华;基于不确定统计与不确定集的推荐模型及算法研究[D];天津大学;年 29张洪为;知识迁移驱动的跨领域推荐算法研究[D];大连理工大学;年 30李康康;在线协同过滤推荐算法研究[D];厦门大学;年 中国硕士学位论文全文数据库前30条 1周建亮;餐饮业智能点餐系统的设计与实现[D];北京邮电大学;年 ...https://cdmd.cnki.com.cn/Article/CDMD-10013-1015585685.htm
3.基于SpringBoot餐厅点餐系统设计与实现.docx移动点餐系统的设计与实现[J].电脑知识与技术,2019,15(19):76-78+84.朱咏平.手机自助点餐系统的设计与实现[D].大连理工大学,2018.时庭庭.酒店会员点餐系统的设计与实现[D].东华大学,2021.陈皓祺.数字投影在功德林素食文化中的体验设计研究[D].上海工程技术大学,2021.杨海南,罗天文,王茂洋,杨胜飞,郭亮亮,...https://www.renrendoc.com/paper/321994140.html
4.基于JavaScript的餐厅点餐系统微信小程序的设计与实现类似的,人们在就餐方面也希望能够节省时间,将大家对新式就餐概念和微信小程序这个新发展事物结合在一起就产生了餐厅点餐小程序。 该系统主要由两个部分组成,分别是前端的点餐小程序和后台的点餐管理系统。前端主要使用的技术有JavaScript和css3以及微信小程序自带框架,后台管理主要用到Spring-boot框架技术。 其中小程序...https://cloud.tencent.com/developer/article/1951704
5.Python基于Django餐厅点餐选座系统的设计与实现因此一个在线选择菜品、点单、结算、管理菜品和用户信息的餐厅在线点餐系统,符合当今网络社会现代化管理模式,同时降低了经营店家的管理成本,提高了信息传达的效率和准确性。 2、核心功能模块 Python基于Django餐厅点餐选座系统的设计根据实际调研现在社会真实存在的一些餐厅现有的实际订餐流程,了解餐厅老板和就餐的...https://www.jianshu.com/p/2c2b2c332e41
6.Java实现餐厅点餐系统的实例代码java学习Java实现餐厅点餐系统,本文实现该系统的功能截图,和数据库设计SQL语句,系统功能图,功能优势等供大家参考 1.点餐管理系统背景 随着科技的发展,去饭店吃饭点餐和结账都是以线上操作的形势完成。 a.和现在有的系统比较起来,本系统有餐桌管理,菜系管理,菜名管理,订单管理,订单详情等功能。 https://www.jb51.net/article/188466.htm
7.酒店点餐系统设计图详解,让您轻松实现智能点餐酒店点餐系统是酒店行业中不可或缺的一部分,它能够提高餐厅的效率,减少人力成本,提升顾客的用餐体验。本文将详细介绍酒店点餐系统的设计图,帮助您更好地了解智能点餐的工作原理。 一、系统架构图 系统架构图是酒店点餐系统设计的核心,它包含了系统的整体结构和各个组件的功能。酒店点餐系统的架构图分为前端和后端两...https://www.guangli88.com/diancan/20230426/171244.html
8.餐厅点餐系统设计,毕设基于C#,数据库,实现登录,点餐,管理后台上菜等https://www.iteye.com/resource/u013258444-9516680
9.python点餐系统设计方案代码python简单点菜代码python点餐系统设计方案代码 python简单点菜代码 要求 定义菜单,字典格式{披萨种类名称:原材料}; 给顾客展示菜单,并让顾客输入选择,加入判断语句检查顾客是否输入正确; 问顾客是否额外需要添加材料; 让顾客确认菜单; 分步实现 定义一个字典类型“menu”,存放我们的披萨种类和原料;...https://blog.51cto.com/u_14555/9281554
10.外卖订餐管理系统的设计与实现外卖订餐管理系统的设计与实现 华中科技大学 | 贾倩开通知网号 随着物流的崛起,餐饮行业也从实体店转到外送,目前的人工点餐以及纸质版的菜单显然已经达不到客户的需求,服务员无法上门进行点餐服务,而互联网却越来越发达,于是外卖订单管理系统得到了急速的发展。根据餐饮行业的特点和实际情况,外卖订单系统以网上下单为...https://wap.cnki.net/touch/web/Dissertation/Article/10487-1015908681.nh.html
11.餐馆点菜系统需求分析(通用4篇)“餐厅点菜系统”适合各餐厅所用, 餐厅可以根据自己餐厅规模的大小而设置适合自己的系统。有了餐厅点菜系统, 更方便顾客随时预订或直接点餐, 同时更节约时间和人力资源, 减少了餐厅的成本, 提高了餐厅运行效率。虽然次系统还有很多不完善的方面, 但此系统还是能基本满足一般小餐厅的需求。 https://www.360wenmi.com/f/filee6n1z2rg.html
12.2022届电计系计算机科学与技术专业优秀毕业设计作品elementUI等模块,用于实现定位获取、编号生成、整体框架搭建等功能,结合用户与商家的需求将系统分为两个板块,移动端用户点餐系统与PC端后台管理系统,实现了用户登录注册、用户点餐、用户更改查看个人信息,用户填写地址、用户定位获取、用户订单查看、管理员店铺管理、管理员商品管理、管理员用户管理、管理主页数据管理等...https://zsb.cdutetc.cn/c/330de0ae-f768-45b8-ad74-3421949e04bd.html