精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

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

3天內不再提示

如何使用MSP430和GPS模塊制作汽車事故警報系統

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

在這里,我們再次構建相同的項目,但這次將使用MSP430 發射臺和振動傳感器檢測車輛事故。因此,該項目還將介紹振動傳感器與 MSP430 啟動板的接口

此處振動傳感器模塊檢測車輛的振動并向 MSP430 Launchpad 發送信號。然后 MSP430 從 GPS 模塊獲取數據并使用 GSM 模塊通過 SMS 將其發送到用戶手機。一個 LED 也會作為事故警報信號發光,這個 LED 可以用一些警報代替。事故位置以Google Map 鏈接的形式發送,來自 GPS 模塊的緯度和經度。

pYYBAGMqvMeAKsG8AAJO_sP3ixw139.png

所需組件

MSP430 啟動板

SIM900 GSM 模塊

Ublox NEO-6M GPS 模塊

振動傳感器模塊

16x2 液晶

電源

連接電線

10 K-POT

面包板或PCB

電源 12v 1amp

3.3v電源

5v電源

在進入項目之前,我們將討論 GPS、GSM 和振動傳感器。

GPS模塊及其工作:

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

poYBAGMqvQWAQqEuAAS1e8eg9-I793.png

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

我們可以通過計算字符串中的逗號來從 $GPGGA 字符串中提取坐標。假設你找到 $GPGGA 字符串并將其存儲在一個數組中,那么在兩個逗號后可以找到緯度,在四個逗號后可以找到經度。現在,這個緯度和經度可以放在其他數組中。

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,經度,E,FQ,NOS,HDP ,高度,M,高度,M,,校驗和數據

poYBAGMqvRKAa2EBAAAtrSCr4eg996.png

GSM模塊

SIM900 是一個完整的四頻 GSM/GPRS 模塊,可以被客戶或愛好者輕松嵌入使用。SIM900 GSM 模塊提供行業標準接口。SIM900 以低功耗提供 GSM/GPRS 850/900/1800/1900MHz 的語音、SMS、數據性能。它在市場上很容易買到。

SIM900采用集成AMR926EJ-S內核的單片機處理器設計

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

啟用 GPRS

pYYBAGMqvRiAeD9TAAXDfdLhfWU479.png

AT 命令

AT 表示注意。該命令用于控制 GSM 模塊。為了測試 GSM 模塊,我們使用了 AT 命令。接收到 AT 命令后,GSM 模塊回復 OK。這意味著 GSM 模塊工作正常。下面是 我們在這個項目中使用的一些 AT 命令:

ATE0 用于關閉回聲

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

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

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

AT+CMGS=”Mobile Number” 《ENTER》 分配收款人的手機號碼

》》現在我們可以寫我們的信息了

》》寫完留言后

Ctrl+Z 發送消息命令(十進制的 26)。

ENTER=0x0d 十六進制

振動傳感器模塊

在這個MSP430 事故警報系統項目中,我們使用了一個振動傳感器模塊來檢測振動或突然的調制。振動傳感器模塊根據模塊提供數字輸出高/低邏輯。在我們的案例中,我們使用了一個有源 HIGH 邏輯振動傳感器模塊。這意味著每當振動傳感器檢測到振動時,它都會為微控制器提供高邏輯。

poYBAGMqvR6AZj-bAAJktuf7XxE888.png

電路說明

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

poYBAGMqvSKATOkhAAFApAVp3GI921.png

poYBAGMqvSiAfWjNAAblkntWh9A636.png

編程說明

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

所以首先我們已經包含了一個必需的庫和聲明的引腳和變量。

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

浮動緯度=0;
浮動對數=0;

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

#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++;
計數低 = 0;
}

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

如果(count_low >= count_max)
返回低;
否則
返回高;
}
下面的函數檢測振動并調用gpsEvent()函數獲取 GPS 坐標,最后調用Send()函數發送短信。

無效循環()
{
如果(傳感器讀取(振動傳感器)==高)
{
數字寫入(領導,高);
全球定位系統事件();
發送();
數字寫入(領導,低);
延遲(2000);
}
}
Given Function 負責從 GPS 模塊中獲取 GPS 字符串,從中提取坐標并將其轉換為度數十進制格式。

無效 gpsEvent()
{
字符 gpsString[55];
字符測試[]="RMC";
我=0;
while(1)
{
while (Serial.available()) //來自 GPS 的串行傳入數據
{
char inChar = (char)Serial.read();
gpsString[i]=inChar; //將來自 GPS 的傳入數據存儲到臨時字符串 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;
緯度=((浮點)度+分鐘);
最后,Send()函數用于將 SMS 發送到插入在這部分代碼中的用戶號碼。

無效發送()
{
GSM.print("AT+CMGS=");
GSM.print('"');
GSM.print("961****059"); // 輸入你的手機號碼
GSM.println('"');
延遲(500);
// GSM.print("緯度:");
// GSM.println(緯度);
GSM.println("事故發生");
延遲(500);
// GSM.print("經度:");
// GSM.println(logitude);
GSM.println("點擊鏈接查看位置");
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);
}
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • msp430
    +關注

    關注

    180

    文章

    2393

    瀏覽量

    229200
  • 振動傳感器
    +關注

    關注

    2

    文章

    321

    瀏覽量

    19787
  • GPS模塊
    +關注

    關注

    0

    文章

    87

    瀏覽量

    16426
  • 警報系統
    +關注

    關注

    0

    文章

    54

    瀏覽量

    4876
收藏 人收藏

    評論

    相關推薦

    通過RTC模塊DS3231與MSP430連接來制作數字時鐘

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

    MSP430單片機與GPS模塊接口在便攜式導航系統中的設計應

    MSP430單片機與GPS模塊接口在便攜式導航系統中的設計應用 GPS 是全球定位系統的簡稱,
    發表于 03-05 11:03 ?100次下載

    基于GPS/GSM和MSP430的巡檢手持終端的設計與實現

    基于GPS/GSM和MSP430的巡檢手持終端的設計與實現。
    發表于 02-17 09:48 ?29次下載

    基于MSP430的可便攜車載GPS智能終端的設計

    基于MSP430的可便攜車載GPS智能終端的設計。
    發表于 02-17 09:51 ?36次下載

    基于MSP430單芯片的倒車雷達模塊設計環翾

    基于MSP430單芯片的倒車雷達模塊設計_環翾
    發表于 03-17 08:00 ?7次下載

    MSP430教程14:MSP430單片機ADC12模塊

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

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

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

    基于MSP430外圍模塊功能簡介

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

    基于MSP430單片機的GPS定位系統設計

    基于MSP430單片機的GPS定位系統設計
    發表于 10-13 08:43 ?22次下載

    介紹 MSP430 的外圍模塊

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

    MSP430F5529 單片機 倒車雷達 倒車警報系統 超聲波

    MSP430F5529 單片機 倒車雷達 倒車警報系統 超聲波
    發表于 11-15 15:06 ?18次下載
    <b class='flag-5'>MSP430</b>F5529 單片機 倒車雷達 倒車<b class='flag-5'>警報系統</b> 超聲波

    MSP430學習筆記-時鐘篇

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

    Arduino嬰兒汽車警報系統(iCAS)

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

    多功能汽車警報系統

    電子發燒友網站提供《多功能汽車警報系統.pdf》資料免費下載
    發表于 11-06 14:16 ?1次下載
    多功能<b class='flag-5'>汽車</b><b class='flag-5'>警報系統</b>

    基于MSP430汽車電子喇叭

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