OPC 経由で Siemens S7 と通信する単純な C# アプリを作成する必要があります。単一の入力を照会し、単一の出力を設定するだけです。
これを行うには何が必要ですか? OPCFoundation の Xi のようなものが必要ですか?
より一般的なOPCソリューションとして、 http://www.codeproject.com/KB/COM/opcdotnet.aspxを見る価値があるかもしれません。これはソースコードを備えた無料のOPCDLLです。それは非常に基本的ですが、コードはそこにあるので、必要に応じて簡単に更新できますが、要件の音からすると理想的かもしれません。
おそらく、.NET と OPC サーバー間の完全なラッパーを提供する www.quickopc.com を確認することでしょう。また、www.opcfoundation.com には OPC サーバーに関する多くの情報が掲載されています。
QuickOPC などのライブラリを使用しない場合は、独自のクラスを作成して、バイナリ データを読み取り可能な .NET コードに変換する必要があります (これはタスク自体である必要があります)。これは完全に実行可能ですが、主な欠点は、各デバイス/メーカーが独自のプロトコルを持っていることです。つまり、一意のデバイスごとに単一のラッパーになる可能性があります。
もう 1 つの可能性は、Siemens SAPI-S7 インターフェイス (ネイティブの Siemens プロトコルであり、OPC でも使用される) を使用することです。SoftwareOption GmbH には、C# サンプルを含む S7 .NET プログラミング インターフェイスがあります。ソース コードを含む C# デモ プログラムをダウンロードできます。http://www.softwareoption.de/siemens-produkte_e.htmを参照してください。
私は現在、このプロセスを行っています。彼が非常に役立つことがわかりました: http://www.opcti.com/Download-OPC-Xi-source-code.aspx
opcdaauto.dll、clientAce、MXIO.NET などの中間 dll を使用します。
C# を使用してコーディングを開始します。C# は、OPC サーバーとの通信に柔軟性を提供します。
C# を使用した Siemens の例: App.config 内:
Tag1 value="SERVER:\DiagnosticsSummary\CumulatedSubscriptionCount"
Tag2 value="SERVER:\Capabilities\MinSupportedUpdateRate"
ServerId value="opcda://localhost/OPC.SimaticNET.1/{B6EACB30-42D5-11D0-9517-0020AFAA4B3C}"/>
--コーディングをお楽しみください-- 参照: http: //www.revanayya.blogspot.com