導航:首頁 > 配伺服器 > 阿里雲mqtt隧道伺服器

阿里雲mqtt隧道伺服器

發布時間:2025-08-11 08:55:23

⑴ 在雲伺服器上搭建了mqtt,為什麼手機連接不上mqtt,要怎麼做才能連接上求求大神幫忙

MQTT協議是廣泛應用的物聯網協議,使用測試MQTT協議需要MQTT的代理。有兩種方法使用MQTT服務,一是租用現成的MQTT伺服器,如阿里雲,網路雲,華為雲等公用的雲平台提供的MQTT服務,使用公用的MQTT伺服器的好處是省事,但如果僅僅用於測試學習還需要注冊帳號,靈活性差些,有的平台還需要付費。另一方法是自己使用開源的MQTT組件來搭建。
MQTT伺服器非常多,如apache的ActiveMQ,emtqqd,HiveMQ,Emitter,Mosquitto,Moquette等等。
這里介紹的是用輕量級的mosquitto開源項目來搭建一個屬於自己的MQTT伺服器。
第一步:需要安裝一台linux主機,這不多介紹,可以使用真機安裝也可以使用虛擬機安裝。如果僅僅是自己測試使用都可以。
第二步:下載mosquitto需要的依賴
sudo apt-get install libssl-devsudo apt-get install uuid-devsudo apt-get install cmake

第三步:下載mosquitto並解壓,現在mosquitto官網最新的版本是1.5.1
tar xzvf mosquitto-1.5.1.tar.gz
第四步:編譯
cd mosquitto-1.5.1/
make
make install
第五步:啟動mosquitto
./mosquitto -v
1535473957: mosquitto version 1.5.1 starting
1535473957: Using default config.
1535473957: Opening ipv4 listen socket on port 1883.
1535473957: Opening ipv6 listen socket on port 1883.
這時候mosquitto就會以默認的參數啟動。如果需要帶配置文件可以修改配置文件mosquitto.conf,
啟動時候加上參數 -c,
./mosquitto -c mosquitto.conf
可以看到,mosquitto監聽的埠為1883.
這時候我們的MQTT伺服器就搭建好了。可找一個mqtt客戶端來測試一下。
先發布一個主題「home/garden/fountain/2」
內容是「hello world」
這時候在mosquitto會列印出下面的log
535474247: New connection from 192.168.1.105 on port 1883.
1535474247: New client connected from 192.168.1.105 as MQTT_FX_Client (c1, k60).
1535474247: No will message specified.
1535474247: Sending CONNACK to MQTT_FX_Client (0, 0)
1535474307: Received PINGREQ from MQTT_FX_Client
1535474307: Sending PINGRESP to MQTT_FX_Client
1535474339: Received PUBLISH from MQTT_FX_Client (d0, q0, r0, m0, 'home/garden/fountain/2', ... (12 bytes))
1535474367: Received PINGREQ from MQTT_FX_Client
1535474367: Sending PINGRESP to MQTT_FX_Client

訂閱主題「home/garden/fountain/2」

可以看到收到了自己發布的消息。
用wireshark抓包
可以看到抓到了一個MQTT的publish的報文。

⑵ PLC利用函數塊連接MQTT伺服器

MQTT協議因其低協議消耗、數據安全性高等優點,在物聯網領域廣泛應用。各大伺服器運營商如阿里雲、騰訊、OneNET等,都提供了降低雲開發難度的可視化開發工具,使得前端工程師能快速實現功能,無需從零開發界面。近年來,PLC廠家也開始提供MQTT函數功能塊,使得設備通過TCP客戶端連接MQTT伺服器成為可能,只需設備能發送16進制透明數據,通過數據組合實現與MQTT伺服器的連接。

MQTT報文格式常用包括:CONNECT、PUBLISH和SUBSCRIBE等。例如,CONNECT報文包含客戶端ID、用戶名、密碼等信息,PUBLISH報文則包含發布地址和用戶數據,而SUBSCRIBE報文包含訂閱地址和服務等級。

在使用PLC連接MQTT伺服器時,首先需要搭建博圖開發環境,熟悉西門子SLC編程語言,利用函數塊連接MQTT伺服器,通常可從西門子全球技術支持中心下載MQTT連接實例。在「國際版」下載實例中,詳細介紹了如何利用「SIMATIC控制器作為MQTT客戶端」的過程。在配置PLC連接時,需注意PLC的參數配置和網路連接,確保PLC能正確訪問MQTT伺服器。

若沒有實際的PLC設備,可通過「SIMATIC S7-PLCSIM Advanced V4.0」高級模擬器實現S7-1500PLC的模擬運行,進行配置虛擬網卡、下載程序等步驟。

在雲平台設備創建部分,以阿里雲飛燕平台為例,需要准備雲平台賬號,創建新項目並配置產品。在「設備調試」中選擇開發的模組,跳過「功能定義」與「人機交互」,進入「設備調試」,創建設備認證參數,查詢MQTT3.1.1連接所需的地址、埠、Client ID、UserName、Password等信息。

最後,配置MqttDB塊參數,用於連接阿里雲MQTT伺服器。需要修改MqttDB塊中的參數,包括「qdnAddress」和「post」,並填寫對應的三要素。完成參數配置後,點擊在線監控數據,將「connect」設置為「true」,函數塊自動連接MQTT伺服器,可監控連接狀態。

閱讀全文

與阿里雲mqtt隧道伺服器相關的資料

熱點內容
ava程序員考級 瀏覽:894
linuxc語言編程教程 瀏覽:683
伺服器社區什麼意思 瀏覽:747
linux進入桌面命令 瀏覽:579
effectivec中文pdf 瀏覽:667
立即數定址物理地址演算法 瀏覽:867
linux鏡像伺服器 瀏覽:316
伺服器和雲主機騰訊 瀏覽:257
老闆給脫單程序員放年假 瀏覽:629
日本政治pdf 瀏覽:701
bfp的pdf 瀏覽:24
安卓如何更新成鴻蒙 瀏覽:496
演算法rmse一般多少 瀏覽:135
光遇安卓國服怎麼換號oppo 瀏覽:340
煊赫門和十二釵哪個好app 瀏覽:199
c8051f單片機 瀏覽:973
程序員內向的多嗎 瀏覽:83
在線學編程的網站 瀏覽:509
java編程菱形 瀏覽:622
國考真題pdf 瀏覽:376