snap7 and pyS7 test files for s300 and s400 plcs
This commit is contained in:
parent
a2d6cf2f9a
commit
21f6e58e2c
@ -2,21 +2,20 @@ import time
|
||||
from pyS7 import S7Client
|
||||
import pprint
|
||||
|
||||
LOOPS = 5
|
||||
LOOPS = 3
|
||||
counter = 0
|
||||
client = S7Client(address="172.16.3.231", rack=0, slot=2)
|
||||
while counter < LOOPS:
|
||||
try:
|
||||
# Create a new 'S7Client' object to connect to S7-300/400/1200/1500 PLC.
|
||||
# Provide the PLC's IP address and slot/rack information
|
||||
client = S7Client(address="172.16.3.231", rack=0, slot=1)
|
||||
|
||||
# client = S7Client(address="172.16.4.220", rack=0, slot=2)
|
||||
# Establish connection with the PLC
|
||||
client.connect()
|
||||
|
||||
# Define area tags to read
|
||||
tags = [
|
||||
"DB9,DBD0",
|
||||
]
|
||||
tags = ["DB9,DBD0"]
|
||||
|
||||
# Read the data from the PLC using the specified tag list
|
||||
data = client.read(tags=tags)
|
||||
|
@ -1,17 +1,21 @@
|
||||
import time
|
||||
import snap7
|
||||
from snap7.util.getters import get_lreal, get_dint
|
||||
import pprint
|
||||
|
||||
LOOPS = 5
|
||||
LOOPS = 20
|
||||
counter = 0
|
||||
while counter < LOOPS:
|
||||
try:
|
||||
plc = snap7.client.Client()
|
||||
plc.connect("172.16.3.231", 0, 1)
|
||||
pprint.pprint(plc.get_cpu_state())
|
||||
plc.connect("172.16.3.231", 0, 2)
|
||||
# pprint.pprint(plc.get_cpu_state())
|
||||
data = plc.db_read(9, 0, 4) # Define range of bytes to read
|
||||
energy_value = get_dint(data, 0) # Read energy value
|
||||
pprint.pprint(energy_value)
|
||||
except Exception as e:
|
||||
pprint.pprint(e)
|
||||
finally:
|
||||
plc.disconnect()
|
||||
counter += 1
|
||||
time.sleep(1)
|
||||
time.sleep(3)
|
||||
|
Loading…
x
Reference in New Issue
Block a user