尚志豪,單超穎,王佳琦,唐成,何沁耘
沈陽城市建設學院信息與控制工程學院,遼寧沈陽,110167
伴隨著目前技術的不斷發展,人們生活的智能化需求愈加強烈,購物逛商城已經是人們不可或缺的生活方式之一。但是通過調查研究發現,現在很多人在購物時都會遇到排隊付款、人員擁堵、在超市里找不到自己要買的商品等諸多繁瑣問題,從而使得用戶購物體驗下滑。因此為了優化用戶的購物體驗,零售行業應該選擇一套智能購物系統來幫助用戶更加有效地購物[1]。
現有的智能購物車系統存在造價過高、市場認可度不高、難以形成市場產業化等問題,針對這些問題,本文設計了基于物聯網技術的新型購物車系統。本系統控制購物車實現跟進運動,購物車在用戶進行購物時可以自動語音導航幫助用戶找到需要的商品。除此之外,用戶需要購買大宗商品時,購物車可以進行自動稱重并計價到用戶的小程序,用戶在小程序上可以同時查看所有加入購物車的貨物名稱、價格、總價等詳細信息,以此來幫助用戶進行購物預算。此外,本系統還配備了“智能送貨”以實現“線上+線下”的模式,可在短距離下和短時間內將商品送達用戶所需位置,解決購物者在家或者工作時想要購物的需求[2]。
本文設計的基于物聯網技術的智能購物車系統,以STM32與樹莓派共同作為控制智能終端,其硬件部分應用了張力傳感器、樹莓攝像頭模組、三臂六橋電機驅動模塊、三相直流減速電機、樹莓派揚聲器、無線充電磁力模塊、紅外熱敏打印設備等。這些硬件上的傳感器將采集到的相關數據發送至系統主控MCU和MPU上,通過相關的程序與算法進行數據處理,然后硬件部分通過WIFI模塊將處理好的數據發送到后臺服務器中,由服務器進行數據儲存并將數據傳輸到Web服務器,Web服務器可通過與數據庫之間的交互以及使用智能算法將數據反饋到后臺服務器,最終發送到手機小程序客戶端實現數據的可視化(圖1)。本設備的工作電壓較小,屬于低功耗類型,用一塊低功耗電池供電即可,符合我國目前綠色環保的發展理念。

圖1 系統功能總設計圖
本系統中環境監測模塊是由傳感器、UWB模塊、MCU模塊和MPU模塊組成。硬件設計前,根據工程無線通信網絡需求,基于擬定的WIFI通信技術,本項設計根據各種芯片的不同特性和各自的優缺點、技術參數進行權衡來選擇主控芯片,以便于后續的設計及應用。因此,本系統選用了STM32F103RET6芯片作為支持無線通信網絡運行的主控芯片,同時搭配樹莓派進行運算處理。
UWB模塊生成用于定位的相關數據:UWB模塊一端由用戶作為發送端對系統進行控制,另一端被固定在購物車上作為接受端,將兩塊UWB產生的數據發送給STM32主控芯片,最終在主控芯片上通過設計好的算法將UWB產生的數據進行融合計算,得到的數據被輸出后用控制電機轉速,通過改變電機轉速實現購物車在方向上的控制。在中途遇到障礙物時購物車會使用紅外傳感器模塊將采集的距離數據警報傳遞給樹莓派,系統會根據設計的算法對障礙物自動地進行避讓,使系統的安全性能大大提高[3]。
采用USB免驅動800萬自動對焦攝像頭模組作為攝像頭模塊,景物通過鏡頭(LENS)生成的光學圖像投射到圖像傳感器表面上,然后轉為電信號,經過A/D轉換后變為數字圖像信號,再送到數字信號處理芯片中加工處理,再通過USB接口傳輸到電腦中處理,人們通過顯示器就可以看到圖像了。在運行條形碼識別的程序之后,將購買商品的條形碼對準攝像頭模塊,實現對商品條形碼信息的獲取,從而上傳到云平臺,然后通過微信小程序調用,從而實現商品的識別和購買商品總價的計算。
DP-48F單片機控制58MM熱敏票據打印模塊在聯機狀態下,通過接口電路接收計算機主機發送的打印控制命令、字符打印命令或圖形打印命令,經過打印機主控電路板CPU處理或從字庫中尋找到與該字符或圖形相對應的圖形編碼首列地址(正向打印時)或末列地址(反向打印時),然后按順序一列一列地找出字符或圖形的編碼,送至打印頭控制與驅動電路,激勵打印頭出針打印。打印頭是由縱向排列成單排(對9針打印頭而言)或交叉排(24針打印頭)的打印針及相應的電磁線圈構成的。當電磁線圈通電激勵后,相應的打印針就出針,通過擊打色帶,在打印紙上印出所需的字符(漢字)/圖形。系統可以使用此類組件打印相關商品票據[4]。
系統采用的是hx711ad張力傳感器。張力傳感器是彈性體(彈性元件,敏感梁)在外力作用下產生彈性變形,使粘貼在其表面的電阻應變片(轉換元件)也隨同產生變形,而電阻應變片變形后,它的阻值將發生變化(增大或減小),再經相應的測量電路把這一電阻變化轉換為電信號(電壓或電流),從而完成了將外力變換為電信號的過程。系統采用的張力傳感器通過樹莓派將數據傳輸到云平臺,再通過云平臺把數據傳輸到小程序,最后在小程序上顯示商品的重量信息[5]。
系統采用的是K1B10無線充電模塊,無線充電利用電磁波感應原理進行充電,類似于變壓器。該模塊在發送和接收端各有一個線圈,發送端線圈連接有線電源產生電磁信號,接收端線圈感應發送端的電磁信號從而產生電流,并且電能傳輸效率高達75%。本系統電源可以在特定范圍內為電池進行無線充電,只需要安裝一個電源,即可為整個智能購物車系統里的用電器供電。發射線圈的工作頻率在兆赫茲范圍,接收線圈在非輻射磁場內部發生諧振,以相同的頻率振蕩,然后有效地通過磁感應進行電能傳輸。
系統采取的電動機為12V驅動電機,采用A4950驅動。A4950是一款具有高電壓、大電流的全橋驅動芯片,對應頻率高,一臺A4950可以分別控制2個直流電機,而且還帶有控制使能端。用該芯片作為電機驅動,操作方便、穩定性好、性能優良,且由A4950結合單片機可實現對小車速度的精確控制。這種調速方式有調速特性優良、調整平滑、調速范圍廣、過載能力大等特點,能承受頻繁的負載沖擊,還可以實現頻繁的無級快速啟動、制動和反轉等功能。A4950可驅動2個電機,AOUT1、A0UT2和BOUT1、BOUT2之間分別接1個電動機,AIN1、BIN1腳接輸入控制電平,控制電機的正反轉,AIN1、AIN2腳連接控制使能端來控制電機的停止與轉動[6]。
DSL-3079-HE模塊采用USB接口,內嵌驅動可直接與樹莓派連接。USB麥克風的原理是把USB聲卡做到麥克風里,使聲卡和麥克風合二為一。錄音的時候,麥克風收到聲音數據后,直接由其聲卡處理,由模擬信號轉為數字喜好,然后通過USB以數據的形式傳送給電腦;當然,高檔的USB麥克風還可以監聽,在電腦上播放聲音,通過USB聲卡,由數字信號轉為模擬信號,傳送到麥克風機身上的耳機孔,就可以聽聲音。通過此類麥克風模塊,可實現對購物車語音導購助手的喚醒,只要說出你想要購買商品的名稱,就能實現人機交互。
揚聲器同時運用了電磁鐵和永久磁鐵,每一次電流改變方向時,電磁鐵上的線圈所產生的磁場方向也會跟隨改變。磁力是同極相斥、異極相吸的,線圈的磁極不停地改變,與永久磁鐵一時相吸、一時相斥,產生了振動。線圈與一個薄膜相連,當薄膜與線圈一起振動時,便會推動周圍的空氣,從而產生人耳朵聽到的聲音。通過揚聲器模塊,購物車系統會反饋回多種語音信息,從而實現人機交互。
(1)系統通過I2C總線通信協議,將過程中采集到的位置數據和商品數據等重要數據傳送到樹莓派,然后由系統進行進一步的分析和計算處理。
(2)通過NB-IOT傳輸協議將已經處理好的數據上傳到OneNET云服務平臺,云平臺服務器完成數據的儲存后通過MQTT協議將數據傳輸與發送至微信小程序服務器,最后由微信小程序客戶端進行數據的可視化顯示。
(3)系統選用了雙云平臺系統,有效保證了此項設計的實時性、準確性和數據安全性。客戶端采用微信小程序進行開發,云端則采用了OneNET進行云開發,不會擔心因意外導致數據丟失。使用微信小程序,不但減少了開發期間的人力財力的資源消耗,還減少了使用者手機內存資源的消耗,最終還能達到傳統APP的效果(圖2)。

圖2 小程序界面
對于智能購物車系統的語音導購功能來說,可以很好地解決人機交互的問題,在導購過程中,用戶能夠與系統對話直觀地了解該商店的商品信息,并且讓購物車對購物商品進行目標鎖定,通過算法在導購地圖上規劃出相關的前進路線,同時讓購物車開始進入導購模式,為用戶提供路線。此外,在導購過程中用戶可以隨時修改購物目標,重新規劃相關路線。本購物車系統在超市、商場等室內狹小空間進行語音導購的功能,用戶只需要通過對實體購物車說出需要購買的商品,購物車就會自動為其進行語音導航;此外,通過小程序搜索商品也能讓購物車進行導購。
本系統能實現在小程序里選定商品,購物車為其進行導購的功能。本系統搭載的智能購物車系統只需要用戶打開小程序并且在小程序里找到其所需商品,然后通過算法將商品坐標位置信息與購物地圖相結合來規劃購物車行進路線,并把規劃完成的路線數據使用小程序發送給購物車。隨后購物車的AI訓練模型讓其實現導航,為用戶找到所需要購買的商品。
本系統可以同時使用兩種支付功能進行結算。購物車掃描的數據通過掃描購物車的條帶代碼傳輸到小程序,小程序屏幕上就會顯示商品名稱、價格和產地信息。將所有需要購買的商品添加到購物車中,并進行結算,第一種結算方式是在小程序進行商品支付,把商品支付的錢轉到管理員的流水賬號上;第二種結算方式是使用微信或支付寶進行支付,直接將金額結算到管理員的電子賬戶上。本系統可以實現多種支付模式共同實現的效果,使得本系統的實用性有所提高。
當用戶在購物時,不需要購物者去管理自己的購物車,只需要用戶配帶好購物車喚醒時給的手環,小車將自動跟隨用戶行走,不需要花費多余的力量去推購物車,這樣既達到了客戶需要的高效購物,也讓購物者有更好的體驗。使用兩個UWB搭載STM32主控實現本功能,一個作為發送端,一個作為接收端,使用數據整合算法將發送端和接收端數據進行融合,并通過主控內部的算法將計算得到的數據傳輸給電機驅動模塊,實現對電機的控制,從而實現購物車的跟隨。
本文中的智能購物系統集成了購物過程中的各種數據。購物時為了提高其自動跟隨的效果,當用戶在行走(或靜止)時可將得到的2組UWB數據與紅外傳感器數據進行融合,并且對數據進行計算,通過有效的算法,實現自動跟隨并能夠有效地避開障礙物,從而提高購物車的安全性能。同時,還可將將運算得到的實時數據傳輸給系統的主控進行輸出,從而控制購物車行進方向。此外,本系統還融合了壓力、圖像等數據,對系統的稱重功能數據進行融合,能更好地提升物品稱量的信息準確度。
本系統采用傳感器對購物中的散貨商品進行稱量,同時將稱量的結果與系統中的小程序進行結合,并且將數據傳輸到小程序進行名稱、重量、價格等信息顯示,使購物車在購買商品時也能夠具有購買散裝商品的能力,支付時能使用本購物車系統進行支付。購物車通過拉力傳感器得到數據并將其傳輸到云平臺,然后對數據進行處理,最后將數據在小程序上進行顯示。
本套系統搭載的智能購物車系統在移動端的小程序里,同時與實體超市的智能購物車進行融合,讓用戶能夠通過小程序找到自己想購買的物品。購物車實現了語音導購功能,極大地解決了購物過程中找不到自己想購買的商品的問題,提高了用戶的體驗感。除此之外小程序還具有在云端購物、線下進行配送貨物的功能,且配送時間由原來的幾天縮短為短短的2~3小時,不僅很好地保證了商品的新鮮度,對商品的價格也很好把控,同時也提升了送貨時效性,使用戶在實體店有更好的體驗。
本系統的功能全面,應用了多種傳感器來完成各種復雜的功能。這些傳感器將采集到的龐大數據在本系統的后臺中進行處理與挖掘,為用戶提供有效的信息。本系統中用到五種算法:數據融合算法、PID算法、Trilateration定位算法、運動規劃算法、Canny圖像處理算法。
為了使購物者的購物體驗能更上一層樓,應該選擇一套智能購物系統來幫助其更加有效地購物。
本文主要研究內容包括以下幾點。
(1)系統的主控為NB-IOT,它具有連接設備多、低功耗、高覆蓋等特點,對本設計有著非常重要的作用,是本系統的技術中心;系統的樹莓派主控具有高效的運算速度,對圖像處理有著舉足輕重的作用,同時對AI語音模型訓練也有重要貢獻,是本系統的AI算法的運算核心。
(2)對OneNet云平臺進行了一定的研究,該平臺作為數據的傳輸中轉站,穩定性高,且具有很高的安全性,保障了設備的信息儲存。
(3)對云開發進行了深度的研究,開發了一款讓購物簡單的小程序——天運。同時搭載了Java Web后臺超市管理系統對商品進行管理,同時對智能配送有著重要作用。
(4)研究了UWB系統,實時精準地定位跟隨對購物者的幫助很大。UWB將所測量的數據相互融合為購物車提供移動數據。
(5)研究無線自動充電,為本系統在能源使用上有很大作用,同時為本系統提供了穩定的電源,并且讓本系統能夠長時間進行無人化工作,為我國無人超市提供了一個解決方案。
(6)智能送貨功能可以讓人們的購物不受時間和空間的限制,讓購物者的購物生活體驗更加美好。