西门子PLC1200--与电脑S7通讯

硬件构成

PLC为西门子1211DCDCDC
电脑上位机用PYTHON编写
二者通讯用网线,通讯协议用S7

PLC上的数据

PLC上的数据是2个uint,在DB1,地址偏移分别是0和2
需要注意的是DB块要关闭优化的块访问,否则是没有偏移地址的
在这里插入图片描述
PLC中的数据内容如下:
在这里插入图片描述
在监控表中将数据设置如下
在这里插入图片描述
41和42就是AB
63和64就是cd

Python编程

需要先安装snap7库

pip3 install python-snap7

完整代码如下

import snap7
import timeplc1 = snap7.client.Client()
plc1.connect('192.168.60.43', 0, 1)
print(f"connect: {plc1.get_connected()}")for x in range(0, 10):data = plc1.read_area(snap7.types.Areas.DB, 1, 0, 4)print(data)time.sleep(0.5)plc1.disconnect()

代码说明:

plc1.connect('192.168.60.43', 0, 1)

192.168.60.43是PLC的IP地址,0和1是默认连接参数,用默认的就行

data = plc1.read_area(snap7.types.Areas.DB, 1, 0, 4)    # 读取数据

将读取的数据存放到data,
括号内的参数:
snap7.types.Areas.DB 表示读取的是DB块
1 PLC中待访问的DB块的编号
0 数据的起始偏移地址,也就是图2中的偏移量
4 数据的长度,4字节

运行结果

在这里插入图片描述
连接状态:True
数据 ABcd 正常读出

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/41817.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

elementui中日期/时间的禁用处理,使用传值的方式

项目中,经常会用到 在一个学年或者一个学期或者某一个时间段需要做的某件事情,则我们需要在创建这个事件的时候,需要设置一定的时间周期,那这个时间周期就需要给一定的限制处理,避免用户的误操作,优化用户体验 如下:需求为,在选择学年后,学期的设置需要在学年中,且结束时间大…

Spring Cloud Gateway如何匹配某路径并进行路由转发

本案例,将/helloworld-app/**的请求转发到helloworld微服务的/**路径(既如lb://helloworld/**) 配置如下(见spring.cloud.gateway.routes配置): spring:application:name: SpringCloudGatewayDemocloud:n…

软件架构之计算机组成与体系结构

1.1计算机系统组成 计算机系统是一个硬件和软件的综合体,可以把它看成按功能划分的多级层次结构。 1.1.1 计算机硬件的组成 硬件通常是指一切看得见,摸得到的设备实体。原始的冯•诺依曼(VonNeumann)计算机在结构上是以运算器为…

2024年中国十大杰出起名大师排行榜,最厉害的易经姓名学改名字专家

在2024年揭晓的中国十大杰出易学泰斗评选中,一系列对姓名学与国学易经有深入研究的专家荣登榜单。其中,中国十大权威姓名学专家泰斗顶级杰出代表人物的师傅颜廷利大师以其在国际舞台上的卓越贡献和深邃学识,被公认为姓名学及易经起名领域的权…

C#程序调用Sql Server存储过程异常处理:调用存储过程后不返回、不抛异常的解决方案

目录 一、代码解析: 二、解决方案 1、增加日志记录 2、异步操作 注意事项 3、增加超时机制 4、使用线程池 5、使用信号量或事件 6、监控数据库连接状态 在C#程序操作Sql Server数据库的实际应用中,若异常就会抛出异常,我们还能找到异…

Leetcode 完美数

1.题目要求: 对于一个 正整数,如果它和除了它自身以外的所有 正因子 之和相等,我们称它为 「完美数」。给定一个 整数 n, 如果是完美数,返回 true;否则返回 false。示例 1:输入:num 28 输出&a…

2024年6月份找工作和面试总结

转眼间6月份已经过完了,2024年已经过了一半,希望大家都找到了合适的工作。 本人前段时间写了5月份找工作的情况,请查看2024年5月份面试总结-CSDN博客 但是后续写的总结被和谐了,不知道这篇文章能不能发出来。 1、6月份面试机会依…

网络爬虫基础

网络爬虫基础 网络爬虫,也被称为网络蜘蛛或爬虫,是一种用于自动浏览互联网并从网页中提取信息的软件程序。它们能够访问网站,解析页面内容,并收集所需数据。Python语言因其简洁的语法和强大的库支持,成为实现网络爬虫…

verilog读写文件注意事项

想要的16进制数是文本格式提供的文件,想将16进制数提取到变量内, 可以使用 f s c a n f ( f d 1 , " 也可以使用 fscanf(fd1,"%h",rd_byte);实现 也可以使用 fscanf(fd1,"也可以使用readmemh(“./FILE/1.txt”,mem);//fe放在mem[0…

运用Redis作为设备注册中心,解决20w+设备高并发读写,高性能读写异步把数据同步到mysql持久化。

使用 Redis 作为设备注册中心,并通过高并发读写将数据异步同步到 MySQL 数据库,可以采用以下策略: 1. **设备注册与发现**: - 使用 Redis 的字符串或哈希表存储设备信息,其中键可以是设备的唯一标识符。 2. **高并…

基于Android Studio零食工坊

目录 项目介绍 图片展示 运行环境 获取方式 项目介绍 用户 可以浏览商品 , 查询商品 , 加入购物车 , 结算商品 , 查看浏览记录 , 修改密码 , 修改个人信息 , 查询订单 管理员 能够实现商品的…

别再写一堆 if 判断了?分享 1 段优质 JS 代码片段!

本内容首发于工粽号:程序员大澈,每日分享一段优质代码片段,欢迎关注和投稿! 大家好,我是大澈! 本文约 700 字,整篇阅读约需 1 分钟。 今天分享一段优质 JS 代码片段,用条件数组来简…

huggingface笔记:gpt2

0 使用的tips GPT-2是一个具有绝对位置嵌入的模型,因此通常建议在输入的右侧而不是左侧填充GPT-2是通过因果语言建模(CLM)目标进行训练的,因此在预测序列中的下一个标记方面非常强大 利用这一特性,GPT-2可以生成语法连…

C#面 :ASP.Net Core中有哪些异常处理的方案?

在 ASP.NET Core中,有多种异常处理方案可供选择。以下是其中几种常见的异常处理方案: 中间件异常处理: ASP.NET Core提供了一个中间件来处理全局异常。通过在Startup类的Configure方法中添加UseExceptionHandler中间件,可以捕获…

Autosar MCAL-S32k324 Crypto配置-RandomNumber生成及使用

文章目录 前言CryptoPrimitivesCryptoPrimitiveAlgorithmFamilyCryptoPrimitiveAlgorithmModeCryptoPrimitiveAlgorithmSecondaryFamilyCryptoPrimitiveServiceCryptoDriverObject代码使用Random Generate执行流程配置job函数使用示例总结前言 之前介绍过AES-CMAC算法的配置,…

Windows 与 Windows Server 2022环境下如何开启远程桌面

文章目录 前言Windows 环境下如何开启远程桌面控制功能Windows Server 环境下如何开启远程桌面 前言 我这边是客户需要搭建一套备份系统,整体的系统流程是这样的:客户的笔记本或者其他PC工具可以自由访问到我司搭建的服务器平台并进行文件传输&#xff…

【C++】开源:地图投影和坐标转换proj库配置使用

😏★,:.☆( ̄▽ ̄)/$:.★ 😏 这篇文章主要介绍地图投影和坐标转换proj库配置使用。 无专精则不能成,无涉猎则不能通。——梁启超 欢迎来到我的博客,一起学习,共同进步。 喜欢的朋友可以关注一下&a…

vue中的watch和$watch的用法实际场景和区别

watch(组件选项) watch 是Vue组件的一个选项,它允许你定义一些监听器,这些监听器会在组件的响应式数据变化时调用。它主要用于组件内部的数据监听。 实际场景: 当组件内部的数据变化时,需要执行一些操作&…

5款极其强大的大模型文生图工具!

文生图技术是一种基于深度学习的技术,可以根据自然语言描述生成相应的高品质图像。 下面介绍几个目前市场上比较优秀的工具或网站,并制作一张男性的白袍巫师图来比较。 针对大模型和AIGC技术趋势、AIGC 算法项目落地经验分享、新手如何入门算法岗、该如…

el-scrollbar组件使用踩坑记录

一、el-scrollbar和浏览器原生滚动条一起出现 问题描述 el-scrollbar组件主要用于替换浏览器原生导航条。如下图所示,使用el-scrollbar组件后,发现未能成功替换掉浏览器原生导航条,二者同时出现。 引发原因 el-scrollbar的height属性如果…