フレキシブルにお客様のご要望にあわせ提供します.

Use “Simple GX”| How to use C#, VB,NET on GX Simulator2 ?

.NET DLL to access GX Simulator 2 (MELSEC Q Official Simulator). You can make communicate with one via the C#, VB.NET by using this.  Function e.g : WriteDeviceBlock2, ReadDeviceBlock2 ( Like MX Component)

 

WriteDeviceBlock2, ReadDeviceBlock2 の関数がある. 設定必須パラメータは一つだけで, 起動中のGX Simulator2 の (仮想)CPUを指定するだけ!

Simulator に対して書き込んだり, またはそのデータを VB.NET (や C# )から読み込むことができる。

 

( ver.1.1, 20230325 , zip ,   更新履歴)
但し書きをすると,  これは joke soft です最下部の注意参照

 

機能

ありていにいいますと、

▲このようなコードだけで・・、

 

▲ こんな感じに、GX Simulator2  (GX-Works2 付属のシミュレータ) に書き込んだり、そのデータを読み込んだりできるわけです。

インクリメント書き込みで見てみました。こんな感じで一括で GX Simulator に書き込みたいときに便利です(動画は 720p で見ると、画面中の文字がはっきり見えます)。本DLLを使うと、このようなGX Simulator2 上の仮想PLCデバイスに対する読み書き機能をアプリに導入できるというわけです。

 

動作環境

【 動作 SDK 】Visual Studio 2013,  2019

【動作環境】 Windows 10 (64bit)

【必要な環境※】 VC++2013 互換Runtime ,   .NET 4.5.1 互換Runtime (.NET)

リンク先は Microsoft のダウンロードファイルの直リンです。ファイルサイズが大きいので携帯回線ではおすすめしません。いづれもお使いのWindows パソコンの環境によっては既に入っている場合もあります。このDLLは、.NET, C++ 併用したDLLなので、上記2つ両方導入されている必要があります。

 

 

内容物

  1. SimpleGXSimu.dll (要 .NET4.5互換 Runtime.  .NET DLL)
  2. .KumaNetCLI_x86.dll (要 VCpp2013 互換 Runtime.  C++/CLI DLL)
  3. KumaNet_x86.dll (要 VCpp2013 互換Runtime.  C++ DLL)

 

ダウンロードされたサンプルプロジェクトでは既に参照設定しています。新規にプロジェクトを作成される場合は,   1. をご参照ください。

ただし実行の際は 1. ~ 3. をすべて同一ディレクトリ内に配置してください。

 

C# から呼び出す


//using SimpleGXSimu でDLLを読み込んでください

            GXSim ins = new GXSim();
            ins.CPU =(int)enumCPU._Non;

            ReturnUS rtn = ins.ReadDeviceBlock2("D0",10);
            MessageBox.Show(ins.UShortDis(rtn.dat,"/"));

           ushort[] dat = new ushort[960];
           ushort i;
           for (i = 0; i < 959; i++) { dat[i] =(ushort)(i+1) ; }

           ins.WriteDeviceBlock2("D0",960,dat);

 

VB.NET から呼び出す


'Imports SimpleGXSimu でDLLを読み込んでください

        Dim ins As New GXSim
        ins.CPU = enumCPU._Non  'CPUの型番. 列挙体がある(e.g. Q00なら _Non, Q00U なら U )

        Dim rtn As ReturnUS = ins.ReadDeviceBlock2("D0", 10)
        MsgBox(ins.UShortDis(rtn.dat, "/"))
        Dim dat(960) As UShort : For i = 0 To 959 : dat(i) = i + 1 : Next
        ins.WriteDeviceBlock2("D0", 960, dat)

 

 

免責

「研究・趣味用途」となっています。業務で用いた場合の、一切の損害は負いません。また、これは Joke soft なので有料版や、それに関するサービスはありません。。

もし 「GX Simulator2 と連携するアプリを作成したい」というご要望がありましたら、その場合は MX-Component を購入し、それを利用した対応になりますので、あらかじめご了承ください。

 

プロトコル

プロトコルは MCプロトコルではありません GX Simulator 2 のプロトコルです。それが免責の理由です。

 

GX Simulator 3 対応 と SimpleGXSimu.dll の C++ での再実装

そのうち対応予定。