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

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

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

如何使用MSP430和GPS模塊制作汽車事故警報(bào)系統(tǒng)

科技觀察員 ? 來源:circuitdigest ? 作者:薩達(dá)姆 ? 2022-09-21 15:35 ? 次閱讀

在這里,我們?cè)俅螛?gòu)建相同的項(xiàng)目,但這次將使用MSP430 發(fā)射臺(tái)和振動(dòng)傳感器檢測(cè)車輛事故。因此,該項(xiàng)目還將介紹振動(dòng)傳感器與 MSP430 啟動(dòng)板的接口

此處振動(dòng)傳感器模塊檢測(cè)車輛的振動(dòng)并向 MSP430 Launchpad 發(fā)送信號(hào)。然后 MSP430 從 GPS 模塊獲取數(shù)據(jù)并使用 GSM 模塊通過 SMS 將其發(fā)送到用戶手機(jī)。一個(gè) LED 也會(huì)作為事故警報(bào)信號(hào)發(fā)光,這個(gè) LED 可以用一些警報(bào)代替。事故位置以Google Map 鏈接的形式發(fā)送,來自 GPS 模塊的緯度和經(jīng)度。

pYYBAGMqvMeAKsG8AAJO_sP3ixw139.png

所需組件

MSP430 啟動(dòng)板

SIM900 GSM 模塊

Ublox NEO-6M GPS 模塊

振動(dòng)傳感器模塊

16x2 液晶

電源

連接電線

10 K-POT

面包板或PCB

電源 12v 1amp

3.3v電源

5v電源

在進(jìn)入項(xiàng)目之前,我們將討論 GPS、GSM 和振動(dòng)傳感器。

GPS模塊及其工作:

GPS代表全球定位系統(tǒng) ,用于檢測(cè)地球上任何位置的緯度和經(jīng)度,具有精確的UTC時(shí)間(協(xié)調(diào)世界時(shí))。GPS模塊用于跟蹤我們項(xiàng)目中的事故位置。該設(shè)備每秒接收來自衛(wèi)星的坐標(biāo),包括時(shí)間和日期。我們之前 在Vehicle Tracking System中提取了 $GPGGA 字符串 來查找緯度和經(jīng)度坐標(biāo)。

poYBAGMqvQWAQqEuAAS1e8eg9-I793.png

GPS模塊 實(shí)時(shí)發(fā)送與跟蹤位置相關(guān)的數(shù)據(jù),它以NMEA格式發(fā)送大量數(shù)據(jù)(見下面的截圖)。NMEA 格式由幾個(gè)句子組成,其中我們只需要一個(gè)句子。這句話從 $GPGGA開始 ,包含坐標(biāo)、時(shí)間和其他有用的信息。此 GPGGA 稱為 全球定位系統(tǒng)修復(fù)數(shù)據(jù)。

我們可以通過計(jì)算字符串中的逗號(hào)來從 $GPGGA 字符串中提取坐標(biāo)。假設(shè)你找到 $GPGGA 字符串并將其存儲(chǔ)在一個(gè)數(shù)組中,那么在兩個(gè)逗號(hào)后可以找到緯度,在四個(gè)逗號(hào)后可以找到經(jīng)度。現(xiàn)在,這個(gè)緯度和經(jīng)度可以放在其他數(shù)組中。

poYBAGMqvQyANPwNAAFaO5STm38033.png

下面是$GPGGA字符串及其描述:

$GPGGA,104534.000,7791.0381,N,06727.4434,E,1,08,0.9,510.4,M,43.9,M,,*47

$GPGGA,HHMMSS.SSS,緯度,N,經(jīng)度,E,F(xiàn)Q,NOS,HDP ,高度,M,高度,M,,校驗(yàn)和數(shù)據(jù)

poYBAGMqvRKAa2EBAAAtrSCr4eg996.png

GSM模塊

SIM900 是一個(gè)完整的四頻 GSM/GPRS 模塊,可以被客戶或愛好者輕松嵌入使用。SIM900 GSM 模塊提供行業(yè)標(biāo)準(zhǔn)接口。SIM900 以低功耗提供 GSM/GPRS 850/900/1800/1900MHz 的語音、SMS、數(shù)據(jù)性能。它在市場(chǎng)上很容易買到。

SIM900采用集成AMR926EJ-S內(nèi)核的單片機(jī)處理器設(shè)計(jì)

小尺寸的四頻 GSM/GPRS 模塊。

啟用 GPRS

pYYBAGMqvRiAeD9TAAXDfdLhfWU479.png

AT 命令

AT 表示注意。該命令用于控制 GSM 模塊。為了測(cè)試 GSM 模塊,我們使用了 AT 命令。接收到 AT 命令后,GSM 模塊回復(fù) OK。這意味著 GSM 模塊工作正常。下面是 我們?cè)谶@個(gè)項(xiàng)目中使用的一些 AT 命令:

ATE0 用于關(guān)閉回聲

AT+CNMI=2,2,0,0,0 《ENTER》 自動(dòng)打開消息接收。(無需打開消息)

ATD《手機(jī)號(hào)碼》;《ENTER》 撥打電話 (ATD+919610126059;\r\n)

AT+CMGF=1 《ENTER》 選擇文本模式

AT+CMGS=”Mobile Number” 《ENTER》 分配收款人的手機(jī)號(hào)碼

》》現(xiàn)在我們可以寫我們的信息了

》》寫完留言后

Ctrl+Z 發(fā)送消息命令(十進(jìn)制的 26)。

ENTER=0x0d 十六進(jìn)制

振動(dòng)傳感器模塊

在這個(gè)MSP430 事故警報(bào)系統(tǒng)項(xiàng)目中,我們使用了一個(gè)振動(dòng)傳感器模塊來檢測(cè)振動(dòng)或突然的調(diào)制。振動(dòng)傳感器模塊根據(jù)模塊提供數(shù)字輸出高/低邏輯。在我們的案例中,我們使用了一個(gè)有源 HIGH 邏輯振動(dòng)傳感器模塊。這意味著每當(dāng)振動(dòng)傳感器檢測(cè)到振動(dòng)時(shí),它都會(huì)為微控制器提供高邏輯。

poYBAGMqvR6AZj-bAAJktuf7XxE888.png

電路說明

該車輛事故警報(bào)系統(tǒng)項(xiàng)目的電路連接 很簡單。這里GPS 模塊的Tx 引腳 直接連接到 MSP430 Launchpad(硬件串行)的數(shù)字引腳號(hào) P1_1,5v 用于為 GPS 模塊供電。通過這里使用 軟件串行庫 ,我們?cè)试S引腳 P_6 和 P1_7 上的串行通信,并分別使它們成為 Rx 和 Tx 并連接到GSM 模塊。12 伏電源用于為 GSM 模塊供電。振動(dòng)傳感器連接在 P1_3 。LED 也用于指示事故檢測(cè)。其余連接顯示在電路圖中。

poYBAGMqvSKATOkhAAFApAVp3GI921.png

poYBAGMqvSiAfWjNAAblkntWh9A636.png

編程說明

除了 GPS 部分外,該項(xiàng)目的編程很容易。完整的代碼在項(xiàng)目結(jié)??束時(shí)給出。為了在 MSP430 中編寫或編譯代碼,我們使用了與 Arduino 兼容的 Energia IDE。大多數(shù) Arduino IDE 功能都可以直接在這個(gè) Energia IDE 中使用。

所以首先我們已經(jīng)包含了一個(gè)必需的庫和聲明的引腳和變量。

#include
SoftwareSerial GSM(P1_6, P1_7); // 接收,發(fā)送

浮動(dòng)緯度=0;
浮動(dòng)對(duì)數(shù)=0;

#define led P1_0
const intvibrationSensor=PUSH2;
詮釋我=0;
給定函數(shù)用于讀取振動(dòng)傳感器信號(hào)。此功能還將過濾小振動(dòng)或虛假振動(dòng)。

#define count_max 25
char SensorRead(int pin) // 讀sw with debounce
{
char count_low=0,count_high = 0;

{
延遲(1);
if (digitalRead(pin) == HIGH)
{
count_high++;
計(jì)數(shù)低 = 0;
}

否則
{
count_high = 0;
計(jì)數(shù)低++;
}
}while(count_low< count_max && count_high < count_max);

如果(count_low >= count_max)
返回低;
否則
返回高;
}
下面的函數(shù)檢測(cè)振動(dòng)并調(diào)用gpsEvent()函數(shù)獲取 GPS 坐標(biāo),最后調(diào)用Send()函數(shù)發(fā)送短信。

無效循環(huán)()
{
如果(傳感器讀?。ㄕ駝?dòng)傳感器)==高)
{
數(shù)字寫入(領(lǐng)導(dǎo),高);
全球定位系統(tǒng)事件();
發(fā)送();
數(shù)字寫入(領(lǐng)導(dǎo),低);
延遲(2000);
}
}
Given Function 負(fù)責(zé)從 GPS 模塊中獲取 GPS 字符串,從中提取坐標(biāo)并將其轉(zhuǎn)換為度數(shù)十進(jìn)制格式。

無效 gpsEvent()
{
字符 gpsString[55];
字符測(cè)試[]="RMC";
我=0;
while(1)
{
while (Serial.available()) //來自 GPS 的串行傳入數(shù)據(jù)
{
char inChar = (char)Serial.read();
gpsString[i]=inChar; //將來自 GPS 的傳入數(shù)據(jù)存儲(chǔ)到臨時(shí)字符串 str[]
i++;
if (i < 4)
{
if(gpsString[i-1] != test[i-1]) //檢查正確的字符串
i=0;
}

國際度=0;
度=gpsString[16]-48;
度*=10;
度+=gpsString[17]-48;
int minut_int=0;
minut_int=gpsString[18]-48;
minut_int*=10;
minut_int+=gpsString[19]-48;

int minut_dec=0;
minut_dec+= (gpsString[21]-48)*10000;
minut_dec+= (gpsString[22]-48)*1000;
minut_dec+= (gpsString[23]-48)*100;
minut_dec+= (gpsString[24]-48)*10;
minut_dec+= (gpsString[25]-48);

float minut= ((float)minut_int + ((float)minut_dec/100000.0))/60.0;
緯度=((浮點(diǎn))度+分鐘);
最后,Send()函數(shù)用于將 SMS 發(fā)送到插入在這部分代碼中的用戶號(hào)碼。

無效發(fā)送()
{
GSM.print("AT+CMGS=");
GSM.print('"');
GSM.print("961****059"); // 輸入你的手機(jī)號(hào)碼
GSM.println('"');
延遲(500);
// GSM.print("緯度:");
// GSM.println(緯度);
GSM.println("事故發(fā)生");
延遲(500);
// GSM.print("經(jīng)度:");
// GSM.println(logitude);
GSM.println("點(diǎn)擊鏈接查看位置");
GSM.print("http://maps.google.com/maps?&z=15&mrt=yp&t=k&q=");
GSM.print(緯度,6);
GSM.print("+");
GSM.print(logitude,6);
GSM.write(26);
延遲(4000);
}
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • msp430
    +關(guān)注

    關(guān)注

    180

    文章

    2403

    瀏覽量

    229325
  • 振動(dòng)傳感器
    +關(guān)注

    關(guān)注

    2

    文章

    323

    瀏覽量

    19814
  • GPS模塊
    +關(guān)注

    關(guān)注

    0

    文章

    87

    瀏覽量

    16438
  • 警報(bào)系統(tǒng)
    +關(guān)注

    關(guān)注

    0

    文章

    54

    瀏覽量

    4884
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    通過RTC模塊DS3231與MSP430連接來制作數(shù)字時(shí)鐘

    在本教程中,我們將通過RTC模塊DS3231與MSP430連接來制作數(shù)字時(shí)鐘,并在16x2 LCD上顯示時(shí)間和日期。MSP-EXP430G2 是德州儀器提供的開發(fā)工具,又名 Launc
    的頭像 發(fā)表于 11-11 16:55 ?2812次閱讀
    通過RTC<b class='flag-5'>模塊</b>DS3231與<b class='flag-5'>MSP430</b>連接來<b class='flag-5'>制作</b>數(shù)字時(shí)鐘

    MSP430單片機(jī)與GPS模塊接口在便攜式導(dǎo)航系統(tǒng)中的設(shè)計(jì)應(yīng)

    MSP430單片機(jī)與GPS模塊接口在便攜式導(dǎo)航系統(tǒng)中的設(shè)計(jì)應(yīng)用 GPS 是全球定位系統(tǒng)的簡稱,
    發(fā)表于 03-05 11:03 ?100次下載

    基于GPS/GSM和MSP430的巡檢手持終端的設(shè)計(jì)與實(shí)現(xiàn)

    基于GPS/GSM和MSP430的巡檢手持終端的設(shè)計(jì)與實(shí)現(xiàn)。
    發(fā)表于 02-17 09:48 ?29次下載

    基于MSP430的可便攜車載GPS智能終端的設(shè)計(jì)

    基于MSP430的可便攜車載GPS智能終端的設(shè)計(jì)。
    發(fā)表于 02-17 09:51 ?36次下載

    基于MSP430單芯片的倒車?yán)走_(dá)模塊設(shè)計(jì)環(huán)翾

    基于MSP430單芯片的倒車?yán)走_(dá)模塊設(shè)計(jì)_環(huán)翾
    發(fā)表于 03-17 08:00 ?7次下載

    MSP430教程14:MSP430單片機(jī)ADC12模塊

    MSP430教程14:MSP430單片機(jī)ADC12模塊
    發(fā)表于 10-12 09:03 ?55次下載
    <b class='flag-5'>MSP430</b>教程14:<b class='flag-5'>MSP430</b>單片機(jī)ADC12<b class='flag-5'>模塊</b>

    MSP430新型的高性能雙通信模塊

    MSP430新型的高性能雙通信模塊
    發(fā)表于 10-12 17:17 ?6次下載
    <b class='flag-5'>MSP430</b>新型的高性能雙通信<b class='flag-5'>模塊</b>

    基于MSP430外圍模塊功能簡介

    基于MSP430外圍模塊功能簡介
    發(fā)表于 10-12 17:21 ?7次下載
    基于<b class='flag-5'>MSP430</b>外圍<b class='flag-5'>模塊</b>功能簡介

    基于MSP430單片機(jī)的GPS定位系統(tǒng)設(shè)計(jì)

    基于MSP430單片機(jī)的GPS定位系統(tǒng)設(shè)計(jì)
    發(fā)表于 10-13 08:43 ?22次下載

    介紹 MSP430 的外圍模塊

    MSP430的外圍模塊介紹
    的頭像 發(fā)表于 06-13 01:47 ?5120次閱讀
    介紹 <b class='flag-5'>MSP430</b> 的外圍<b class='flag-5'>模塊</b>

    MSP430F5529 單片機(jī) 倒車?yán)走_(dá) 倒車警報(bào)系統(tǒng) 超聲波

    MSP430F5529 單片機(jī) 倒車?yán)走_(dá) 倒車警報(bào)系統(tǒng) 超聲波
    發(fā)表于 11-15 15:06 ?18次下載
    <b class='flag-5'>MSP430</b>F5529 單片機(jī) 倒車?yán)走_(dá) 倒車<b class='flag-5'>警報(bào)系統(tǒng)</b> 超聲波

    MSP430學(xué)習(xí)筆記-時(shí)鐘篇

    在前一篇學(xué)習(xí)筆記架構(gòu)篇中,我們將整個(gè)MSP430的總體架構(gòu)嘮嗑了一遍,今天我們繼續(xù)來聊聊MSP430的時(shí)鐘。對(duì)于時(shí)鐘模塊,我們要了解兩件事:時(shí)鐘架構(gòu)與時(shí)鐘配置寄存器。一、時(shí)鐘架構(gòu)下面我們從
    發(fā)表于 12-16 16:55 ?27次下載
    <b class='flag-5'>MSP430</b>學(xué)習(xí)筆記-時(shí)鐘篇

    Arduino嬰兒汽車警報(bào)系統(tǒng)(iCAS)

    電子發(fā)燒友網(wǎng)站提供《Arduino嬰兒汽車警報(bào)系統(tǒng)(iCAS).zip》資料免費(fèi)下載
    發(fā)表于 01-05 09:52 ?0次下載
    Arduino嬰兒<b class='flag-5'>汽車</b><b class='flag-5'>警報(bào)系統(tǒng)</b>(iCAS)

    多功能汽車警報(bào)系統(tǒng)

    電子發(fā)燒友網(wǎng)站提供《多功能汽車警報(bào)系統(tǒng).pdf》資料免費(fèi)下載
    發(fā)表于 11-06 14:16 ?1次下載
    多功能<b class='flag-5'>汽車</b><b class='flag-5'>警報(bào)系統(tǒng)</b>

    基于MSP430汽車電子喇叭

    電子發(fā)燒友網(wǎng)站提供《基于MSP430汽車電子喇叭.pdf》資料免費(fèi)下載
    發(fā)表于 10-09 10:18 ?0次下載
    基于<b class='flag-5'>MSP430</b>的<b class='flag-5'>汽車</b>電子喇叭