chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內(nèi)不再提示

【Z站推薦】EsDA MPC-ZC1 應用——串口服務器(二)

ZLG致遠電子 ? 2022-09-02 10:13 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

上一章節(jié)介紹,實現(xiàn)了串口與MQTT服務器間的數(shù)據(jù)透明傳輸,本章節(jié)將在原有的基礎上,增加 LED 控制業(yè)務,以此為例來介紹如何在透傳數(shù)據(jù)流中增加必要的擴展業(yè)務。

4c04bde0-296c-11ed-9ade-dac502259ad0.jpg ?簡介

常見的串口服務器產(chǎn)品,在實現(xiàn)了數(shù)據(jù)透傳業(yè)務的同時,會根據(jù)不同的應用場景擴展一些額外的輔助業(yè)務,如DI/DO、ADC采集等。

通過EsDAMPC-ZC1應用——串口服務器(一)章節(jié),完成了串口MQTT服務器的核心業(yè)務,實現(xiàn)了串口與MQTT服務器間的數(shù)據(jù)透明傳輸。根據(jù)項目需求,本章節(jié)將在原有的基礎上,增加 LED 控制業(yè)務。以此為例來介紹如何在透傳數(shù)據(jù)流中增加必要的擴展業(yè)務。

4c04bde0-296c-11ed-9ade-dac502259ad0.jpg ?業(yè)務擴展

一、數(shù)據(jù)解析增加系統(tǒng)控制業(yè)務,需要在流圖中,對數(shù)據(jù)流進行數(shù)據(jù)解析,解析出系統(tǒng)所支持的控制命令和參數(shù)。

1. 命令格式

擴展控制命令前,先制定出命令格式,本示例以較為簡易的方式實現(xiàn)了命令和參數(shù)的組合,如下所示。[command]@[parameter]以@作為分隔符,組合命令(command)參數(shù)(parameter),均為字符串類型。2. 節(jié)點介紹實現(xiàn)自定義的數(shù)據(jù)解析功能,通常需要開發(fā)符合需求的節(jié)點,或是直接通過腳本節(jié)點來實現(xiàn)。當功能比較簡單的時,建議直接使用腳本節(jié)點(fscript)來實現(xiàn)。2.1 fscriptfscript 節(jié)點,支持用戶自定義編輯一段可執(zhí)行腳本,可以很靈活的完成一些簡單的定制化業(yè)務。*關于 fscript 腳本教學可參考《FScript 腳本引擎》:

https://awtk.zlg.cn/pro/docs/awtk_docs/FScript/fscript.html

2.11 屬性

4c202dc8-296c-11ed-9ade-dac502259ad0.png

名稱(name):節(jié)點名稱,用于索引查找本節(jié)點;

顯示名稱(displayName):用于畫布上顯示的名稱;

加載時(Initialize):節(jié)點加載時運行的腳本;

運行時(Function):節(jié)點每次運行時的腳本;

銷毀時(Finalize):節(jié)點銷毀時運行的腳。

fscript 節(jié)點支持輸入3段腳本,分別在節(jié)點加載、運行、銷毀時進行調(diào)用,其中加載、銷毀階段的腳本僅被調(diào)用一次。

2.2 log

log 節(jié)點可以將數(shù)據(jù)流中的數(shù)據(jù)打印到調(diào)試接口上,方便用戶觀察數(shù)據(jù)流中的數(shù)據(jù)。2.2.1 屬性

4c2e5218-296c-11ed-9ade-dac502259ad0.png

名稱(name):節(jié)點名稱,用于索引查找本節(jié)點;

顯示名稱(displayName):用于畫布上顯示的名稱;

控制臺(log_to_console):輸出到系統(tǒng)控制臺;

客戶端(log_to_client):輸出到AWFlow Designer客戶端。

2.2.2 輸入

  • payload:需要打印的數(shù)據(jù);
  • payloadLength:數(shù)據(jù)長度,uint32_t類型;
  • payloadType:指示payload的數(shù)據(jù)類型。

3. 流圖實踐

3.1 添加log節(jié)點在原有的串口MQTT透傳流圖上,并入log節(jié)點,觀察串口上報至MQTT服務的數(shù)據(jù)。4c4576fa-296c-11ed-9ade-dac502259ad0.png

3.2 下載并在線運行

選擇下載流圖,并保持在線運行,這樣可以通過AWFlow Designer 客戶端接收到 log 節(jié)點的消息。

4c62a7de-296c-11ed-9ade-dac502259ad0.png

通過串口助手,發(fā)送數(shù)據(jù)。

4c6eb9d4-296c-11ed-9ade-dac502259ad0.png

可以通過 AWFlow Designer 的調(diào)試窗口觀察到串口發(fā)送的數(shù)據(jù)。

4c9173c0-296c-11ed-9ade-dac502259ad0.png

3.3 添加命令解析腳本

在 log 和串口輸入數(shù)據(jù)流中,添加 fscript 節(jié)點。4c9eb6c0-296c-11ed-9ade-dac502259ad0.png僅在 Function 階段輸入命令解析腳本。4cb371c8-296c-11ed-9ade-dac502259ad0.png腳本先將輸入的數(shù)據(jù) msg.payload 轉(zhuǎn)換成字符串類型,再通過 one_of 函數(shù),以@分隔符,將字串分隔成2段,并分別賦值給 msg cmd arg 屬性。

/*MQTT和串口節(jié)點輸出為pointer類型,轉(zhuǎn)換為string*/
rbuf=rbuffer_create(msg.payload,msg.payloadLength)
s_payload=rbuffer_read_string(rbuf)

/*以@分隔符,獲取第一段字符串作為命令*/
msg.cmd=one_of(s_payload,0,"@")
/*以@分隔符,獲取第二段字符串作為參數(shù)*/

msg.arg=one_of(s_payload,1,"@")

至此,實現(xiàn)了從字符串中解析出命令和參數(shù)的功能。

二、系統(tǒng)控制

系統(tǒng)控制模塊,負責響應解析模塊解析出來的命令,根據(jù)獲得的命令和參數(shù),執(zhí)行響應的業(yè)務。本小節(jié),以LED控制作為系統(tǒng)控制業(yè)務,實際應用可根據(jù)項目需求進行擴展。*本小節(jié)主要使用fscript來完成LED的控制業(yè)務,LED節(jié)點的使用可參考EsDAMPC-ZC1入門(二)——LED控制。

1. LED控制業(yè)務

1.1 添加控制腳本在數(shù)據(jù)解析腳本節(jié)點與log節(jié)點之間,并入一個新的 fscript 節(jié)點,用于執(zhí)行LED控制業(yè)務。

4cc10edc-296c-11ed-9ade-dac502259ad0.png

4ce121f4-296c-11ed-9ade-dac502259ad0.png

LED 支持3路LED的控制命令,如下所示:

  • led_red@on / off,點亮/熄滅紅燈;
  • blue_red@on / off,點亮/熄滅藍燈;
  • green_red@on / off,點亮/熄滅綠燈。

通過控制命令 msg.cmd 來指定所需要控制LED設備,msg.arg 轉(zhuǎn)換為LED控制參數(shù)。

/*LED控制命令作為設備名稱,如led_red@on*/
output.device_name=msg.cmd

if(msg.arg=="on"){
/*點亮LED*/
output.payload=1
}elseif(msg.arg=="off"){
/*熄滅LED*/
output.payload=0
}else{
/*終止數(shù)據(jù)流*/
aborted=1

}

1.2 添加LED節(jié)點繼控制腳本之后,串接3個LED節(jié)點。4cf3fa5e-296c-11ed-9ade-dac502259ad0.png分別綁定了 led_red、led_blue、led_green。4d116dc8-296c-11ed-9ade-dac502259ad0.png4d1f5f50-296c-11ed-9ade-dac502259ad0.png4d31afac-296c-11ed-9ade-dac502259ad0.png

1.3 下載驗證

下載流圖。4d404698-296c-11ed-9ade-dac502259ad0.png

通過串口助手,發(fā)送控制命令。

4d5e258c-296c-11ed-9ade-dac502259ad0.png

可以看到,板載的 LED 已經(jīng)能夠正確響應串口的控制命令。

4d72cc26-296c-11ed-9ade-dac502259ad0.png

*注意:控制命令為字符串類型,所以命令需包含字符結(jié)束符'\0’。

三、數(shù)據(jù)分發(fā)

系統(tǒng)控制小節(jié)中,在完成LED控制的同時,可以觀察到,MQTT服務器同樣接收到了控制命令,但這并非所期望的效果。

4d90f48a-296c-11ed-9ade-dac502259ad0.png

為了解決這個問題,需要實現(xiàn)數(shù)據(jù)分發(fā)功能,對數(shù)據(jù)進行選擇??梢酝ㄟ^ aswitch 節(jié)點實現(xiàn)數(shù)據(jù)流的流向選擇。

1. 節(jié)點介紹

1.1 aswitch

1.1.1 屬性

4da4963e-296c-11ed-9ade-dac502259ad0.png

名稱(name):節(jié)點名稱,用于索引查找本節(jié)點;

顯示名稱(displayName):用于畫布上顯示的名稱;

檢查全部(check_all):檢查所有條件;

規(guī)則表達式(rules):數(shù)據(jù)分發(fā)依據(jù)的邏輯表達式;

輸出數(shù)量(outputs):數(shù)據(jù)分發(fā)路徑數(shù)量。

2. 分發(fā)規(guī)則

2.1 添加 aswitch 節(jié)點,并進行如下配置。4daf3b48-296c-11ed-9ade-dac502259ad0.png

禁止檢查所有條件,即當遇到條件滿足時,則不繼續(xù)檢查;

  • 輸出路徑數(shù)配置與邏輯條件一致為 4。

msg.cmd=="led_red"
msg.cmd=="led_green"
msg.cmd=="led_blue"

msg.payloadLength>0

前3個邏輯條件,通過 msg.cmd 進行判斷,區(qū)分控制命令,如果遇到符合的控制命令,則不會繼續(xù)匹配,后續(xù)的路徑則不會被觸發(fā)。

可以看到,在最后一條規(guī)則中,通過 msg.payloadLength 來匹配透傳數(shù)據(jù)。

2.2接入數(shù)據(jù)分發(fā)節(jié)點

aswitch 串進數(shù)據(jù)分析和 LED控制腳本節(jié)點之間,同時將MQTT上報的數(shù)據(jù)路徑修改為 aswitch 的透傳數(shù)據(jù)輸出口上,如下所示。4dc3be74-296c-11ed-9ade-dac502259ad0.png

2.3 下載驗證

下載流圖。4d404698-296c-11ed-9ade-dac502259ad0.png

通過串口助手,分別發(fā)送控制命令和透傳數(shù)據(jù)。

4de7fee2-296c-11ed-9ade-dac502259ad0.png可以看到,此時MQTT服務器不會再接收到串口端的系統(tǒng)控制命令。4df7e4f6-296c-11ed-9ade-dac502259ad0.png至此,完成了數(shù)據(jù)分發(fā)模塊。

四、遠程控制

前面完成了數(shù)據(jù)解析、系統(tǒng)控制、數(shù)據(jù)分發(fā)等3大擴展業(yè)務模塊,但是都是基于串口來實現(xiàn),是否可以同時支持MQTT遠程控制業(yè)務呢?

很顯然,是可以的,而且通過復用前面的模塊,可以很簡單的實現(xiàn)遠程控制功能。

1. 擴展數(shù)據(jù)分發(fā)條件

4dffdddc-296c-11ed-9ade-dac502259ad0.png

利用 msg.topic 屬性來判斷是否有來源于MQTT服務器的透傳數(shù)據(jù),將數(shù)據(jù)分發(fā)數(shù)量擴充到 5。

2. 調(diào)整MQTT下發(fā)數(shù)據(jù)流

將MQTT下發(fā)的數(shù)據(jù)接入到數(shù)據(jù)解析模塊,同時將串口輸出連接到數(shù)據(jù)分發(fā)的MQTT透傳輸出口上,如下所示進行調(diào)整。

4e1d6b7c-296c-11ed-9ade-dac502259ad0.png

3. 下載驗證

下載流圖。4d404698-296c-11ed-9ade-dac502259ad0.png

通過MQTTX,分別發(fā)布LED控制命令和透傳數(shù)據(jù)。

4e40b334-296c-11ed-9ade-dac502259ad0.png

可以看到,板載的 LED 已經(jīng)能夠正確響應串口的控制命令。

4d72cc26-296c-11ed-9ade-dac502259ad0.png

同時串口端,僅收到透傳數(shù)據(jù)。

4e70bbce-296c-11ed-9ade-dac502259ad0.png

至此,完成了遠程控制功能。

五、整理流圖至此,完成了EsDA MPC-ZC1應用——串口服務器(一)計劃的所有需求。后續(xù)根據(jù)實際需求,在現(xiàn)有的流圖基礎上,繼續(xù)擴展更多的控制命令能,將會十分簡單。將流圖進行整理,最終效果如下。4e838b1e-296c-11ed-9ade-dac502259ad0.png4e939c8e-296c-11ed-9ade-dac502259ad0.jpg4ea7fddc-296c-11ed-9ade-dac502259ad0.jpg

【版權(quán)聲明】本文為ZLG開發(fā)者社區(qū)用戶原創(chuàng)內(nèi)容,未經(jīng)授權(quán)不得轉(zhuǎn)載。歡迎更多用戶到社區(qū)交流互動、創(chuàng)作博文,一經(jīng)采用,可獲得百元京東E卡。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • led
    led
    +關注

    關注

    242

    文章

    23840

    瀏覽量

    673965
  • 服務器
    +關注

    關注

    13

    文章

    9793

    瀏覽量

    87949
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    串口服務器:到手就能用?它的強大用途超乎想象

    在數(shù)字化浪潮席卷各個領域的當下,串口服務器作為連接傳統(tǒng)串口設備與現(xiàn)代網(wǎng)絡世界的橋梁,其重要性日益凸顯。然而,對于初次接觸串口服務器的人而言,腦海中往往會浮現(xiàn)出一連串的疑問:串口服務器
    的頭像 發(fā)表于 04-17 14:59 ?484次閱讀
    <b class='flag-5'>串口服務器</b>:到手就能用?它的強大用途超乎想象

    # **串口服務器:** **買了就能直接用嗎?它究竟有啥功能**

    在當今數(shù)字化程度日益加深的時代,串口服務器作為一種關鍵的設備,正逐漸走進眾多領域的應用場景中。然而,對于許多初次接觸它的人來說,心中難免會有諸多疑問,比如串口服務器買了就可以用嗎?它究竟是干什么
    的頭像 發(fā)表于 04-06 15:38 ?340次閱讀
    # **<b class='flag-5'>串口服務器</b>:** **買了就能直接用嗎?它究竟有啥功能**

    2025 年串口服務器品牌解析:技術(shù)演進與行業(yè)應用指南

    在工業(yè)物聯(lián)網(wǎng)(IIoT)滲透率突破 42% 的背景下,串口服務器作為連接傳統(tǒng)設備與智能網(wǎng)絡的核心樞紐,正推動著制造業(yè)、能源、交通等領域的數(shù)字化轉(zhuǎn)型。本文將深度解析串口服務器的技術(shù)原理、主流品牌及行業(yè)
    的頭像 發(fā)表于 03-31 09:55 ?296次閱讀
    2025 年<b class='flag-5'>串口服務器</b>品牌解析:技術(shù)演進與行業(yè)應用指南

    工業(yè)互聯(lián)進階之路:串口服務器與物聯(lián)網(wǎng)技術(shù)的深度融合

    工業(yè)互聯(lián)進階之路:串口服務器與物聯(lián)網(wǎng)技術(shù)的深度融合
    的頭像 發(fā)表于 03-24 09:39 ?289次閱讀
    工業(yè)互聯(lián)進階之路:<b class='flag-5'>串口服務器</b>與物聯(lián)網(wǎng)技術(shù)的深度融合

    NA611系列WiFi串口服務器常見問題以及解決辦法

    NA611系列WiFi串口服務器是一款高性能、高可靠的工業(yè)級雙頻RS485 ? WiFi數(shù)據(jù)雙向透明傳輸?shù)?b class='flag-5'>串口服務器。實現(xiàn)RS485串口數(shù)據(jù)通過WiFi實現(xiàn)設備聯(lián)網(wǎng)數(shù)據(jù)交互,支持 IEEE
    的頭像 發(fā)表于 03-17 11:25 ?389次閱讀

    串口服務器在能源物聯(lián)網(wǎng)數(shù)據(jù)采集中的應用技術(shù)參數(shù)介紹#

    的APort100串口服務器為例,探討串口服務器在現(xiàn)代物聯(lián)網(wǎng)中的實際應用及其優(yōu)勢。 1. 引言 物聯(lián)網(wǎng)的核心是實現(xiàn)設備間的互聯(lián)互通。然而,大量工業(yè)現(xiàn)場仍使用傳統(tǒng)的RS-485等串口通信
    的頭像 發(fā)表于 01-15 13:46 ?368次閱讀
    <b class='flag-5'>串口服務器</b>在能源物聯(lián)網(wǎng)數(shù)據(jù)采集中的應用技術(shù)參數(shù)介紹#

    1分鐘,實現(xiàn)傳感通過串口服務器接入ZWS云

    導讀本文介紹如何在1分鐘內(nèi),將傳感通過串口服務器GCOM80接入ZWS云平臺,實現(xiàn)數(shù)據(jù)上云。本文以光照傳感為例,介紹傳感通過
    的頭像 發(fā)表于 01-10 11:37 ?616次閱讀
    <b class='flag-5'>1</b>分鐘,實現(xiàn)傳感<b class='flag-5'>器</b>通過<b class='flag-5'>串口服務器</b>接入ZWS云

    【新品】性能飛躍,一鍵部署!NE2系列多款型號串口服務器上線

    繼此前推出RS485串口服務器NE2-D11和NE2-D12后,基于對市場需求的深度調(diào)研,億佰特新上市多款型號的串口服務器產(chǎn)品,豐富串口服務器產(chǎn)品線,滿足更多應用需求。串口服務器實現(xiàn)
    的頭像 發(fā)表于 10-25 08:06 ?855次閱讀
    【新品】性能飛躍,一鍵部署!NE2系列多款型號<b class='flag-5'>串口服務器</b>上線

    串口服務器和交換機區(qū)別

    串口服務器和交換機在網(wǎng)絡通信中扮演著不同的角色,它們之間的主要區(qū)別可以從以下幾個方面來闡述:
    的頭像 發(fā)表于 10-03 15:13 ?1746次閱讀

    【教程】配置NE2-D11串口服務器接入Modbus物聯(lián)網(wǎng)平臺

    一案例簡介本案例將通過配置NE2-D11串口服務器接入Modbus物聯(lián)網(wǎng)平臺,使得Modbus物聯(lián)網(wǎng)平臺能采集ModbusRTU設備的DI狀態(tài)和控制DO輸出。連接圖接入Modbus物聯(lián)網(wǎng)平臺
    的頭像 發(fā)表于 09-27 08:07 ?847次閱讀
    【教程】配置NE2-D11<b class='flag-5'>串口服務器</b>接入Modbus物聯(lián)網(wǎng)平臺

    使用NS1串口服務器HTTP模式上傳服務器數(shù)據(jù)

    HTTP協(xié)議工作于客戶端-服務端架構(gòu)之上。瀏覽作為HTTP客戶端通過URL向HTTP服務端即Web服務器發(fā)送所有請求。Web服務器根據(jù)接收
    的頭像 發(fā)表于 08-30 12:36 ?983次閱讀
    使用NS<b class='flag-5'>1</b><b class='flag-5'>串口服務器</b>HTTP模式上傳<b class='flag-5'>服務器</b>數(shù)據(jù)

    串口服務器是什么?4路、8路、16路串口服務器有什么區(qū)別?

    蜀瑞創(chuàng)新為大家科普:串口服務器是一種用于通過網(wǎng)絡連接兩個或多個串口設備的聯(lián)網(wǎng)設備。它能夠?qū)S-232/485/422等串口設備聯(lián)入TCP/IP網(wǎng)絡,實現(xiàn)串口與TCP/IP網(wǎng)絡接口的數(shù)
    的頭像 發(fā)表于 08-27 14:55 ?1254次閱讀

    串口服務器和TCP/IP協(xié)議棧是什么關系

    串口服務器與TCP/IP協(xié)議棧之間存在著緊密而復雜的關系。這種關系主要體現(xiàn)在串口服務器如何利用TCP/IP協(xié)議棧來實現(xiàn)串口設備與網(wǎng)絡之間的數(shù)據(jù)通信。以下是對這種關系的詳細解析。
    的頭像 發(fā)表于 08-25 17:35 ?2126次閱讀

    串口服務器的定義和功能

    串口服務器,作為一種重要的網(wǎng)絡設備,在現(xiàn)代通信和數(shù)據(jù)傳輸中扮演著至關重要的角色。以下是對串口服務器的詳細解析,包括其定義、功能、工作原理、應用領域以及未來發(fā)展等方面。
    的頭像 發(fā)表于 08-25 17:21 ?3414次閱讀

    PLC連接串口服務器RS485轉(zhuǎn)以太網(wǎng)步驟

    連接RS485端口 :使用適當?shù)碾娎|將PLC的RS485端口連接到串口服務器的RS485端口。 連接以太網(wǎng) :使用以太網(wǎng)線纜將串口服務器的以太網(wǎng)端口連接到網(wǎng)絡交換機或路由上。
    的頭像 發(fā)表于 07-18 09:11 ?4046次閱讀
    PLC連接<b class='flag-5'>串口服務器</b>RS485轉(zhuǎn)以太網(wǎng)步驟