Beste Tweakers,
Momenteel ben ik aan het proberen om data te versturen van mijn plc(siemens S7-1200) naar mijn pc.
Via een python script wil ik de data ontvangen via TCP.
Op mijn plc draait momenteel een dom programma die 1 Byte verstuurd via TCP naar mijn pc.
Maar het probleem is dat ik niet ontvang op mijn pc. Hij maakt met succes een verbinding met de pc maar alleen kom ik met het probleem dat ik niets van data zie.
Soms zie ik gewoon een "?" verschijnen in de commandline maar voor de rest zie ik niet veel.
Ik verstuur dus gewoon binaire data van mijn Byte door naar mijn pc.
Dit is mijn script:
Ik heb al een paar dingen geprobeerd en opgezocht op internet.
Maar kom niet direct tot een goed resultaat. Ik krijg ook niet "no data" dus er moet wel data aanwezig zijn maar krijg geen output. Ziet iemand van jullie de oplossing?
Momenteel ben ik aan het proberen om data te versturen van mijn plc(siemens S7-1200) naar mijn pc.
Via een python script wil ik de data ontvangen via TCP.
Op mijn plc draait momenteel een dom programma die 1 Byte verstuurd via TCP naar mijn pc.
Maar het probleem is dat ik niet ontvang op mijn pc. Hij maakt met succes een verbinding met de pc maar alleen kom ik met het probleem dat ik niets van data zie.
Soms zie ik gewoon een "?" verschijnen in de commandline maar voor de rest zie ik niet veel.
Ik verstuur dus gewoon binaire data van mijn Byte door naar mijn pc.
Dit is mijn script:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
| #! /usr/bin/env python
#Socket importeren
import socket
import sys
#Server Data
serverHost = '192.168.0.4'
serverPort = 2000
# Socket aanmaken
socketConnection = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
print 'Socket created!'
# Socket binden aan IP
socketConnection.bind((serverHost, serverPort))
print 'Socket is binded'
socketConnection.listen(10)
print 'Socket is now listening'
while True:
plcConnection, plcAddress = socketConnection.accept()
print 'Connected with ' + plcAddress[0] + ':' + str(plcAddress[1])
data = plcConnection.recv(4)
print repr(data)
if not data:
print "no data"
break
plcConnection.close()
socketConnection.close() |
Ik heb al een paar dingen geprobeerd en opgezocht op internet.
Maar kom niet direct tot een goed resultaat. Ik krijg ook niet "no data" dus er moet wel data aanwezig zijn maar krijg geen output. Ziet iemand van jullie de oplossing?