AWTK-MODBUS 发布,欢迎一起来完善。

2023-10-06 11:26

本文主要是介绍AWTK-MODBUS 发布,欢迎一起来完善。,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

AWTK-MODBUS

Modbus 协议是一种通信协议,用于在工业自动化系统中实现设备之间的通信。它最初由 Modicon(现在是施耐德电气的一部分)在 1979 年开发,成为工业领域中最常用的通信协议之一。

Modbus 协议简单、易于实现和使用,因此在工业自动化领域得到广泛应用。它可以用于监控和控制各种设备,如传感器、执行器、电机驱动器等。通过使用 Modbus 协议,不同厂家的设备可以方便地进行集成和通信,实现设备之间的数据交换和控制操作。

AWTK-MODBUS 实现了 Modbus 协议的基本功能。其主要特色有:

  • 小巧。充分利用 TKC 中的函数,大大减少代码量。
  • 可移植。可以在 PC 和嵌入式设备上运行。
  • 支持 TCP 和 RTU 两种通信方式。
  • 支持客户端 (Master) 和 服务器 (Slave)。
  • 与 AWTK 无缝集成。服务端 (Slave) 可以集成到 AWTK 的主循环。
  • 服务器 (Slave) 支持设置钩子函数,在处理请求的前后被调用,方便对数据进行预读和刷新。

准备

  1. 获取 awtk 并编译
git clone https://github.com/zlgopen/awtk.git
cd awtk; scons; cd -
  • 编译 awtk-modbus 并编译
git clone https://github.com/zlgopen/awtk-modbus.git
cd awtk-modbus; scons; cd -

注意:awtk 和 awtk-modbus 并列放在同一级目录。

  • 编译 LINUX FB 版本
scons LINUX_FB=true

完整编译选项请参考 编译选项

运行示例

  • TCP 服务端 (Slave)
./bin/modbus_server tcp://localhost:502

或(集成到 AWTK 主循环)

./bin/modbus_server_awtk serial:///dev/ttys124
  • TCP 客户端 (Master)
./bin/modbus_client data/tcp.ini
  • RTU 服务端 (Slave)
./bin/modbus_server serial:///dev/ttys124

或(集成到 AWTK 主循环)

./bin/modbus_server_awtk serial:///dev/ttys124
  • RTU 客户端 (Master)
./bin/modbus_client data/rtu.ini

MacOS 上可以用 socat 模拟串口。如:

socat -d -d pty,raw,echo=0 pty,raw,echo=0

本文以 Linux/MacOS 为例,Windows 可能会微妙差异,请酌情处理。

这篇关于AWTK-MODBUS 发布,欢迎一起来完善。的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/152928

相关文章

MySQL数据库宕机,启动不起来,教你一招搞定!

作者介绍:老苏,10余年DBA工作运维经验,擅长Oracle、MySQL、PG、Mongodb数据库运维(如安装迁移,性能优化、故障应急处理等)公众号:老苏畅谈运维欢迎关注本人公众号,更多精彩与您分享。 MySQL数据库宕机,数据页损坏问题,启动不起来,该如何排查和解决,本文将为你说明具体的排查过程。 查看MySQL error日志 查看 MySQL error日志,排查哪个表(表空间

高效+灵活,万博智云全球发布AWS无代理跨云容灾方案!

摘要 近日,万博智云推出了基于AWS的无代理跨云容灾解决方案,并与拉丁美洲,中东,亚洲的合作伙伴面向全球开展了联合发布。这一方案以AWS应用环境为基础,将HyperBDR平台的高效、灵活和成本效益优势与无代理功能相结合,为全球企业带来实现了更便捷、经济的数据保护。 一、全球联合发布 9月2日,万博智云CEO Michael Wong在线上平台发布AWS无代理跨云容灾解决方案的阐述视频,介绍了

Vue3项目开发——新闻发布管理系统(六)

文章目录 八、首页设计开发1、页面设计2、登录访问拦截实现3、用户基本信息显示①封装用户基本信息获取接口②用户基本信息存储③用户基本信息调用④用户基本信息动态渲染 4、退出功能实现①注册点击事件②添加退出功能③数据清理 5、代码下载 八、首页设计开发 登录成功后,系统就进入了首页。接下来,也就进行首页的开发了。 1、页面设计 系统页面主要分为三部分,左侧为系统的菜单栏,右侧

CSP 2023 提高级第一轮 CSP-S 2023初试题 完善程序第二题解析 未完

一、题目阅读 (最大值之和)给定整数序列 a0,⋯,an−1,求该序列所有非空连续子序列的最大值之和。上述参数满足 1≤n≤105 和 1≤ai≤108。 一个序列的非空连续子序列可以用两个下标 ll 和 rr(其中0≤l≤r<n0≤l≤r<n)表示,对应的序列为 al,al+1,⋯,ar​。两个非空连续子序列不同,当且仅当下标不同。 例如,当原序列为 [1,2,1,2] 时,要计算子序列 [

用Unity2D制作一个人物,实现移动、跳起、人物静止和动起来时的动画:中(人物移动、跳起、静止动作)

上回我们学到创建一个地形和一个人物,今天我们实现一下人物实现移动和跳起,依次点击,我们准备创建一个C#文件 创建好我们点击进去,就会跳转到我们的Vision Studio,然后输入这些代码 using UnityEngine;public class Move : MonoBehaviour // 定义一个名为Move的类,继承自MonoBehaviour{private Rigidbo

maven发布项目到私服-snapshot快照库和release发布库的区别和作用及maven常用命令

maven发布项目到私服-snapshot快照库和release发布库的区别和作用及maven常用命令 在日常的工作中由于各种原因,会出现这样一种情况,某些项目并没有打包至mvnrepository。如果采用原始直接打包放到lib目录的方式进行处理,便对项目的管理带来一些不必要的麻烦。例如版本升级后需要重新打包并,替换原有jar包等等一些额外的工作量和麻烦。为了避免这些不必要的麻烦,通常我们

禅道Docker安装包发布

禅道Docker安装包发布 大家好, 禅道Docker安装包发布。 一、下载地址 禅道开源版:   /dl/zentao/docker/docker_zentao.zip  备用下载地址:https://download.csdn.net/download/u013490585/16271485 数据库用户名: root,默认密码: 123456。运行时,可以设置 MYSQL_ROOT_P

Modbus-RTU协议

一、协议概述 Modbus-RTU(Remote Terminal Unit)是一种基于主从架构的通信协议,采用二进制数据表示,消息中的每个8位字节含有两个4位十六进制字符。它主要通过RS-485、RS-232、RS-422等物理接口实现数据的传输,传输距离远、抗干扰能力强、通信效率高。 二、报文结构 一个标准的Modbus-RTU报文通常包含以下部分: 地址域:单个字节,表示从站设备

C++编程:ZeroMQ进程间(订阅-发布)通信配置优化

文章目录 0. 概述1. 发布者同步发送(pub)与订阅者异步接收(sub)示例代码可能的副作用: 2. 适度增加缓存和队列示例代码副作用: 3. 动态的IPC通道管理示例代码副作用: 4. 接收消息的超时设置示例代码副作用: 5. 增加I/O线程数量示例代码副作用: 6. 异步消息发送(使用`dontwait`标志)示例代码副作用: 7. 其他可以考虑的优化项7.1 立即发送(ZMQ_IM

Modbus从基地址 1 和基地址 0 开始的区别

Modbus 是一种应用于工业自动化领域的通信协议,在设备之间进行数据交换。它支持多种数据类型(如线圈、离散输入、输入寄存器、保持寄存器),每种数据类型都有特定的地址范围。在使用 Modbus 通信时,设备的地址可以从 1 或 0 开始计数,这取决于具体实现。这种不同的基地址(1 或 0)选择,可能导致实际读取或写入的地址存在偏差,因此理解其差异是十分重要的。 1. Modbus 地址的基本概念