色偷偷偷久久伊人大杳蕉,色爽交视频免费观看,欧美扒开腿做爽爽爽a片,欧美孕交alscan巨交xxx,日日碰狠狠躁久久躁蜜桃

x
x

PLC利用函數(shù)塊連接MQTT訂閱消息(一)

發(fā)布時間:2023-2-6 17:28    發(fā)布者:成都億佰特

在億佰特介紹了西門子PLC如何通過函數(shù)塊連接MQTT服務(wù)器和發(fā)布消息,本文為大家介紹如何通過函數(shù)與函數(shù)塊實現(xiàn)MQTT云消息的訂閱,直接切入重點。

一、飛燕物聯(lián)網(wǎng)平臺配置

這里的配置和上一篇發(fā)布的配置基本相同,唯一的不同在于將數(shù)據(jù)的讀寫屬性修改為支持讀寫,其余部分根據(jù)實際情況配置不同參數(shù),這里我已控制關(guān)照為例說明,如下圖所示:


二、服務(wù)器下發(fā)數(shù)據(jù)格式分析

先從阿里云官方資料中獲取Alink JSON通訊協(xié)議的格式,選擇“消息通訊”選項下的“設(shè)備屬性、事件、服務(wù)”;


找到“設(shè)置設(shè)備屬性”展開“Topic和數(shù)據(jù)格式”的介紹;


下發(fā)數(shù)據(jù)格式如下:{"id":"123","version":"1.0","params":{"temperature":30.5},"method":"thing.service.property.set"}

對于PLC來說首先需要找到關(guān)鍵詞“"temperature":”是否存在,若存在再將其后的數(shù)據(jù)字符串提取出來,再將該字符串轉(zhuǎn)換為數(shù)據(jù)用于修改PLC變量實現(xiàn)控制功能;

這里查找關(guān)鍵詞就會用到上傳提到的“FIND” 在字符串中查找字符的功能塊,先看官方提供的使用例程,這個功能塊會將第一次找到的字符位置輸出,否則輸出為零。


這里我們主要使用輸出的位置信息結(jié)合“LEN”(計算判斷字符串長度)和“SUB”(判斷字符串長度-1個字符長度)功能塊(用于計算相對偏移)來定位數(shù)據(jù)點位置,在使用“DELFTE”功能塊刪除多余的無效字符,方便后續(xù)提取有效數(shù)據(jù);


注意這里傳入的需要刪除的字符串?dāng)?shù)量并非“FIND”功能塊輸出的位置值,而是該位置值加上相對偏移,這樣我們就得到了一個從有效數(shù)據(jù)開始的字符串,接下來可以利用“STRG_VAL”功能塊遇到不可轉(zhuǎn)換字符停止轉(zhuǎn)換的特性轉(zhuǎn)換為數(shù)值(JSON中數(shù)據(jù)的結(jié)束一般有‘,’與‘}’來結(jié)束該數(shù)據(jù),字符型數(shù)據(jù)除外),還是以官方的例程說明:


剛才在飛燕平臺配置的數(shù)據(jù)類型都是整數(shù),因此需要修改為下圖實列,若為浮點數(shù)還需要單獨配置,方法和整形一致僅轉(zhuǎn)換類型需要調(diào)整。


經(jīng)過上述步驟就可以將數(shù)值型變量的值提取出來,不過上述方法不支持提取字符數(shù)據(jù),需要提取字符型數(shù)據(jù)的可以參照該方法實現(xiàn),字符型數(shù)據(jù)就需要判斷數(shù)據(jù)的長度在通過”MID”功能塊提取,字符串的結(jié)束字符為‘"’,通過“FIND”功能塊便能或者字符長度。

轉(zhuǎn)載文章來源:https://www.ebyte.com/new-view-info.html?id=2205


本文地址:http://m.54549.cn/thread-810088-1-1.html     【打印本頁】

本站部分文章為轉(zhuǎn)載或網(wǎng)友發(fā)布,目的在于傳遞和分享信息,并不代表本網(wǎng)贊同其觀點和對其真實性負責(zé);文章版權(quán)歸原作者及原出處所有,如涉及作品內(nèi)容、版權(quán)和其它問題,我們將根據(jù)著作權(quán)人的要求,第一時間更正或刪除。
您需要登錄后才可以發(fā)表評論 登錄 | 立即注冊

關(guān)于我們  -  服務(wù)條款  -  使用指南  -  站點地圖  -  友情鏈接  -  聯(lián)系我們
電子工程網(wǎng) © 版權(quán)所有   京ICP備16069177號 | 京公網(wǎng)安備11010502021702
快速回復(fù) 返回頂部 返回列表