步驟1:先決條件
GSM模塊-SIM800L
非常小巧,易于使用
能夠使用移動(dòng)互聯(lián)網(wǎng)(GPRS)
便宜
GPS模塊-Ublox NEO6M
也很小
很好地處理了工作
一個(gè)微控制器-可以是任何東西-您可以使用著名的Arduino Uno或Nano釋放一些空間
電池 -我使用18650電池作為主要電源,并且只有電源(標(biāo)稱3.7V)
電池座-為什么? -因?yàn)楹附?8650電池由于熱量非常危險(xiǎn)。
DC-DC升壓轉(zhuǎn)換器5V升壓模塊-必須具備,因?yàn)槲沂褂玫腁rduino需要5V
工具,因此可以方便地使用一些基本的東西:
電線,烙鐵,試驗(yàn)用面包板
步驟2:主要概念
主要概念如下:
它由3個(gè)部分組成:
設(shè)備-具有正確的GPS坐標(biāo)并且可以遠(yuǎn)程連接到服務(wù)器并向其發(fā)送數(shù)據(jù)
網(wǎng)絡(luò)服務(wù)器-可以接收傳入數(shù)據(jù)-存儲它-并為其他客戶端提供服務(wù)
平臺-我們可以在其中查看坐標(biāo)-理想情況下,它現(xiàn)在應(yīng)該是移動(dòng)應(yīng)用程序或網(wǎng)站
步驟3:SIM800L模塊
我在模塊方面遇到了困難。
我想從一些特性和參考開始。
根據(jù)數(shù)據(jù)表:
它在3.4V-4.4V之間工作
它可以發(fā)送短信,與其他電話進(jìn)行語音通話,甚至連接到Internet!
我們可以通過AT命令與之通信!
在峰值時(shí)間它可以使用高達(dá)2A的電流! 注意:由于它的低采樣率,您可能無法用萬用表進(jìn)行測量
我的經(jīng)驗(yàn)是,低于3.8V的SIM800L不能
有關(guān)更多信息,請?jiān)L問:數(shù)據(jù)表
因此,您的工作是提供 至少3.8V 連接至模塊(理想情況下為4V),該電源可輸出至少2A 。
在最終設(shè)備中使用該模塊之前,建議您與您的設(shè)備建立通信SIM800L和您的計(jì)算機(jī),以確保您的設(shè)備正常工作。
首先,插入SIM卡,如上圖所示。
要將其與PC連接,可以使用USB到TTL轉(zhuǎn)換器或Arduino。
現(xiàn)在,我選擇Arduino。
連接SIM800L VCC和GND連接到電源端子。
將TX連接到Arduino的第10個(gè)數(shù)字引腳,RX連接到arduino的第11個(gè)數(shù)字引腳。
下載代碼,我已完成此步驟的鏈接。
使用該代碼,您可以在串行監(jiān)視器上發(fā)送命令并將其取回。
一些簡單的命令:
AT-》如果連接正常,則返回OK。
ATD + 123456789; -》撥打給定的電話號碼。注意:不要忘記以分號結(jié)尾。
AT + CPIN? -》返回SIM卡狀態(tài)(是否鎖定)
如果要發(fā)送短信,則需要以特殊字符結(jié)束輸入,可以使用‘$’符號完成。
對于其他有趣的命令,我建議您閱讀。
有各種命令,請熟悉它們,它們確實(shí)非常有用。
有紅色狀態(tài)LED,告訴您SIM800L正在進(jìn)行什么操作。
64 MS開啟-800MS關(guān)閉-SIM800L未注冊到網(wǎng)絡(luò)。
64 MS開啟-3000MS關(guān)閉-SIM800L已注冊
64 MS ON-300MS OFF-SIM800l處于GPRS模式
如果SIM800L 在大約8-10次閃爍后保持重啟狀態(tài),可能是由于缺少高效的電源 。
如果在AT后仍然無法正常工作,請檢查接線!如果您有萬用表,請檢查電線的導(dǎo)通性。
檢查電線和焊點(diǎn)的連接!該模塊僅在閃爍時(shí)起作用。
步驟4:Ublox Neo 6m
某些特性
最大電壓:3.6V-我使用Arduino的3.3V引腳為其供電
最大電流消耗為67mA-因此您可以通過arduino為其供電
溫度范圍:-40-85攝氏度(我想它會適合您)
我訂購的設(shè)備帶有圖片上顯示的天線,我只是將其插入相應(yīng)的插槽中。
設(shè)備出現(xiàn)信號時(shí),會閃爍藍(lán)色LED。
首先,如果不知道,請檢查GPS在這里的工作方式。
打開設(shè)備并找到3顆衛(wèi)星后,它會像上面一樣向Arduino發(fā)送很多逗號分隔的值。
為了幫助我們完成工作,我們可以使用一些外部庫來解析這些數(shù)據(jù),以使其更易于閱讀。
您可以使用TinyGps庫或NeoGPS庫。我使用第二個(gè)是因?yàn)樗p。
要進(jìn)行測試,您必須將電源引腳連接到arduino 3.3V和GND。
下載此代碼,并將其與GPS結(jié)合使用。 RX-》數(shù)字引腳10,TX-》數(shù)字引腳11
注意:不要忘記在室外使用該模塊,最好是在沒有云的情況下。
半分鐘后,設(shè)備應(yīng)閃爍并輸出GPS坐標(biāo)! :)
一旦您知道您的SIM800L和GPS模塊可以正常工作,就可以繼續(xù)下一步。
第5步:電路
電路如圖所示。
因此,3.4V-4.2V 18650電池是主要電源。 Sim800L直接從中獲取能量。為了提高電路的穩(wěn)定性,它們之間應(yīng)并聯(lián)一個(gè)電容器。
選擇電容器時(shí),應(yīng)選擇低ESR電容器。
一個(gè)5V步進(jìn)-升壓轉(zhuǎn)換器將電池電壓升至5V(因?yàn)锳rduino使用5V,所以需要ir)。
5V電源軌在此處連接到Nano。如圖所示,Sim800L和Neo6m與Nano相連。 (Sim Tx-D10,SimRx-D11; NeoTX-D3,NeoRX-D4)
D12連接到RST,因此我們可以通過編程方式重新引導(dǎo)系統(tǒng)(SIM800L除外)。注意:這種重啟方法可能不是最佳實(shí)踐)
最后,兩個(gè)LED連接到了NANO,因此我們可以告訴用戶是否發(fā)生任何錯(cuò)誤。
第6步:代碼
該代碼已附加到Instructables上,或查看github。
您可以對其進(jìn)行修改以使其適合您的需要,
waitUntilResponse();或使用其他人的代碼。輔助函數(shù)來自他的代碼。
簡而言之,在設(shè)置功能中,我們需要啟用SIM800L模塊的GPRS連接。我們知道如果LED快速閃爍是否成功。 (setupGPRSConnection())
在循環(huán)函數(shù)中-每15秒調(diào)用一次sendData()函數(shù)-該請求具有HTTP請求
我使用查詢字符串將數(shù)據(jù)推送到Web服務(wù)器格式如下:
ip地址/file.php?key=value&key=value例如http://xxx.xxx.xxx.xxx/log.php?lat=xy&lon=xy
如果發(fā)生任何錯(cuò)誤,相應(yīng)的LED將亮起。 (SIM,GPS)
第7步:Web服務(wù)器
對于我們來說,一個(gè)簡單的輕量級Web服務(wù)器就足夠了。
您可以選擇以下選項(xiàng):
您可以使用公司的遠(yuǎn)程服務(wù)器,您可能需要定期支付費(fèi)用。
您可以使用您自己的計(jì)算機(jī)。我只建議將其用于測試,由于能源浪費(fèi),安全問題,它并非全天候24/7運(yùn)行。
您可以使用小型計(jì)算機(jī),例如 Raspberry PI 。輕巧,便宜,不會消耗太多電量。
我嘗試了第二種和第三種選擇,它們效果很好。好吧,主要目標(biāo)不是此教學(xué)的服務(wù)器,但我向您提示一些建議。
如果您使用PC ,則可能使用Windows。如果您是我,我將在其上安裝Apache或XAMPP服務(wù)器。
XAMPP中已經(jīng)包含PHP,此外它還附帶HTML,Perl和數(shù)據(jù)庫管理系統(tǒng)。使用PHP,可以創(chuàng)建動(dòng)態(tài)服務(wù)器。如果要使用世界各地制造的本地服務(wù)器,則需要為PC分配靜態(tài)IP并進(jìn)行一些端口轉(zhuǎn)發(fā)。關(guān)于靜態(tài)IP的有用教程:
以及整個(gè)portforwarding內(nèi)容:
如果您有Raspberry ,使用它是一個(gè)好習(xí)慣。您可以熟悉Linux命令,并以24/7全天候運(yùn)行自己的服務(wù)器。
操作系統(tǒng)是Raspbian Jessie,無頭設(shè)置(無鍵盤,顯示器)-我通過SSH連接在計(jì)算機(jī)上對其進(jìn)行了控制
我使用Putty登錄到Raspberry。不要忘記更改您的帳戶密碼,以使其他人無法登錄您的Pi。默認(rèn)值為:pi,密碼:raspberry。
我使用sqlite3安裝了lighttpd Web服務(wù)器。在這里找到好的教程:
我在服務(wù)器代碼中主要使用PHP。使用PHP,您可以接收數(shù)據(jù),讀取/寫入數(shù)據(jù)庫-將查詢編碼為json格式等。。..本教程將為您提供很多有關(guān)如何使用PHP管理數(shù)據(jù)庫的幫助。
您可以在github上也可以在server_files文件夾中查看我的代碼。
當(dāng)然,如果要遠(yuǎn)程訪問,則必須在路由器上啟用端口轉(zhuǎn)發(fā)到Pi。
第8步:結(jié)束/體驗(yàn)
尚待完成一個(gè)機(jī)箱。
我的經(jīng)驗(yàn)是,系統(tǒng)運(yùn)行情況還不錯(cuò)。但是有待改進(jìn)的穩(wěn)定性。
如果跟蹤器無法使用我所附的代碼,請不要擔(dān)心。嘗試確保SIM800L和NEO 6M正常工作。您可以自由修改我的代碼,或者尋找更好的代碼。我只是希望,我可以向您展示一個(gè)示例,說明如何完成此項(xiàng)目。
-
gps
+關(guān)注
關(guān)注
22文章
2897瀏覽量
166315 -
追蹤器
+關(guān)注
關(guān)注
0文章
171瀏覽量
25726
發(fā)布評論請先 登錄
相關(guān)推薦
評論