本發(fā)明涉及旅行箱定位技術(shù)領(lǐng)域,具體為一種基于stm32的旅行箱定位系統(tǒng)及方法。
背景技術(shù):
旅行箱已經(jīng)成為人們旅途中不可或缺的一部分。因?yàn)槁眯邢鋽y帶方便、內(nèi)部空間大,深受旅行者(包括學(xué)生、工人等需攜帶大量物品的人)的喜愛。然而在人們的旅途中經(jīng)常發(fā)生旅行箱不見的情況,尤其是當(dāng)旅行箱體積大需要托運(yùn)等情況,此時(shí)人們只能通過旅行箱的外部特征來辨認(rèn),這種情況下尋找旅行箱顯得極為困難。不僅如此,在生活中旅行箱被盜的情況也時(shí)有發(fā)生。然而人們還經(jīng)常將手提電腦等重要物品放于旅行箱中,若旅行箱丟失,經(jīng)濟(jì)損失極其嚴(yán)重?,F(xiàn)在的旅行箱還未加入定位系統(tǒng),丟失后只能憑借“運(yùn)氣”才可找回。在這種背景下,開發(fā)出一款經(jīng)濟(jì)、實(shí)用的旅行箱定位系統(tǒng)顯得極其重要。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明針對(duì)現(xiàn)有技術(shù)存在的問題,提出了一種經(jīng)濟(jì)、實(shí)用、可靠的基于stm32的旅行箱定位系統(tǒng)及方法。
本發(fā)明解決其技術(shù)問題所采用的技術(shù)方案是:一種基于stm32的旅行箱定位系統(tǒng),包括安裝在旅行箱上的定位裝置,與所述定位裝置電性連接的移動(dòng)設(shè)備端;
所述移動(dòng)設(shè)備端裝有旅行箱定位app;
所述定位裝置包括stm32單片機(jī),gsm通訊模塊,gps模塊,開關(guān)繼電器和供電電池,所述gps模塊與所述stm32單片機(jī)電性連接,所述stm32單片機(jī)與所述gsm通訊模塊電性連接,所述stm32單片機(jī)與所述開關(guān)繼電器之間相互電性連接,所述供電電池與所述開關(guān)繼電器電性連接;
所述stm32單片機(jī)包括單片機(jī)休眠模式和單片機(jī)工作模式,所述stm32單片機(jī)在所述單片機(jī)工作模式下用于通過所述gps模塊獲取旅行箱的實(shí)時(shí)定位信息并將所述實(shí)時(shí)定位信息發(fā)送給所述gsm通訊模塊;
所述gsm通訊模塊包括通訊休眠模式和通訊工作模式,所述通訊休眠模式通過外部觸發(fā)信號(hào)觸發(fā)而轉(zhuǎn)換成通訊工作模式,所述通訊工作模式可通過所述stm32單片機(jī)設(shè)置成通訊休眠模式;所述gsm通訊模塊在所述通訊工作模式下用于將所述stm32單片機(jī)發(fā)送來的信息傳送給移動(dòng)設(shè)備端;
所述gps模塊在所述旅行箱定位系統(tǒng)啟動(dòng)后一直處于定位工作模式;
所述開關(guān)繼電器通過手動(dòng)方式打開使所述旅行箱定位系統(tǒng)啟動(dòng),在所述旅行箱定位系統(tǒng)啟動(dòng)后所述開關(guān)繼電器處于閉鎖狀態(tài),只能由所述stm32單片機(jī)控制所述開關(guān)繼電器關(guān)閉。
作為優(yōu)選,所述stm32單片機(jī)包括cortex-m3微處理器,64kbsram,512kbflash,定時(shí)器和串口。
作為優(yōu)選,所述外部觸發(fā)信號(hào)為所述移動(dòng)設(shè)備端發(fā)送的電話信息或短信信息。
作為優(yōu)選,所述gsm通訊模塊通過短信方式或者gprs方式將所述stm32單片機(jī)發(fā)送來的信息傳送給移動(dòng)設(shè)備端。
作為優(yōu)選,所述stm32單片機(jī)可通過所述旅行箱定位app將所述開關(guān)繼電器關(guān)閉。
作為優(yōu)選,所述stm32單片機(jī)可通過所述旅行箱定位app將所述gsm通訊模塊的通訊工作模式設(shè)置成通訊休眠模式。
基于stm32的旅行箱定位方法,包括,
步驟1,判斷旅行箱定位系統(tǒng)是否啟動(dòng),是則閉合旅行箱上的繼電器,供電電池給stm32單片機(jī),gsm通訊模塊,gps模塊和開關(guān)繼電器供電,所述stm32單片機(jī)給所述繼電器發(fā)送閉鎖信號(hào)使所述繼電器處于閉鎖狀態(tài),所述stm32單片進(jìn)入單片機(jī)休眠模式,所述gsm通訊模塊進(jìn)入通訊休眠模式,所述gps模塊進(jìn)入定位工作模式;
步驟2,判斷旅行箱定位系統(tǒng)是否需要查詢旅行箱位置,是則通過移動(dòng)設(shè)備端給固定號(hào)碼打電話或發(fā)短信以觸發(fā)所述gsm通訊模塊,使所述gsm通訊模塊從所述通訊休眠模式進(jìn)入所述通訊工作模式,使所述stm32單片從所述單片機(jī)休眠模式進(jìn)入所述單片機(jī)工作模式;
所述stm32單片接收并處理所述gps模塊獲取的實(shí)時(shí)定位信息,并將處理后的實(shí)時(shí)定位信息發(fā)送給所述gsm通訊模塊;
所述gsm通訊模塊通過短信方式或者gprs方式將所述stm32單片機(jī)發(fā)送來的信息傳送給移動(dòng)設(shè)備端供用戶查看;
步驟3,判斷旅行箱定位系統(tǒng)的旅行箱位置查詢是否結(jié)束,是則通過安裝在移動(dòng)設(shè)備端的旅行箱定位app將所述gsm通訊模塊的通訊工作模式設(shè)置成通訊休眠模式,并將所述stm32單片機(jī)的單片機(jī)工作模式設(shè)置成單片機(jī)休眠模式,以等待下一次的旅行箱位置查詢;
步驟4,判斷旅行箱定位系統(tǒng)是否關(guān)閉,是則通過安裝在移動(dòng)設(shè)備端的旅行箱定位app控制stm32單片機(jī)將所述開關(guān)繼電器關(guān)閉,供電電池停止供電,旅行箱定位系統(tǒng)關(guān)閉。
作為優(yōu)選,所述stm32單片機(jī)的工作方法具體為,
步驟a1,判斷繼電器是否處于閉鎖狀態(tài),是則給stm32單片機(jī)供電并進(jìn)入下一步驟,否則使stm32單片機(jī)失電并結(jié)束;
步驟a2,判斷stm32單片機(jī)是否進(jìn)入休眠,是則進(jìn)入單片機(jī)休眠模式,否則進(jìn)入下一步驟;當(dāng)stm32單片處于單片機(jī)休眠模式時(shí),判斷是否有中斷信號(hào),是則進(jìn)入下一步,否則繼續(xù)處于單片機(jī)休眠模式;
步驟a3,接收gps信息;
步驟a4,解壓并分析出gps定位信息;
步驟a5,發(fā)送gps定位信息,并返回步驟a1。
作為優(yōu)選,所述gsm通訊模塊的工作方法具體為,
步驟b1,gsm通訊模塊處于通訊休眠模式,判斷是否有短信或電話觸發(fā),是則進(jìn)入下一步驟,否則繼續(xù)處于通訊休眠模式;
步驟b2,接收stm32單片機(jī)的實(shí)時(shí)定位數(shù)據(jù);
步驟b3,通過短息方式或gprs方式發(fā)送定位信息給用戶;
步驟b4,判斷旅行箱定位系統(tǒng)是否關(guān)閉,是則結(jié)束,否則進(jìn)入步驟b2。
作為優(yōu)選,所述開關(guān)繼電器的工作方法具體為,
步驟c1,判斷繼電器開關(guān)是否按下,是則進(jìn)入下一步驟,否則進(jìn)入步驟c4;
步驟c2,維持開關(guān)繼電器導(dǎo)通狀態(tài);
步驟c3,判斷開關(guān)繼電器是否有掉電信號(hào),是則進(jìn)入下一步驟,否則返回步驟c2;
步驟c4,開關(guān)繼電器斷電并結(jié)束。
本發(fā)明的有益效果是,通過本申請(qǐng)的旅行箱定位系統(tǒng),用戶能夠簡單快捷地查詢到可靠的旅行箱實(shí)時(shí)定位信息,方便用戶在旅行箱丟失時(shí)快速的找回旅行箱,且旅行箱定位系統(tǒng)耗能極低,使用成本低。
附圖說明
圖1為本發(fā)明旅行箱定位系統(tǒng)中定位裝置的結(jié)構(gòu)示意圖;
圖2為圖1中stm32單片機(jī)的工作流程圖;
圖3為圖1中g(shù)sm通訊模塊的工作流程圖;
圖4為圖1中開關(guān)繼電器的工作流程圖。
具體實(shí)施方式
下面結(jié)合附圖并通過具體實(shí)施方式來進(jìn)一步說明本發(fā)明的技術(shù)方案。
如圖1所示,一種基于stm32的旅行箱定位系統(tǒng),包括安裝在旅行箱上的定位裝置,與所述定位裝置電性連接的移動(dòng)設(shè)備端。
所述移動(dòng)設(shè)備端裝有旅行箱定位app。為了方便在行李箱丟失后方便找回,開發(fā)出一款專用的app,該app只需要輸入正確的密鑰即可實(shí)時(shí)查詢行李箱的位置。但是查詢行李箱之前必須撥打固定號(hào)碼或發(fā)送固定短信才可啟動(dòng)行李箱的定位功能和gsm通訊功能,才會(huì)有準(zhǔn)確的定位信息發(fā)送回來。在該app上可以直接關(guān)閉定位系統(tǒng)??梢赃x擇定位系統(tǒng)的發(fā)送方式,發(fā)送方式包括在app實(shí)時(shí)顯示,也可以通過短信發(fā)送到設(shè)定好號(hào)碼的手機(jī)卡上。
所述定位裝置包括stm32單片機(jī),gsm通訊模塊,gps模塊,開關(guān)繼電器和供電電池,所述gps模塊與所述stm32單片機(jī)電性連接,所述stm32單片機(jī)與所述gsm通訊模塊電性連接,所述stm32單片機(jī)與所述開關(guān)繼電器之間相互電性連接,所述供電電池與所述開關(guān)繼電器電性連接。
所述stm32單片機(jī)包括單片機(jī)休眠模式和單片機(jī)工作模式,所述stm32單片機(jī)在所述單片機(jī)工作模式下用于通過所述gps模塊獲取旅行箱的實(shí)時(shí)定位信息并將所述實(shí)時(shí)定位信息發(fā)送給所述gsm通訊模塊。所述stm32單片機(jī)搭載cortex-m3微處理器,內(nèi)部資源豐富,包括:64kbsram、512kbflash、8個(gè)定時(shí)器、5個(gè)串口等眾多接口及資源,完全滿足本發(fā)明的需要,在后面的功能擴(kuò)展中也有很大的發(fā)展空間。此外stm32單片機(jī)供電電壓只要3.3v,并且配備低功耗休眠模式,在系統(tǒng)運(yùn)行但不需要發(fā)送定位信息時(shí)功耗極低。該芯片配備獨(dú)立的晶振電路,正常工作時(shí)可達(dá)72m,是現(xiàn)在運(yùn)行速度最快的單片機(jī)之一。stm32f103zet6從休眠模式到恢復(fù)工作時(shí)間極短。
所述gsm通訊模塊包括通訊休眠模式和通訊工作模式,所述通訊休眠模式通過外部觸發(fā)信號(hào)觸發(fā)而轉(zhuǎn)換成通訊工作模式,所述通訊工作模式可通過所述stm32單片機(jī)設(shè)置成通訊休眠模式;所述gsm通訊模塊在所述通訊工作模式下用于通過短信方式或者gprs方式將所述stm32單片機(jī)發(fā)送來的信息傳送給移動(dòng)設(shè)備端。所述外部觸發(fā)信號(hào)為所述移動(dòng)設(shè)備端發(fā)送的電話信息或短信信息。所述stm32單片機(jī)可通過所述旅行箱定位app將所述gsm通訊模塊的通訊工作模式設(shè)置成通訊休眠模式。
所述gps模塊在所述旅行箱定位系統(tǒng)啟動(dòng)后一直處于定位工作模式。gps在該系統(tǒng)啟動(dòng)時(shí)就進(jìn)入正常工作模式,也就是該系統(tǒng)啟動(dòng)gps就開始定位。這樣做是為了確保gps在任何時(shí)刻都可以有定位信息。因?yàn)楝F(xiàn)在的gps在室內(nèi)很難進(jìn)行定位,但是如果外室外定位成功后再次進(jìn)入室內(nèi),其定位信息也是準(zhǔn)確的。
所述開關(guān)繼電器通過手動(dòng)方式打開使所述旅行箱定位系統(tǒng)啟動(dòng),在所述旅行箱定位系統(tǒng)啟動(dòng)后所述開關(guān)繼電器處于閉鎖狀態(tài),只能由所述stm32單片機(jī)控制所述開關(guān)繼電器關(guān)閉。所述stm32單片機(jī)可通過所述旅行箱定位app將所述開關(guān)繼電器關(guān)閉。開關(guān)繼電器的作用是當(dāng)手動(dòng)按下時(shí)整個(gè)系統(tǒng)進(jìn)入工作模式,此時(shí)形成閉鎖,也就是再次按下開關(guān)系統(tǒng)并不會(huì)關(guān)閉。在系統(tǒng)工作后,由單片機(jī)給繼電器發(fā)送閉鎖信號(hào),此時(shí)只有單片機(jī)可以控制開關(guān)的關(guān)閉。這樣做是保證系統(tǒng)工作后不會(huì)因?yàn)橥獠块_關(guān)操作關(guān)掉整個(gè)系統(tǒng)而失去定位功能。
供電部分采用航模鋰電池,該電池容量大,確保一次充電可以保證旅途中不會(huì)斷電。同時(shí)該電池輸出電流大,可以保證大功率的gsm模塊在工作時(shí)不會(huì)因?yàn)殡娏鲉栴}而不能正常工作。
基于stm32的旅行箱定位方法,其特征在于:包括,
步驟1,判斷旅行箱定位系統(tǒng)是否啟動(dòng),是則閉合旅行箱上的繼電器,供電電池給stm32單片機(jī),gsm通訊模塊,gps模塊和開關(guān)繼電器供電,所述stm32單片機(jī)給所述繼電器發(fā)送閉鎖信號(hào)使所述繼電器處于閉鎖狀態(tài),所述stm32單片進(jìn)入單片機(jī)休眠模式,所述gsm通訊模塊進(jìn)入通訊休眠模式,所述gps模塊進(jìn)入定位工作模式;
步驟2,判斷旅行箱定位系統(tǒng)是否需要查詢旅行箱位置,是則通過移動(dòng)設(shè)備端給固定號(hào)碼打電話或發(fā)短信以觸發(fā)所述gsm通訊模塊,使所述gsm通訊模塊從所述通訊休眠模式進(jìn)入所述通訊工作模式,使所述stm32單片從所述單片機(jī)休眠模式進(jìn)入所述單片機(jī)工作模式;
所述stm32單片接收并處理所述gps模塊獲取的實(shí)時(shí)定位信息,并將處理后的實(shí)時(shí)定位信息發(fā)送給所述gsm通訊模塊;
所述gsm通訊模塊通過短信方式或者gprs方式將所述stm32單片機(jī)發(fā)送來的信息傳送給移動(dòng)設(shè)備端供用戶查看;
步驟3,判斷旅行箱定位系統(tǒng)的旅行箱位置查詢是否結(jié)束,是則通過安裝在移動(dòng)設(shè)備端的旅行箱定位app將所述gsm通訊模塊的通訊工作模式設(shè)置成通訊休眠模式,并將所述stm32單片機(jī)的單片機(jī)工作模式設(shè)置成單片機(jī)休眠模式,以等待下一次的旅行箱位置查詢;
步驟4,判斷旅行箱定位系統(tǒng)是否關(guān)閉,是則通過安裝在移動(dòng)設(shè)備端的旅行箱定位app控制stm32單片機(jī)將所述開關(guān)繼電器關(guān)閉,供電電池停止供電,旅行箱定位系統(tǒng)關(guān)閉。
gps模塊在系統(tǒng)供電后即開始工作,無論stm32單片機(jī)和gsm通訊模塊處于哪種狀態(tài),gps都應(yīng)處于定位狀態(tài)。確保gps定位準(zhǔn)確性和及時(shí)性。因?yàn)間ps在室內(nèi)可能無法準(zhǔn)確定位或者搜索衛(wèi)星時(shí)間比較長,所以gps長時(shí)間開啟是有必要性的。
其中,如圖2所示,所述stm32單片機(jī)的工作方法具體為,
步驟a1,判斷繼電器是否處于閉鎖狀態(tài),是則給stm32單片機(jī)供電并進(jìn)入下一步驟,否則使stm32單片機(jī)失電并結(jié)束;
步驟a2,判斷stm32單片機(jī)是否進(jìn)入休眠,是則進(jìn)入單片機(jī)休眠模式,否則進(jìn)入下一步驟;當(dāng)stm32單片處于單片機(jī)休眠模式時(shí),判斷是否有中斷信號(hào),是則進(jìn)入下一步,否則繼續(xù)處于單片機(jī)休眠模式;
步驟a3,接收gps信息;
步驟a4,解壓并分析出gps定位信息;
步驟a5,發(fā)送gps定位信息,并返回步驟a1。stm32芯片是整個(gè)系統(tǒng)的主控芯片。當(dāng)外部開關(guān)繼電器被按下時(shí),單片機(jī)發(fā)送閉鎖信號(hào)進(jìn)行閉鎖,進(jìn)入休眠模式。當(dāng)有一外部觸發(fā)信號(hào)傳遞給單片機(jī)時(shí)(該觸發(fā)信號(hào)來自gpio輸入),單片機(jī)啟動(dòng)進(jìn)入正常工作模式。在正常工作模式下,其將gps的定位信息進(jìn)行解碼,分析出gps數(shù)據(jù),將處理后的數(shù)據(jù)通過uart串口傳遞給gsm模塊,然后由gsm模塊發(fā)送出去。gps模塊數(shù)據(jù)實(shí)時(shí)更新,但是發(fā)送數(shù)據(jù)1秒進(jìn)行一次。
如圖3所示,所述gsm通訊模塊的工作方法具體為,
步驟b1,gsm通訊模塊處于通訊休眠模式,判斷是否有短信或電話觸發(fā),是則進(jìn)入下一步驟,否則繼續(xù)處于通訊休眠模式;
步驟b2,接收stm32單片機(jī)的實(shí)時(shí)定位數(shù)據(jù);
步驟b3,通過短息方式或gprs方式發(fā)送定位信息給用戶;
步驟b4,判斷旅行箱定位系統(tǒng)是否關(guān)閉,是則結(jié)束,否則進(jìn)入步驟b2。gsm通訊模塊上電后若無短信和電話輸入即自動(dòng)進(jìn)入休眠模式。此時(shí)可以降低整個(gè)系統(tǒng)的功耗,節(jié)約電能。當(dāng)有外部電話或者短信輸入時(shí),gsm啟動(dòng),并且反饋單片機(jī)一個(gè)啟動(dòng)信息,此時(shí)單片機(jī)也從休眠模式轉(zhuǎn)變?yōu)檎9ぷ髂J?。這時(shí)gsm開始接收單片機(jī)通過串口發(fā)來的數(shù)據(jù),這些數(shù)據(jù)包括gps定位信息和gsm設(shè)置信息(是否進(jìn)入睡眠模式等信息)。然后gsm根據(jù)單片機(jī)信息選擇不同的發(fā)送信息的方式,將信息發(fā)送出去。
如圖4所示,所述開關(guān)繼電器的工作方法具體為,
步驟c1,判斷繼電器開關(guān)是否按下,是則進(jìn)入下一步驟,否則進(jìn)入步驟c4;
步驟c2,維持開關(guān)繼電器導(dǎo)通狀態(tài);
步驟c3,判斷開關(guān)繼電器是否有掉電信號(hào),是則進(jìn)入下一步驟,否則返回步驟c2;
步驟c4,開關(guān)繼電器斷電并結(jié)束。開關(guān)繼電器應(yīng)在系統(tǒng)開啟時(shí)有一定的保護(hù)能力,掉電信號(hào)由單片機(jī)發(fā)送,但是這個(gè)掉電信號(hào)最終取決于使用者,也就是只有使用者發(fā)送正確掉電信號(hào),繼電器才會(huì)掉電,整個(gè)系統(tǒng)才會(huì)關(guān)閉。
上面所述的實(shí)施例僅是對(duì)本發(fā)明的優(yōu)選實(shí)施方式進(jìn)行描述,并非對(duì)本發(fā)明的構(gòu)思和范圍進(jìn)行限定。在不脫離本發(fā)明設(shè)計(jì)構(gòu)思的前提下,本領(lǐng)域普通人員對(duì)本發(fā)明的技術(shù)方案做出的各種變型和改進(jìn),均應(yīng)落入到本發(fā)明的保護(hù)范圍,本發(fā)明請(qǐng)求保護(hù)的技術(shù)內(nèi)容,已經(jīng)全部記載在權(quán)利要求書中。