TIA Verbindung Tia und C#

Bobby270871

Level-1
Beiträge
6
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo User

Ich bin neu in diesem Forum und bräuchte Hilfe von Euch Profis.
Ich bin staatl. gepr. E-Techniker Schwerpunkt Automatisierung. Daher kenne ich mich sehr gut mit SPS Steuerungen und deren Programmierung aus, vorrangig Siemens.
Jetzt wurde ich auf Arbeit vor ein völlig neues Problem gestellt. Eine HMI im Visual Studio 2017 C# erstellen und damit eine S7 CPU 1215 steuern, welche wiederum eine Maschine steuert.
Ich weiß, das die 1200´er Steuerungen eine OPC Funktion haben. Dies habe ich auch schon versucht, aber leider ohne Erfolg.
Nun arbeite ich mich aktuell gerade in das Thema C# Visual Studio ein.
Vielleicht habt Ihr ja Vorschläge bzw. Beispielcodes, welche mir beim Einarbeiten helfen könnten.

LG Bobby
:roll:
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Danke für die schnelle Antwort. Habe natürlich einiges ausprobiert, leider ohne Erfolg. Die PLC und das Tia sind nicht das Problem, die Schnittstelle im C# programmieren und parametrieren ist das Problem.

Gruß Bobby
 
Wir nutzen bei uns versch Wege um mit einer .NET App auf eine S7 zuzugreifen :
- da erwähnte AGlink haben wir damals genutzt zusammen mit dem IBH Net
- wenn eine S7 mit Ethernet zum Einsatz kommt haben wir umgestellt auf ComDrvS7 von MHJ
- ganz frisch habe ich eine .NET Anwendung umgesetzt als OPC Client. Dazu nutze ich das OPC UA ClientFramework von Unified Automation

Aus meiner Sicht der unschlagbare Vorteil von OPC, man kann symbolisch auf einzelne Variablen in einem DB zugreifen. Mit den beiden anderen Varianten immer nur ein DB als ganzes.

mfg
Ronny
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Aus meiner Sicht der unschlagbare Vorteil von OPC, man kann symbolisch auf einzelne Variablen in einem DB zugreifen. Mit den beiden anderen Varianten immer nur ein DB als ganzes.

Symbolisch sollte über AGLink auch möglich sein bei der 1200/1500er, ohne die Nachteile des OPC-Servers auf der Steuerung.
 
Hallo Rainer

Ich nutze eine CPU 1215 V4.4 und das TiaPortal V16. Mit beiden sollte es möglich sein Daten über OPC UA auszutauschen.
Die CPU besitzt einen OPC Server, den man nur in der Hardware aktivieren und einstellen muss. Dann schafft man sich noch eine Kommunikationsschnittstelle, zieht die Variablen hinein und
das sollte es gewesen sein. Funktioniert soweit auch alles gut. Ich starte dann im Visual Studio die Kommunikation und mir wird auch der Status " Online" zurückgemeldet. Ich bekomme aber keinen
Datenaustausch hin. Laut Siemens sollte der OPC Server der CPU ganz einfach funktionieren. Ich würde die Kommunikation auch gerne über diesen Server realisieren wollen.

Grüße Bobby
 
Hallo Rainer

Ich nutze eine CPU 1215 V4.4 und das TiaPortal V16. Mit beiden sollte es möglich sein Daten über OPC UA auszutauschen.
Die CPU besitzt einen OPC Server, den man nur in der Hardware aktivieren und einstellen muss. Dann schafft man sich noch eine Kommunikationsschnittstelle, zieht die Variablen hinein und
das sollte es gewesen sein. Funktioniert soweit auch alles gut. Ich starte dann im Visual Studio die Kommunikation und mir wird auch der Status " Online" zurückgemeldet. Ich bekomme aber keinen
Datenaustausch hin. Laut Siemens sollte der OPC Server der CPU ganz einfach funktionieren. Ich würde die Kommunikation auch gerne über diesen Server realisieren wollen.

Grüße Bobby

Die Kommunikation per OPC UA ist zwar einfach, aber langsam.
Schau mal im Handbuch welcher Sendetakt bei deiner CPU möglich ist.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Ich teste OPC UA Verbindungen immer erst mit dem UaExpert Tool (kostenlos) von Unified Automation. Dann sieht man das das System an sich funktioniert. Alles andere ist dann Programmierfleißarbeit in .NET (oder was auch immer)
 
Wenn es eine schnellere und einfachere Methode gibt, bin ich dafür offen. Mein Problem ist, meine Kenntnisse in C# halten sich in Grenzen.
Man muss sich einen Client basteln und da liegt meine Schwäche.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Nun, dann wirst Du denke ich schnell an Grenzen stoßen.

C# perse (oder irgendeine andere .NET Sprache) können out of the box kein OPC UA. Du wirst ein entsprechendes Framework kaufen und einbinden müssen.

Du schreibst oben "Ich starte dann im Visual Studio die Kommunikation und mir wird auch der Status " Online"". Da fehlen aber noch ganz viele Infos wie Du das machst. Visual Studio ist ja nur eine IDE für ganz viele Unterschiedliche Projekttypen.

Also ich empfehle (wenn fundierte Kenntnisse in .NET/C# vorhanden sind) :
- erst die Verbindung mit UaExpert testen
- dann ein OPC UA Framework besorhen (UnifiedAutomation kann ich empfehlen) und sich damit einarbeiten

- oder eine ander der oben genannten Möglichkeiten nutzen (AG Link oder MHJ), in jedem Fall muß man aber eine Bibliothek/Framework in sein Projekt einbinden.

mfg
Ronny
 
... Mein Problem ist, meine Kenntnisse in C# halten sich in Grenzen.
Man muss sich einen Client basteln und da liegt meine Schwäche.

Also dafür gibt es aber Beispiele - zumindestens bei Deltalogic bin ich mir da ziemlich sicher ...
Allerdings gibt mir deine Aussage hinsichtlich C# (bzw. .Net ?) dann schon zu denken - wo willst du denn am Ende hin wenn sich deine Kenntnisse da in Grenzen halten ...?
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Die Maschinen, die wir herstellen und programmieren wurden bis jetzt über das herkömmliche TiaPortal mit normalen HMI Panel im WinCC projektiert.
Da die Anforderungen aber immer komplexer werden, haben sich unsere Technologen überlegt die HMI auf einem Windowsrechner mit Visual Studio und C# zu entwickeln und laufen zu lassen.
Jetzt muss ich mich da irgendwie einarbeiten. Es gibt einige Beispielprojekte im Netz zum Thema Verbindung PLC und C#. Ein Projekt, welches ich ausprobiert habe war" Simple HMI with C# und WPF.
Die vorhandenen Programme habe ich ins Visual Studio und ins TiaPortal übertragen. Hat soweit alles funktioniert. Ich bekomme sogar eine Online Verbindung angezeigt. Nur der Datenaustausch klappt nicht. Deswegen bin ich auf der Suche nach Beispielprojekten, um mich im Visual Studio reinzufitzen.
 
... dann solltest du/ihr vielleicht mal bei Inosoft schauen - das ist zwar nicht ganz preisgünstig ... aber die kommen dir da schon einen Riesenschritt entgegen. Da geht dann Alles - auch eigene Controls erstellen etc ...

Gruß
Larry
 
Die Maschinen, die wir herstellen und programmieren wurden bis jetzt über das herkömmliche TiaPortal mit normalen HMI Panel im WinCC projektiert.
Da die Anforderungen aber immer komplexer werden, haben sich unsere Technologen überlegt die HMI auf einem Windowsrechner mit Visual Studio und C# zu entwickeln und laufen zu lassen.
Jetzt muss ich mich da irgendwie einarbeiten. Es gibt einige Beispielprojekte im Netz zum Thema Verbindung PLC und C#. Ein Projekt, welches ich ausprobiert habe war" Simple HMI with C# und WPF.
Die vorhandenen Programme habe ich ins Visual Studio und ins TiaPortal übertragen. Hat soweit alles funktioniert. Ich bekomme sogar eine Online Verbindung angezeigt. Nur der Datenaustausch klappt nicht. Deswegen bin ich auf der Suche nach Beispielprojekten, um mich im Visual Studio reinzufitzen.

Ich denke du hast irgendwie einen falschen Ansatz gewählt.
Um alleine die HMI Basisfunktionalität in Visualstudio umzusetzen, brauchst du einiges an Entwicklungszeit.
Ich sehe es auch so wie Larry, dass es deutlich einfacher wäre auf ein fertiges Toolkit wie eben VisiWin (Inosoft) zu setzen.

Gruß
Blockmove
 
Zu klären wäre vorab, wie aufwändig euer HMI ist bzw. sein soll und von welchen Stück- bzw. Installationszahlen ihr pro Jahr ausgeht. Eine Visu zu prügrammieren ist nicht gerade einfach. Denn nicht umsonst lassen sich die HMI-Hersteller ihre Tools entsprechend bezahlen. Unter Umständen ist eine käufliche Visu dann trotzdem noch billiger als eine selbstgeschriebene, vorallem wenn du kein Profi in der .net- oder C++-Entwicklung bist.
 
Hallo User

Ich danke Euch für Eure guten Vorschläge und werde diese mit meinen Technologen besprechen. Mal sehen, welche Lösung es wird. Da werd ich mich nochmal melden
und Hilfe benötigen. Bis dahin.
Gruss und Dank.
Bobby
 
Zurück
Oben