MATLAB® & Simulink®與物聯網應用

物聯網(Internet of Things, IoT)展現了大量的嵌入式裝置(物品)都連接到網際網路的新趨勢。而這些被連接的設備與人、其他設備進行溝通後,透過感測器將資料儲存雲端上,藉由其上的運算資源進行資料處理及分析,而獲得重要的資訊及見解。隨著雲端運算能力的日益平民化讓人們負擔得起,再加上設備間的連接程度愈來愈強,使得物聯網蓬勃發展。

MATLAB與Simulink可以協助你設計、原型化、和佈署物聯網(Internet of Things,IoT)應用,像是環境監控、健康監測、車聯網、智慧工廠、預測性維護(predictive maintenance)、營運最佳化、監督控制等等。

  • 利用內建與雲端儲存、關聯式和非關聯式資料庫、REST、MQTT、OPC UA等協定之介面進行串流資料及封存資料的取得和前處理。
  • 快速利用數千個經過驗證的資料清理、機器學習與深度學習、電腦視覺、控制、最佳化等預建函式來設計客製化IoT解析和演算法。運用現成的函式、將其客製化、或建立自有的函式。
  • 開發資料導向和以物理為基礎的模型,來了解、控制、優化你的連結物件及建立數位分身(digital twin)。
  • 自動產生以C/C++、HDL、PLC、GPU、.NET、或Java®為基礎的軟體元件,將MATLAB解析和Simulink模型佈署至資產、邊緣裝置、或雲端。
  • MATLAB解析搭配使用雲端資料整合平台-ThingSpeak™,進行小型物聯網系統的原型化和最佳化。

MATLAB與Simulink於物聯網應用

串流和封存資料的取得

你可以使用MATLAB搭配大量資料來開發演算法。MATLAB可支援多種資料來源,包含雲端儲存服務(如AWS S3、Azure Blob)、OPC UA、RESTful web services、和資料庫等,帶有時間標記(time-stamped)的資料及無特定結構的資料。將MATLAB與MQTT等消息代理(message brokers)和Kafka等串流協定整合,幫助你處理從連結的資產進來的即時資料。

你可以輕鬆地利用內建功能來執行資料清理,進行缺漏或錯誤值的替換、資料的平滑處理、使用不同時間標記格式資料的校準等等。

開發解析、控制、最佳化演算法

MATLAB提供了數千組支援IoT應用開發的函式,包含預測性維護、訊號與影像處理、回饋與監督控制、最佳化、以及機器學習。 利用MATLAB開發演算法會比使用傳統編程語言快速許多。你可以使用現成的函式,再加以客製化,或者建立自己的函式。相同的演算法可以在多種常見的IoT情境運作,包含串流資料或大量資料。

建立資料導向和以物理學為基礎的數位分身

透過MATLAB,你可以使用從工業智慧機台收集來的資料定義出一個模型。你也可以透過Simulink,以多領域建模工具來建立一個以物理為基礎的模型。資料導向及以物理為基礎的模型都可以依從運作中資產的資料進行調整,來做為一個數位分身。這些數位分身可以用來進行預測、what-if模擬、異常偵測、故障隔離等等。

自動佈署至邊緣裝置、資產、或雲端

MATLAB程式或Simulink模型可以被佈署在邊緣裝置、資產、或雲端。針對桌上型電腦、伺服器、用戶端、或雲端應用,你可以產生執行階段的可執行檔、元件、或容器。至於嵌入式裝置,你可以自動地產生C/C++、Verilog/VHDL、或GPU程式碼。然後,不論是執行在資產或邊緣裝置上的時間關鍵(time-critical)控制迴圈演算法,或者是在用戶端資料中心或雲端的大量資料解析演算法,你都可以在演算法被執行的IoT環境上進行探索和測試。

ThingSpeak:嵌入MATLAB的IoT平台

ThingSpeak是一個容易使用的雲端IoT平台,適用於原型化或小規模的產品應用。利用MQTT或REST APIs將資料從你的裝置傳送到ThingSpeak。立即從連接到網路的網路瀏覽器查看你的即時資料的視覺化結果。透過ThingSpeak,你可以安排MATLAB程式碼在新的資料送達時執行即時的分析及視覺化。你也可以透過建立警示和觸發反應來對資料採取行動。