C#¶
開発環境の設定¶
プロジェクトにドライバへの参照を追加します。
- Nugetからインストールする場合
- Y2.UsbPc104.YduCs をインストールします。
- ソフトウェアパックから追加する場合
- 以下のファイルをプロジェクトフォルダにコピーします。
- Ydu.cs
- YduPmcS.cs
- Ydu.cs, YduPmcS.csをプロジェクトに追加します。
- 以下のファイルをプロジェクトフォルダにコピーします。
ソースファイルにusing ディレクティブを使ってYduCsを宣言します。
using YduCs;
プログラム例¶
using YduCs;
static void Main()
{
// IDが0に設定されているPMC-S4/00/00A-Uをオープンします
const ushort UnitId = 0;
var result = Ydu.Open(UnitId, "PMC-S4/00/00A-U");
if (result != Ydu.YDU_RESULT_SUCCESS)
{
Console.WriteLine("オープンできません");
return;
}
// オンで検知するセンサを接続している場合や、リミットスイッチを接続していない場合はモーターが動作しません
// その場合は以下の関数を実行してセンサ設定を"オンで検知"に変更してください
ushort axis = YduPmcs.PMC_AXIS_X0 + YduPmcs.PMC_AXIS_Y0 + YduPmcs.PMC_AXIS_Z0 + YduPmcs.PMC_AXIS_U0;
result = YduPmcs.SetSensorConfig(UnitId, axis, YduPmcs.PMC_LOGIC, 0x1F);
// X0軸の動作パラメータを設定します
var motion = new YduPmcs.MOTIONPMCS[4];
motion[0].wAccMode = YduPmcs.PMC_ACC_NORMAL;
motion[0].dwLowSpeed = 200;
motion[0].dwSpeed = 2000;
motion[0].wAccTime = 300;
motion[0].lStep = YduPmcs.PMC_DIR_CW;
result = YduPmcs.SetMotion(UnitId, YduPmcs.PMC_AXIS_X0, YduPmcs.PMC_JOG, motion);
// モーター動作を開始します
result = YduPmcs.StartMotion(UnitId, YduPmcs.PMC_AXIS_X0, YduPmcs.PMC_ACC, YduPmcs.PMC_JOG);
// モーター動作を停止します
result = YduPmcs.StopMotion(UnitId, YduPmcs.PMC_AXIS_X0, YduPmcs.PMC_IMMEDIATE_STOP);
// ユニットをクローズします
Ydu.Close(UnitId);
}