EdgeX foundry樹莓派搭建與MQTT通訊

參考資料

使用容器方法管理和搭建EdgeX:https://docs.edgexfoundry.org/1.2/getting-started/quick-start/

什麼是微服務,爲什麼要用微服務:https://www.zhihu.com/question/65502802

什麼是MQTT,一個最簡單的demo是什麼:https://www.jianshu.com/p/14b34e537fd4

針對樹莓派的EdgeX是如何的?這裏使用的是樹莓派4B,將之前的系統重新刷成64位arm,便於使用。(EdgeX對64位arm支持度較高)

 

樹莓派Ubuntu mate20系統安裝

1 選擇合適的鏡像燒錄工具

https://www.raspberrypi.org/downloads/

 

 

 2 下載鏡像

https://ubuntu-mate.org/download/arm64/focal/

 

 

3 使用鏡像燒錄工具打開鏡像,插入SD卡,開始燒錄。(鏡像下載比較慢,使用第二步的離線迅雷下載完以後直接燒錄比較好)

4 給樹莓派接上鼠標和鍵盤和重要的顯示器,上電後根據屏幕引導進行安裝即可。該系統對HDMI的輸出電流可能不夠,導致屏幕不亮。而從樹莓派直接引電增強HDMI信號則仍然不夠,需要外部引電(建議3A)。

5 排錯的方法:插上網口看網口燈是都閃爍,閃爍則系統安裝正確。樹莓派3B的系統直接裝到4B上是不行的,系統安裝不正確。

 

Docker安裝

按照其中提供的兩個鏈接進行安裝。https://docs.edgexfoundry.org/1.2/getting-started/quick-start/

其中第二個:docker-compose安裝,如果不正確,則使用pip3進行安裝(和python3有關)。

pip3可以通過apt-get 方式安裝。

pip3 install docker-compose

安裝完後通過以下命令查看

docker-compose --version

  

MQTT測試注意事項

如下鏈接中提供了MQTT的測試demo。其過程是通過重複向HiveMQ發佈一個主題爲EdgeXEvents,內容爲一個json數據。

然後客戶端也通過HiveMQ連接到broker.mqttdashboard.com,訂閱EdgeXEvents主題,則可以獲取到json數據。

https://docs.edgexfoundry.org/1.2/getting-started/quick-start/

有兩點要注意:提供的HiveMQ網站,其js腳本中的JQuery可能會由於外網的原因無法加載,導致$符號無法識別,這時則需要更換網絡,以正確加載和連接。

另外是在docker-compose.yml文件中添加的一段配置,其中

image: edgexfoundry/docker-app-service-configurable:1.1.0

應該改爲

image: edgexfoundry/docker-app-service-configurable-arm64:1.1.0

  

非必要項目

radis安裝可能不必要。

sudo apt-get install redis-server

安裝完以後查看狀態,停掉服務,否則和EdgeX的Dokcer radis佔用端口

service redis-server status
service redis-server stop

 

判斷服務是否正常的方法是

docker-compose ps

如果某個進程卡掉,則該進程配置不正確,如mqtt

 

docker服務需要啓動纔可運行EdgeX的容器

service docker start

  

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章