張志杰,楊自榮,滕玉東,吳亞聯
(湘潭大學 信息工程學院,湖南 湘潭 411105)
近年來,人們因為快節(jié)奏的生活方式而無暇顧及自己的飲食,從而養(yǎng)成了一系列不良的飲食習慣。營養(yǎng)過剩會導致高血壓、糖尿病等慢性疾病,而營養(yǎng)不良又會影響人體各方面的發(fā)育。據國際糖尿病聯盟(IDF)公布的數據顯示,2014年全球共有糖尿病患者3.87億人,而中國的患者數量居全球首位,且患病率呈逐年上升趨勢。可見,雖然我國的國民經濟實力有所發(fā)展,但忽視了身體健康問題[1]。從營養(yǎng)學角度出發(fā),合理的膳食結構不但要有充足的能量供應,同時也需要足量的維生素和微量元素供給。因此,在日常飲食中,只有注重飲食的合理性以及健康性,才能減少慢性病的發(fā)生,提升工作效率與生活質量[2]。
國內已有一些指導人們健康飲食的膳食分析軟件,此類軟件需手動輸入一天所吃的食物信息,應用不方便,且輸入的數據存在較大誤差,導致分析結果出現偏差。
為了更好地指導人們健康飲食,也為了讓餐飲服務更好地滿足用餐者的消費需求,設計開發(fā)了一款以大數據為基礎的膳食分析系統(tǒng)。智能餐盤系統(tǒng)利用RFID射頻識別技術,自動獲取用戶的用餐數據,通過WiFi模塊將用戶用餐數據上傳至OneNet云服務器,云端軟件自動處理用戶的飲食數據,用戶可在微信小程序中實時查看自己的飲食分析結果,從而進一步改善自己的膳食搭配。同時,用戶還可通過微信小程序[3]向系統(tǒng)餐飲合作服務方反饋建議,為餐飲服務方的經營提供支持。
本系統(tǒng)基于用戶實際用餐大數據完成膳食分析,簡化膳食評價流程,增強膳食分析的可靠性,實現了膳食分析的智能化。
根據需求分析,本系統(tǒng)需實現以下功能:
(1)飲食分析:用戶可知曉用餐的熱量、三大營養(yǎng)素、微量元素的攝入情況;
(2)余菜查詢:通過計算已售菜品的數量來反映食堂余菜量;
(3)飲食周報:每周向用戶發(fā)送一個飲食周報(卡路里攝入情況,攝入營養(yǎng)素比例,飲食時間波動情況,飲食建議),為用戶下周的飲食提供參考;
(4)飲食定制:根據用戶的需求,系統(tǒng)提前為用戶提供幾種營養(yǎng)菜譜,供用戶選擇;
(5)尚食圈:為用戶提供一個社交平臺。
本系統(tǒng)主要由用餐數據采集與發(fā)送模塊,云服務器端數據處理模塊和用戶微信小程序模塊組成。其具體設計方案如下所示:
(1)用餐數據采集與發(fā)送模塊由RC632讀卡器、RC522讀卡模塊、WiFi模塊、12864液晶顯示模塊、LCD液晶顯示屏組成。RC632讀卡器用以采集餐飲數據;RC522讀卡模塊用以收集用戶身份數據;WiFi模塊將用戶的餐飲數據和身份數據發(fā)送至服務器端;12864液晶顯示模塊和LCD液晶顯示屏分別顯示餐飲數據和用戶身份數據。
(2)云服務器端數據處理模塊:通過TCP協議來接收用戶餐飲數據和用戶身份數據,在云端處理用戶的數據,供小程序通過HTTPS請求獲取數據。
(3)用戶微信小程序:用戶可通過掃描餐桌上的二維碼進入小程序,也可在微信中搜索附近的小程序進入。小程序中包含有飲食分析、余菜查詢、飲食定制、飲食周報等功能。
系統(tǒng)總體設計如圖1所示。
圖1 系統(tǒng)總體設計框圖
系統(tǒng)采用RC632讀卡器模塊。MF RC632是飛利浦公司推出的適用于工作頻率為13.56 MHz的非接觸式智能卡和標簽,適用于多種ISO非接觸式標準[4]。其電路原理如圖2所示。
圖2 RC632讀卡器電路原理圖
MF RC522是應用于13.56 MHz非接觸式通信中高集成度讀寫卡系列芯片中的一員,是NXP公司針對“三表”應用推出的一款低電壓、低成本、體積小的非接觸式讀寫卡芯片。電路原理如圖3所示。
本系統(tǒng)采用的WiFi模塊為樂鑫公司設計的ESP8266模塊。利用ESP8266 WiFi模塊連接當前局域網,通過AT指令根據服務器的IP和端口連接服務器。之后傳輸用戶身份數據及餐飲數據。ESP8266電路原理如圖4所示。
本模塊使用12864液晶顯示模塊。帶中文字庫的12864是一種具有4 位/8 位并行、2 線或3線串行多種接口方式,內部含有國標一級、二級簡體中文字庫的點陣圖形液晶顯示模塊。利用該模塊靈活的接口方式和簡單、方便的操作指令,可構成全中文人機交互圖形界面。
本作品通過12864顯示屏顯示菜品的信息以及用戶信息及刷卡消費的結果。
本系統(tǒng)的顯示界面(微信小程序)主要負責顯示服務信息以及接收來自云服務器的數據。該部分程序基于JavaScript編程實現。其整體設計和基本算法的架構流程如圖5所示。
3.2.1 飲食分析
本功能通過基于RFID芯片的ID號比對食物數據庫實現。此功能可讓用戶知曉自己就餐所攝入的卡路里等相關參數,并為用戶提供科學的飲食建議,其整體設計架構流程如圖6所示。
3.2.2 余菜查詢
此選項通過檢測已售賣的菜品數,可根據餐廳每日計劃的菜品數量得到當前餐廳的余菜數。通過小程序查詢餐廳余菜數及菜品位置,方便用戶知道當前餐廳是否有自己想吃的菜品,同時還可節(jié)約用戶尋找菜品的時間,讓餐廳的服務更加人性化。其整體設計架構流程如圖7所示。
3.2.3 飲食周報
此功能基于用戶一周的用餐數據,通過專業(yè)圖標為用戶提供了一系列權威分析,其分析理論依據為營養(yǎng)學相關理論[5]。該功能通過總結用戶一周的飲食情況來幫助用戶均衡膳食結構并提供未來一周的飲食指導,旨在降低因飲食問題而導致的慢性病的發(fā)病率。飲食周報操作流程如圖8所示。
圖5 系統(tǒng)初始化流程圖
3.2.4 飲食定制
此功能為用戶提供了專屬的營養(yǎng)套餐。用戶輸入自己的相關健康信息,如身高、體重等,系統(tǒng)根據這些信息及平常的用餐習慣,自動為用戶提供營養(yǎng)套餐[6]。用戶提前一天選擇好自己喜歡的套餐,第二天只需憑小程序里的號碼到餐廳的專屬窗口領取自己的套餐即可。餐廳可根據自身情況,自行設定專屬套餐的數量。此功能主要服務于一些有特定飲食需求的人群,比如對特定食物過敏的人群、糖尿病人等,其整體設計的架構流程如圖9所示。
圖6 本餐分析操作流程圖
圖7 余菜查詢設計流程圖
圖8 飲食周報操作流程圖
圖9 飲食定制操作流程圖
3.2.5 尚食圈
此功能提供了該小程序的用戶交流平臺,用戶可在上面發(fā)表自己的相關動態(tài)。隨著社交網絡的發(fā)展,美食這一高度生活化的話題相比于其他話題更受到人們的青睞[7]。其整體設計的架構流程如圖10所示。
服務器端主要由三個模塊組成,其結構如圖11所示。具體的模塊說明如下:
(1)服務器的監(jiān)聽:通過Flask框架搭建5 000通信端口,通過該端口發(fā)送與接收HTTP請求;
(2)讀取數據庫信息:頂層構建peeweeModel對象,底層通過peewee框架對數據庫進行具體操作。底層使用MySQL框架對數據進行管理;
(3)向移動云端發(fā)送數據:通過OneNET云平臺的API公共接口獲取數據。
圖11 服務器結構圖
智能結算臺自動將用戶用餐數據發(fā)送到云端進行處理,與市面上大部分飲食分析軟件不同,無需手動添加用餐信息,大大節(jié)約了時間。同時用戶只需進入微信小程序即可查詢到相關分析結果,幫助用戶建立良好的飲食習慣。
使用者若在配有該系統(tǒng)的餐廳用餐,通過掃描餐桌上的二維碼就可以進入小程序。只需在小程序上綁定餐卡信息,無需下載APP即可享受到媲美營養(yǎng)師的一系列服務。操作簡單,適用于各年齡層的人群。
本系統(tǒng)主要針對高校餐廳[8]或稍加改動應用于醫(yī)院,針對患有慢性病的人群進行特殊營養(yǎng)干預并建立就餐人員健康檔案。
本文設計了一款基于微信小程序的智能膳食分析系統(tǒng),以云服務器為核心,將硬件收集信息模塊和微信小程序模塊相結合,在有效解決食堂擁擠問題的基礎上,滿足現代人對飲食的高要求以及特定人群的飲食需求,進而均衡國民膳食結構以及增強國民的飲食健康意識。此外,在人們追求膳食營養(yǎng)的社會背景下,其在餐飲事業(yè)上能夠有更好的推廣前景。
[1]汪會琴,胡如英,武海濱,等.2型糖尿病報告發(fā)病率研究進展[J].浙江預防醫(yī)學,2016(1):37-39.
[2]高冰,許秀舉.膳食因素與人體微量元素平衡關系的研究進展[J].包頭醫(yī)學院學報,2010,26(3):136-138.
[3]雷磊.微信小程序開發(fā)入門與實踐[M].北京:清華大學出版社,2017.
[4]李君.基于MF RC632的射頻卡讀寫器設計[D].天津:天津大學,2007:17-20.
[5]羅森林,呂占斌,張鐵梅,等.一種個體膳食能量評估方法[J].北京理工大學學報,2016,36(7):706-711.
[6]劉宏暢.改進遺傳算法在營養(yǎng)配餐系統(tǒng)中的應用[D].北京:北京工業(yè)大學,2015.
[7]毛茅,王洋,趙妤婕,等.基于社交網絡的美食互動網站設計與評估[A].第七屆和諧人機環(huán)境聯合學術會議(HHME2011)論文集[C].北京:中國計算機學會多媒體技術專業(yè)委員會,2011.
[8]呂敬.基于RFID技術的智能餐盤在高校食堂中的應用[J].信息系統(tǒng)工程,2014(9):85.