4

Siemens PLC S7 200 と .NET (C# または VB は関係ありません) を接続しようとしていますが、接続をセットアップできません。私は Win7 64 ビット マシンで作業していますが、32 ビットでも動作しないようです。次の 2 つのファイルを取得しました。

Interop.OPCSiemensDAAutomation.dll Siemens_s7-200.dll

新しいシステムに移行しようとしている別のプロジェクトから。ただし、常にcom例外が発生します。

Retrieving the COM class factory for component with CLSID {01704EBD-44B5-11D3-9C09-00105A3DD3AC} failed due to the following error: 80040154.

私はすでにlibnodaveを試しましたが、それもうまくいかないようです。誰かがどこを見るべきかについての指針を教えてくれませんか (XKCD のユーモアはやめてください)。

Siemens PC-Access をこのマシンにインストールできませんでした。後で WinXP 32 ビットを試してみます。マシンに OPC サーバーまたは何かが必要ですか? についての記事を読みました。

PLCとの初めてのインターフェースなので、ご容赦ください:/

4

3 に答える 3

4

COM 例外は、COM ライブラリ自体またはその依存関係を読み込めなかったことを示すかなり一般的なエラーです。私がチェックするいくつかのことは次のとおりです。

  • COM ライブラリはマシンに登録されていますか? regsvr32を使用して、COM dll を登録できます。
  • COM ライブラリには、マシン上にない可能性のある他の依存関係が必要ですか? dumpbin /dependentsを使用して、これを把握できます。
  • Siemens PC-Access ソフトウェアをマシンにインストールする必要がありますか? あなたはそれをインストールできなかったと言いました。これはおそらく、COM ライブラリをロードできなかった理由を説明しています。

残念ながら、これはあなたの特定の問題を解決するために私が提供できるすべての支援についてです. ただし、OPC サーバーとして機能し、Siemens S7 と互換性のあるドライバーを備えた次の製品を使用できることを指摘できます。これらは、Siemens OPC サーバーを使用する代わりになります。

私は過去に両方の製品を使用したことがありますが、そのうちの 1 つ (どれを思い出せないか) を使用して Siemens S7 と通信したことは間違いありません。

また、.NET での OPC の使用に関する情報が掲載された非常に優れた Web サイトもここにあります。

于 2011-07-25T16:05:58.433 に答える
2

私は以前にこの種のことをすることを検討しました。コントローラに直接アクセスしようとすると、あらゆる種類の独自の問題が発生する可能性があります。自動化ソフトウェア会社は、プロトコルを非常に厳しく管理する傾向があります。それがあなたが求めているデータだけであるなら、OPCはおそらく行くための最良の方法です。しかし、私が見つけたものから、それも無料ではありません。OPC Foundation(opcfoundation.org)には.NET APIがあり、1〜2,000ドルの範囲のコストで利用できると思います。

于 2011-07-25T16:51:09.447 に答える
2

再試行。S7 200、300、さらには 400 および 400H (冗長なもの) でlibnodaveを使用することに成功しました。C# の経験はありませんが、Linux C デーモンと Delphi および Lazarus Windows アプリケーションで 24 時間 365 日 (鉄鋼工場と溶鉱炉) 動作しています。うまくいかない場合は、S7 200 (Kepware、Matrikon...) 用の OPC サーバーと C# の OPC クライアント ライブラリに $$$$ を費やす準備をしてください。

于 2011-07-26T07:20:28.860 に答える