英創(chuàng)公司從10年前的DOS系統(tǒng)工控板卡開(kāi)始,就為客戶提供了GPRS/CDMA技術(shù)應(yīng)用方案,很多成功的應(yīng)用案例到目前還在現(xiàn)場(chǎng)正常運(yùn)行。后來(lái)英創(chuàng)工控板卡支持了WinCE嵌入式操作系統(tǒng),WinCE支持RAS(Remote Access Service)即“遠(yuǎn)程訪問(wèn)服務(wù)”,它允許用戶從運(yùn)程地點(diǎn)將自己的設(shè)備連到一個(gè)本地計(jì)算機(jī)網(wǎng)絡(luò),一旦建立了連接,就可以像與局域網(wǎng)中的計(jì)算機(jī)一樣進(jìn)行通訊了。所以WinCE工控主板加上GPRS設(shè)備,就可以通過(guò)RAS撥號(hào)直接接入到Internet。
WinCE系統(tǒng)中撥號(hào)之前需要先建立一個(gè)撥號(hào)連接,撥號(hào)連接需要根據(jù)外接的2G/3G/4G設(shè)備配置合適的參數(shù),我們目前支持的常用2G/3G/4G模塊如下:
2G/3G/4G模塊 | 支持運(yùn)營(yíng)商 |
中興ME3630(4G全網(wǎng)通) | 支持移動(dòng)/電信/聯(lián)通 4G SIM卡 |
華為ME909s-821(4G全網(wǎng)通) | 支持移動(dòng)/電信/聯(lián)通 4G SIM卡 |
華為MU709s-2(3G WCDMA) | 支持聯(lián)通3G/4G SIM卡 |
中興MC2716(3G CDMA2000) | 支持電信3G/4G SIM卡 |
移遠(yuǎn)M35(GPRS) | 支持移動(dòng)2G/3G/4G SIM卡 |
撥號(hào)連接建立之后,在進(jìn)行撥號(hào)時(shí)還需要設(shè)置撥號(hào)相關(guān)的參數(shù),比如撥號(hào)號(hào)碼、用戶名、密碼等。而對(duì)于現(xiàn)在常用的4G全網(wǎng)通模塊,一個(gè)模塊可以支持移動(dòng)/聯(lián)通/電信三大運(yùn)營(yíng)商的SIM卡,使用不同運(yùn)營(yíng)商的SIM卡撥號(hào)相關(guān)參數(shù)又有所不同。因此建立一個(gè)撥號(hào)連接并成功撥號(hào)的前提,是需要用戶對(duì)所使用的無(wú)線模塊及所連接的移動(dòng)網(wǎng)絡(luò)有一定了解,并且正確的配置各項(xiàng)參數(shù)。
為了讓用戶更容易的使用2G/3G/4G設(shè)備,減少上述繁瑣的配置過(guò)程,我們實(shí)現(xiàn)了一個(gè)2G/3G/4G通用撥號(hào)程序GRasDial.exe,GRasDial程序會(huì)自動(dòng)識(shí)別系統(tǒng)中連接的2G/3G/4G模塊型號(hào),自動(dòng)建立撥號(hào)連接,自動(dòng)判斷所使用的運(yùn)營(yíng)商網(wǎng)絡(luò),然后自動(dòng)撥號(hào)上網(wǎng)。用戶在每次啟動(dòng)GRasDial程序時(shí),如果不帶任何參數(shù)程序總是進(jìn)行撥號(hào),如果先前已經(jīng)連接則GRasDial自動(dòng)掛斷重?fù)堋RasDial撥號(hào)成功后會(huì)一直監(jiān)視當(dāng)前連接狀態(tài),如果連接斷開(kāi)自動(dòng)得撥。GRasDial程序還支持通過(guò)帶入?yún)?shù)實(shí)現(xiàn)網(wǎng)絡(luò)較時(shí)、查看連接狀態(tài)等功能。GRasDial支持如下參數(shù):
\>GRasDial 自動(dòng)撥號(hào)上網(wǎng)
\>GRasDial /disconnect 斷開(kāi)撥號(hào)連接
\>GRasDial /timesync 自動(dòng)撥號(hào)上網(wǎng),并通過(guò)GSM網(wǎng)絡(luò)同步本地時(shí)間(僅程序啟動(dòng)過(guò)程中同步一次)
\>GRasDial /stats 統(tǒng)計(jì)系統(tǒng)中所有連接的狀態(tài)
\>GRasDial /? 查看函數(shù)使用說(shuō)明
注意GRasDial與后面的參數(shù)之間通過(guò)空格分隔,下圖是執(zhí)行GRasDial /timesync時(shí),程序輸出的信息,從這些信息可以看到當(dāng)前使用的模塊是中興的ME3630,使用聯(lián)通SIM卡,注冊(cè)的網(wǎng)絡(luò)為聯(lián)通4G(LTE),因?yàn)槭褂昧?timesync參數(shù),所以同步了本地時(shí)間,倒數(shù)第二行顯示的Connected表明已經(jīng)成功撥號(hào)上網(wǎng),最后一行會(huì)每隔1秒鐘更新一次網(wǎng)絡(luò)狀態(tài)(網(wǎng)絡(luò)類型及信號(hào)強(qiáng)度)。
撥號(hào)成功后,可以通過(guò)ipconfig命令查看當(dāng)前modem的IP地址,例如下圖的[HUAWEI EM770W MODEM]
如果用戶不希望GRasDial在屏幕上顯示撥號(hào)過(guò)程,則可以通過(guò)/d或-d參數(shù)禁止信息輸出,此時(shí)可通過(guò)系統(tǒng)的COM_DBG口了解撥號(hào)過(guò)程。比如:
\>GRasDial /timesync /d
如何添加用戶專用APN
GRasDial程序使用一組缺省的配置參數(shù)撥號(hào)上網(wǎng),用戶可通過(guò)以下兩種方法設(shè)置專用的撥號(hào)號(hào)碼、用戶名、密碼以及專用APN等參數(shù)。
方法1、使用專屬配置文件
1、用戶可將所用WinCE主板“我的設(shè)備\windows”目錄下的GconnectionEntry.txt復(fù)制到電腦上,設(shè)置自己專用的撥號(hào)號(hào)碼、用戶名、密碼和APN。下圖中將APN設(shè)置為CMNET,增加的配置參數(shù)為:+CDGCONT=1,"IP","CMNET"
2、檢查系統(tǒng)中是否已經(jīng)存在Gconnection連接,如果已經(jīng)存在則需要先刪除。
3、將修改后的配置文件GconnectionEntry.txt和GRasDial.exe程序放在所使用主板的同一目錄中,再次運(yùn)行GRasDial程序時(shí),程序會(huì)自動(dòng)使用新的參數(shù)建立撥號(hào)連接并撥號(hào)。
方法2、修改源代碼
我們提供了GRasDial程序的源代碼,用戶可以參考源碼將自動(dòng)撥號(hào)功能融入到自己的應(yīng)用程序中。GRasDial缺省的撥號(hào)參數(shù)定義在modelinfo.h文件的MODEM結(jié)構(gòu)體中,用戶可以在MODEM結(jié)構(gòu)中增加自己專用的撥號(hào)號(hào)碼、用戶名、密碼和專用APN。下面例子是使用ZTE ME3630 Modem進(jìn)行4G撥號(hào)(LTE),設(shè)置專用APN為CMNET。
const MODEM_INFO MODEM[] = {
// 在此添加用戶專有撥號(hào)號(hào)碼、用戶名、密碼、APN
//modem name network types phone number user name password attach command
{TEXT("ZTE ME3630 Modem "), "LTE", TEXT("*99#"), TEXT(""), TEXT(""), TEXT("+CDGCONT=1,\"IP\",\"CMNET\"")},
// 缺省的撥號(hào)配置如下
//modem name network types phone number user name password attach command
{TEXT("ZTE ME3630 Modem"), "LTE", TEXT("*99#"), TEXT(""), TEXT(""), TEXT("")},
{TEXT("Huawei EM770W Modem"), "LTE", TEXT("*99#"), TEXT(""), TEXT(""), TEXT("")},
{TEXT("Huawei EM770W Modem"), "WCDMA",TEXT("*99#"), TEXT(""), TEXT(""), TEXT("")},
{TEXT("QUECTEL M35 Modem"), "GSM", TEXT("*99#"), TEXT(""), TEXT(""), TEXT("")},
{0},
};
成都英創(chuàng)信息技術(shù)有限公司 028-8618 0660