AWTK 开源串口屏 MODBUS Server 模型

名称: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

  • 4
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
STM32Modbus主站代码是一种用于实现Modbus通信协议的开源代码。Modbus是一种通信协议,常用于工业自动化领域,用于实现设备之间的数据交换。开源的STM32Modbus主站代码为开发者提供了一种免费的解决方案,以便他们能够在基于STM32处理器的应用中使用Modbus协议。 STM32Modbus主站代码主要包含两部分功能:Modbus协议的解析和通信功能的实现。首先,该代码能够解析Modbus协议的各个字段,包括功能码、寄存器地址、数据等,以便能够正确地解析和处理Modbus消息。其次,该代码还提供了通信功能的实现,包括通过串口或者以太网等方式与其他设备进行通信,并能够发送和接收Modbus消息。 通过使用开源的STM32Modbus主站代码,开发者可以快速地搭建起基于STM32处理器的Modbus主站应用。该代码提供了一种通用的实现方式,可以与各种类型的Modbus从站设备进行通信。开发者只需要根据自己的具体需求进行一些定制,即可实现与特定的从站设备进行通信。 此外,开源的STM32Modbus主站代码还具有一些其他的优势。首先,由于其开源的特性,开发者可以自由地对代码进行修改和优化,以满足自己的需求,提高系统的性能和稳定性。其次,开源社区中有很多对Modbus通信协议非常熟悉的开发者,他们能够提供技术支持和交流,帮助解决开发过程中的问题。 综上所述,免费开源的STM32Modbus主站代码为开发者提供了一种方便、快速搭建Modbus主站应用的解决方案。通过使用这些代码,开发者能够节省开发时间和成本,实现与各种类型的Modbus从站设备的通信。同时,开源社区中的资源和支持也为开发者提供了更多的帮助。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值