与 S7 系列 PLC 通讯的简便方法。
项目描述
易S7
EasyS7 是一个 Python 库,用于从 Siemens S7 系列 PLC 读取数据块。它依赖于 python-snap7 库,因此您应该首先安装该库。
安装
在安装 EasyS7 之前,您应该按照文档中描述的步骤进行操作。之后,您可以使用以下命令通过包管理器pip安装EasyS7
$ pip install EasyS7
用法
为了能够使用这个库,你应该有一个你想要阅读的数据库布局。此布局用于获取数据类型及其偏移量,以便能够进行相关的字节转换操作。可以通过将 db 从 TIA 门户复制到 txt 文件来获得此布局。您应该复制包含名称、数据类型和偏移信息的前 3 列。一个示例布局是:
dummy1 Real 0
dummy2 Int 4
dummy3 Int 6
dummy4 Real 8
dummy5 Real 12
dummy6 Real 16
dummy7 Real 20
dummy8 Int 24
dummy9 Int 26
dummy10 Int 28
dummy11 Int 30
dummy12 Int 32
dummy13 Int 34
dummy14 Int 36
dummy15 Int 38
dummy16 String[32] 40
dummy17 Bool 74.0
dummy18 Bool 74.1
dummy19 Bool 74.2
dummy20 Bool 74.3
dummy21 Bool 74.4
dummy22 Bool 74.5
dummy23 Bool 74.6
dummy24 Bool 74.7
dummy25 Bool 75.0
dummy26 Real 76
dummy27 Bool 80.0
dummy28 Bool 80.1
dummy29 Bool 80.2
您可以使用此示例代码读取相关数据
from EasyS7.PLC import PLC
plc = PLC('192.168.1.100',0,1) #create a PLC object with ip, rack and slot
plc.connect() #create a connection
data = plc.readDb('path/to/file.txt',130) #read db with layout and db number
输出字典如下:
{'dummy1': 0.8399999737739563, 'dummy2': 15, 'dummy3': 120, 'dummy4': 14.0, 'dummy5': 4.510000228881836, 'dummy6': 2.7216904163360596, 'dummy7': 0.19440646469593048, 'dummy8': 2, 'dummy9': 0, 'dummy10': 0, 'dummy11': 0, 'dummy12': 0, 'dummy13': 0, 'dummy14': 0, 'dummy15': 0, 'dummy16': 'Kompozit 3', 'dummy17': False, 'dummy18': False, 'dummy19': False, 'dummy20': False, 'dummy21': False, 'dummy22': False, 'dummy23': False, 'dummy24': False, 'dummy25': False, 'dummy26': 67.78571319580078, 'dummy27': False, 'dummy28': False, 'dummy29': True}
贡献
欢迎请求请求。对于重大更改,请先打开一个问题讨论您想要更改的内容。
执照
项目详情
下载文件
下载适用于您平台的文件。如果您不确定要选择哪个,请了解有关安装包的更多信息。
源分布
EasyS7-2.0.0.tar.gz
(7.2 kB
查看哈希)
内置分布
EasyS7-2.0.0-py3-none-any.whl
(10.1 kB
查看哈希)
关
EasyS7-2.0.0.tar.gz的哈希值
| 算法 | 哈希摘要 | |
|---|---|---|
| SHA256 | 1fd7a6e11ba9eab80391aa7abde6061431484ff1b820282c94ff8495580dd82e |
|
| MD5 | e9542871f358d69b77e91b18831ad208 |
|
| 布莱克2-256 | 9dab3d48e2571ee326e5e8082d24b9dd58b5e4e6c4690d28ed8a7f155855c8dc |
关
EasyS7-2.0.0 -py3-none-any.whl 的哈希值
| 算法 | 哈希摘要 | |
|---|---|---|
| SHA256 | 962ec63a9b2439fd2db89c87dd817b0281153149acf9fed2cf624c91575b8d7a |
|
| MD5 | 22bceabf5f5f9dbd2a384bb75bf93284 |
|
| 布莱克2-256 | 923862a89ab3ff48206450dddbba84450f97a2bd0eeeb43534537256c1639eb4 |