CX-Compolet/SYSMAC Gateway のインストールでいろいろ面倒なこと*1が起きたのでメモ
やろうとしたこと
Windows10にCX-Complet/SYSMAC Gateway 1.5.0*2をインストール、PLCとタグデータリンク通信。
まとめ
結論から
経緯
CX-Complet/SYSMAC Gatewayのインストール完了まで
インストールから現象発生まで
- Sysmac Studio、CX-Compolet/Sysmac Gatewayをインストール。インストール自体はできたが、「古いバージョンがあるのでWinPCap4.1.3をインストールできない」とのメッセージが出た。
- dll(wpcap.dll、packet.dll)の名称を変更してWinPCap4.1.3をインストール。「an error occurred while installing the NPF driver」とのメッセージが出た。インストールはできたことになっていた*5。
- SYSMAC Gateway Consoleを立ち上げたときにエラー発生。
・「NameSpaceServer サービスを、次のエラーが原因で開始できませんでした: 指定されたファイルが見つかりません。」
・SYSMAC Gateway の通信サービス(CIPCore)立ち上げに失敗(タイムアウトエラー)
・SYSMAC Gateway Consoleからタグテーブルの編集ができない
対応
セーフモードでWinPCap4.1.3をいれなおすと、問題なくSYSMAC Gateway Consoleを使用できるようになった。
※msconfigを利用してセーフモードにするとBitLockerキーの入力は必要なかった。「トラブルシューティング」からだとBitLockerキーの入力がいるようだった。
※通常モードでWinPCapをアンインストールすると「an error occurred while installing the NPF driver」が出た。アンインストールはできたことになっていた。
タグデータリンクができるようになるまで
発生した現象
- PC-PLC間の通信自体はできている(Sysmac Studioで接続できる。設定のアップロード/ダウンロードなどもできる)が通信エラーが生じていた。
- タグデータリンクができていない。「タグモニタ」を使用するとPLCのデータ、SYSMAC Gatewayのデータは確認できたが、PLCの出力データに変更があってもSYSMAC Gatewayの入力データに変更がなかった。逆も。
生じていたエラー
- 「Network Configurator」で確認
データリンクステータス:照合異常
コネクションステータス:コード01:0203(0204だったかも)
が発生していた。 - 「トラブルシュート」で確認
入力は正常だが、出力は「切断」になってた
対応
- 通信の負荷を減らした(データのサイズを小さく、通信周期を長く、タイムアウト値を大きくした)
エラーの内容で該当しそうなのが「コネクションリソース」だったため。
→問題解決せず。 - Windows Defenderのファイアウォールにルールを追加した
マニュアルにファイアウォールの設定が必要と書いてあったため*6。
→問題解決せず - ファイアウォールを無効にした
入力はエラーなし、出力は切断となってればなんかいらん事してる可能性が高いと思った*7。
→問題解決
アプリから通信できるようになるまで
現象
C#にてVaraible Compoletの使用して通信しようとしたところ、実行時にエラー(追加情報:DLL 'EvtMem32.dll' を読み込めません)が生じた。
対応
プラットフォームターゲットをx86としてビルド
※資料はよく読もう
所感
知ってる人がやりゃあ30分もかからないことに延々と時間を浪費するのは大変苦痛でありスケジュールにも優しくなく私は悲しい。同じ現象が他の人に起こる可能性は限りなく低い気がするけど資料に残しておきます。