CDMA是無線通信領域的后起之秀,采用頻分編碼技術,與基于時分復用的GSM相比具有明顯優勢。CDMA能夠實現從現有通信系統到下一代通信系統的平滑過渡,具有較強的功能伸縮性;可以支持先進的天線技術,通過增加小區覆蓋范圍減少基站數目;所有帶寬信道都能支持高速數據業務;網絡頻率利用率高,設計施工和擴容較為簡便。
內嵌TCP/IP協議的CDMA無線終端通過CDMA網絡和Internet達到數據傳輸的目的,適合于開發基于無線應用的產品,如監控、調度、車載、遙控、遠程測量、定位和導航等。這些系統開機就能自動附著到CDMA網絡上,與數據中心實時在線進行數據通信、高速傳輸,可靠性強,具有良好的應用前景。文中提出的CDMA無線通信模塊,提供了TCP/IP協議接口的AT命令,結合命令控制模塊,適用于主機沒有TCP/TP協議,但使用串口通信的情況(如單片機數據采集傳輸系統等)。
1 CDMA無線終端TCP/IP協議實現
Internet的實質是實現異種網絡的互聯,它充分利用各種通信子網的數據傳輸能力,通過在依賴于通信子網的通信模塊和應用程序之間插入新的協議軟件來保證應用程序之間的互操作性。因特網的協議族稱為“TCP/IP協議族”,其中包含了為數眾多的協議,如應用層協議,傳輸層TCP、UDP協議,網絡層的IP、ARP、ICMP協議以及數據鏈路層協議等。無線網絡與互聯網整合,信息包通過無線媒介無縫地傳輸至基于IP協議的網絡,在傳輸前,數據包必須根據TCP/IP協議封裝。在CDMA網絡中也采取了IP協議進行傳輸。CDMA系統中的TCP/IP協議結構自下而上分別為數據鏈路層(包括接口層和鏈接層)、網絡層和傳輸及應用層。
1.1 數據鏈路層原理
CDMA系統中的數據鏈路層比較特別,涉及無線鏈路的鏈接及控制。鏈路層由RLP和PPP組成,數據業務的傳遞主要由無線鏈路協議(RLP)完成。RLP子層是上層應用與底層物理連接之間的重要接口,位于MAC層的復用子層之上。其主要作用是利用物理層的前向和反向信道為上層應用提供面向比特流的傳輸,而并不考慮上層應用的具體幀格式,根據復用子層的要求形成RLP幀。RLP子層中質量保證措施的核心思想是一種盡力而為的傳輸機制(Best Effort Delivery),即RLP子層依據協議規定的參數盡可能地保證數據的正確傳輸。
PPP包括串行鏈路上封裝數據報的方法;建立、配置和測試數據鏈路鏈接的LCP協議(Link contr01 Protocol);建立和配置網絡層協議的IPCP協議(IP ControlProtocol);鑒權協議PAP/CHAP。為了在點到點鏈路上建立通信,PPP鏈路的一端必須在建立階段首先發LCP包配置數據鏈路。在鏈路建立后,進入網絡層協議之前,PPP提供一個可選擇的鑒權階段。默認情況下,鑒權不是強制的。如果希望進行鏈路的鑒權,則實現者必須在建立階段指明鑒權協議配置選項。
1.2 應用層實現
傳統的網絡編程都調用Socket API函數連接低層傳輸協議。常用的網絡編程接口包括BSD(Berkeley Software Distributlon)Sockets和Winsock TM。為了支持網絡應用,CDMA系統自身提供了完整的Socket API函數。建立一個TCP連接過程如圖1所示。
應用程序調用dss_open_netlib()函數打開網絡庫,使數據業務狀態機進入Socket模式,同時定義網絡回調函數和Socket回調函數,返回應用ID號。應用程序通過網絡回調函數得知低層網絡是否可用,Socket回調函數描述Socket事件。
應用程序調用dss_pppopen()函數建立網絡子系統,包括傳輸信道的建立和連接。網絡子系統建立后,網絡回調函數通知應用程序當前網絡可用。
圖1中省略了一個步驟,即低層協議建鏈后,調用dss_socket()函數創建一個新的套接字用來進行網絡通信。返回一個描述符代表這個套接字;同時進行SCB(SocketControl Block)及相關數據結構的初始化,指定協議使用的地址族(AF_INET)、Socket類型(sock stream-TCPsockets)和協議類型(IPPROTO_TCP)。
此時調用dss_connect()與遠程服務器建立一個活動連接。函數立即返回DS_EWOULDBLOCK,表示操作需要暫停。應用程序通過dss_async_select()函數,設定SCB的相應位,指定當前待處理事件(如DS_WRITE_EVENT),以支持Socket庫的無阻塞函數調用,并及時得到異步事件通知。應用程序得知異步事件發生,立即調用dss_getnextevent()函數檢查何種事件發生,并清除SCB隊列中的相應位。
應用Huntel Technologies推出的CDMA 800 MHz標準無線模塊HT6025-A,在CDMA操作系統自身提供的Socket API函數基礎上進行網絡應用層程序開發,實現了CDMA無線模塊的TCP/IP協議的AT命令支持。用戶只需通過模塊串口輸入/輸出相應的AT命令即可實現TCP/IP協議的調用,以達到連接Internet的目的。系統采用CDMA系統支持的分組數據業務(Packet DataSetvice)進行數據傳輸。分組數據業務充分共享無線信道,采用IP Over PPP實現數據終端的高速、遠程接入,以數據流量計費,傳輸速率可達14.4 kbps,是收發隨機突發數據的最佳選擇。圖2為CDMA模塊內部任務調用及軟件結構功能圖。
◇SIO:串口輸入/輸出。
◇Call Mgmt:其他呼叫處理和用戶接口。
◇TX:CDMA數據發送。
◇RX:CDMA數據接收。
◇DS:數據業務控制,數據模式控制及AT命令執行任務塊。
◇PS:協議服務任務塊(EIA-617/TCP/IP/PPP)。
用戶通過串口輸入AT命令,如AT$TCPOPEN=ip,pott(用于發起TCP連接),DS任務塊對命令進行處理,包括命令解析、排列等待、查找AT命令表、函數執行和響應返回等過程。DS任務塊中函數執行將調用PS任務塊,真正實現鏈路的連接、數據打包、路由及可靠傳輸。
2 測試及應用
將CDMA無線模塊通過串口與PC機相連,PC機上運行串口調試程序,向模塊發送AT命令,與聯通給定的服務器IP地址建立連接,應用其測試端口,發送數據并接收回顯數據。
測試命令包括:設置TCP/IP用戶賬號AT$TCPUID=account;設置TCP/IP用戶密碼AT$TCP-PASSWD=password;TCP/IP撥號ATD=dial;建立TCP/IP連接AT$TCPOPEN=ip,port;發送數據AT$TCPDATA=data(允許一次最多發送512個字符);關閉TCP/IP Socket AT$TCPCLOSE;退出TCP/IP應用AT$TCPEXIT。各命令返回正常,數據收發正確無誤,有數據流量情況下永不斷線,沒有數據流量一定時間后,網絡端關閉該連接。數據收發測試結果如圖3所示。
在這一實現的基礎上,設計開發了一套數據采集傳輸系統以證實其可靠性。應用系統由單片機、CDMA無線模塊、電源部分和外部接口部分構成,如圖4所示。
電源部分為單片機和CDMA模塊提供合適的電源。外部接口部分包括天線接口和UIM(User Identity Module)卡座接口。
單片機實現數據采集、格式化、CDMA無線模塊初始化,發送AT命令建立TCP連接并發送數據等功能。單片機提供多種傳感器接口,如TTL電平串口、RS232標準串口以及自定義輸入電壓范圍的多路模擬輸入通道,可接入多種類型的模擬或數字傳感器。考慮到移動設備的低功耗要求,選用TI公司的MSP430單片機。MSP430單片機是一種性能優良的Flash超低功耗單片機,燒寫調試方便,工作電壓3.3V,支持超低功耗工作模式,非常適合置于野外。其內置的多路A/D轉換模塊提供了方便的模擬傳感器接口;內置的兩路UART模塊提供了數字傳感器接口。MSP430通過UARTl直接與CDMA無線模塊相連接,實現對CDMA無線模塊的初始化和數據收發功能;同時UART2擴展MAX232標準串口與其他嵌入式系統或PC機進行數據交換。
CDMA無線模塊將數據通過CDMA網絡無線傳送到基站。基站的互通功能單元IWF(Inter Working Function)完成無線數據業務和IP接入網的互通,實現傳感器數據的Interrlet接入。Internet另一端的服務器對數據進行接收,可對來自傳感器的物理量進行處理,如數據分析、數據融合、過程判斷和數據顯示等。
結論
互聯網和移動通信的交叉呈現出強大的生命力,已成為當今全球信息產業的熱點,它將引發人們工作和生活的巨大變革,有廣闊的發展前景。本文完成了CDMA無線終端TCP/IP應用層的Socket編程,實現了CDMA移動終端的Internet接入,給出了實際應用系統原理及實現方法,對內嵌TCP/IP協議的CDMA無線終端的其他應用有重要的參考價值。
內嵌TCP/IP協議的CDMA無線終端通過CDMA網絡和Internet達到數據傳輸的目的,適合于開發基于無線應用的產品,如監控、調度、車載、遙控、遠程測量、定位和導航等。這些系統開機就能自動附著到CDMA網絡上,與數據中心實時在線進行數據通信、高速傳輸,可靠性強,具有良好的應用前景。文中提出的CDMA無線通信模塊,提供了TCP/IP協議接口的AT命令,結合命令控制模塊,適用于主機沒有TCP/TP協議,但使用串口通信的情況(如單片機數據采集傳輸系統等)。
1 CDMA無線終端TCP/IP協議實現
Internet的實質是實現異種網絡的互聯,它充分利用各種通信子網的數據傳輸能力,通過在依賴于通信子網的通信模塊和應用程序之間插入新的協議軟件來保證應用程序之間的互操作性。因特網的協議族稱為“TCP/IP協議族”,其中包含了為數眾多的協議,如應用層協議,傳輸層TCP、UDP協議,網絡層的IP、ARP、ICMP協議以及數據鏈路層協議等。無線網絡與互聯網整合,信息包通過無線媒介無縫地傳輸至基于IP協議的網絡,在傳輸前,數據包必須根據TCP/IP協議封裝。在CDMA網絡中也采取了IP協議進行傳輸。CDMA系統中的TCP/IP協議結構自下而上分別為數據鏈路層(包括接口層和鏈接層)、網絡層和傳輸及應用層。
1.1 數據鏈路層原理
CDMA系統中的數據鏈路層比較特別,涉及無線鏈路的鏈接及控制。鏈路層由RLP和PPP組成,數據業務的傳遞主要由無線鏈路協議(RLP)完成。RLP子層是上層應用與底層物理連接之間的重要接口,位于MAC層的復用子層之上。其主要作用是利用物理層的前向和反向信道為上層應用提供面向比特流的傳輸,而并不考慮上層應用的具體幀格式,根據復用子層的要求形成RLP幀。RLP子層中質量保證措施的核心思想是一種盡力而為的傳輸機制(Best Effort Delivery),即RLP子層依據協議規定的參數盡可能地保證數據的正確傳輸。
PPP包括串行鏈路上封裝數據報的方法;建立、配置和測試數據鏈路鏈接的LCP協議(Link contr01 Protocol);建立和配置網絡層協議的IPCP協議(IP ControlProtocol);鑒權協議PAP/CHAP。為了在點到點鏈路上建立通信,PPP鏈路的一端必須在建立階段首先發LCP包配置數據鏈路。在鏈路建立后,進入網絡層協議之前,PPP提供一個可選擇的鑒權階段。默認情況下,鑒權不是強制的。如果希望進行鏈路的鑒權,則實現者必須在建立階段指明鑒權協議配置選項。
1.2 應用層實現
傳統的網絡編程都調用Socket API函數連接低層傳輸協議。常用的網絡編程接口包括BSD(Berkeley Software Distributlon)Sockets和Winsock TM。為了支持網絡應用,CDMA系統自身提供了完整的Socket API函數。建立一個TCP連接過程如圖1所示。
應用程序調用dss_open_netlib()函數打開網絡庫,使數據業務狀態機進入Socket模式,同時定義網絡回調函數和Socket回調函數,返回應用ID號。應用程序通過網絡回調函數得知低層網絡是否可用,Socket回調函數描述Socket事件。
應用程序調用dss_pppopen()函數建立網絡子系統,包括傳輸信道的建立和連接。網絡子系統建立后,網絡回調函數通知應用程序當前網絡可用。
圖1中省略了一個步驟,即低層協議建鏈后,調用dss_socket()函數創建一個新的套接字用來進行網絡通信。返回一個描述符代表這個套接字;同時進行SCB(SocketControl Block)及相關數據結構的初始化,指定協議使用的地址族(AF_INET)、Socket類型(sock stream-TCPsockets)和協議類型(IPPROTO_TCP)。
此時調用dss_connect()與遠程服務器建立一個活動連接。函數立即返回DS_EWOULDBLOCK,表示操作需要暫停。應用程序通過dss_async_select()函數,設定SCB的相應位,指定當前待處理事件(如DS_WRITE_EVENT),以支持Socket庫的無阻塞函數調用,并及時得到異步事件通知。應用程序得知異步事件發生,立即調用dss_getnextevent()函數檢查何種事件發生,并清除SCB隊列中的相應位。
應用Huntel Technologies推出的CDMA 800 MHz標準無線模塊HT6025-A,在CDMA操作系統自身提供的Socket API函數基礎上進行網絡應用層程序開發,實現了CDMA無線模塊的TCP/IP協議的AT命令支持。用戶只需通過模塊串口輸入/輸出相應的AT命令即可實現TCP/IP協議的調用,以達到連接Internet的目的。系統采用CDMA系統支持的分組數據業務(Packet DataSetvice)進行數據傳輸。分組數據業務充分共享無線信道,采用IP Over PPP實現數據終端的高速、遠程接入,以數據流量計費,傳輸速率可達14.4 kbps,是收發隨機突發數據的最佳選擇。圖2為CDMA模塊內部任務調用及軟件結構功能圖。
◇SIO:串口輸入/輸出。
◇Call Mgmt:其他呼叫處理和用戶接口。
◇TX:CDMA數據發送。
◇RX:CDMA數據接收。
◇DS:數據業務控制,數據模式控制及AT命令執行任務塊。
◇PS:協議服務任務塊(EIA-617/TCP/IP/PPP)。
用戶通過串口輸入AT命令,如AT$TCPOPEN=ip,pott(用于發起TCP連接),DS任務塊對命令進行處理,包括命令解析、排列等待、查找AT命令表、函數執行和響應返回等過程。DS任務塊中函數執行將調用PS任務塊,真正實現鏈路的連接、數據打包、路由及可靠傳輸。
2 測試及應用
將CDMA無線模塊通過串口與PC機相連,PC機上運行串口調試程序,向模塊發送AT命令,與聯通給定的服務器IP地址建立連接,應用其測試端口,發送數據并接收回顯數據。
測試命令包括:設置TCP/IP用戶賬號AT$TCPUID=account;設置TCP/IP用戶密碼AT$TCP-PASSWD=password;TCP/IP撥號ATD=dial;建立TCP/IP連接AT$TCPOPEN=ip,port;發送數據AT$TCPDATA=data(允許一次最多發送512個字符);關閉TCP/IP Socket AT$TCPCLOSE;退出TCP/IP應用AT$TCPEXIT。各命令返回正常,數據收發正確無誤,有數據流量情況下永不斷線,沒有數據流量一定時間后,網絡端關閉該連接。數據收發測試結果如圖3所示。
在這一實現的基礎上,設計開發了一套數據采集傳輸系統以證實其可靠性。應用系統由單片機、CDMA無線模塊、電源部分和外部接口部分構成,如圖4所示。
電源部分為單片機和CDMA模塊提供合適的電源。外部接口部分包括天線接口和UIM(User Identity Module)卡座接口。
單片機實現數據采集、格式化、CDMA無線模塊初始化,發送AT命令建立TCP連接并發送數據等功能。單片機提供多種傳感器接口,如TTL電平串口、RS232標準串口以及自定義輸入電壓范圍的多路模擬輸入通道,可接入多種類型的模擬或數字傳感器。考慮到移動設備的低功耗要求,選用TI公司的MSP430單片機。MSP430單片機是一種性能優良的Flash超低功耗單片機,燒寫調試方便,工作電壓3.3V,支持超低功耗工作模式,非常適合置于野外。其內置的多路A/D轉換模塊提供了方便的模擬傳感器接口;內置的兩路UART模塊提供了數字傳感器接口。MSP430通過UARTl直接與CDMA無線模塊相連接,實現對CDMA無線模塊的初始化和數據收發功能;同時UART2擴展MAX232標準串口與其他嵌入式系統或PC機進行數據交換。
CDMA無線模塊將數據通過CDMA網絡無線傳送到基站。基站的互通功能單元IWF(Inter Working Function)完成無線數據業務和IP接入網的互通,實現傳感器數據的Interrlet接入。Internet另一端的服務器對數據進行接收,可對來自傳感器的物理量進行處理,如數據分析、數據融合、過程判斷和數據顯示等。
結論
互聯網和移動通信的交叉呈現出強大的生命力,已成為當今全球信息產業的熱點,它將引發人們工作和生活的巨大變革,有廣闊的發展前景。本文完成了CDMA無線終端TCP/IP應用層的Socket編程,實現了CDMA移動終端的Internet接入,給出了實際應用系統原理及實現方法,對內嵌TCP/IP協議的CDMA無線終端的其他應用有重要的參考價值。
評論
查看更多