如今,物聯(lián)網(wǎng)(IoT)中的設(shè)備具有各種不同的形狀和尺寸。它們可以是智能手表、智能電視、制造中的智能機器人以及用于天氣監(jiān)測的智能傳感器。這些設(shè)備中的每一個都有不同的要求。例如,出于安全原因,制造中的許多設(shè)備需要實時響應。如果一個人距離活動機器太近,該機器應該配備物聯(lián)網(wǎng)傳感器來檢測接近程度并能夠立即關(guān)閉。
另一方面,對于許多其他智能設(shè)備來說,立即響應并不重要。您的應用程序和智能恒溫器告訴恒溫器加熱房間之間的兩秒延遲可能不是一個大問題,因為加熱設(shè)備需要一些時間才能將房間加熱到正確的溫度。
由于物聯(lián)網(wǎng)如此多樣化,因此在物聯(lián)網(wǎng)設(shè)備開發(fā)方面不存在“一刀切”的情況。您需要針對不同的物聯(lián)網(wǎng)用例使用不同的物聯(lián)網(wǎng)開發(fā)套件。以下指南介紹了如何準確找到實現(xiàn)物聯(lián)網(wǎng)開發(fā)目標所需的內(nèi)容。
只需幾分鐘即可在您的PC上設(shè)置模擬物聯(lián)網(wǎng)視頻監(jiān)控設(shè)備。
我們的全棧演示讓您可以訪問Nabto平臺,因此您現(xiàn)在就可以嘗試。我們專注于安全、低延遲的P2P連接。獲取演示應用程序來嘗試一下。
使用您的物聯(lián)網(wǎng)開發(fā)套件
開發(fā)新的物聯(lián)網(wǎng)實施并對其進行原型設(shè)計是一個微妙的過程。設(shè)備可能需要極其復雜或相對簡單,具體取決于多種因素,包括設(shè)備需要收集或處理多少數(shù)據(jù)、是否需要實時響應、是否優(yōu)先考慮低功耗等。
IoT開發(fā)套件提供硬件和固件,可讓您創(chuàng)建原型甚至最小可行產(chǎn)品(MVP)。最小可行產(chǎn)品本質(zhì)上是產(chǎn)品的基本原型版本,開發(fā)人員可以將其商業(yè)推廣到小型客戶群以進行測試。
當您推出MVP并嘗試根據(jù)測試用戶反饋更改產(chǎn)品時,新迭代的事情可能會變得復雜且昂貴,除非您有一種簡單的方法來訪問和更改固件。固件本質(zhì)上是內(nèi)置基本軟件的硬件。無需下載額外的軟件即可執(zhí)行基本功能,因為這些功能已經(jīng)是設(shè)備的一部分。
固件的問題在于它并不總是那么容易改變。例如,您的計算機具有某些功能,您作為用戶無法通過典型的操作系統(tǒng)界面進行更改,例如計算機開機和關(guān)機的方式。這些功能是內(nèi)置的。為了更改這些功能,您必須更改固件本身。
這就是物聯(lián)網(wǎng)開發(fā)人員使用開發(fā)板的原因。開發(fā)板公開了固件和基本硬件,可以輕松訪問輸入/輸出(I/O)引腳以進行定制。I/O引腳是小硬件,是許多電路板和微控制器單元(MCU)的一部分。這些引腳還允許硬件發(fā)送和接收信號并實現(xiàn)用戶交互。您可以使用它們構(gòu)建自定義電路,并根據(jù)您所考慮的產(chǎn)品規(guī)格開發(fā)或更改固件。
在物聯(lián)網(wǎng)開發(fā)板上尋找什么
雖然您可能會發(fā)現(xiàn)為您的項目找到合適的物聯(lián)網(wǎng)開發(fā)板是一項艱巨的任務,但在開源硬件(OSHW)領(lǐng)域有一些不錯的選擇。您可能已經(jīng)非常熟悉開源軟件的概念,開源軟件是公開源代碼的軟件,以便任何人都可以在個人項目中使用或修改該代碼。同樣,開源硬件是指任何人都可以使用和修改的公共硬件設(shè)計。Arduino平臺就是一個例子,它提供開源電路板設(shè)計。
無論物聯(lián)網(wǎng)開發(fā)板是否開源,它都需要具備一定的能力來對不同的功能或產(chǎn)品進行原型設(shè)計。首先,任何此類板都需要支持不同類型連接的硬件。例如,某些開發(fā)板僅支持Wi-Fi或藍牙連接,需要輔助硬件來支持蜂窩連接,而其他開發(fā)板則內(nèi)置蜂窩連接。
不同的板卡還可能支持不同的通信協(xié)議,就像允許物聯(lián)網(wǎng)設(shè)備在物聯(lián)網(wǎng)系統(tǒng)中相互通信的不同語言一樣。IoT的一種常見通信協(xié)議是集成電路間(I2C)協(xié)議,該協(xié)議以數(shù)據(jù)包的形式短距離發(fā)送數(shù)據(jù)。另一種是串行外設(shè)接口(SPI)協(xié)議,它也用于短距離通信,但連續(xù)發(fā)送數(shù)據(jù)流而不是發(fā)送數(shù)據(jù)包。其他需要考慮的功能是特定設(shè)備可能有多少個USB或HDMI端口用于視頻流。
不同的主板也可能有不同的功率規(guī)格。有些板允許脈寬調(diào)制(PWM),而另一些則不允許。PWM意味著快速打開和關(guān)閉電源,而不是提供連續(xù)的電源流。可調(diào)光LED燈使用PWM,因為LED燈實際上會以很高的速度閃爍,在打開位置花費更多時間以保持強照明,并在關(guān)閉位置花費更多時間以保持較暗的照明。因此,使用PWM的物聯(lián)網(wǎng)設(shè)備的一個例子是智能可調(diào)光燈,您可以通過智能手機或智能手表進行控制。
最后,您需要知道是否需要微控制器(MCU)還是微處理器(MPU),因為兩者具有不同的功能和用例。
微控制器(MCU)與微處理器(MPU)
值得花一些時間來了解物聯(lián)網(wǎng)開發(fā)新手可能經(jīng)?;煜母拍?,即微控制器單元(MCU)與微處理器(也稱為微處理單元(MPU))之間的區(qū)別。
微處理器板將包括一個完整的操作系統(tǒng),通常是Linux,在到達時嵌入。MPU比MCU需要更多的功率。另外,大多數(shù)人使用MPU來執(zhí)行多個同時執(zhí)行的任務,或者更確切地說,任務切換發(fā)生得如此之快,以至于看起來像是多個任務同時運行。MPU有很多功能,因此它們并不總是適合實時任務,因為有太多變量無法確保每次的準確性和可靠性。它們的成本也比MCU更高。
MCU通常運行實時操作系統(tǒng)(RTOS),這是一種非常輕量級、簡化的操作系統(tǒng)版本,一次只能執(zhí)行一項任務或進程。優(yōu)點是專注于一項任務可以讓MCU實現(xiàn)實時響應。這在制造業(yè)中可能是必要的,例如,如果機器發(fā)生火災并且機器需要故障保護裝置在檢測到火災后幾毫秒內(nèi)關(guān)閉。用戶可以為RTOS任務分配不同的優(yōu)先級,以便最重要的故障保護始終優(yōu)先于更普通的通信。MCU內(nèi)的調(diào)度程序?qū)⒘⒓辞袚Q到該任務并放棄MCU當前正在執(zhí)行的任何任務,以實現(xiàn)更快的響應。
一些帶有MCU的最小開發(fā)板(尤其是Arduino的開發(fā)板)根本沒有操作系統(tǒng)。相反,他們運行一個簡單的滴答調(diào)度程序,可以重復執(zhí)行簡單的任務。
由于MCU成本較低,因此通常用于資源有限的物聯(lián)網(wǎng)環(huán)境和應用程序。換句話說,如果您需要在一個大型工廠內(nèi)使用1000個物聯(lián)網(wǎng)設(shè)備來進行監(jiān)控和安全,那么您不需要昂貴、耗能的設(shè)備。您需要相對便宜、節(jié)能的MCU。
拋開這種區(qū)別,讓我們來看看今年流通的優(yōu)秀物聯(lián)網(wǎng)板。
2024年排名前10的IoT主板有哪些?
在選擇最適合物聯(lián)網(wǎng)的微控制器或最好的微處理器板時,有很多選擇。我們將了解一些最重要的規(guī)格,包括處理器類型、內(nèi)存、多媒體和連接功能、電源規(guī)格、輸入和低級I/O,即可用于輸入和輸出的通信系統(tǒng)和協(xié)議傳入和傳出設(shè)備的信息。
1.Giant板
Giant板是一款單板計算機(SBC),這意味著它擁有計算機在單個類似電路板的布置上運行所需的一切,包括MPU。另外,該設(shè)計是開源的,這意味著您可以進行任何所需的修改。詳細信息如下:
Microchip SAMA5D2 ARM Cortex-A5處理器
微型SD卡
128MB內(nèi)存
USB支持
SPI、UART和I2C通信支持
電池和USB電源
6個12位ADC通道
嵌入式Linux操作系統(tǒng)
2.Arduino MKR GSM
Arduino MKR GSM 1400非常適合原型設(shè)計設(shè)備,因為Arduino具有開箱即用的2G和3G蜂窩連接。
低功耗ARM Cortex-M0 SAMD21處理器
嵌入式C和C++
2G和3G連接
兼容SIM卡
電池或USB供電
Tick調(diào)度程序而不是操作系統(tǒng)
3.樹莓派Raspberry Pi 4 Model B
Raspberry Pi 4 Model B是愛好者、程序員甚至游戲玩家熟知的SBC。該模型還擁有物聯(lián)網(wǎng)設(shè)計原型可能需要的一切。
博通BCM2711處理器
高達8GB SDRAM
無線互聯(lián)網(wǎng)、藍牙、低功耗藍牙(BLE)和以太網(wǎng)連接
USB連接
HDMI和顯示端口
音視頻端口
以太網(wǎng)供電功能
樹莓派操作系統(tǒng)
4.Arduino Uno REV3
Arduino Uno REV3是一款帶有MCU的輕量級開發(fā)板。還有一個更小、更基本的版本,稱為Arduino Uno Mini Limited,盡管兩者的大多數(shù)功能保持相同。
ATmega328P微控制器
32KB閃存
2KB靜態(tài)存儲器
14個數(shù)字I/O引腳
脈寬調(diào)制功能
USB-C連接
滴答調(diào)度程序或RTOS兼容
5.BeagleBoneGreen網(wǎng)關(guān)
BeagleBone是另一個相對知名的IoT開發(fā)板資源。Green Gateway擁有穩(wěn)定的RAM、閃存和1GHz處理器,因此就能耗和處理而言,該主板更偏重。
AM3358 1GHz ARM Cortex-A8處理器
512MB內(nèi)存
4GB閃存
支持微型USB
UB2.0支持
以太網(wǎng)連接
無線網(wǎng)絡連接
DC插孔電源輸入
Linux操作系統(tǒng)
6.ESP32-網(wǎng)關(guān)
Olimex的ESP32網(wǎng)關(guān)開發(fā)板具有一系列不同的IoT連接選項。它也非常適合工業(yè)環(huán)境和可穿戴設(shè)備,因為該板具有較寬的安全工作溫度范圍和非常低的功耗要求。
Xtensa雙核32位LX6 MPU
BLE、以太網(wǎng)和WiFi連接
超低功耗
34個I/O引腳
10個觸摸傳感器
脈寬調(diào)制功能
加密硬件加速
與各種RTOS選項兼容
7.Jetson Nano
Jetson Nano的能耗和處理能力較高。該板可以同時運行多個應用程序。開發(fā)人員經(jīng)常將其用于機器學習和人工智能項目。
四核ARM A57 CPU
2GB內(nèi)存
MicroSD存儲
以太網(wǎng)和無線互聯(lián)網(wǎng)連接
相機連接器
40個I/O引腳
HDMI連接
USB連接
I2C、I2S、SPI和UART連接
Linux操作系統(tǒng)
8.UdooBolt V8
Bolt V8是Udoo開發(fā)的SBC,但其處理能力約為典型PC的水平。該開發(fā)板具有足夠的通用性,幾乎可以滿足您可能想到的任何物聯(lián)網(wǎng)項目,除了那些資源特別有限的物聯(lián)網(wǎng)設(shè)備。
AMD銳龍V165B處理器
Microchip ATmega32U4協(xié)處理器
高達32GB的RAM
AMD Radeon Vega 8 GPU
兩個 M.2 插槽
以太網(wǎng)連接
無線網(wǎng)絡連接
USB連接
HDMI 和 DisplayPort 連接
Linux 或 Windows 操作系統(tǒng)
9.Particle Boron
即使按照典型物聯(lián)網(wǎng)開發(fā)板的標準,硼顆粒也很小。盡管如此,它仍然具有許多使其非常適合原型設(shè)計的功能。
STM32 ARM Cortex M3 微控制器
1MB閃存
128KB內(nèi)存
無線網(wǎng)絡連接
實時操作系統(tǒng)
18 個 I/O 引腳
職業(yè)安全衛(wèi)生工作
使用Device OS,一種特定于Particle的低級基本操作系統(tǒng)
10.BeagleBone Black
BeagleBone Black 有點不尋常,因為它包含觸摸屏。除此之外,Black board 是標準的開源開發(fā)板設(shè)計。
AM3358 ARM Cortex-A8 處理器
微型SD卡
SDIO、I2C、SPI、UART 和 PWM 功能
HDMI 和 LCD 以及音頻功能
以太網(wǎng)、Wi-Fi、BLE 和 USB 連接
MicroUSB電源
Linux操作系統(tǒng)
Nabto 的物聯(lián)網(wǎng)開發(fā)板演示解決方案
物聯(lián)網(wǎng)開發(fā)并不容易,但有了這些開發(fā)板,從業(yè)余愛好者到專業(yè)物聯(lián)網(wǎng)開發(fā)人員的任何人都可以開始測試不同的物聯(lián)網(wǎng)應用程序并制作原型。無論您選擇哪種開發(fā)板,您都需要一種方法來測試不同用例的原型的連接性。Nabto Edge Embedded SDK提供遠程連接并且是開源的。該 SDK 與基于 Linux 的設(shè)備兼容,因此它非常適合上述許多選項。
此外,使用 Nabto Cloud Console,您可以開始使用計算機和智能手機測試物聯(lián)網(wǎng)應用程序和概念。Nabto 為此提供了演示應用程序,包括物聯(lián)網(wǎng)視頻和恒溫器應用程序。
總而言之,Nabto 非常適合與任何物聯(lián)網(wǎng)設(shè)備或原型建立直接且安全的遠程連接。