99精品伊人亚洲|最近国产中文炮友|九草在线视频支援|AV网站大全最新|美女黄片免费观看|国产精品资源视频|精彩无码视频一区|91大神在线后入|伊人终合在线播放|久草综合久久中文

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

怎樣用Arduino和GPS天線創(chuàng)建汽車跟蹤系統(tǒng)

454398 ? 來源:工程師吳畏 ? 2019-08-01 11:21 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

在本教程中,我將深入介紹SIM808硬件接口。您可能擁有一個從中國制造的SIM808模塊,但發(fā)現(xiàn)它們沒有附帶任何文檔或測試代碼。本教程可以幫助初學(xué)者快速了解SIM808接口規(guī)范以及機械電氣細節(jié)。另外,我將在GitHub上添加文檔和庫,以便您能夠快速設(shè)計各種應(yīng)用程序。

這個項目是一個簡單的跟蹤系統(tǒng),使用相同的GSM和GPS模塊,內(nèi)置于SIM808模塊中。在本教程結(jié)束時,當(dāng)您從任何手機發(fā)送GSM模塊時,您將能夠根據(jù)模塊的GPS位置獲得模塊的GPS位置響應(yīng)。

怎樣用Arduino和GPS天線創(chuàng)建汽車跟蹤系統(tǒng)

什么是SIM808模塊?

基本上, SIM808模塊專為全球市場設(shè)計。它與高性能GSM/GPRS芯片集成,它還有一個GPS引擎和一個BT引擎。

SIM808是四頻GSM/GPRS模塊,工作頻率為GSM 850MHz,EGSM 900MHz,DCS 1800MHz和PCS 1900MHz。它具有GPRS多插槽12級/10級,支持GPRS編碼方案CS-1,CS-2,CS-3和CS-4。 GPS解決方案提供同類最佳的采集和跟蹤靈敏度,首次定位時間(TTFF)和準確度。

SIM808模塊的好處

SIM808有68引腳SMT焊盤(單芯片模塊無需焊接),提供模塊和用戶板之間的所有硬件接口。它還具有以下功能:

一個完整的調(diào)制解調(diào)器串行端口UART接口)

音頻通道,包括麥克風(fēng)輸入和接收器輸出

一個SIM卡界面

默認情況下能夠支持4 * 4keypads

充電界面

一個USB,支持調(diào)試和固件升級

能夠支持藍牙功能

編程通用輸入和輸出(GPIO)

能夠支持兩個PWM和兩個ADC

集成TCP/IP協(xié)議和擴展TCP/IP AT命令,這對數(shù)據(jù)傳輸應(yīng)用非常有用

支持GPS功能的能力

一種省電技術(shù),在睡眠模式下保持電流消耗低至1.2mA(GPS引擎斷電)

PCM/SPI接口

硬件和軟件要求

硬件 的結(jié)果,

《升i》 SIM 808模塊

Arduino UNO或Arduino MEGA

Arduino電纜

9V電源

GPS天線和GSM天線

必要的硬件

軟件

Arduino IDE

SIM808庫

建立連接

如下圖所示連接所有內(nèi)容。

Rx至引腳10

Tx至引腳11

將SIM808與9V適配器連接

提供通過USB線或9V充電器為Arduino供電

Arduino UNO的連接

Arduino Mega的連接

下圖顯示正確連接時連接的外觀:

上傳源代碼

上傳以下代碼。如果您是Arduino的新手,請務(wù)必查看Maker Pro的Arduino教育頁面以獲取更多教程。

#include

#include

#define MESSAGE_LENGTH 160

char message[MESSAGE_LENGTH];

int messageIndex = 0;

char MESSAGE[300];

char lat[12];

char lon[12];

char wspeed[12];

char phone[16];

char datetime[24];

#define PIN_TX 10

#define PIN_RX 11

SoftwareSerial mySerial(PIN_TX,PIN_RX);

DFRobot_SIM808 sim808(&mySerial);//Connect RX,TX,PWR,

void setup()

{

mySerial.begin(9600);

Serial.begin(9600);

//******** Initialize sim808 module *************

while(!sim808.init())

{

Serial.print(“Sim808 init error ”);

delay(1000);

}

delay(3000);

if( sim808.attachGPS())

Serial.println(“Open the GPS power success”);

else

Serial.println(“Open the GPS power failure”);

Serial.println(“Init Success, please send SMS message to me!”);

}

void loop()

{

//*********** Detecting unread SMS ************************

messageIndex = sim808.isSMSunread();

//*********** At least, there is one UNREAD SMS ***********

if (messageIndex 》 0)

{

Serial.print(“messageIndex: ”);

Serial.println(messageIndex);

sim808.readSMS(messageIndex, message, MESSAGE_LENGTH, phone, datetime);

//***********In order not to full SIM Memory, is better to delete it**********

sim808.deleteSMS(messageIndex);

Serial.print(“From number: ”);

Serial.println(phone);

Serial.print(“Datetime: ”);

Serial.println(datetime);

Serial.print(“Recieved Message: ”);

Serial.println(message);

while(!sim808.getGPS())

{

}

Serial.print(sim808.GPSdata.year);

Serial.print(“/”);

Serial.print(sim808.GPSdata.month);

Serial.print(“/”);

Serial.print(sim808.GPSdata.day);

Serial.print(“ ”);

Serial.print(sim808.GPSdata.hour);

Serial.print(“:”);

Serial.print(sim808.GPSdata.minute);

Serial.print(“:”);

Serial.print(sim808.GPSdata.second);

Serial.print(“:”);

Serial.println(sim808.GPSdata.centisecond);

Serial.print(“l(fā)atitude :”);

Serial.println(sim808.GPSdata.lat);

Serial.print(“l(fā)ongitude :”);

Serial.println(sim808.GPSdata.lon);

Serial.print(“speed_kph :”);

Serial.println(sim808.GPSdata.speed_kph);

Serial.print(“heading :”);

Serial.println(sim808.GPSdata.heading);

Serial.println();

float la = sim808.GPSdata.lat;

float lo = sim808.GPSdata.lon;

float ws = sim808.GPSdata.speed_kph;

dtostrf(la, 6, 2, lat); //put float value of la into char array of lat. 6 = number of digits before decimal sign. 2 = number of digits after the decimal sign.

dtostrf(lo, 6, 2, lon); //put float value of lo into char array of lon

dtostrf(ws, 6, 2, wspeed); //put float value of ws into char array of wspeed

sprintf(MESSAGE, “Latitude : %s Longitude : %s Wind Speed : %s kph My Module Is Working. Mewan Indula Pathirage. Try With This Link. http://www.latlong.net/Show-Latitude-Longitude.html http://maps.google.com/maps?q=%s,%s ”, lat, lon, wspeed, lat, lon);

Serial.println(“Sim808 init success”);

Serial.println(“Start to send message 。..”);

Serial.println(MESSAGE);

Serial.println(phone);

sim808.sendSMS(phone,MESSAGE);

//************* Turn off the GPS power ************

sim808.detachGPS();

}

}

全部放在一起

通過Arduino IDE上傳代碼后,只需以9600波特率打開串口監(jiān)視器。在這里您將看到以下內(nèi)容:

因此,每當(dāng)您將“Hi”或“Hello”字符串發(fā)送到已插入的SIM號碼時在GSM模塊中,Arduino會使用模塊位置的經(jīng)度和緯度信息給你發(fā)回信息。

此外,我已經(jīng)添加了一個鏈接到Google地圖,所以當(dāng)它發(fā)回給你時,它也會來使用Google地圖位置,如下圖所示:

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • gps
    gps
    +關(guān)注

    關(guān)注

    22

    文章

    2986

    瀏覽量

    169366
  • Arduino
    +關(guān)注

    關(guān)注

    190

    文章

    6498

    瀏覽量

    192151
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    汽車制造領(lǐng)域激光焊縫跟蹤系統(tǒng)的應(yīng)用案例

    激光焊縫跟蹤系統(tǒng)的出現(xiàn),可以很大程度提成焊接精度,減少人工干預(yù),給汽車制造提供了有效的解決方案,今天一起了解汽車制造領(lǐng)域焊縫跟蹤
    的頭像 發(fā)表于 03-17 14:58 ?402次閱讀
    <b class='flag-5'>汽車</b>制造領(lǐng)域激光焊縫<b class='flag-5'>跟蹤</b><b class='flag-5'>系統(tǒng)</b>的應(yīng)用案例

    hyper-v 備份,hyper-v怎樣進行虛擬機的創(chuàng)建

    虛擬機技術(shù)打破了傳統(tǒng)計算機的限制,為我們帶來了全新的計算機模式。今天給大家介紹hyper-v怎樣進行虛擬機的創(chuàng)建? ? ?hyper-v怎樣進行虛擬機的創(chuàng)建? ? ?使用PowerSh
    的頭像 發(fā)表于 02-05 14:54 ?445次閱讀
    hyper-v 備份,hyper-v<b class='flag-5'>怎樣</b>進行虛擬機的<b class='flag-5'>創(chuàng)建</b>

    Reality AI Tools創(chuàng)建模型

    在第二步采集到的數(shù)據(jù)基礎(chǔ)之上,Reality AI Tools創(chuàng)建模型。
    的頭像 發(fā)表于 01-22 14:23 ?2291次閱讀
    <b class='flag-5'>用</b>Reality AI Tools<b class='flag-5'>創(chuàng)建</b>模型

    GPS天線靜電保護方案

    GPS天線靜電保護方案 GPS天線根據(jù)不同方式可分為以下類別: 1.??? 極化方式 : GPS天線
    的頭像 發(fā)表于 09-27 15:40 ?870次閱讀
    <b class='flag-5'>GPS</b><b class='flag-5'>天線</b>靜電保護方案

    邏輯和翻譯例優(yōu)化資產(chǎn)跟蹤

    電子發(fā)燒友網(wǎng)站提供《邏輯和翻譯例優(yōu)化資產(chǎn)跟蹤器.pdf》資料免費下載
    發(fā)表于 09-21 11:24 ?0次下載
    <b class='flag-5'>用</b>邏輯和翻譯<b class='flag-5'>用</b>例優(yōu)化資產(chǎn)<b class='flag-5'>跟蹤</b>器

    創(chuàng)想智控焊縫跟蹤系統(tǒng)運用激光尋位在工程汽車高機底座焊接的應(yīng)用

    在現(xiàn)代制造業(yè)中,焊接質(zhì)量和效率直接影響著產(chǎn)品的性能與成本。尤其是在工程汽車制造中,高機底座的焊接是一個至關(guān)重要的環(huán)節(jié)。隨著自動化技術(shù)的迅速發(fā)展,激光焊縫跟蹤系統(tǒng)已成為解決焊接難題的重要工具。今天
    的頭像 發(fā)表于 09-13 15:54 ?492次閱讀
    創(chuàng)想智控焊縫<b class='flag-5'>跟蹤</b><b class='flag-5'>系統(tǒng)</b>運用激光尋位在工程<b class='flag-5'>汽車</b>高機底座焊接的應(yīng)用

    FORT單元-不依賴GPS的步跟蹤定位穿戴設(shè)備@PNI

    歷史上,大多數(shù)基于傳感器的定位跟蹤系統(tǒng)一直受到從傳感器漂移到磁干擾和可靠性的問題的困擾,為了提供精確的位置數(shù)據(jù),現(xiàn)代基于傳感器的跟蹤系統(tǒng)必須克服這些問題,同時提供一個高精度、低功耗的傳
    的頭像 發(fā)表于 09-12 08:11 ?628次閱讀
    FORT單元-不依賴<b class='flag-5'>GPS</b>的步<b class='flag-5'>跟蹤</b>定位穿戴設(shè)備@PNI

    CD4046組成的頻率信號跟蹤電路,仿真時發(fā)現(xiàn)根本實現(xiàn)不了頻率跟蹤,為什么?

    在網(wǎng)上看到的資料,關(guān)于cd4046做信號頻率跟蹤,其原理如圖1中所示。按照該參考tina仿真時發(fā)現(xiàn)根本實現(xiàn)不了頻率跟蹤,而且原圖上好像沒有標(biāo)注哪個是輸出,正確的電路應(yīng)該是怎樣的,請
    發(fā)表于 09-10 06:14

    GPS車載定位系統(tǒng)的設(shè)計

    電子發(fā)燒友網(wǎng)站提供《GPS車載定位系統(tǒng)的設(shè)計.doc》資料免費下載
    發(fā)表于 09-07 09:26 ?0次下載

    AT3340:支持BDS/GPS雙模授時板datasheet

    AT3340采用ATGM331C-5T31授時模塊,是高授時精度的BDS/GPS雙模接收機板卡,包含32個跟蹤通道,支持GPS和BDS的單系統(tǒng)授時定位和雙
    的頭像 發(fā)表于 09-03 18:10 ?946次閱讀
    AT3340:支持BDS/<b class='flag-5'>GPS</b>雙模授時板datasheet

    怎樣用THS3201實現(xiàn)輸出功率可調(diào)?

    怎樣用THS3201實現(xiàn)輸出功率可調(diào)?
    發(fā)表于 08-26 08:28

    借助TS Skydel與GNSS模擬器創(chuàng)建一顆固定的GNSS衛(wèi)星

    和載波跟蹤循環(huán)設(shè)計和測試流程:設(shè)計和測試用于跟蹤碼和載波的環(huán)路的過程; ● CRPA系統(tǒng)型式校準:Controlled Reception Pattern Antenna(可控接收模式天線
    的頭像 發(fā)表于 08-12 13:35 ?599次閱讀
    借助TS Skydel與GNSS模擬器<b class='flag-5'>創(chuàng)建</b>一顆固定的GNSS衛(wèi)星

    OPA735加OPA333,怎樣用TINA TI去仿真?

    當(dāng)輸入信號VG1從7.06V慢慢變化到7.22V時。 輸出電壓Vout的變化必須是接近線性變化的。我想知道我該怎樣用TINA TI去仿真?怎樣設(shè)置那個輸入信號VG1才能達到我的目的。因為這個電壓源好像
    發(fā)表于 08-02 08:39

    怎樣用Arduino測試鋰電池容量

    本文詳細介紹了如何用Arduino測量鋰電池的容量。并附有電路圖和Arduino的程序代碼。
    的頭像 發(fā)表于 07-30 09:14 ?1665次閱讀
    <b class='flag-5'>怎樣用</b><b class='flag-5'>Arduino</b>測試鋰電池容量

    Arduino自制點焊機

    組裝18650電池組,要用到點焊機,本文介紹Arduino控制點焊機的點焊時間。
    發(fā)表于 07-29 10:14 ?9次下載