SmcWSetPulseDuty


機能

出力パルス幅(デューティ比)の設定を行います。

書式

Ret = SmcWSetPulseDuty( Id , AxisNo , DutyType )

引数

Id [ VB.NET: Short ] [ C, C++: short ] [ C#: short ] [ Python: ctypes.c_short ]
SmcWInit 関数で取得したデバイスIDを指定します。

AxisNo [ VB.NET: Short ] [ C, C++: short ] [ C#: short ] [ Python: ctypes.c_short ]
軸番号を指定します。

DutyType [ VB.NET: Short ] [ C, C++: short ] [ C#: short ] [ Python: ctypes.c_short ]
デューティ比を設定します。

0

パルス出力速度により変化

1

デューティ比50%固定

戻り値

Ret [ VB.NET: Integer ] [ C, C++: long ] [ C#: int ] [ Python: ctypes.c_long ]

0

正常終了

0以外

異常終了

参照:エラーコード詳細

初期値

DLシリーズ  1 : デューティ比50%固定
DFシリーズ  0 : パルス出力速度により変化

説明

Duty = 0 の場合、出力速度2.4kpps以下の場合のパルス幅は200μsec、それより上の場合は50%固定となります。
DLシリーズでは、Duty = 1 固定となります。

軸が動作中の場合、この関数は実行できません。

使用例

軸番号1のデューティ比の設定を行います。
デューティ比50%固定

VB.NET
Dim Ret As Integer
Dim DutyType As Short
DutyType = 1
Ret = SmcWSetPulseDuty( Id , 1, DutyType )

C, C++
long Ret;
short DutyType;
DutyType = 1;
Ret = SmcWSetPulseDuty( Id , 1, DutyType );

C#
int Ret;
short DutyType;
DutyType = 1;
Ret = Smc.WSetPulseDuty( Id , 1, DutyType );

Python
Ret = ctypes.c_long()
DutyType = ctypes.c_short()
DutyType.value = 1
Ret.value = csmc.SmcWSetPulseDuty( Id , 1, DutyType )

関連項目

SmcWGetPulseDuty