1.BCCA協議
解析:BCCA全稱Beone Communication Certificate Authentication,是物聯網硬件接入愛普適萬物互聯智慧操作系統[ APCOS]的標準協議體系。可解決物聯網設備種類繁多、協議繁多、應用開發對接成本高昂、效率低下、系統之間的信息孤島、各類數據利用率低的痛點。BCCA協議技術實現了計算、傳輸、邏輯關係標準化,硬件無障礙溝通,解決了大規模應用層硬件產品快速接入的關鍵難題。
2.物聯網智能網關
解析:物聯網平臺爲設備提供安全可靠的連接通信能力,向下連接海量設備,支撐設備數據採集上雲;向上提供雲端API,服務端通過調用雲端API將指令下發至設備端,實現遠程控制。物聯網平臺也提供了其它增值能力,比如設備管理、規則引擎、數據分析、邊緣計算等,爲各類IoT場景和行業開發者賦能。
3.物聯網關
解析:物聯網關是一種工業互聯網數據遠傳終端,通過串口或者以太網連接現場設備PLC、OPC、變頻器、儀表等,將數據通過以太網、GPRS、3G、4G、WIFI、ZigBee等方式,走MQTT、HTTP等協議傳輸到遠端的服務器中,完成數據監控、本地邏輯控制、遠程升級、故障報警等功能。已廣泛用在智慧城市、電力、光伏、智能製造、智慧農業等各種智慧建設中。智能物聯網關是物聯網系統核心入口,選擇功能強大、穩定可靠、易於擴展的物聯網關是物聯網項目實施的關鍵環節之一。
4.EdgeX Foundry
解析:EdgeX Foundry的主旨是簡化和標準化工業物聯網邊緣計算的架構,創建一個圍繞互操作性組件的生態系統。
5.EdgeX Foundry架構
解析:
[1]南側指的是所有物聯網器件,以及與這些設備,傳感器或其他物聯網器件直接通信的邊緣網絡。
[2]北側指的是雲計算中心或企業系統,以及與雲中心通信的網絡部分。
[3]南側是數據產生源,而北側收集來自南側的數據,並對數據進行存儲、聚合和分析。
[4]EdgeX Foundry位於南側和北側兩者之間,由一系列微服務組成,而這些微服務可以被分成4個服務層和2個底層增強系統服務。微服務之間通過一套通用的Restful應用程序編程接口進行通信。
6.EdgeX Foundry應用領域
解析:主要在工業物聯網,如智能工廠、智能交通等場景,以及其它需要接入多種傳感器和設備的場景。
7.EdgeX Foundry相關術語
解析:
[1]BACNET:樓宇自動化與控制網絡
[2]BLE:低功耗藍牙
[3]MQTT:消息隊列遙測傳輸
[4]OPC-UA:OPC統一框架
[5]REST:RESTful應用程序編程接口
[6]SDK:軟件開發工具包
[7]SNMP:簡單網絡管理協議
[8]VIRTUAL:虛擬設備
8.EdgeX Foundry服務層
解析:
[1]設備服務層:設備服務層主要提供設備接入的功能,由多個設備服務組成。每個設備服務是用戶根據設備服務軟件開發工具包[SDK]編寫生成的一個微服務。EdgeX Foundry使用設備文件去定義一個南側設備的相關信息,包括源數據格式,存儲在EdgeX Foundry中的數據格式以及對該設備的操作命令等信息。設備服務將來自設備的數據進行格式轉換,併發送至核心服務層。目前,EdgeX Foundry提供了消息隊列遙測傳輸協議[MQTT]、ModBus串行通信協議和低功耗藍牙協議[BLE]等多種接入方式。
[2]核心服務層:核心服務層由核心數據、命令、元數據、註冊表和配置4個微服務組件組成。核心數據微服務存儲和管理來自南側設備的數據、元數據微服務存儲和管理設備的元數據。命令微服務將定義在設備文件的操作命令轉換成通用的API,提供給用戶以監測控制該設備。註冊表和配置微服務存儲設備服務的相關信息。
[3]支持服務層:支持服務層提供邊緣分析和智能服務,以規則引擎微服務爲例,允許用戶設定一些規則,當檢測到數據滿足規則要求時,將觸發一個特定的操作。例如規則引擎可監測控制溫度傳感器,當檢測到溫度低於25度時,觸發對空調的關閉操作。
[4]導出服務層:導出服務層用於將數據傳輸至雲計算中心,由客戶端註冊和分發等微服務組件組成。前者記錄已註冊的後端系統的相關信息,後者將對應數據從核心服務層導出至指定客戶端。
[5]系統管理和安全服務:系統管理服務提供安裝、升級、啓動、停止和監測控制EdgeX Foundry微服務的功能。安全服務用以保障來自設備的數據和對設備的操作安全。
9.Portainer
解析:Portainer是Docker的圖形化管理工具,提供狀態顯示面板、應用模板快速部署、容器鏡像網絡數據卷的基本操作[包括上傳下載鏡像,創建容器等操作]、事件日誌顯示、容器控制檯操作、Swarm集羣和服務等集中管理和操作、登錄用戶管理和控制等功能。功能十分全面,基本能滿足中小型單位對容器管理的全部需求。
10.Portainer應用場景
解析:使用Docker或Docker Swarm,沒有容器管理工具場景,比如開發環境、測試環境和暫時不想使用k8s的場景的生產環境。
11.SpringCloud與Dubbo區別
解析:
Dubbo | SpringCloud | |
---|---|---|
服務註冊中心 | Zookeeper | Spring Cloud Netfix Eureka |
服務調用方式 | RPC | REST API |
服務監控 | Dubbo-monitor | Spring Boot Admin |
熔斷器 | 不完善 | Spring Cloud Netflix Hystrix |
服務網關 | 無 | Spring Cloud Netflix Zuul |
分佈式配置 | 無 | Spring Cloud Config |
服務跟蹤 | 無 | Spring Cloud Sleuth |
數據流 | 無 | Spring Cloud Stream |
批量任務 | 無 | Spring Cloud Task |
信息總線 | 無 | Spring Cloud Bus |
12.容器技術
解析:Docker作爲一個開源的應用容器引擎,被多個邊緣計算平臺使用以提供靈活的應用部署方式。Kubernetes是一個對容器化應用進行自動化部署、擴展和管理的開源項目,可用於邊緣計算平臺中以提供可靠和可擴展的容器編排。
13.docker ps -a
解析:顯示所有的容器,包括未運行的。
14.GrovePi+
解析:GrovePi+是一個樹莓派擴展板,可以將Grove Sensors連接到Raspberry Pi。
15.Arduino
解析:Arduino是一款便捷靈活、方便上手的開源電子原型平臺。包含硬件[各種型號的Arduino板]和軟件[ArduinoIDE]。由一個歐洲開發團隊於2005年冬季開發。
16.docker load
解析:導入使用docker save命令導出的鏡像。
17.docker-compose start命令
解析:啓動運行某個服務的所有容器。
18.docker-compose stop命令
解析:停止運行一個服務的所有容器。
19.go mod download
解析:可以下載所需要的依賴,但是依賴並不是下載到GOPATH中,而是GOPATH/pkg/mod中,多個項目可以共享緩存的module。
20.go clean -modcache
解析:清除緩存。
21.go mod edit
解析:提供了命令版編輯go.mod的功能,例如go mod edit -fmt go.mod會格式化go.mod。
22.go mod graph
解析:把模塊之間的依賴圖顯示出來。
23.go mod init
解析:初始化模塊,例如把原本dep管理的依賴關係轉換過來。
24.go mod tidy
解析:增加缺失的包,移除沒用的包。
25.go mod vendor
解析:把依賴拷貝到vendor/目錄下。
參考文獻:
[1]Portainer documentation:https://portainer.readthedocs.io/en/stable/
[2]edgexfoundry golang 1.0.0快速跑起來:https://blog.csdn.net/leslie_chung88/article/details/93854928