| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 网络协议 -> LabVIEW 2020 实现最简单的Modbus TCP客户端程序(三) -> 正文阅读 |
|
[网络协议]LabVIEW 2020 实现最简单的Modbus TCP客户端程序(三) |
LabVIEW 2020 实现最简单的Modbus TCP客户端程序系列教程: ? ? ? ? LabVIEW 2020 实现最简单的Modbus TCP客户端程序(一) ? ? ? ? LabVIEW 2020 实现最简单的Modbus TCP客户端程序(二) ? ? ? ? LabVIEW 2020 实现最简单的Modbus TCP客户端程序(三) ? 目录 ?2、从MODBUS TCP库拖一个New TCP MAster控件到平铺式顺序结构的第1帧 ? 3、从MODBUS TCP库拖一个Read Holding Registers控件到平铺式顺序结构的第2帧内的While循环内 ?4、从MODBUS TCP库拖一个Read Discrete Inputs控件到平铺式顺序结构的第2帧内的While循环内 5、New TCP MAster控件、Read Holding Registers控件、Read Discrete Inputs控件连线 ?
? ? ? ? 上一个教程??LabVIEW 2020 实现最简单的Modbus TCP客户端程序(二)实现了最简单的Modbus TCP客户端程序,完成如下功能: ? ? ? (1)、LabVIEW Modbus TCP客户端程序读取服务器10个保持寄存器的值,即:读取40001,40002,40003,40004,40005,40006,40007,40008,40009,40010。 ? ? ? (2)、LabVIEW Modbus TCP客户端程序读取服务器10个离散输入寄存器的值,即:读取10001,10002,10003,10004,10005,10006,10007,10008,10009,10010。 ? ? ? ?但是上一个教程有问题,运行几分钟后,会弹出如下错误: ? ? ? ? ? ? ?
? ? ? ? 上一个教程??LabVIEW 2020 实现最简单的Modbus TCP客户端程序(二)程序运行一会出现错误的原因为: ? ? ? ? ? ? ? ? 初始化TCP MODBUS代码部分也放到了While循环中,这样会造成不停的初始化TCP MODBUS端口,是造成错误的原因。? ? ? ??
? ? ? ?程序框图增加1个平铺式顺序结构 ?平铺式顺序结构有2帧,第1帧用来初始化TCP MODBUS端口,第2帧调用Read Holding Registers控件和Read Discrete Inputs控件读取40001---40010以及10001---10010。 注: ? ? ? 第1帧只运行1次,初始化TCP MODBUS端口 ? ? ? 第2帧内再增加1个While循环,循环调用Read Holding Registers控件和Read Discrete Inputs控件读取40001---40010以及10001---10010。
? ? ? ? 前面板设计1个数值数组,具体操作过程参见??LabVIEW 2020 实现最简单的Modbus TCP客户端程序(二) ? ? ? ? 前面板设计1个布尔数组,具体操作过程参见??LabVIEW 2020 实现最简单的Modbus TCP客户端程序(二) ? ? ? ? 前面板设计1个按钮用于退出While循环,具体操作过程参见??LabVIEW 2020 实现最简单的Modbus TCP客户端程序(二) ??
? ? ? ? 设计程序框图大致步骤如下: ? ? ? ? ?1、拖一个平铺式顺序结构 ? ? ? ? ? ? ? (1)、平铺式顺序结构增加一帧变成2帧 ? ? ? ? ? ? ? (2)、平铺式顺序结构的第2帧内增加一个While循环 ? ? ? ? ? ? ? (3)、While循环内增加一个200毫秒的定时器(让TCP MODBUS客户端每隔200毫秒读取一次TCP MODBUS服务器的内容) ? ? ? ? ?2、从MODBUS TCP库拖一个New TCP MAster控件到平铺式顺序结构的第1帧 ? ? ? ? ? ? ? ?填写IP地址127.0.0.1,填写端口号502,然后连线,用于初始化TCP MODBUS端口,目的是初始化TCP MODBUS端口程序代码只运行1次。 ? ? ? ? 3、从MODBUS TCP库拖一个Read Holding Registers控件到平铺式顺序结构的第2帧内的While循环内 ? ? ? ? ? ? ? 填写起始地址0,填写寄存器数量10(表示读保持寄存器或者说4X寄存器,40001-40010),然后连线。 ? ? ? ? 4、从MODBUS TCP库拖一个Read Discrete Inputs控件到平铺式顺序结构的第2帧内的While循环内 ? ? ? ? ? ? ? 填写起始地址0,填写寄存器数量10(表示读离散输入寄存器或者说1X寄存器,10001-10010),然后连线。
1、拖一个平铺式顺序结构? ? ? ? 平铺式顺序结构增加一帧变成2帧,平铺式顺序结构的第2帧内增加一个While循环,While循环内增加一个200毫秒的定时器(让TCP MODBUS客户端每隔200毫秒读取一次TCP MODBUS服务器的内容)。 (1)、拖一个平铺式顺序结构 ?(2)、平铺式顺序结构增加一帧变成2帧 ? ?(3)、平铺式顺序结构的第2帧内增加1个While循环 ?(4)、While循环内增加一个200毫秒的定时器 ? ? ? ? 让TCP MODBUS客户端每隔200毫秒读取一次TCP MODBUS服务器的内容。 ? ?2、从MODBUS TCP库拖一个New TCP MAster控件到平铺式顺序结构的第1帧? ?填写IP地址127.0.0.1,填写端口号502,然后连线。 ? 3、从MODBUS TCP库拖一个Read Holding Registers控件到平铺式顺序结构的第2帧内的While循环内? 填写起始地址0,填写寄存器数量10(表示读保持寄存器或者说4X寄存器,40001-40010),然后连线。? ?4、从MODBUS TCP库拖一个Read Discrete Inputs控件到平铺式顺序结构的第2帧内的While循环内
5、New TCP MAster控件、Read Holding Registers控件、Read Discrete Inputs控件连线?6、While循环结束条件连线 ??
1、运行MBSlave.exe?仿真软件(MODBUS TCP服务器) 2、创建保持寄存器起始地址=1,寄存器数量=10 ??3、创建离散输入寄存器起始地址=1,寄存器数量=10? 4、联网 5、运行labVIEW MODBUS客户端程序 ? ?连续运行30分钟,一切正常,不会弹出上一教程的错误,?验证完毕。
本教程提供 ? ? ? ? ?(1)、labVIEW2020源程序 ? ?? ? ? (2)、mbslave.exe? TCP从站仿真软件 下载链接: |
|
网络协议 最新文章 |
使用Easyswoole 搭建简单的Websoket服务 |
常见的数据通信方式有哪些? |
Openssl 1024bit RSA算法---公私钥获取和处 |
HTTPS协议的密钥交换流程 |
《小白WEB安全入门》03. 漏洞篇 |
HttpRunner4.x 安装与使用 |
2021-07-04 |
手写RPC学习笔记 |
K8S高可用版本部署 |
mySQL计算IP地址范围 |
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2025年3日历 | -2025/3/9 10:51:17- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |