尚志豪,單超穎,王佳琦,唐成,何沁耘
沈陽(yáng)城市建設(shè)學(xué)院信息與控制工程學(xué)院,遼寧沈陽(yáng),110167
伴隨著目前技術(shù)的不斷發(fā)展,人們生活的智能化需求愈加強(qiáng)烈,購(gòu)物逛商城已經(jīng)是人們不可或缺的生活方式之一。但是通過調(diào)查研究發(fā)現(xiàn),現(xiàn)在很多人在購(gòu)物時(shí)都會(huì)遇到排隊(duì)付款、人員擁堵、在超市里找不到自己要買的商品等諸多繁瑣問題,從而使得用戶購(gòu)物體驗(yàn)下滑。因此為了優(yōu)化用戶的購(gòu)物體驗(yàn),零售行業(yè)應(yīng)該選擇一套智能購(gòu)物系統(tǒng)來幫助用戶更加有效地購(gòu)物[1]。
現(xiàn)有的智能購(gòu)物車系統(tǒng)存在造價(jià)過高、市場(chǎng)認(rèn)可度不高、難以形成市場(chǎng)產(chǎn)業(yè)化等問題,針對(duì)這些問題,本文設(shè)計(jì)了基于物聯(lián)網(wǎng)技術(shù)的新型購(gòu)物車系統(tǒng)。本系統(tǒng)控制購(gòu)物車實(shí)現(xiàn)跟進(jìn)運(yùn)動(dòng),購(gòu)物車在用戶進(jìn)行購(gòu)物時(shí)可以自動(dòng)語音導(dǎo)航幫助用戶找到需要的商品。除此之外,用戶需要購(gòu)買大宗商品時(shí),購(gòu)物車可以進(jìn)行自動(dòng)稱重并計(jì)價(jià)到用戶的小程序,用戶在小程序上可以同時(shí)查看所有加入購(gòu)物車的貨物名稱、價(jià)格、總價(jià)等詳細(xì)信息,以此來幫助用戶進(jìn)行購(gòu)物預(yù)算。此外,本系統(tǒng)還配備了“智能送貨”以實(shí)現(xiàn)“線上+線下”的模式,可在短距離下和短時(shí)間內(nèi)將商品送達(dá)用戶所需位置,解決購(gòu)物者在家或者工作時(shí)想要購(gòu)物的需求[2]。
本文設(shè)計(jì)的基于物聯(lián)網(wǎng)技術(shù)的智能購(gòu)物車系統(tǒng),以STM32與樹莓派共同作為控制智能終端,其硬件部分應(yīng)用了張力傳感器、樹莓?dāng)z像頭模組、三臂六橋電機(jī)驅(qū)動(dòng)模塊、三相直流減速電機(jī)、樹莓派揚(yáng)聲器、無線充電磁力模塊、紅外熱敏打印設(shè)備等。這些硬件上的傳感器將采集到的相關(guān)數(shù)據(jù)發(fā)送至系統(tǒng)主控MCU和MPU上,通過相關(guān)的程序與算法進(jìn)行數(shù)據(jù)處理,然后硬件部分通過WIFI模塊將處理好的數(shù)據(jù)發(fā)送到后臺(tái)服務(wù)器中,由服務(wù)器進(jìn)行數(shù)據(jù)儲(chǔ)存并將數(shù)據(jù)傳輸?shù)絎eb服務(wù)器,Web服務(wù)器可通過與數(shù)據(jù)庫(kù)之間的交互以及使用智能算法將數(shù)據(jù)反饋到后臺(tái)服務(wù)器,最終發(fā)送到手機(jī)小程序客戶端實(shí)現(xiàn)數(shù)據(jù)的可視化(圖1)。本設(shè)備的工作電壓較小,屬于低功耗類型,用一塊低功耗電池供電即可,符合我國(guó)目前綠色環(huán)保的發(fā)展理念。
圖1 系統(tǒng)功能總設(shè)計(jì)圖
本系統(tǒng)中環(huán)境監(jiān)測(cè)模塊是由傳感器、UWB模塊、MCU模塊和MPU模塊組成。硬件設(shè)計(jì)前,根據(jù)工程無線通信網(wǎng)絡(luò)需求,基于擬定的WIFI通信技術(shù),本項(xiàng)設(shè)計(jì)根據(jù)各種芯片的不同特性和各自的優(yōu)缺點(diǎn)、技術(shù)參數(shù)進(jìn)行權(quán)衡來選擇主控芯片,以便于后續(xù)的設(shè)計(jì)及應(yīng)用。因此,本系統(tǒng)選用了STM32F103RET6芯片作為支持無線通信網(wǎng)絡(luò)運(yùn)行的主控芯片,同時(shí)搭配樹莓派進(jìn)行運(yùn)算處理。
UWB模塊生成用于定位的相關(guān)數(shù)據(jù):UWB模塊一端由用戶作為發(fā)送端對(duì)系統(tǒng)進(jìn)行控制,另一端被固定在購(gòu)物車上作為接受端,將兩塊UWB產(chǎn)生的數(shù)據(jù)發(fā)送給STM32主控芯片,最終在主控芯片上通過設(shè)計(jì)好的算法將UWB產(chǎn)生的數(shù)據(jù)進(jìn)行融合計(jì)算,得到的數(shù)據(jù)被輸出后用控制電機(jī)轉(zhuǎn)速,通過改變電機(jī)轉(zhuǎn)速實(shí)現(xiàn)購(gòu)物車在方向上的控制。在中途遇到障礙物時(shí)購(gòu)物車會(huì)使用紅外傳感器模塊將采集的距離數(shù)據(jù)警報(bào)傳遞給樹莓派,系統(tǒng)會(huì)根據(jù)設(shè)計(jì)的算法對(duì)障礙物自動(dòng)地進(jìn)行避讓,使系統(tǒng)的安全性能大大提高[3]。
采用USB免驅(qū)動(dòng)800萬自動(dòng)對(duì)焦攝像頭模組作為攝像頭模塊,景物通過鏡頭(LENS)生成的光學(xué)圖像投射到圖像傳感器表面上,然后轉(zhuǎn)為電信號(hào),經(jīng)過A/D轉(zhuǎn)換后變?yōu)閿?shù)字圖像信號(hào),再送到數(shù)字信號(hào)處理芯片中加工處理,再通過USB接口傳輸?shù)诫娔X中處理,人們通過顯示器就可以看到圖像了。在運(yùn)行條形碼識(shí)別的程序之后,將購(gòu)買商品的條形碼對(duì)準(zhǔn)攝像頭模塊,實(shí)現(xiàn)對(duì)商品條形碼信息的獲取,從而上傳到云平臺(tái),然后通過微信小程序調(diào)用,從而實(shí)現(xiàn)商品的識(shí)別和購(gòu)買商品總價(jià)的計(jì)算。
DP-48F單片機(jī)控制58MM熱敏票據(jù)打印模塊在聯(lián)機(jī)狀態(tài)下,通過接口電路接收計(jì)算機(jī)主機(jī)發(fā)送的打印控制命令、字符打印命令或圖形打印命令,經(jīng)過打印機(jī)主控電路板CPU處理或從字庫(kù)中尋找到與該字符或圖形相對(duì)應(yīng)的圖形編碼首列地址(正向打印時(shí))或末列地址(反向打印時(shí)),然后按順序一列一列地找出字符或圖形的編碼,送至打印頭控制與驅(qū)動(dòng)電路,激勵(lì)打印頭出針打印。打印頭是由縱向排列成單排(對(duì)9針打印頭而言)或交叉排(24針打印頭)的打印針及相應(yīng)的電磁線圈構(gòu)成的。當(dāng)電磁線圈通電激勵(lì)后,相應(yīng)的打印針就出針,通過擊打色帶,在打印紙上印出所需的字符(漢字)/圖形。系統(tǒng)可以使用此類組件打印相關(guān)商品票據(jù)[4]。
系統(tǒng)采用的是hx711ad張力傳感器。張力傳感器是彈性體(彈性元件,敏感梁)在外力作用下產(chǎn)生彈性變形,使粘貼在其表面的電阻應(yīng)變片(轉(zhuǎn)換元件)也隨同產(chǎn)生變形,而電阻應(yīng)變片變形后,它的阻值將發(fā)生變化(增大或減小),再經(jīng)相應(yīng)的測(cè)量電路把這一電阻變化轉(zhuǎn)換為電信號(hào)(電壓或電流),從而完成了將外力變換為電信號(hào)的過程。系統(tǒng)采用的張力傳感器通過樹莓派將數(shù)據(jù)傳輸?shù)皆破脚_(tái),再通過云平臺(tái)把數(shù)據(jù)傳輸?shù)叫〕绦?,最后在小程序上顯示商品的重量信息[5]。
系統(tǒng)采用的是K1B10無線充電模塊,無線充電利用電磁波感應(yīng)原理進(jìn)行充電,類似于變壓器。該模塊在發(fā)送和接收端各有一個(gè)線圈,發(fā)送端線圈連接有線電源產(chǎn)生電磁信號(hào),接收端線圈感應(yīng)發(fā)送端的電磁信號(hào)從而產(chǎn)生電流,并且電能傳輸效率高達(dá)75%。本系統(tǒng)電源可以在特定范圍內(nèi)為電池進(jìn)行無線充電,只需要安裝一個(gè)電源,即可為整個(gè)智能購(gòu)物車系統(tǒng)里的用電器供電。發(fā)射線圈的工作頻率在兆赫茲范圍,接收線圈在非輻射磁場(chǎng)內(nèi)部發(fā)生諧振,以相同的頻率振蕩,然后有效地通過磁感應(yīng)進(jìn)行電能傳輸。
系統(tǒng)采取的電動(dòng)機(jī)為12V驅(qū)動(dòng)電機(jī),采用A4950驅(qū)動(dòng)。A4950是一款具有高電壓、大電流的全橋驅(qū)動(dòng)芯片,對(duì)應(yīng)頻率高,一臺(tái)A4950可以分別控制2個(gè)直流電機(jī),而且還帶有控制使能端。用該芯片作為電機(jī)驅(qū)動(dòng),操作方便、穩(wěn)定性好、性能優(yōu)良,且由A4950結(jié)合單片機(jī)可實(shí)現(xiàn)對(duì)小車速度的精確控制。這種調(diào)速方式有調(diào)速特性優(yōu)良、調(diào)整平滑、調(diào)速范圍廣、過載能力大等特點(diǎn),能承受頻繁的負(fù)載沖擊,還可以實(shí)現(xiàn)頻繁的無級(jí)快速啟動(dòng)、制動(dòng)和反轉(zhuǎn)等功能。A4950可驅(qū)動(dòng)2個(gè)電機(jī),AOUT1、A0UT2和BOUT1、BOUT2之間分別接1個(gè)電動(dòng)機(jī),AIN1、BIN1腳接輸入控制電平,控制電機(jī)的正反轉(zhuǎn),AIN1、AIN2腳連接控制使能端來控制電機(jī)的停止與轉(zhuǎn)動(dòng)[6]。
DSL-3079-HE模塊采用USB接口,內(nèi)嵌驅(qū)動(dòng)可直接與樹莓派連接。USB麥克風(fēng)的原理是把USB聲卡做到麥克風(fēng)里,使聲卡和麥克風(fēng)合二為一。錄音的時(shí)候,麥克風(fēng)收到聲音數(shù)據(jù)后,直接由其聲卡處理,由模擬信號(hào)轉(zhuǎn)為數(shù)字喜好,然后通過USB以數(shù)據(jù)的形式傳送給電腦;當(dāng)然,高檔的USB麥克風(fēng)還可以監(jiān)聽,在電腦上播放聲音,通過USB聲卡,由數(shù)字信號(hào)轉(zhuǎn)為模擬信號(hào),傳送到麥克風(fēng)機(jī)身上的耳機(jī)孔,就可以聽聲音。通過此類麥克風(fēng)模塊,可實(shí)現(xiàn)對(duì)購(gòu)物車語音導(dǎo)購(gòu)助手的喚醒,只要說出你想要購(gòu)買商品的名稱,就能實(shí)現(xiàn)人機(jī)交互。
揚(yáng)聲器同時(shí)運(yùn)用了電磁鐵和永久磁鐵,每一次電流改變方向時(shí),電磁鐵上的線圈所產(chǎn)生的磁場(chǎng)方向也會(huì)跟隨改變。磁力是同極相斥、異極相吸的,線圈的磁極不停地改變,與永久磁鐵一時(shí)相吸、一時(shí)相斥,產(chǎn)生了振動(dòng)。線圈與一個(gè)薄膜相連,當(dāng)薄膜與線圈一起振動(dòng)時(shí),便會(huì)推動(dòng)周圍的空氣,從而產(chǎn)生人耳朵聽到的聲音。通過揚(yáng)聲器模塊,購(gòu)物車系統(tǒng)會(huì)反饋回多種語音信息,從而實(shí)現(xiàn)人機(jī)交互。
(1)系統(tǒng)通過I2C總線通信協(xié)議,將過程中采集到的位置數(shù)據(jù)和商品數(shù)據(jù)等重要數(shù)據(jù)傳送到樹莓派,然后由系統(tǒng)進(jìn)行進(jìn)一步的分析和計(jì)算處理。
(2)通過NB-IOT傳輸協(xié)議將已經(jīng)處理好的數(shù)據(jù)上傳到OneNET云服務(wù)平臺(tái),云平臺(tái)服務(wù)器完成數(shù)據(jù)的儲(chǔ)存后通過MQTT協(xié)議將數(shù)據(jù)傳輸與發(fā)送至微信小程序服務(wù)器,最后由微信小程序客戶端進(jìn)行數(shù)據(jù)的可視化顯示。
(3)系統(tǒng)選用了雙云平臺(tái)系統(tǒng),有效保證了此項(xiàng)設(shè)計(jì)的實(shí)時(shí)性、準(zhǔn)確性和數(shù)據(jù)安全性。客戶端采用微信小程序進(jìn)行開發(fā),云端則采用了OneNET進(jìn)行云開發(fā),不會(huì)擔(dān)心因意外導(dǎo)致數(shù)據(jù)丟失。使用微信小程序,不但減少了開發(fā)期間的人力財(cái)力的資源消耗,還減少了使用者手機(jī)內(nèi)存資源的消耗,最終還能達(dá)到傳統(tǒng)APP的效果(圖2)。
圖2 小程序界面
對(duì)于智能購(gòu)物車系統(tǒng)的語音導(dǎo)購(gòu)功能來說,可以很好地解決人機(jī)交互的問題,在導(dǎo)購(gòu)過程中,用戶能夠與系統(tǒng)對(duì)話直觀地了解該商店的商品信息,并且讓購(gòu)物車對(duì)購(gòu)物商品進(jìn)行目標(biāo)鎖定,通過算法在導(dǎo)購(gòu)地圖上規(guī)劃出相關(guān)的前進(jìn)路線,同時(shí)讓購(gòu)物車開始進(jìn)入導(dǎo)購(gòu)模式,為用戶提供路線。此外,在導(dǎo)購(gòu)過程中用戶可以隨時(shí)修改購(gòu)物目標(biāo),重新規(guī)劃相關(guān)路線。本購(gòu)物車系統(tǒng)在超市、商場(chǎng)等室內(nèi)狹小空間進(jìn)行語音導(dǎo)購(gòu)的功能,用戶只需要通過對(duì)實(shí)體購(gòu)物車說出需要購(gòu)買的商品,購(gòu)物車就會(huì)自動(dòng)為其進(jìn)行語音導(dǎo)航;此外,通過小程序搜索商品也能讓購(gòu)物車進(jìn)行導(dǎo)購(gòu)。
本系統(tǒng)能實(shí)現(xiàn)在小程序里選定商品,購(gòu)物車為其進(jìn)行導(dǎo)購(gòu)的功能。本系統(tǒng)搭載的智能購(gòu)物車系統(tǒng)只需要用戶打開小程序并且在小程序里找到其所需商品,然后通過算法將商品坐標(biāo)位置信息與購(gòu)物地圖相結(jié)合來規(guī)劃購(gòu)物車行進(jìn)路線,并把規(guī)劃完成的路線數(shù)據(jù)使用小程序發(fā)送給購(gòu)物車。隨后購(gòu)物車的AI訓(xùn)練模型讓其實(shí)現(xiàn)導(dǎo)航,為用戶找到所需要購(gòu)買的商品。
本系統(tǒng)可以同時(shí)使用兩種支付功能進(jìn)行結(jié)算。購(gòu)物車掃描的數(shù)據(jù)通過掃描購(gòu)物車的條帶代碼傳輸?shù)叫〕绦?,小程序屏幕上就?huì)顯示商品名稱、價(jià)格和產(chǎn)地信息。將所有需要購(gòu)買的商品添加到購(gòu)物車中,并進(jìn)行結(jié)算,第一種結(jié)算方式是在小程序進(jìn)行商品支付,把商品支付的錢轉(zhuǎn)到管理員的流水賬號(hào)上;第二種結(jié)算方式是使用微信或支付寶進(jìn)行支付,直接將金額結(jié)算到管理員的電子賬戶上。本系統(tǒng)可以實(shí)現(xiàn)多種支付模式共同實(shí)現(xiàn)的效果,使得本系統(tǒng)的實(shí)用性有所提高。
當(dāng)用戶在購(gòu)物時(shí),不需要購(gòu)物者去管理自己的購(gòu)物車,只需要用戶配帶好購(gòu)物車喚醒時(shí)給的手環(huán),小車將自動(dòng)跟隨用戶行走,不需要花費(fèi)多余的力量去推購(gòu)物車,這樣既達(dá)到了客戶需要的高效購(gòu)物,也讓購(gòu)物者有更好的體驗(yàn)。使用兩個(gè)UWB搭載STM32主控實(shí)現(xiàn)本功能,一個(gè)作為發(fā)送端,一個(gè)作為接收端,使用數(shù)據(jù)整合算法將發(fā)送端和接收端數(shù)據(jù)進(jìn)行融合,并通過主控內(nèi)部的算法將計(jì)算得到的數(shù)據(jù)傳輸給電機(jī)驅(qū)動(dòng)模塊,實(shí)現(xiàn)對(duì)電機(jī)的控制,從而實(shí)現(xiàn)購(gòu)物車的跟隨。
本文中的智能購(gòu)物系統(tǒng)集成了購(gòu)物過程中的各種數(shù)據(jù)。購(gòu)物時(shí)為了提高其自動(dòng)跟隨的效果,當(dāng)用戶在行走(或靜止)時(shí)可將得到的2組UWB數(shù)據(jù)與紅外傳感器數(shù)據(jù)進(jìn)行融合,并且對(duì)數(shù)據(jù)進(jìn)行計(jì)算,通過有效的算法,實(shí)現(xiàn)自動(dòng)跟隨并能夠有效地避開障礙物,從而提高購(gòu)物車的安全性能。同時(shí),還可將將運(yùn)算得到的實(shí)時(shí)數(shù)據(jù)傳輸給系統(tǒng)的主控進(jìn)行輸出,從而控制購(gòu)物車行進(jìn)方向。此外,本系統(tǒng)還融合了壓力、圖像等數(shù)據(jù),對(duì)系統(tǒng)的稱重功能數(shù)據(jù)進(jìn)行融合,能更好地提升物品稱量的信息準(zhǔn)確度。
本系統(tǒng)采用傳感器對(duì)購(gòu)物中的散貨商品進(jìn)行稱量,同時(shí)將稱量的結(jié)果與系統(tǒng)中的小程序進(jìn)行結(jié)合,并且將數(shù)據(jù)傳輸?shù)叫〕绦蜻M(jìn)行名稱、重量、價(jià)格等信息顯示,使購(gòu)物車在購(gòu)買商品時(shí)也能夠具有購(gòu)買散裝商品的能力,支付時(shí)能使用本購(gòu)物車系統(tǒng)進(jìn)行支付。購(gòu)物車通過拉力傳感器得到數(shù)據(jù)并將其傳輸?shù)皆破脚_(tái),然后對(duì)數(shù)據(jù)進(jìn)行處理,最后將數(shù)據(jù)在小程序上進(jìn)行顯示。
本套系統(tǒng)搭載的智能購(gòu)物車系統(tǒng)在移動(dòng)端的小程序里,同時(shí)與實(shí)體超市的智能購(gòu)物車進(jìn)行融合,讓用戶能夠通過小程序找到自己想購(gòu)買的物品。購(gòu)物車實(shí)現(xiàn)了語音導(dǎo)購(gòu)功能,極大地解決了購(gòu)物過程中找不到自己想購(gòu)買的商品的問題,提高了用戶的體驗(yàn)感。除此之外小程序還具有在云端購(gòu)物、線下進(jìn)行配送貨物的功能,且配送時(shí)間由原來的幾天縮短為短短的2~3小時(shí),不僅很好地保證了商品的新鮮度,對(duì)商品的價(jià)格也很好把控,同時(shí)也提升了送貨時(shí)效性,使用戶在實(shí)體店有更好的體驗(yàn)。
本系統(tǒng)的功能全面,應(yīng)用了多種傳感器來完成各種復(fù)雜的功能。這些傳感器將采集到的龐大數(shù)據(jù)在本系統(tǒng)的后臺(tái)中進(jìn)行處理與挖掘,為用戶提供有效的信息。本系統(tǒng)中用到五種算法:數(shù)據(jù)融合算法、PID算法、Trilateration定位算法、運(yùn)動(dòng)規(guī)劃算法、Canny圖像處理算法。
為了使購(gòu)物者的購(gòu)物體驗(yàn)?zāi)芨弦粚訕?,?yīng)該選擇一套智能購(gòu)物系統(tǒng)來幫助其更加有效地購(gòu)物。
本文主要研究?jī)?nèi)容包括以下幾點(diǎn)。
(1)系統(tǒng)的主控為NB-IOT,它具有連接設(shè)備多、低功耗、高覆蓋等特點(diǎn),對(duì)本設(shè)計(jì)有著非常重要的作用,是本系統(tǒng)的技術(shù)中心;系統(tǒng)的樹莓派主控具有高效的運(yùn)算速度,對(duì)圖像處理有著舉足輕重的作用,同時(shí)對(duì)AI語音模型訓(xùn)練也有重要貢獻(xiàn),是本系統(tǒng)的AI算法的運(yùn)算核心。
(2)對(duì)OneNet云平臺(tái)進(jìn)行了一定的研究,該平臺(tái)作為數(shù)據(jù)的傳輸中轉(zhuǎn)站,穩(wěn)定性高,且具有很高的安全性,保障了設(shè)備的信息儲(chǔ)存。
(3)對(duì)云開發(fā)進(jìn)行了深度的研究,開發(fā)了一款讓購(gòu)物簡(jiǎn)單的小程序——天運(yùn)。同時(shí)搭載了Java Web后臺(tái)超市管理系統(tǒng)對(duì)商品進(jìn)行管理,同時(shí)對(duì)智能配送有著重要作用。
(4)研究了UWB系統(tǒng),實(shí)時(shí)精準(zhǔn)地定位跟隨對(duì)購(gòu)物者的幫助很大。UWB將所測(cè)量的數(shù)據(jù)相互融合為購(gòu)物車提供移動(dòng)數(shù)據(jù)。
(5)研究無線自動(dòng)充電,為本系統(tǒng)在能源使用上有很大作用,同時(shí)為本系統(tǒng)提供了穩(wěn)定的電源,并且讓本系統(tǒng)能夠長(zhǎng)時(shí)間進(jìn)行無人化工作,為我國(guó)無人超市提供了一個(gè)解決方案。
(6)智能送貨功能可以讓人們的購(gòu)物不受時(shí)間和空間的限制,讓購(gòu)物者的購(gòu)物生活體驗(yàn)更加美好。