李天驕 湯曉華 劉美蓮 安嘉強 吳婧 楊泗蘋
摘要:為了提升已有胚芽米機的用戶體驗,降低制造成本,設計了一款自助式胚芽米機控制系統(tǒng),上位機采用PC結(jié)合MFC進行開發(fā),實現(xiàn)了人機交互界面、廣告視頻播放、語音提示等功能。下位機由STC15W4K58S4單片機、RS232串口模塊及相應的電路組成,實現(xiàn)了對胚芽米機電氣系統(tǒng)的控制,并且能夠與上位機進行通信。通過實驗測試,整個系統(tǒng)實現(xiàn)了自助式胚芽米機的購買、加工、稱重、出貨以及人機交互等功能。
關(guān)鍵詞:物聯(lián)網(wǎng);自助式機器;胚芽米機;控制系統(tǒng);人機交互
中圖分類號:TP273.3 文獻標識碼:A 文章編號:1009-3044(2018)33-0227-03
Abstract: In order to enhance the user experience of the existing germ rice machine, reduce the manufacturing cost. A self-service rice processing machine control system is designed. The host computer is developed by PC and MFC. The functions of HMI, advertisement video playback and voice prompt are realized. The slave computer is composed of STC15W4K58S4 single chip, RS232 serial port module and the corresponding circuit. It can control the electric system of the rice machine and communicate with the host computer. Through experiment test,the whole system realizes the functions of purchasing, processing, weighing, shipping and human-computer interaction of the self-service rice processing machine.
Key words: IoT; self service machine;germ rice machine; control system; human-computer interaction
自助式胚芽米機是指可以自動販賣胚芽米的設備,胚芽米中的蛋白質(zhì)、脂肪、灰分、粗纖維、氨基酸總量及各種氨基酸含量均高于精白米,且胚芽米中的游離γ-氨基丁酸(GABA)是精白米中的2倍多[1]。目前國內(nèi)已經(jīng)研發(fā)出了一種將水稻現(xiàn)場加工為胚芽的自助式胚芽米機,并且具備供料、加工、自助購買等自動化功能[2]。
當前的胚芽米機控制系統(tǒng)使用PLC進行開發(fā),但是PLC不適合多功能、多接口、多任務、多媒體的場合,同時對數(shù)據(jù)處理做得不夠強大。針對這些問題本文設計了一套自助式胚芽米機控制系統(tǒng),它可以提升當前胚芽米機的多媒體以及人機交互系統(tǒng)能力,并且降低了成本。
1 方案整體設計
系統(tǒng)整體設計框圖如圖1所示,上位機使用觸摸式PC一體機進行開發(fā),主要負責人機交互功能;下位機使用STC15W4K58S4單片機進行開發(fā),主要負責控制胚芽米機的電氣系統(tǒng)。一個完整的操作流程為:首先人機交互界面在閑時進行廣告播放,當有用戶觸摸屏幕時關(guān)閉廣告播放并進入歡迎界面,用戶選擇支付方式,當選擇會員卡消費時,將射頻卡插入讀卡器,屏幕顯示卡內(nèi)余額等信息,當用戶選擇購買后,讀卡器對卡進行扣款,并將產(chǎn)生的數(shù)據(jù)打包通過GPRS DTU發(fā)送至后臺數(shù)據(jù)中心,扣款成功后PC與下位機控制器進行數(shù)據(jù)交換,下位機啟動加工系統(tǒng)進行加工,稱米時稱重傳感器的實時數(shù)據(jù)通過PC將數(shù)據(jù)實時顯示至屏幕,當?shù)竭_設定的重量時停止稱米,此時PC屏幕提示用戶可以出米,當用戶選擇出米后將已加工好的胚芽米送出,屏幕顯示操作完成界面,用戶取回會員卡,整個流程結(jié)束。
2 上位機系統(tǒng)設計
2.1 人機交互界面設計
上位機的硬件采用觸摸式PC一體機,軟件平臺使用MFC結(jié)合C++語言進行設計[3-4]。人機交互界面的設計主要包括多媒體播放界面、歡迎界面、支付方式選擇界面、會員卡信息界面、稱重加工界面[5-6]。不同的界面之間采用界面跳轉(zhuǎn)的方式實現(xiàn)切換,使用的主要控件有Button、Edit Control、Picture Control、Progress Control等。人機交互界面設計如圖2所示。
2.2 程序設計
2.2.1 程序整體邏輯
程序運行后,將調(diào)用界面跳轉(zhuǎn)函數(shù),由主界面跳轉(zhuǎn)到Welcome界面,延時100ms后播放廣告視頻并啟動閑時播放功能。當有用戶操作屏幕時,關(guān)閉廣告播放并進入Welcome界面,用戶通過對按鈕的點擊進行界面的切換與相應功能的實現(xiàn)。
2.2.2 廣告閑時播放功能
廣告閑時播放功能,即為當用戶操作屏幕時界面一直處于操作界面,當用戶完成操作或存在一段時間對屏幕無操作時切換至廣告視頻播放。該功能的邏輯實現(xiàn)如圖3所示。使用該種邏輯可以有效地整合操作界面和廣告播放界面,大大提高了系統(tǒng)的利用效率。
2.2.3 界面跳轉(zhuǎn)功能
由于在人機交互界面中每個界面的功能不同,因此采用界面跳轉(zhuǎn)進行設計將會使整個程序操作更加簡潔,并且有利于開發(fā)人員對于系統(tǒng)的管理。在初始化窗體時,先創(chuàng)建所有窗體的窗口指針,跳轉(zhuǎn)時調(diào)用相應的顯示窗口函數(shù)即可實現(xiàn)界面的跳轉(zhuǎn)。
3 下位機系統(tǒng)設計
3.1 下位機硬件設計
如圖4所示,介紹了STC15W4K58S4單片機的管腳分布。考慮到電氣系統(tǒng)對于I/O接口以及對未來系統(tǒng)的可擴展性,選擇了擁有40個管腳,4個串口的STC15W4K58S4單片機。
STC15W4K58S4單片機擁有1T的增強型8051內(nèi)核,不需要外部晶振和復位電路,可在線編程,片上集成58K的程序FLASH,5096字節(jié)RAM,四個獨立串口,7個定時/計數(shù)器等功能[7-8],能夠在使用盡可能少的外部電路情況下完成本設計,提高了系統(tǒng)的穩(wěn)定性和抗干擾能力。
3.2 下位機功能設計
下位機主要完成兩個功能:其一,完成與上位機的通信,該通信主要解決了上位機不擅長進行I/O控制的問題,并且可以將某些I/O點的信息上傳給上位機;其二,完成對于胚芽米機電氣系統(tǒng)的控制,鑒于單片機對于I/O點處理的優(yōu)勢,使用單片機作為下位機并通過I/O點控制直流電機、步進電機、限位傳感器。下位機實物圖如圖5所示。
3.3下位機程序設計
下位機主程序流程圖如圖6所示,通電開機后,首先對I/O及串口進行初始化。然后判斷串口接收緩沖內(nèi)的內(nèi)容,在不需要加工時,上位機不發(fā)送消息給下位機。當用戶在上位機完成購買操作后,上位機會通過串口向下位機發(fā)送指令,該指令分為開始加工指令,出米稱重指令,停止出米指令等。下位機接收到不同的指令執(zhí)行相應的函數(shù)以完成對于電氣系統(tǒng)的控制。當一個加工過程結(jié)束后,下位機保持閑置狀態(tài),直到下一次加工指令到來。
4 系統(tǒng)測試
對于整個系統(tǒng)的測試主要進行了以下幾個步驟:首先是對上位機的測試,其中主要包括廣告閑時播放功能測試,界面跳轉(zhuǎn)測試以及串口的發(fā)送與接收測試;其次是對下位機的測試,主要包括串口的發(fā)送與接收測試,I/O節(jié)點測試,測試串口是否可以通過發(fā)送不同的指令進行相應的加工過程控制;最后是對整個系統(tǒng)進行長時間的測試,檢查整個系統(tǒng)能否按照預先的設計完成一個完整的操作流程,在測試過程中需要不斷對整個設計進行優(yōu)化和調(diào)整。
5 結(jié)語
在當前自助式胚芽米機的基礎之上,首先設計了一套完整的人機交互界面以及廣告閑時播放系統(tǒng),同時設計了電氣系統(tǒng)的控制方案。提升了整體的用戶體驗并且降低了硬件成本。在單片機的選型上采用了多個獨立串口的方案,軟件設計采用模塊化編程,方便后續(xù)的升級與維護。與此同時,本設計可以作為一個自助式設備控制系統(tǒng)的簡單樣例。
參考文獻:
[1] 王艷,蘭向東,陳釗等. 糙米、胚芽米和精白米營養(yǎng)成分分析[J].食品科技,2016(11):156-159.
[2] 鄭龍安,湯曉華,安嘉強,等.胚芽米機終端與云服務器通信交互系統(tǒng)設計[J].糧食與油脂,2018(2):83-87.
[3] NickRandolph. Visual studio 2010高級編程[M].清華大學出版社,2012.
[4] J Prosise. Programming Windows with MFC[M]. Microsoft Press 2003,1999.
[5] 王飛燕.關(guān)于人機交互設計界面問題探究[J].數(shù)字技術(shù)與應用,2016(2):235-235.
[6] 王芳,趙中寧.淺析智能制造過程中的人機交互系統(tǒng)[J].自動化博覽,2016(11):78-81.
[7] 陸帥華,王鑫,朱兆青.基于STC15W4K58S4的高精度SPWM移相控制器設計[J].福建電腦,2015(12):17-18.
[8] 高正中,趙晨暉,宋森森.基于STC15 MCU的微型四軸飛行器設計[J].現(xiàn)代電子技術(shù),2016,39(24):145-148.
【通聯(lián)編輯:梁書】