摘 è¦ï¼šé‡‡ç”¨å„種生化傳感器進行ç¾å ´ç’°å¢ƒè³ªé‡å¤šé»žæˆ–å¤šåƒæ•¸ç›£æ¸¬æ™‚,需è¦å¯¦æ™‚將采集的數據傳輸到監控ä¸å¿ƒæˆ–決ç–人員。çµåˆGSM(全çƒç§»å‹•通信系統)技術和çŸè·é›¢ç„¡ç·šé€šä¿¡æŠ€è¡“,給出一種傳感器數據無線é è·é›¢å‚³è¼¸ç³»çµ±ã€‚該系統利用GSM網絡çŸä¿¡å¹³è‡ºï¼Œå¹¶çµåˆä½¿ç”¨çŸè·é›¢ç„¡ç·šé€šä¿¡èŠ¯ç‰‡nRF401,能穩定地進行多點é 程監控和數據傳輸,系統é‹è¡Œè²»ç”¨ä½Žå»‰ã€‚該系統能廣泛應用于環境監測ã€é 程監控和移動醫療ç‰é ˜åŸŸã€‚
é—œéµè©žï¼šç„¡ç·šé€šä¿¡;çŸä¿¡æŠ€è¡“;數據傳輸;傳感器
Abstract:Field environment monitoring for multi-position and multi-parameter based on biochemical sensors, it is required to transmit timely and reliably the acquired data to control center or decision-maker. Combined GSM with short-distance wireless communication technology, a novel wireless small amount data transfer system based on SMS and short-distance transceiver chip nRF401 is presented. The system can work reliably for remote control and data transmission with low operational cost. It can be extensively used in many fields, such as environmental monitoring, remote control, and ambulant healthcare etc.
Keywords:Wireless communication; SMS; Data transmission; Sensors
1. 引言
  在采用å„種生化傳感器進行ç¾å ´ç’°å¢ƒç’°å¢ƒæ±¡æŸ“監測éŽç¨‹ä¸ï¼Œå¾€å¾€éœ€è¦é€²è¡Œå¤šé»žå’Œå¤šåƒæ•¸ç›£æ¸¬ã€‚由于監測點的分散性和å¯è®Šæ€§ï¼Œä¸”使用æ¢ä»¶å¾©é›œï¼Œé‡‡ç”¨å¸¸è¦çš„æœ‰ç·šç¶²çµ¡æ–¹å¼ä¸èƒ½æ»¿è¶³ç•¶ä»Šç’°å¢ƒæ±¡æŸ“監測的需è¦ã€‚無線技術由于其具有電路簡單ã€åŠŸè€—å°ã€é«”ç©å°ã€æˆæœ¬ä½Žå’Œèª¿è©¦æ–¹ä¾¿ä¸”é©åˆäºŽé‚£äº›ä¸å®œæž¶è¨é›»çºœç·šçš„ç¾å ´ç‰å„ªé»žï¼Œå› æ¤,無線網絡技術為ç¾å ´ç’°å¢ƒæ±¡æŸ“監測æä¾›äº†ä¸€ç¨®å¾ˆå¥½çš„解決方案。
  目å‰ï¼ŒGSM(全çƒç§»å‹•通信系統) 網絡已經éžå¸¸å®Œå–„,而利用其æä¾›çš„ä¸€é …å¢žå€¼æ¥å‹™â€”SMS (çŸä¿¡æœå‹™ï¼‰ï¼Œç„¡é ˆé™„åŠ å…¶ä»–çµ‚ç«¯è¨å‚™ï¼Œåªéœ€GSM 模塊便å¯é€²è¡Œä¸ã€è‹±æ–‡ä¿¡æ¯çš„å‚³è¼¸ã€‚æ ¹æ“šGSM è¦èŒƒï¼ŒSMS一次å¯å‚³é€140 å—節信æ¯é‡çš„çŸä¿¡ï¼Œå› æ¤å¯ä»¥åˆ©ç”¨SMSé€²è¡Œå°æµé‡æ•¸æ“šå‚³é€ï¼Œå¯¦ç¾å‚³æ„Ÿå™¨é ç¨‹ç›£æŽ§æˆ–å°æµé‡æ•¸æ“šé‡‡é›†ã€‚nRF401 çŸè·é›¢ç„¡ç·šæ”¶ç™¼èŠ¯ç‰‡å…·æœ‰ä¸²å£é€šè¨Šã€åŠŸè€—ä½Žã€æˆæœ¬ä½Žç‰å„ªé»žï¼Œåœ¨ç©ºæ› 環境æ¢ä»¶ä¸‹å¯å¯¦ç¾100~200米范åœå…§çš„信號無線傳輸,éžå¸¸é©ç”¨äºŽçŸè·é›¢çš„信號無線收發[1]。在本系統è¨è¨ˆä¸ï¼Œç‚ºäº†ç¯€çœç³»çµ±æˆæœ¬ï¼Œåœ¨ä¸‹ä½GSM 模塊端僅使用1個GSM模塊,采用多個nRF401 çŸè·é›¢ç„¡ç·šæ”¶ç™¼èŠ¯ç‰‡æ¨¡å¡Šèˆ‡æ¤ä¸‹ä½GSM模塊一起構æˆç¾å ´å¤šå€‹æ•¸æ“šé‡‡é›†é»žçš„無線通信。
2. ç³»çµ±çµæ§‹å’Œå·¥ä½œåŽŸç†
ã€€ã€€ç³»çµ±çµæ§‹å¦‚圖1 所示,利用計算機作為整個系統的管ç†å¹³è‡ºï¼Œç³»çµ±GSM模塊采用的是ä¸èˆˆé€šè¨Šå…¬å¸MZ28GSM模塊;USBå£é€šè¨Šé‡‡ç”¨è¿…通公å¸çš„USB130模塊[2],其將USB壿˜ 射為計算機串å£ï¼ˆå¦‚COM3å£ï¼Œæ³¨æ„ä¸åŒè¨ˆç®—æ©Ÿæ˜ å°„çš„ä¸²å£å¯èƒ½ä¸åŒï¼‰ï¼Œå…¶ä½¿ç”¨èˆ‡è¨ˆç®—機通常串å£ä¸€æ¨£ï¼Œç„¡éœ€äº†è§£USB相關å”è°ã€‚首先,計算機通éŽUSBå£èˆ‡GSM模塊1(上ä½GSM)通信,上ä½GSM以çŸä¿¡æ–¹å¼å‘GSM模塊2(下ä½GSMï¼‰ç™¼é€æŒ‡ä»¤ã€‚下ä½GSM接收到指令åŽï¼Œå°‡æŒ‡ä»¤é€šéŽå–®ç‰‡æ©Ÿä¸²å£å‚³é€çµ¦ä¸»MCU, 主MCUæ ¹æ“šæŒ‡ä»¤å…§å®¹è·³è½‰åˆ°ç›¸æ‡‰åˆ†æ”¯ç¨‹åºï¼Œå†é€šéŽä¸»ç„¡ç·šæ”¶ç™¼æ¨¡å¡Šï¼Œå‘從無線收發模塊發é€ç›¸æ‡‰çš„æŒ‡ä»¤ã€‚從MCU執行由從無線收發模塊接收到相應指令,指導傳感器和采樣電路進行數據采集;數據采集完畢åŽï¼Œå¾žMCU把采集到的數據發é€å›žä¸»MCU,主MCUå†é€šéŽä¸‹ä½GSM模塊以çŸä¿¡æ–¹å¼ï¼ŒæŠŠé‡‡é›†çš„æ•¸æ“šæˆ–è€…ç›£æ¸¬ç«¯ç‹€æ…‹ç‰ä¿¡æ¯ç™¼å›žä¸Šä½GSM,上ä½GSMå†æŠŠæŽ¥æ”¶åˆ°çš„çŸä¿¡é€šéŽUSBå£å‚³è¼¸çµ¦è¨ˆç®—機。監測計算機接收到çŸä¿¡åŽé€šéŽç›£æ¸¬è»Ÿä»¶å’Œæ•¸æ“šç®¡ç†ç¨‹åºï¼ŒåŸ·è¡Œç›¸æ‡‰çš„æ“ä½œï¼Œæœ€çµ‚å¯¦ç¾é 程數據采集和監控。
[align=center]

圖1: ç³»çµ±çµæ§‹æ¡†åœ–[/align]
3. 系統實ç¾
  MZ28 是ä¸èˆˆé€šè¨ŠæŽ¨å‡ºçš„GSM ç„¡ç·šé›™é »èª¿åˆ¶è§£èª¿å™¨ï¼Œä¸»è¦ç‚ºèªžéŸ³å‚³è¼¸ã€çŸä¿¡ç™¼é€å’Œæ•¸æ“šæ¥å‹™æä¾›ç„¡ç·šæŽ¥å£ã€‚其集æˆäº†å®Œæ•´çš„å°„é »é›»è·¯å’ŒGSM 的基帶處ç†å™¨ï¼Œç‰¹åˆ¥é©åˆäºŽå¿«é€Ÿé–‹ç™¼åŸºäºŽGSM 無線網絡的無線應用產å“。帶有人機接å£ï¼ˆHMI) 界é¢çš„æ‡‰ç”¨ç”¢å“內部與MZ28 的通信å¯é€šéŽUSBå£å¯¦ç¾ã€‚挪å¨Nordic å…¬å¸çš„çŸè·é›¢ç„¡ç·šæ”¶ç™¼èŠ¯ç‰‡nRF401,其433 MHzçš„å·¥ä½œé »çŽ‡ç‚ºåœ‹éš›é€šç”¨çš„å·¥æ¥ã€ç§‘å¸å’Œé†«ç”¨ï¼ˆISMï¼‰é »æ®µï¼Œç„¡é ˆç”³è«‹è¨±å¯è‰ã€‚它采用FSK調制,抗干擾能力強,特別é©åˆå·¥æ¥æŽ§åˆ¶å ´åˆ[1,3]。
  系統硬件è¨è¨ˆ
  計算機通éŽUSBå£èˆ‡ä¸Šä½GSM連接,并å‘å…¶æä¾›é›»æºã€‚下ä½GSM模塊ã€ä¸»ç„¡ç·šæ”¶ç™¼æ¨¡å¡Šèˆ‡ä¸»MCU的硬件連接電路如圖2 所示。圖2ä¸ï¼Œä¸»MCU串å£é€šéŽä¸€å€‹å¤šè·¯å¾©ç”¨é–‹é—œMSW,分別與主無線收發模塊RF和下ä½GSM(MZ28)連接。由于MZ28內部工作電壓為2.8 V,而系統供電電壓為4V,故MZ28模塊的RXD 端接上一個éºäºŒæ¥µç®¡ï¼ŒCTS端(低電平有效) 接上兩個硅二級管,起é™å£“ä¿è·ä½œç”¨ã€‚主無線收發模塊與主MCU的通信連接比較簡單,直接把模塊的數據輸入和數據輸出端分別連接到主MCU的串å£TXDã€RXD 端å³å¯ã€‚
[align=center]

圖2:下ä½GSM模塊ã€ä¸»ç„¡ç·šæ”¶ç™¼æ¨¡å¡Šèˆ‡MCU的連接[/align]
  系統軟件è¨è¨ˆ
  系統的軟件è¨è¨ˆåŒ…括監控計算機的監測程åºèˆ‡æ•¸æ“šç®¡ç†ç¨‹åºã€ä¸»MCU和從MCU 程åºã€‚系統采用AT命令進行GSM模塊的控制,其æ“縱GSM模塊的一些有關çŸä¿¡çš„常用AT命令坿Ÿ¥é–±GSM è¦èŒƒGSM07.05 åŠGSM07.07[4]
ã€€ã€€è¨ˆç®—æ©Ÿä¿¡è™Ÿé‡‡é›†åŠæ•¸æ“šç®¡ç†æ¨¡å¡Š
  這部分程åºé‡‡ç”¨Visual Basic(VB6.0)語言開發,使用MsComm控件通éŽUSBå£èˆ‡ä¸»GSM模塊通訊,利用VB啟動Excel,所采集的數據直接é€Excel,充分利用Excel的強大數據處ç†åŠŸèƒ½å¯¦ç¾å°é‡‡é›†æ•¸æ“šçš„é¡¯ç¤ºï¼ˆåŒ…æ‹¬æ•¸æ“šå€¼åŠæ•¸æ“šé»žæ›²ç·šå’Œè¶¨å‹¢åœ–ç‰ï¼‰ã€åˆ†æžå’Œå˜å„²[5,6]。VBä¸å•Ÿå‹•å’Œæ“作Excel的相關語å¥å¦‚下:
  ‘*** 首先è¦è²æ˜Žä¸€å€‹ç›®æ¨™å…¨å±€è®Šé‡ ***
  Global chrtobj As ChartObject
  ‘*** 打開Excel ***
  Dim ExcelApp As Excel.Application
  Set ExcelApp = Excel.Application
  ExcelApp.Visible = True
  ExcelApp.Workbooks.Add
  ‘*** å¾€Excelå–®å…ƒæ ¼ä¸å¯«æ•¸æ“š ***
  Range(Excel_Column).Value="ChNo"&OutCh(I)
  ‘*** Excel數據繪圖 ***
  chrtobj.Chart.SeriesCollection.AddRange(Select_to_Draw)
  ‘*** å¢žåŠ è¶¨å‹¢ç·š ***
  chrtobj.Chart.SeriesCollection(1).Select
  chrtobj.Chart.SeriesCollection(1).Trendlines.Add_(Type:=xlPolynomial,Order:=4,_ Forward:=0,Backward:=0, DisplayEquation:=False,DisplayRSquared:=False).Select
  上ä½GSM模塊的çŸä¿¡ç™¼é€é‡‡ç”¨PDU 模å¼ã€‚å°äºŽPDU æ ¼å¼çš„å…·é«”å®šç¾©å’Œå…¶å®ƒåƒæ•¸ï¼Œå¯æŸ¥é–±GSMè¦èŒƒGSM03.40 åŠGSM03.38[7]。相應的VB 程åºå¦‚下:
  MSComm1.Output ="AT + CMGF = 0"& Chr (13) ‘è¨ç½®æ¨¡å¡ŠçŸä¿¡æ ¼å¼ç‚ºPDU 模å¼
  Call Delay ‘ 延時
  MSComm1.Output = "AT + CNMI = 2,2,0,0,0 "& Chr(13)  â€˜æœ‰çŸæ¶ˆæ¯åˆ°é”ç«‹å³é€é¡¯
  Call Delay ‘延時
  MSComm1.Output = "AT+ CMGS = "&Length &Chr (13) ‘發é€çŸä¿¡ï¼ŒLength 為發é€çš„å—節數
  Call Delay ‘延時,使GSMæ¨¡å¡Šæœ‰æ™‚é–“éŸ¿æ‡‰ä¸Šä¸€æ¢æŒ‡ä»¤
  MSComm1.Output = Sendstr & Chr (26) ‘ 發é€PDU å—符串,Sendstr 為PDU å—符串變é‡
  接收çŸä¿¡é‡‡ç”¨TEXT 模å¼å°æ”¶åˆ°çš„çŸä¿¡è§£ç¢¼ï¼ŒTEXTæ¨¡å¼æ¯”較簡單,ç¾èˆ‰ä¾‹å¦‚下:
  RX : + CMT:“13601702443â€ï¼Œâ€œ00/ 05/ 18 ,09 :20 :16 + 02â€ï¼Œâ€œ4E00004100420043â€å…¶ä¸ï¼Œâ€œ+ CMTâ€ç‚ºæ–°çŸä¿¡æŒ‡ç¤ºï¼Œ + CMT表示直接將新çŸä¿¡ç™¼é€åˆ°çµ‚端è¨å‚™; “13601702443†為çŸä¿¡ä¾†æºè™Ÿç¢¼; 00/ 05/ 18 ,09 :20 :16 + 02 為çŸä¿¡åˆ°é”時間; 4E00004100420043 為çŸä¿¡å…§å®¹ï¼ˆé€™é‡Œç‚ºâ€œä¸€ABCâ€ï¼‰ 。
  主MCU模塊
  系統采用Atmelå…¬å¸çš„AT89C51單片機作為CPU,程åºé‡‡ç”¨åŒ¯ç·¨èªžè¨€ç·¨å¯«[8]。主è¦åŠŸèƒ½åŒ…æ‹¬:系統模塊åˆå§‹åŒ–(本機åˆå§‹åŒ–ã€ä¸‹ä½GSM模塊åˆå§‹åŒ–ã€ä¸»ç„¡ç·šæ”¶ç™¼æ¨¡å¡Šåˆå§‹åŒ–);é‡å°ä¸åŒçš„上ä½GSM模塊çŸä¿¡æŒ‡ä»¤å…§å®¹çš„跳轉控制;采集數據的接收ã€å˜å„²æŽ§åˆ¶;çŸä¿¡æ”¶ç™¼æŽ§åˆ¶ç‰ã€‚主MCU軟件æµç¨‹å¦‚圖3。單片機匯編語言進行çŸä¿¡æ”¶ç™¼åŽŸç†åŒå‰æ‰€è¿°ï¼ŒAT 指令相åŒã€‚
  系統的主無線收發模塊與從無線收發模塊之間構æˆä¸€é»žå°å¤šé»žé€šä¿¡ã€‚為ä¿è‰é€šä¿¡å¯é ,çŸè·é›¢ç„¡ç·šæ¨¡å¡Šä¹‹é–“的通信需è¦è‡ªå·±å®šç¾©ä¸€å€‹é€šä¿¡å”è°ã€‚本文è¨è¨ˆçš„通信å”è°å¦‚下:æ¯å€‹å¾žç„¡ç·šæ”¶ç™¼æ¨¡å¡Šéƒ½åˆ†é…一個地å€ç¢¼;數據傳輸采用çŸåŒ…æ–¹å¼æ‰“åŒ…ï¼Œæ ¹æ“šæ•¸æ“šæ‰‹å†Šï¼Œå™ªè²ä¸ä¸æ˜“產生00xFFè·Ÿ 00x00。于是,數據包采用如下方å¼é€²è¡Œæ‰“包:在數據å—節å‰åŠ 3個包é å—節,å³00xFFã€00x00ã€00x00,然åŽåŠ å…¥å¾…ç™¼é€çš„2個å—ç¯€çš„æ•¸æ“šã€‚æ ¹æ“šç¶“é©—ï¼Œä¸€èˆ¬ç¬¬1 個å—ç¯€çš„æ•¸æ“šåœ¨ç™¼é€æ™‚å®¹æ˜“ä¸Ÿå¤±ï¼Œå› æ¤ç™¼é€æ•¸æ“šçš„é–‹å§‹å‰ï¼Œå…ˆç™¼é€ä¸€å€‹ä»»æ„內容的å—ç¯€ï¼Œç„¶åŽæ‰é–‹å§‹ç™¼é€æ•¸æ“šåŒ…。接收時è¦å®šåªæŽ¥æ”¶è·Ÿåœ¨00xFFã€00x00ã€00x00 這3個å—節åŽé¢çš„2個å—節數據;åŒæ™‚ï¼Œé‡‡ç”¨å¥‡å¶æ ¡é©—çš„å¶æ ¡é©—æ–¹å¼ï¼Œå¦‚出錯,則丟棄該數據包,接收下一個數據包。
  從MCU模塊
  這部分程åºä¸»è¦æ˜¯æŽ¥æ”¶è¨ˆç®—æ©Ÿå‚³ä¾†çš„æŽ§åˆ¶å‘½ä»¤å’Œå¯¦ç¾æ•¸æ“šçš„采集,主è¦åŒ…括A/D轉æ›ã€æ•¸æ“šé 處ç†å’Œé‡‡é›†æ•¸æ“šçš„ç„¡ç·šçŸè·é›¢å‚³è¼¸ã€‚
4. çµæŸèªž
[align=center]

圖3. 主MCU軟件æµç¨‹æ¡†åœ–[/align]
  將GSM 模塊和çŸè·é›¢ç„¡ç·šæ¨¡å¡Šçµåˆï¼Œå¯¦ç¾äº†ä¸€ç¨®å‚³æ„Ÿå™¨æ•¸æ“šé‡‡é›†å’Œå°æµé‡ç„¡ç·šå‚³è¼¸åŠŸèƒ½ï¼Œå……åˆ†åˆ©ç”¨äº†ç¾æœ‰GSM網絡的優勢和USB總線數據傳輸速率高ã€USBè¨å‚™å¯ç†±æ’æ‹”ç‰åŠŸèƒ½ï¼Œç‚ºé 程監測ã€å°æµé‡æ•¸æ“šé‡‡é›†æä¾›äº†ä¸€ç¨®åˆç†ã€é«˜æ•ˆçš„è§£æ±ºæ–¹æ¡ˆã€‚è©²ç³»çµ±å·¥ä½œç©©å®šï¼Œæˆæœ¬ä½Žï¼Œç„¡çŸä¿¡ä¸Ÿå¤±ã€ç„¡å‡ºéŒ¯ç¾è±¡ã€‚ç›®å‰ï¼Œç³»çµ±å¯ä»¥åœ¨å°èŒƒåœç©©å®šé‹è¡Œï¼Œè©¦é©—è‰æ˜Žç³»çµ±é‹è¡Œå¯é 。但該系統實時性ä¸å¼·ï¼Œæ»¯åŽä¸€å€‹çŸä¿¡ç™¼é€æŽ¥æ”¶å‘¨æœŸæ™‚間。隨著無線通訊技術的發展,該系統功能會隨之完善,并能在醫å¸è‡¨åºŠæª¢æ¸¬å’Œç›£æ¸¬ç‰æ›´å¤šçš„é ˜åŸŸå¾—åˆ°å»£æ³›æ‡‰ç”¨ã€‚
  本文作者創新點:將GSM 模塊和çŸè·é›¢ç„¡ç·šæ¨¡å¡Šçµåˆï¼Œå……åˆ†åˆ©ç”¨äº†ç¾æœ‰GSM網絡的優勢和USB總線數據傳輸速率高ã€USBè¨å‚™å¯ç†±æ’æ‹”ç‰åŠŸèƒ½ï¼Œåˆ©ç”¨Excel強大的數據處ç†èƒ½åŠ›ï¼Œç‚ºé 程監測ã€å°æµé‡å‚³æ„Ÿå™¨æ•¸æ“šé‡‡é›†æä¾›äº†ä¸€ç¨®åˆç†ã€é«˜æ•ˆçš„解決方案。
  åƒè€ƒæ–‡ç»
  [1] nRF401 Datasheet, Nordic Corp. Ltd.
  [2] USB130 Datasheet, è¿…é€šé›»åæœ‰é™å…¬å¸
  [3] æŽé‡‘é³³,æ›¹é †,éç«‹å³°. 無線收發模塊nRF401在礦山ä¸çš„æ‡‰ç”¨[J].微計算機信æ¯ï¼ˆåµŒå…¥å¼èˆ‡SOC),2006, Vol.22,1-2: 241-243,16
  [4] Digital Cellular Telecommunications System (Phase 2 + ) ; Use of Data Terminal Equipment2Data Circuit Terminating ; Equipment (DTE2DCE) Interface for Short Message Service (SMS) and Cell Broadcast Service (CBS) . GSM 07. 05 version 5.5.0 1998201
  [5] 王鴻儒. Excel VBA程åºè¨è¨ˆ[M]. 北京: ä¸åœ‹éµé“出版社, 2004
  [6] 陳叿±,常丹ç‰. Visual Basic 6.0程åºè¨è¨ˆæ•™ç¨‹[M]. 北京: 清è¯å¤§å¸å‡ºç‰ˆç¤¾, 2005
  [7] Digital Cellular Telecommunications System (Phase2+ ) ; Techni2cal Realization of the Short Message Service (SMS) ; Point - to -Point (PP). GSM 03. 40 version 6.0.0 1998203
  [8] 嫿¶µèŠ³ï¼Œå¾æ„›å¿. MCS - 51ã€96 系列單片機原ç†åŠæ‡‰ç”¨[M]. 北京:北京航空航天大å¸å‡ºç‰ˆç¤¾ï¼Œ1988