加入星計(jì)劃,您可以享受以下權(quán)益:

  • 創(chuàng)作內(nèi)容快速變現(xiàn)
  • 行業(yè)影響力擴(kuò)散
  • 作品版權(quán)保護(hù)
  • 300W+ 專業(yè)用戶
  • 1.5W+ 優(yōu)質(zhì)創(chuàng)作者
  • 5000+ 長(zhǎng)期合作伙伴
立即加入
  • 正文
  • 推薦器件
  • 相關(guān)推薦
  • 電子產(chǎn)業(yè)圖譜
申請(qǐng)入駐 產(chǎn)業(yè)圖譜

技術(shù)分享 | AWTK 開(kāi)源串口屏開(kāi)發(fā)(15) - 通過(guò) MODBUS 訪問(wèn)遠(yuǎn)程數(shù)據(jù)

03/30 09:55
1969
閱讀需 6 分鐘
加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點(diǎn)資訊討論

AWTK 串口屏內(nèi)置MODBUS Client 模型,支持用 MODBUS 協(xié)議從遠(yuǎn)程設(shè)備獲取數(shù)據(jù)。不用編寫(xiě)代碼即可實(shí)現(xiàn)對(duì)遠(yuǎn)程設(shè)備數(shù)據(jù)的顯示和修改。

在 AWTK 串口屏中,內(nèi)置了 MODBUS Client 的模型,支持用 MODBUS 協(xié)議從遠(yuǎn)程設(shè)備獲取數(shù)據(jù)。不用編寫(xiě)一行代碼即可實(shí)現(xiàn)對(duì)遠(yuǎn)程設(shè)備數(shù)據(jù)的顯示和修改。

1. 功能

不用編寫(xiě)代碼,實(shí)現(xiàn)對(duì)遠(yuǎn)程 MODBUS 設(shè)備數(shù)據(jù)的訪問(wèn)。

2. 創(chuàng)建項(xiàng)目

從模板創(chuàng)建項(xiàng)目,將 hmi/template_app 拷貝 hmi/modbus_client_input_registers 即可。

第一個(gè)項(xiàng)目最好不要放到其它目錄,因?yàn)榉诺狡渌夸浶枰薷呐渲梦募械穆窂剑仁煜ぶ笤倏紤]放到其它目錄。路徑中也不要中文和空格,避免不必要的麻煩。

3. 制作界面

用 AWStudio 打開(kāi)上面 modbus_client_input_registers 目錄下的 project.json 文件。里面有一個(gè)空的窗口,做出類似下面的界面。

4. 添加綁定規(guī)則

4.1 URL

綁定屬性 綁定規(guī)則 說(shuō)明
v-data:value {url} url 表示遠(yuǎn)程設(shè)備的 URL

4.2 連接狀態(tài)

綁定屬性 綁定規(guī)則 說(shuō)明
v-data:value {connected???‘connected’?:?‘no?connection’} connected?表示當(dāng)前是否連接

4.3 濕度

綁定屬性 綁定規(guī)則 說(shuō)明
v-data:value {濕度} 濕度?在配置文件中定義,參考后面的配置

4.4?溫度

綁定屬性 綁定規(guī)則 說(shuō)明
v-data:value {溫度} 溫度?在配置文件中定義,參考后面的配置

4.5 窗口模型

    指定窗口的模型為
綁定屬性 綁定規(guī)則 說(shuō)明
v-model modbus_client(name=modbus_demo) 配置文件名對(duì)應(yīng)于 modbus_demo.json

modbus_client 是內(nèi)置的模型,name 是配置文件的名稱,不需要加后綴。

5. 配置文件

配置文件路徑 design/default/data/modbus_demo.json

 

{ ?"url":"tcp://localhost:502", ?"channels" : [ ? ?{ ? ? ?"update_interval" : 3000, ? ? ?"name" : "read_input_registers", ? ? ?"access_type" : 4, ? ? ?"read" : { ? ? ? ?"offset" : 0, ? ? ? ?"length" : 4 ? ? ?} ? ?} ?], ?"variables": { ? ?"溫度": "read_input_registers.word[0]", ? ?"濕度": "read_input_registers.word[1]" ?}}

 

??url:?遠(yuǎn)程設(shè)備的?URL
??update_interval:?更新間隔,單位毫秒
??channels:?通道列表
??name:?通道名稱
??access_type:?訪問(wèn)類型
??read:?讀取配置
??offset:?偏移
??length:?長(zhǎng)度
??variables:?變量列表
??溫度:?映射到?modbus?通道的?word[0]
??濕度:?映射到?modbus?通道的?word[1]

6. 描述需要持久化的數(shù)據(jù)

無(wú)

7. 編譯運(yùn)行

運(yùn)行 bin 目錄下的 demo 程序:

點(diǎn)擊?Update?按鈕,可以手工刷新數(shù)據(jù)

8. 注意

    • 本項(xiàng)目并沒(méi)有編寫(xiě)界面相關(guān)的代碼,AWStudio 在 src/pages 目錄下生成了一些代碼框架,這些代碼并沒(méi)有用到,可以刪除也可以不用管它,但是不能加入編譯。完整示例請(qǐng)參考:demo_modbus_client_input_registers。

使用TCP協(xié)議時(shí),如果使用modbus slave工具配套測(cè)試,需要將unit id設(shè)置為255。

推薦器件

更多器件
器件型號(hào) 數(shù)量 器件廠商 器件描述 數(shù)據(jù)手冊(cè) ECAD模型 風(fēng)險(xiǎn)等級(jí) 參考價(jià)格 更多信息
TJA1055T/3/1J 1 NXP Semiconductors TJA1055 - Enhanced fault-tolerant CAN transceiver SOIC 14-Pin

ECAD模型

下載ECAD模型
$1.06 查看
致遠(yuǎn)電子

致遠(yuǎn)電子

廣州致遠(yuǎn)電子股份有限公司成立于2001年,注冊(cè)資金5000萬(wàn)元,國(guó)家級(jí)高新技術(shù)認(rèn)證企業(yè),廣州市高端工控測(cè)量?jī)x器工程技術(shù)研究開(kāi)發(fā)中心,Intel ECA全球合作伙伴和微軟嵌入式系統(tǒng)金牌合作伙伴。

廣州致遠(yuǎn)電子股份有限公司成立于2001年,注冊(cè)資金5000萬(wàn)元,國(guó)家級(jí)高新技術(shù)認(rèn)證企業(yè),廣州市高端工控測(cè)量?jī)x器工程技術(shù)研究開(kāi)發(fā)中心,Intel ECA全球合作伙伴和微軟嵌入式系統(tǒng)金牌合作伙伴。收起

查看更多

相關(guān)推薦

電子產(chǎn)業(yè)圖譜