《電子技術應用》
您所在的位置:首頁 > 通信與網絡 > 設計應用 > 基于GSM短消息的遠程控制定位技術研究
基于GSM短消息的遠程控制定位技術研究
來源:微型機與應用2011年第5期
楊立永1,楊日杰1,董云龍2
(1.海軍航空工程學院 電子信息工程系,山東 煙臺 264001; 2.海軍航空工程學院 科研部,山
摘要: 研究了GSM MODEM、GPS模塊和Atmega128單片機的通信,闡述了GSM MODEM收發信息的基本原理以及通過單片機控制GSM MODEM收發信息和接收GPS信息的基本過程。介紹了以單片機為主的硬件電路以及軟件實現過程,詳細分析了程序設計的流程。
Abstract:
Key words :

摘  要: 研究了GSM MODEMGPS模塊和Atmega128單片機的通信,闡述了GSM MODEM收發信息的基本原理以及通過單片機控制GSM MODEM收發信息和接收GPS信息的基本過程。介紹了以單片機為主的硬件電路以及軟件實現過程,詳細分析了程序設計的流程。
關鍵詞: GSM MODEM;GPS;Atmega128單片機

 在惡劣的自然條件下,實施人工作業有很大的危險性,雖然有時可以由機器人來代替人,但機器人造價昂貴,因而研究一款造價低廉而又實用的遠程控制系統具有重大意義。
 GSM網絡技術的發展和GSM網絡覆蓋面積的增加,使其在遙測、遙控、數據采集和遠程控制等領域得到了廣泛應用。單片機與短信貓(GSM MODEM)的通信在GSM的應用中占據重要位置,GPS應用的普及使得遠程控制及定位得以實現。本文給出了GSM MODEM、GPS模塊和Atmegal系列單片機的硬軟件設計,并介紹了整個模塊的編程實現過程。
1 系統的硬件構成
1.1 Atmega128單片機簡介

 Atmega128單片機是一款基于AVR內核、采用RISC結構的增強型低功耗CMOS 8 bit微控制器;其大部分指令在一個時鐘周期內完成,因此具有1 MIPS/MHz的數據吞吐率;具有優化的功率消耗結構,在功耗相對較少的情況下可以進行復雜的處理。
1.2 單片機控制GSM MODEM的原理
1.2.1 AT指令簡介

 AT指令就是帶有串行口的設備操作GSM MODEM或手機的指令集。每個AT指令都以AT+開頭,以回車換行為結尾。每個命令執行成功與否都有相應的信號返回。本文僅簡單介紹將設備所用到的與發送和接收信息相關的AT指令[1]。
1.2.2 與GSM MODEM相關的AT指令
 GSM MODEM與單片機或終端之間通過串行口RS-232C連接。多數GSM MODEM使用AT指令來設置參數。為避免在程序運行過程中出現問題,致使GSM MODEM不能正常工作,本文用計算機中的超級終端來對其進行設置。下面是常用的與短信數據通信開發相關的幾條主要的AT指令[2-4]。
 AT+CMGF:選擇對短消息控制的模式(0—PDU;1—文本);
 AT+CMGS:發送短消息;
 AT+CMGR:讀短消息;
 AT+CMGL:列出SIM卡中的短消息;
 AT+CMGD:刪除短信息(刪除一條或多條短信息)。
1.2.3 對短消息控制的三種模式
 對短消息控制共有三種模式:(1)基于AT命令的Text Mode;(2)Block Mode;(3)基于AT命令的PDU Mode。使用Block Mode需要手機生產廠家提供驅動支持,目前PDU Mode已取代Block Mode,而Text Mode相對比較簡單,應用較為方便,可以滿足本設備的需求。故本設備將GSM MODEM設置為Text Mode。
1.3 單片機與GSM MODEM的連接
 由于GSM MODEM提供的接口是標準的RS-232C接口,采用EIA-RS-232C電平。而單片機使用TTL電平,與EIA-RS-232C電平不兼容,因此,需要在單片機和GSM MODEM之間連接電路實現電平轉換。一般用芯片MAX232來實現EIA-RS-232C與TTL電平之間的轉換。
 MAX232芯片是Maxim公司生產的,包含二路接收器和驅動器,適用于各種EIA-RS-232C和V.28/V.24的通信接口。MAX232芯片內部有一個電源電壓變換器,可以把輸入的+5 V電源電壓變換成RS-232C輸出電平所需的±10 V電壓,其工作電壓為+5 V。
 本文單片機屬于主控設備,用串口與GSM MODEM連接過程中需要注意接線的方法。GSM MODEM的串口將RS-232C接口標準定義的所有信號線都用到了,并且是按照DTE和DCE之間信息交換協議的要求進行連接的,使用時只不過是把DTE發出的信號當作對方DCE發來的信號。因此,把這種連接稱為雙叉環回接口。單片機與GSM MODEM的串口連接如圖1所示。

2 設備功能分析以及各模塊的編程實現
2.1 設備功能分析

 本設備主要是完成對SMS短消息的接收及分析,并執行相應的動作和發送反應信息完成對目標的遠程控制。當需要提供地理信息時將連接GPS的串口打開,接收GPS信息。具體功能如下:
 (1)模塊開機后能夠隨時接收來自主控系統按照協議發送的信息。
 (2)設定一定的時間對存儲卡內的信息內容進行篩選解讀分析,做出相應的處理。
 (3)如果需要設備的地理信息,將連接GPS的串口打開接收GPS數據信息。
系統的工作流程圖如圖2所示。

2.2 設備各模塊的編程實現
 按照設備的功能要求,將設備分為以下幾個部分。
2.2.1 初始化模塊
 初始化主要包括:
 (1)單片機的初始化。對單片機的串口進行設置,打開兩個串口中斷允許位,設置波特率,用于與GSM MODEM和GPS進行通信[5-6]。
 (2)GSM MODEM的初始化。對GSM MODEM的工作方式進行設定(包括關回顯),以方便程序運行。具體程序如下:
 const char ATE0[]="ATE0\r\n";//定義關回顯指令
 COM_rx_reset( );            //復位串口
 COM_putsf(ATE0);        //關回顯
 其他的工作方式可由計算機的超級終端進行設置,可以一直保存設置。而GPS模塊則利用自身的默認設置。
2.2.2 短信息的發送和接收執行模塊
 短信息的發送需要運用AT指令將要發送的內容通過串口發送給GSM MODEM模塊。在短信發送中,只向主控機發送所要求的信息內容,因此通信地址固定添加主控機的地址即可。發送信息的功能函數程序如下:
 COM_rx_reset( ) ;         //復位串口
 COM_putsf(AT_CMGS) ; //發送AT控制指令
 COM_putsf(Mp1_Hand); //添加通信地址
 COM_putsf(CRLF);       //回車換行
 while(1)           
   {  
    if( ACK_ON(READY_))  //檢測模塊握手信號
          {break;}
    }                               
 delay_1ms (200) ;         //延時200 ms
 COM_puts(msg) ;        //輸入信息內容
 COM_putsf(END_MESS) ; //輸入信息內容結束
 COM_putsf(CRLF);       //回車換行
 短信息的接收可以采用中斷方式和定時查詢方式。中斷方式是:如果有新信息到達,單片機就會收到下列提示:+CMTI:”SM”,<index>。
 可以通過檢測串口是否收到“+CMTI”來判斷新信息的到達,以采取相應的動作。采用定時查詢的方式接收新信息,也就是將手機卡內的全部信息用指令AT+CMGL=”ALL”列出來并放入rx_buffer[RX_BUFFER_SIZE]中。考慮到多條信息的到來會丟失信息,所以本系統采用的是定時查詢方式。相應的程序如下:
 COM_rx_reset( );
 COM_putsf(AT_CMGL);
 COM_putsf(CRLF);
 列出來的內容需要進行合法信息篩選,即把每條信息的index提取出來,將提取的合法信息內容和index存起來,然后一一進行處理,并將已讀信息刪除(務必要進行刪除信息的工作,不然會對系統工作的穩定性造成影響)。
2.2.3 GPS模塊的數據接收
 GPS模塊可以采用對連接GPS的串口進行開關而控制。GPS信號有二進制和ASCII兩種,本文主要采用ASCII,即NMEA0183格式[7-8]。GPS-OME板輸出帶有各種功能的數據語句,如$GPGGA、$GPGSV、$GPRMC等,其中以$GPRMC定位數據最為常用,其數據的一般格式為:
$GPRMC,<1>,<2>,<3>,<4>,<5>,<6>,<7>,<8>,<9>,<10>,<11>,*hh
    其中,<1>為當地位置的UTC時間(hh:mm:ss);<2>為接收狀態,即顯示出“A”為位置有效,“V”為位置非有效接收警告(在當前天線視野上方的衛星個數少于3顆時);<3>為實際緯度;<4>表示半球緯度N或者S;<5>為實際經度;<6>表示半球經度E或者W;<7>為GPS屬性指示;<10>表示當地的海拔高度。格式中未解釋的項本文不用。
 在連接GPS的串口中斷服務程序中只要將帶有“$GPRMC”的那一條語句提取出來就可以了。
本文以單片機串口通信技術和GSM MODEM短消息傳輸技術為基礎,針對遠程控制定位的需求,開發了一種對數據采集終端進行遠程控制和定位的解決方案以及具體實現過程,為遠程終端控制應用提供了技術參考,具有一定的理論和實際意義。
參考文獻
[1] 李棟梁,馬洪連,李文成.基于SMS的遠程數據采集系統的設計與實現[J].儀器儀表學報,2006,27(21):130-131.
[2] AT commands originating from GSM 07.05 for SMS. [DB/OL].SIEMANS Mobile, 2002.
[3] 錢亞利,趙光宙.短信通訊在遠程環保實時監控系統中的應用[J].機電工程,2007,24(1):25-27.
[4] 段錦,葉霖,黃顯澍.基于GSM短消息的遠程數據采集傳輸系統[J].長春理工大學學報,2005,28(4):51-53.
[5] 萬求.GSM短信傳送文件的方法的研究與實現[J].計算機工程與應用,2006,42(36):122-125.
[6] 仵浩,黃維金.無線數據傳輸技術在油井檢測中的應用[J].儀器儀表學報,2004,25(4):520.
[7] 孟謙,王志良,張東.基于GPS/北斗衛星技術的無盲區車輛調度系統[J].微計算機信息,2005(1):160-162.
[8] 王  ,劉錦高.基于GPS無線定位/GSM短信收發的空間信息查詢系統[J].微計算機信息,2006(6):184-186.

此內容為AET網站原創,未經授權禁止轉載。
主站蜘蛛池模板: 一级片在线播放 | 国产三级在线视频播放线 | 9191精品国产免费不久久 | 日日a.v拍夜夜添久久免费 | 中国三级网站 | 国产精品久久久久久久 | 亚洲欧美自拍偷拍 | 欧美成国产精品 | 精品一区二区三区视频 | 伊人色综合久久天天人手人停 | 日韩欧美一级 | 国产成人亚洲综合91精品555 | 日韩色在线 | 久久免费视频7 | 特级淫片国产免费高清视频 | 99精品视频在线在线视频观看 | 神马午夜在线 | 成人男女啪啪免费观看网站 | 久久精品国产亚洲网址 | 日韩欧美国产亚洲 | 久久国产精品影院 | 爱爱客影院在线影院gf发现 | 欧美在线视频免费观看 | 在线观看毛片视频 | 美女双腿打开让男人桶爽网站 | 狠狠88综合久久久久综合网 | 丁香伊人五月综合激激激 | 亚洲影视一区二区 | 亚洲成a人片在线观 | 91成人午夜在线精品 | 国产精品区一区二区免费 | 4438全国最大成人网视频 | 免费毛片播放 | 欧美视频一区二区三区在线观看 | 91精品久久久久 | 亚洲a网 | 久久综合本色宗合一本色 | 中国国产成人精品久久 | 成人精品综合免费视频 | 亚洲视频综合网 | 中文字幕视频在线观看 |