6 Stimmen

Gibt es erfolgreiche Profibus-Kommunikation von .NET aus?

Hat jemand erfolgreich mit dem Profibus aus einer .NET-Anwendung?

Wenn ja, welches Gerät/welche Karte haben Sie dafür verwendet, was war die Anwendung, und haben Sie irgendeinen bereits vorhandenen oder verfügbaren Code verwendet?

7voto

Rhys Punkte 4461

Wir haben Profibus nicht verwendet, aber wir haben DeviceNET (ein weiteres CAN-basiertes Protokoll), Ethernet/IP y ControlNet die alle ähnliche Herausforderungen haben.

Wir machen das seit den späten 1990er Jahren und verlassen uns daher hauptsächlich auf unseren selbst erstellten Code unter Verwendung von Standard-Hardware. Die Unternehmen, die in diesem Zeitraum Langlebigkeit bewiesen haben, sind meiner Erinnerung nach: -

  • AnyBus (HMS, www.anybus.com ) haben wir vor kurzem begonnen, ihre Gateway-Produkte zu verwenden, da wir Feldbusschnittstellen in der Nähe der Hardware platzieren und dann über normales Ethernet kommunizieren können (normalerweise über Ethernet/IP www.odva.org ). Dies hat den Vorteil, dass Hardware und PC nur durch ein Netzwerkkabel getrennt sind. Die Ethernet/IP .NET-Klassen wurden von uns selbst geschrieben, da zu dieser Zeit nicht viel auf dem Markt war. Ich bin sicher, dass eine schnelle Google-Suche geeignete Klassenbibliotheken finden würde
  • SST ( www.mysst.com ) verfügen seit mehr als einem Jahrzehnt über Feldbusschnittstellen. Die letzte SST-Karte, die wir für DeviceNET verwendet haben, hatte nur noch VB6-Beispielcode. Eine gute Auswahl an Feldbusunterstützung und verschiedene Formfaktoren, z.B. PC104, PCI, PMCIA
  • Beckhoff/Wago ( www.beckhoff.com , www.wago.com ) verwenden wir Beckhoff in der Regel eher für die E/A als für die Schnittstellenkarten, aber auch hier handelt es sich um ein Unternehmen, das schon seit langem existiert. Sie haben auch Produkte, die OPC unterstützen (eine weitere Möglichkeit, E/A-Informationen zu erhalten, ohne direkt mit der Hardware/den Gerätetreibern zu kommunizieren).

Ich schlage vor, keine OPC-Schnittstellen zur Hardware direkt zu verwenden (es ist OK für die Kommunikation über PC (.NET)->PLC->Profibus), da Sie sicherstellen müssen, dass das Steuersystem auf den Verlust der Kontrolle durch Ihre .NET-Anwendung reagiert. Ich gehe davon aus, dass Sie hier einen Profibus-Master (und keinen Slave) benötigen. Solange Ihr Steuersystem an sich ausfallsicher ist, sollte ein Kommunikationsverlust bedeuten, dass das Steuersystem in einen "Leerlauf"-Zustand übergeht und daher die meisten E/A in den ausfallsicheren Zustand zurückkehren.

Wir versuchen auch sicherzustellen, dass wir keinen sicherheitsrelevanten Code in .NET einfügen. Der größte Teil unseres .NET-Codes ist eine Benutzerschnittstelle von einer SPS, aber an einigen Stellen steuern wir den Feldbus direkt, stellen aber sicher, dass Hardware-Verriegelungen einen unsicheren Betrieb verhindern, entweder mit Sicherheitsschaltern/Relais oder einer kleinen SPS, die nur die Aufgabe der Verriegelung hat. Und vor allem: Machen Sie das System ausfallsicher! Wenn die Kommunikation mit dem .NET-Code ausfällt, sollte die Automatisierung in den ausfallsicheren Zustand versetzt werden.

0 Stimmen

Danke für Ihren Kommentar, gute Vorschläge. Ich möchte noch hinzufügen, dass Ihre Aussage, dass alles ausfallsicher sein sollte, ein wenig überflüssig ist, da die Ausfallsicherheit auch nicht die Aufgabe der SPS sein sollte. (Es sei denn, Sie geben das große Geld für eine Sicherheits-SPS aus).

2voto

FortunateDuke Punkte 1155

Wir haben Steeplechase verwendet, um unser automatisches Kommissioniersystem mit unserem Profibus zu verbinden.

http://www.phoenixcontact.com/automation/32131_31909.htm

1voto

avra Punkte 3716

Versuchen Sie dies: http://libnodave.sourceforge.net

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X