当前位置: 首页 > news >正文

Labview使用modbus或S7与PLC通信

一、modbus

1.使用VI Package Manager (VIPM)安装modbus库

2.安装好后如下显示会有Modbus Library

3.Master API作为客户端,如下有一个例程

4.Slave API作为服务端,如下有一个例程

上述两个例程是通过IP 127.0.0.1可以互相通信的。数据是一直存在服务端的,服务端程序不关闭数据不会丢失。在没有PLC的情况下可以写另一端程序模拟PLC逻辑流程。

5.由于modbus函数的一个地址两个字节,PLC给的地址可能如下,modbus读0时会把0与1数据都读到。具体modbus地址与PLC地址对应关系要根据实际情况修改。

modbus

address

PLC start address

PLC

end address

00.00.0
0.10.1
0.20.2
0.30.3
0.40.4
0.50.5
0.60.6
0.70.7
1.01.0
1.11.1
1.21.2
1.31.3
1.41.4
1.51.5
1.61.6
1.71.7
1010.011.7
1212.015.7

modbus

address

PLC

start address

PLC

end address

100100.0100.0
100.1100.1
101.0101.0
101.1101.1
101.2101.2
101102.0103.7
102104.0107.7

二、S7

通过网盘分享的文件:labview与PLC S7例程.zip
链接: https://pan.baidu.com/s/1srfp6gwApoPJB_FxzzEFAg?pwd=yp5d 提取码: yp5d 

1.使用VI Package Manager (VIPM)安装S7库

2.安装好后如下显示

3.验证:

西门子plc使用如下例程下载到PLC中

通过指令编程实现S7-200 SMART 之间S7通信-SIMATIC S7-200 SMART通信-PLC-西门子下载中心常见问题大全

Labview如下:192.168.0.185为PLC的IP地址,Port默认102

多线程通信注意:每个循环的读写要使用独立的 链接。不能像第二张图使用一个 链接。

如下会报错(两个线程同时运行,应答帧数据存在被别的线程读取导致报错,两个轮流运行是可行的

http://www.dtcms.com/a/359724.html

相关文章:

  • 微服务01
  • Java与分布式系统的集成与实现:从基础到应用!
  • 从 JDK 8 到 JDK 17
  • 【Python语法基础学习笔记】函数定义与使用
  • Spring Security 6.x 功能概览与代码示例
  • 【四位加密】2022-10-25
  • 电感值过大过小会影响什么
  • 基于VS平台的QT开发全流程指南
  • 杂谈:大模型与垂直场景融合的技术趋势
  • 线程池八股文
  • 语义分析:从读懂到理解的深度跨越
  • Python基础:函数
  • Visual Studio Code中launch.json的解析笔记
  • 【Canvas与旗帜】哥伦比亚旗圆饼
  • 【芯片测试篇】:LIN总线
  • 人工智能-python-深度学习-
  • 自制扫地机器人(一)20 元级机械自动避障扫地机器人——东方仙盟
  • 计算机网络---http(超文本传输协议)
  • 【开题答辩全过程】以 留守儿童志愿者服务系统为例,包含答辩的问题和答案
  • 从企业和业务视角来拒绝中台
  • 什么是 WAF?全面解读 Web 应用防火墙的原理与应用
  • Vue3 响应式基础
  • TFS-2002《Fuzzy Clustering With Viewpoints》
  • 在SAP系统中,如何查询已经被打上了删除标记的生产订单?
  • AI 赋能 Java 开发效率:全流程痛点解决与实践案例(一)
  • 云网络(参考自腾讯云计算工程师认证)
  • 【开题答辩全过程】以 基于微信小程序的教学辅助系统 为例,包含答辩的问题和答案
  • ES集群部署-EFK架构实战
  • 【Python基础】2. 常量与变量
  • c++ Effective c++ 条款5