創(chuàng)客和專業(yè)工程師都越來越多地采用無線連接來增強項目功能,并將其連接到物聯(lián)網(wǎng) (IoT)。此類項目所用的單板計算機 (SBC) 通常集成了藍牙和 Wi-Fi,但對于更遠的距離,蜂窩接口是一種很好的替代方案。
盡管蜂窩調(diào)制解調(diào)器能夠提供更遠的距離,但缺點是增加了項目的復雜性、尺寸、成本和功耗,而且還必須滿足授權頻譜分配方面的監(jiān)管法規(guī)。
本文探討將蜂窩模塊用于創(chuàng)客項目無線連接的優(yōu)勢,并介紹在實施過程中出現(xiàn)的硬件、軟件和法規(guī)方面的挑戰(zhàn)。
之后,本文還給出了解決方案,幫助克服創(chuàng)客和設計人員在利用基于蜂窩的遠距離射頻連接時所面臨的挑戰(zhàn)。
蜂窩連接的優(yōu)勢(和缺點)
當今的低功耗藍牙和 Wi-Fi 技術雖然也在醞釀變化,但目前還不支持直接連接到物聯(lián)網(wǎng)。相比之下,智能手機則可以與低功耗藍牙、Wi-Fi 和(蜂窩)物聯(lián)網(wǎng)進行互操作。因此,可將其用作創(chuàng)客項目 SBC 等以無線方式連接的設備與云之間的網(wǎng)關。類似地,Wi-Fi 路由器和電纜調(diào)制解調(diào)器也能構(gòu)成適用于支持 Wi-Fi 的 SBC 的網(wǎng)關(圖 1)。
圖 1: 低功耗藍牙(之前稱為智能藍牙)和 Wi-Fi 等無線技術需要路由器或網(wǎng)關才能訪問互聯(lián)網(wǎng),因而限制了傳感器的移動性和距離。蜂窩模塊可直接連接到其他支持 IP 的設備,因此不需要路由器或網(wǎng)關。(圖片來源: Nordic Semiconductor)
對許多創(chuàng)客應用而言,通過網(wǎng)關進行的物聯(lián)網(wǎng)連接是一種令人滿意的解決方案。但如果傳感器移到網(wǎng)關的無線范圍以外(對于低功耗藍牙和 Wi-Fi,超過 30 到 100 米之外),連接將會中斷。這一限制導致創(chuàng)客無法開發(fā)置于遠程位置或持續(xù)移動的項目。蜂窩模塊提供了一種解決方案。
蜂窩模塊并非什么新事物。圍繞該技術已發(fā)展出一個提供機對機 (M2M) 應用的龐大產(chǎn)業(yè)。例如,處于遠程位置的自動售貨機通常通過蜂窩鏈路連接到公司的計算機。鑒于從頭設計蜂窩調(diào)制解調(diào)器的難度極大,該解決方案以經(jīng)過測試、驗證和認證的即插即用模塊的形式提供。
蜂窩模塊制造商現(xiàn)在提供專門面向創(chuàng)客的產(chǎn)品,能夠兼容 Microchip Technology、Arduino 和 Adafruit 等供應商提供的常用 SBC。利用蜂窩模塊,創(chuàng)客項目 SBC 無需使用網(wǎng)關,便可以將數(shù)據(jù)直接發(fā)送到另一臺通過互聯(lián)網(wǎng)連接的遠程設備,例如創(chuàng)客的智能手機(當其遠離 SBC 時)或云服務器。而且,蜂窩調(diào)制解調(diào)器還能提供遠達數(shù)十千米的距離,從而將無線創(chuàng)客項目的范圍擴大至遠遠超過家庭范圍。而且,使用蜂窩調(diào)制解調(diào)器,在將無線設備添加到 LAN 時不需要極不方便的密碼輸入過程。
蜂窩通信使用授權頻率。盡管存在一定的使用費用,但優(yōu)點是這些頻率得到了嚴格的控制,相對而言避免了困擾 2.4 Ghz 等免授權頻段的擁塞問題和相關干擾。獲取網(wǎng)絡訪問權限的過程與手機采用的過程相同;用戶需要訂閱本地運營商的服務。之后,他們將獲得一個用戶標識模塊 (SIM),插入此模塊時將會進行驗證,從而根據(jù)合同條款實現(xiàn)一定數(shù)量的數(shù)據(jù)上傳和下載。
除了許可證費用之外,蜂窩連接還存在一些其他缺點。相對而言,這些模塊的體積和重量較大,價格比較昂貴,功耗也遠大于低功耗藍牙和 Wi-Fi。而且,直接連接到蜂窩網(wǎng)絡要比連接到智能手機或路由器更為復雜。
此外,商用領域存在多種蜂窩技術(例如 GSM、GPRS 和 CDMA),每種技術又有多代(2G、2.5G、3G 和 4G),全球范圍內(nèi)有數(shù)十個蜂窩頻帶。因此,針對特定地點選擇蜂窩模塊需要慎之又慎。
請注意,2G 模塊的價格通常最低,但需要注意的是,運營商正在逐步淘汰這種較舊的技術,雖然這一過程可能需要多年的時間。
蜂窩模塊在創(chuàng)客項目中隨處可見
有了蜂窩模塊,現(xiàn)在創(chuàng)客需要做的只是確保模塊的物理接口與目標 SBC 的物理接口匹配,簽訂運營商合同,插入 SIM,然后選擇相應的天線。
蜂窩模塊制造商爭先恐后地進入迅猛發(fā)展的創(chuàng)客市場,并提供通過針座引腳或電纜直接連接常用 SBC 的單元。例如,MikroElektronika 在其 Click Board 系列提供了大量蜂窩模塊,可通過機械連接器直接連接 Microchip 的 Curiosity SBC。
這些 SBC 使用 Microchip 的 8 位、16 位或 32 位 PIC 微控制器,并包含帶 USB 接口的集成編程器/調(diào)試器;mTouch 按鈕、模擬電位計、開關和 RGB LED;最關鍵的是,支持 MikroElektronika 的 mikroBUS 接口(圖 2)。
這些 SBC 可使用 Microchip 的 MPLAB X 集成開發(fā)環(huán)境 (IDE) 進行編程,而 8 位和 16 位微控制器版本則可使用 MPLAB Xpress IDE 進行編程,后者適合不太熟悉 PIC 微控制器的創(chuàng)客。
圖 2: Microchip 的 Curiosity SBC 使用 mikroBUS 接口,因而能夠輕松地連接一個 2.5G GSM/GPRS Click Board 蜂窩模塊。(圖片來源: Microchip Technology)
MikroElektronika 的 GSM 4 click 通過針座引腳連接到 Curiosity SBC,并直接從該 SBC 獲取 3.3 伏或 5 伏電壓。該蜂窩模塊基于 u-blox SARA-G3 系列 2.5G GSM/GPRS 調(diào)制解調(diào)器,該調(diào)制解調(diào)器集成了一個射頻收發(fā)器和一個功率放大器以實現(xiàn)更遠的應用距離(圖 3)。SARA-G3 專為 M2M 應用而設計,因此非常適合只需要跨蜂窩物聯(lián)網(wǎng)發(fā)送較少傳感器數(shù)據(jù)的創(chuàng)客。
該蜂窩調(diào)制解調(diào)器包含 Ipv4 和 Ipv6 通信協(xié)議,因此可與互聯(lián)網(wǎng)上任何其他支持 IP 協(xié)議的設備進行互操作。四頻版本的 SARA-G3 已經(jīng)面市,可以在北美、南美和中美地區(qū)所用的 850 和 1900 Mhz 頻段,以及歐洲、非洲、中東和亞洲地區(qū)所用的 900 和 1800 Mhz 頻段運行。
圖 3: MikroElektronika 的 GSM 4 click 基于此處顯示的 u-blox SARA-G3 調(diào)制解調(diào)器。該調(diào)制解調(diào)器集成了功率放大器 (PA) 以擴大應用范圍。(圖片來源:u-blox)
除了發(fā)送和接收數(shù)據(jù)之外,GSM 4 click 還能對電話呼叫或信息做出響應和反應。它包含一個天線連接器(但不含天線)和一個 SIM 卡插座。與 PIC 微控制器的通信是通過 UART 連接或 USB 端口進行的。
MikroElektronika 針對其 Click Board 產(chǎn)品提供了 mikroC IDE。其中包括 Visual TFT,一個“所見即所得”的圖形用戶界面設計工具,和一個功能完備的 C 編譯器。
對于熟悉使用 UART 連接、通過 3 到 5 伏電源運行的 Arduino SBC 的創(chuàng)客而言,Adafruit 的 FONA 808 蜂窩 + GPS 分線提供了一種很好的選擇(但它也能與幾乎所有微控制器配合使用)。該模塊是一個具備 GPS 和 GPRS 數(shù)據(jù)發(fā)送與接收功能的四頻 (850/900/1800/1900 Mhz) GSM 2G 無線電。例如,必須將一個 16 針針座焊接到分線引腳孔,才能將該模塊連接到 Arduino SBC。
圖 4: Adafruit 的 FONA 808 非常適合與 Arduino SBC 配合使用。與其他蜂窩調(diào)制解調(diào)器一樣,它也需要 SIM 卡和天線。(圖片來源:Adafruit)
如果開發(fā)人員想要利用 3G 的速度和帶寬優(yōu)勢,SparkFun Electronics 的 Particle Electron 3G 套件不失為一個很好的選擇。該套件提供兩個版本:一個適用于 850/1900 Mhz 工作頻段,另一個適用于 900/1800 Mhz 工作頻段。
套件中不僅包含蜂窩模塊(另一個 u-blox SARA 供電單元),還集成了一個 STMicroelectronics STM32 ARM? Cortex?-M3 微控制器,如果愿意,可以獨立于 SBC 工作。Electron 套件附帶了用于設備編程的 Particle IDE 和云平臺。Particle IDE 類似于 Arduino 開發(fā)平臺。
與一些其他面向創(chuàng)客應用的蜂窩模塊不同,Particle Electron 套件非常完整,附帶了 SIM 卡、為期 3 個月的 1 MB/月的數(shù)據(jù)計劃、2000 mAh 鋰電池(該器件也可通過外部電源供電)、天線,以及用于原型開發(fā)的試驗板。
與蜂窩調(diào)制解調(diào)器通信
連接蜂窩模塊并收發(fā)數(shù)據(jù)需要一定的編碼技能,但這些技能不會超過熟悉 Arduino 等 IDE 的創(chuàng)客為微控制器編程所需的技能范圍。
SBC 通常與使用 UART 串行鏈路的蜂窩模塊通信。AT 命令是控制蜂窩調(diào)制解調(diào)器的標準方法。該命令包含一系列短文本字符串,可以將這些字符串進行組合,以生成撥號、掛斷和更改連接參數(shù)等操作。
有兩種類型的 AT 命令: 基本命令是不以“+”開頭的命令。“D”(撥號)、“A”(應答)、“H”(勾控制)和“O”(恢復在線數(shù)據(jù)狀態(tài))都是基本命令的示例(列表 1)。
void gsm4_init( void )
{
engine_init( gsm4_evn_default );
at_cmd_save( "RING", 1000, NULL, NULL, NULL, gsm4_ev_ring );
at_cmd( "AT" );
at_cmd( "AT+CSCS="GSM"" );
at_cmd( "AT+CMGF=1" );
}
列表 1: 此代碼示例在測試例程中使用 AT 命令拒絕蜂窩模塊所接到的通話。(代碼來源: MikroElektronika)
擴展命令是以“+”開頭的命令。例如,“+CMGS”(發(fā)送 SMS 信息)、“+CMGL”(列出 SMS 信息)和“+CMGR”(讀取 SMS 信息)。請注意,GSM 僅使用擴展命令。
“最終結(jié)果”代碼標記 AT 命令響應的結(jié)束。它表明 GSM 模塊已完成命令行的執(zhí)行?!癘K”和“ERROR”是兩個經(jīng)常用到的最終結(jié)果代碼?!癘K”代碼表示命令行已成功執(zhí)行?!癊RROR”代碼表示在蜂窩模塊嘗試執(zhí)行命令行時出現(xiàn)錯誤。發(fā)生錯誤后,蜂窩模塊將不會處理命令行字符串中剩余的 AT 命令。
AT 命令的語法因模塊制造商而異。此外,模塊可能只能響應 AT 命令的子集,但專為無線應用設計的蜂窩模塊對 AT 命令的支持通常要優(yōu)于普通手機。創(chuàng)客應該從各個模塊制造商的 AT 命令參考指南中尋求建議,而且這些指南還能告知創(chuàng)客如何對 AT 命令進行格式化,以及如何解釋蜂窩模塊的響應。
但每個調(diào)制解調(diào)器都能響應四條基本 AT 命令:
“設置”命令 [At+<參數(shù)>=<值>] 用于存儲值。
例如, AT+CREG=1 // Set Command
“提取”命令 [AT+<參數(shù)>?] 用于讀取存儲的值。
例如,AT+CREG? // Get Command
測試命令 [At+<命令>=?] 用于確定支持的值范圍。
例如,AT+CREG=? // Test Command
執(zhí)行命令 [At+<參數(shù)>] 用于調(diào)用蜂窩調(diào)制解調(diào)器的特定功能。
例如,AT+CREG // Execution Command
其他通用(和實用)AT 命令包括:
-
移動網(wǎng)絡注冊狀態(tài) (AT+CREG)
-
無線電信號強度 (AT+CSQ)
-
電池電量水平和電池充電狀態(tài) (AT+CBC)
-
與遠程調(diào)制解調(diào)器建立數(shù)據(jù)連接(ATA、ATD 等)
-
執(zhí)行安全相關的任務,例如更改密碼 (AT+CPWD)
-
獲取或更改蜂窩模塊的配置。例如,更改 GSM 網(wǎng)絡 (AT+COPS) 或無線電鏈路協(xié)議參數(shù) (AT+CRLP)
AT 命令的發(fā)送和接收均由特定的 SBC、IDE 和所選的編程語言通過串行通信鏈路實現(xiàn)。蜂窩模塊不知道串行鏈路的另一端是什么,而只是響應跨鏈路發(fā)送的 AT 命令。(類似地,SBC 也不知道其連接的是蜂窩模塊)。
蜂窩模塊通常具有多個 UART I/O,其中一些具有專用功能。例如 GSM 4 click 的引腳 14 是專門的數(shù)據(jù)發(fā)送輸出,而引腳 13 是專門的數(shù)據(jù)接收(圖 5)。
圖 5: 蜂窩調(diào)制解調(diào)器通常采用多個 UART I/O,其中一些具有特定功能。(表格來源: MikroElektronika)
例如,當采用 Curiosity SBC 和 GSM 4 click 蜂窩模塊時,借助 AT 命令的不可知性,開發(fā)人員可以采用 Microchip MPLAB X、MPLAB Xpress 或 MikroElektronika mikroC IDE。在用戶從 GitHub 存儲庫下載 Adafruit FONA 庫并將其移到 Arduino 庫文件夾后,F(xiàn)ONA 808 便可以使用 Arduino IDE 進行編程。
在制造商的開源代碼庫中通常可以找到幾乎所有蜂窩模塊操作的 AT 命令。MikroElektronika 的 AT 命令可以在 libstock.mikroe.com 找到,而 Adafruit 的 AT 命令則位于 GitHub 存儲庫中。其他 AT 命令源來自蜂窩調(diào)制解調(diào)器的制造商。例如,u-blox 撰寫了一篇應用說明,提供了幾乎涵蓋所有使用場景的 AT 命令示例(參考資料 1),而 Adafruit 則提供了一本列有 SIM Tech AT 命令的手冊。
總結(jié)
蜂窩模塊為所有場景下需要物聯(lián)網(wǎng)連接的創(chuàng)客項目提供了“插件式”解決方案(前提是項目在蜂窩基站范圍以內(nèi))。市場上有一系列成熟的 2G、2.5G 和 3G 蜂窩模塊能夠與流行的創(chuàng)客 SBC 完美匹配,而硬件考慮范圍僅限于選擇和匹配相應的天線、機械連接器及電池。由于蜂窩網(wǎng)絡需要授權,因此還需要使用 SIM 卡并簽訂數(shù)據(jù)合同。
-
低功耗
+關注
關注
10文章
2419瀏覽量
103909 -
智能藍牙
+關注
關注
9文章
130瀏覽量
32816 -
蜂窩模塊
+關注
關注
0文章
6瀏覽量
3430
發(fā)布評論請先 登錄
相關推薦
![](https://file1.elecfans.com/web2/M00/FB/BB/wKgaomaOZ4uAMVKbAAIE2RLHyig836.png)
如何修改藍牙模塊名稱顯示為中文 #藍牙模塊# #串口通訊 #物聯(lián)網(wǎng)# 數(shù)據(jù)透傳# 無線連接# 模塊# 藍牙
【FireBLE申請】與智能電動車的無線連接
盤點創(chuàng)客空間哪家強
DF創(chuàng)客社區(qū)“創(chuàng)客大賽“第三季 不正經(jīng)創(chuàng)客比賽
PLC無線連接、操控
測試無線連接性能成為汽車研發(fā)制造的關鍵
汽車研發(fā)制造的關鍵是測試無線連接性
無線連接性能測試是汽車研發(fā)制造關鍵
2.4G無線連接和藍牙的區(qū)別是什么
使用蜂窩模塊連接到物聯(lián)網(wǎng)制造項目
![使用<b class='flag-5'>蜂窩</b><b class='flag-5'>模塊</b><b class='flag-5'>連接</b>到物聯(lián)網(wǎng)制造<b class='flag-5'>項目</b>](https://file.elecfans.com/web2/M00/49/F4/pYYBAGKhvH2ADmLTAAA3TpAIgfU511.png)
評論