AWTK 开源串口屏 MODBUS Server 模型

本文介绍了如何通过Modbus_server创建模型,配置文件的设置,包括设备URL、通道描述(如bits、registers等)以及变量定义,以便于远程客户端访问和数据交换。还提供了访问通道中数据的示例和内置属性、命令的使用方法。
摘要由CSDN通过智能技术生成

名称:modbus_server

功能:通过 modbus 协议提供服务,供远程客户端(主站)访问。

1. 创建

通过 modbus_server 创建模型。

示例:

<window v-model="modbus_server" name="home_page">

配置文件路径固定为:design/default/data/modbus.json

2. 配置文件格式

使用 JSON 文件描述配置。

2.1 基本配置

  • URL slave 设备的 URL。
  • unit_id slave 设备 ID(TCP 协议无需设置)

示例:

  "url":"tcp://localhost:502",

2.2 通道描述

通道可以有多个,放在 channels 数组中。

  • name 用于访问通道中的数据,取值为:

    • bits 可以用功能码 1 读取,用功能码 15 写入。
    • input_bits 可以用功能码 2 读取。
    • registers 可以用功能码 3 读取,用功能码 16 写入。
    • input_registers 可以用功能码 4 读取。
  • start 起始地址

  • length 数据个数

示例:

  "channels": [
    {   
      "name": "bits",
      "writable": true,
      "start": 0,
      "length": 100 
    },  
    {   
      "name": "input_bits",
      "start": 0,
      "length": 200 
    },  
    {   
      "name": "registers",
      "writable": true,
      "start": 0,
      "length": 300 
    },  
    {   
      "name": "input_registers",
      "start": 0,
      "length": 400 
    }   
  ], 

2.3 变量定义

UI 可以直接绑定通道中的数据。为了提高可读性和灵活性,可以定义一些变量,将变量映射到通道地址。

  • 定义变量
  "variables": {
    "当前温度": "input_registers.word[0]",
    "当前湿度": "input_registers.word[1]",
    "预设温度": "registers.word[0]",
    "预设湿度": "registers.word[1]"
  }  
  • 使用变量
  <label text="URL" />
  <label v-data:value="{url}" />
  <label text="UNIT ID" />
  <label v-data:value="{unit_id}" />
  <label text="当前温度" />
  <edit input_type="int" v-data:text="{当前温度}" />
  <label text="当前湿度" />
  <edit input_type="int" v-data:text="{当前湿度}" />

  <label text="预设温度(客户端发送请求修改)" />
  <label v-data:text="{预设温度}" />
  <label text="预设湿度(客户端发送请求修改)" />
  <label v-data:text="{预设湿度}" />

3. 访问通道中的数据。

请参考:modbus_client

内置属性

属性类型说明
url字符串URL
unit_idint设备 ID

示例

  <label text="URL" />
  <label v-data:value="{url}" />
  <label text="UNIT ID" />
  <label v-data:value="{unit_id}" />

内置命令

完整示例

请参考:demo_modbus_server_registers

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值