SPSDiver
Posts: 1 Joined: Thu Apr 05, 2018 5:32 am
Raspberry PI + Siemens S7 via Profinet
Hallo zusammen,
ich versuche meinen Raspberry Pi 3 B V1. 2 mit einer Siemens S7 PLC Device (S7-1500) über ProfiNet zu verbinden. Bisher habe ich herausgefunden, um im Siemens Programm TIA die Verbindung herstellen zu können eine GSD-Datei benötigt wird. Raspberry pi mit s7 verbinden online. Wo bekomme ich diese Datei her? Danke vorab schon mal für eure Hilfe
Return to "Deutsch"
Raspberry Pi Mit S7 Verbinden Online
0)
except Exception as ex:
print "Verbindungsfehler"
sleep(5. 0)
if __name__ == "__main__":
main()
#4
Hi Wal, danke für deinen Ratschlag. Mit ioBroker habe ich es noch nicht versucht, wollte erst aber da ich von Skripten wie Python oder Java programmieren nicht viel Ahnung habe, ist der Raspi nur eine externe Peripherie für diverse Sensoren. Hi emilio20, mein Vorhaben ist, die Werte die ich von Raspi kriege, mit der S7-1200 weiter auszuwerten. Und da ich mich besser mit der SPS Programmierung wie FUP oder KOP auskenne wäre es die einfachste und günstigste Variante für mich. TIA - SPS über Node-Red mit Raspberry Pi verbinden | SPS-Forum - Automatisierung und Elektrotechnik. Es werden ca. 15 Raspberry Pi Zero sein die, die SPS ansprechen würden. Werde auch alles mit Netzwerkleitung verdrahten, möchte so wenig wie möglich Funksignale im Haus haben. Danke für den Script probiere gleich aus. Gruß Slawa
#5
So, habs jetzt ausprobiert, hatte leider keinen Erfolg gehabt. pi@raspberrypi:~ $ sudo python /home/pi/
File "/home/pi/", line 7
^
SyntaxError: invalid syntax
Versuche gleich noch Einiges vielleicht kriege ich es hin.
Raspberry Pi Mit S7 Verbinden Die
Funktioniert das oder gibt es eine bessere und einfachere Möglichkeit? - kann ich mit einem Python-Skript auf den anderen beiden Raspberry Pi3b (das gleiche Skript auf beiden Raspberry Pi natürlich) über das lokale Netzwerk auf die Datenbank zugreifen und die einzelnen Variablen in dem weiterführenden Skript verwenden? Ich hoffe mein Problem wurde halbwegs verständlich erklärt. Bei weiteren Fragen oder Unklarheiten könnt ihr euch gerne melden. Vielen Dank schon mal und beste Grüße Flo
#2
Es gibt ziemlich viele Möglichkeiten das auf die eine oder andere Art umzusetzen. OPC-UA Snap7 MQTT TCP/UDP Modbus (TCP) Der moderne Weg wäre z. B. übers Netzwerk via OPC-UA die Daten auszutauschen. Benötigt aber eine 1200/1500 mit aktueller Firmware. Raspberry pi mit s7 verbinden die. Die FrameTime ist 100 ms. Für schnelle Anwendungen also ungeeignet, es seiden man kauft die Modelle mit 10 ms. Dann gibt es die Möglichkeit via open user communication über TCP/UDP sein eigenes Protokoll zu erstellen (umständlich). Etwas weniger Umständlich wäre MQTT.
Raspberry Pi Mit S7 Verbinden 2
Hilfe / Ratschläge
slawa
13. Februar 2018
Erledigt
#1
Hallo zusammen, bräuchte Hilfe bei einem Script. import os, sys, time
import as c
from import *
from ap7types import *
while True:
if __name__=="__main__":
plc = ()
nnect('192. 168. 0. 1', 0, 1)
print "Verbindung OK"
(2)
Alles anzeigen
Das ist eine Verbindungsabfrage von Raspberry zu der Simatic S7-1200 von Siemens. Funktioniert soweit möchte eine Funktion einbauen habe aber keine Idee wie ich es aufbauen soll. Sonstiges - Zugriff mittels Raspberry Pi 3b auf Siemens SPS | SPS-Forum - Automatisierung und Elektrotechnik. Bei einer Funktionierender Verbindung kriege ich alle 2s eine Verbindungsbestätigung. Sobald ich die Netzwerkleitung ziehe bricht die Verbindung ab, und das Skript wird beendet mit folgender Fehlermeldung: No handlers could be found for logger "" Traceback (most recent call last): File "", line 16, in nnect('192. 1', 0, 1) File "/usr/local/lib/python2. 7/dist-packages/snap7/", line 25, in f check_error(code, context="client") File "/usr/local/lib/python2. 7/dist-packages/snap7/", line 66, in check_error raise Snap7Exception(error) ap7Exception: TCP: Unreachable peer Ist ja auch verständlich da es kein Verbindung mehr besteht.
Raspberry Pi Mit S7 Verbinden For Sale
Mein Vorhaben ist: sobald die Verbindung abbricht soll das Script wieder nach ca. 5s in die Verbindungsabfrage zurück und nochmal abfragen. Hätte da einer eine Idee? #2
Ich würde eine Smarthome-Lösung nutzen. Ich selber habe iobroker mit dem S7-Plugin am laufen und kann auch über das Java-Plugin und dem MQTT-Plugin Nachrichten von der DoorPi schicken. Aus iobroker zur DoorPi geht über das virtuelle Keyboard oder direkt über eine Url. iobroker und doorpi kann auf dem gleichen Raspi laufen. Raspberry pi mit s7 verbinden for sale. Zur Zeit schicke ich die 3 letzten Klingelbildadressen und den Ruf an iobroker, der schickt mir dann das letzte Bild und den Ruf über Telegramm bei Abwesenheit auf mein Handy. #3
Hallo slawa, was hast du genau vor? Ich bin grade dabei ein Programm zu schreiben mit dem ich über eine S7 mit doorpi über Virtuelle Keyboard komuniziere. Du mus ein try einbauen
from time import sleep
import snap7
from import*
import struct
def main()
try:
nnect("192. 1', 0, 1)
con = t_connected()
print "Connect", con
plc. disconnect()
sleep(2.
Raspberry Pi Mit S7 Verbinden E
Sucht euch eine aus. Gruß
Woher ich das weiß: Beruf – 12 Jahre, Softwareentwickler und Elektrokonstrukteur
Community-Experte
Computer, Technik, Technologie
Mein Tipp: frag den Lehrer
Nur so lernst du dann auch deine Schwachstellen genau und kannst da nachbessern.
Wenn die Datenbank nicht erreichbar ist, kann weder geschrieben noch gelesen werden (ist ja logisch). Vom Aufbau würde ich das so machen, dass ein Daemon eine Datenbank mit Daten versorgt. Die Clients können sich mit der Datenbank verbinden und abfragen. Es gäbe auch die Möglichkeit sqlite lokal zu nutzen und die Daten dann über ein eigenes Protokoll oder XML-RPC/JSON-RPC oder mit einer REST-API den Clients zur Verfügung zu stellen. Die meisten Webentwickler tendieren zu einer REST-API. Für nodejs wird es sicherlich auch gute Bibliotheken geben. #3
Seit der Firmware-Version 2. Verbindung mit S7 via Profinet | SPS-Forum - Automatisierung und Elektrotechnik. 8 kannst du mit geringem Aufwand über die JSON-RPC API des S7-1500 Webservers auf Prozessvariablen zugreifen, sofern du symbolische Namen für deine Inputs definierst hast. Auf Youtube gibt es da eine schöne Demonstration:
Content embedded from external sources will not be displayed without your consent. Through the activation of external content, you agree that personal data may be transferred to third party platforms.