Visual C#でのプログラム例です。変換データやエラー内容は、アウトプットウィンドウに表示されます。
AioSingleAiを使用したプログラム例
AioMultiAiを使用したプログラム例
AioSingleAiを使用したプログラム例
//---------------------------
// 変数宣言
//---------------------------
int Ret; //関数の戻り値
short Id; //ID
string ErrorString; //エラー文字列格納用配列
int AiData; //変換データ
//---------------------------
// デバイスの初期化
// デバイス名:Aio000
//---------------------------
Ret = aio.Init( "Aio000" , out Id );
if( Ret != 0 )
{
aio.GetErrorString( Ret , out ErrorString );
System.Diagnostics.Trace.WriteLine( "aio.Init : " + ErrorString
);
return;
}
//---------------------------
// アナログ入力方式の設定
// 入力方式:シングルエンド入力
//---------------------------
Ret = aio.SetAiInputMethod( Id , 0 );
if( Ret != 0 )
{
aio.GetErrorString( Ret , out ErrorString );
System.Diagnostics.Trace.WriteLine( "aio.SetAiInputMethod :
" + ErrorString );
Ret = aio.Exit( Id );
return;
}
//---------------------------
// アナログ入力レンジの設定
// レンジ:±10V
//---------------------------
Ret = aio.SetAiRangeAll( Id , (short)CaioConst.PM10 );
if( Ret != 0 )
{
aio.GetErrorString( Ret , out ErrorString );
System.Diagnostics.Trace.WriteLine( "aio.SetAiRangeAll : "
+ ErrorString );
Ret = aio.Exit( Id );
return;
}
//---------------------------
// 指定チャネルを1回アナログ入力
// 入力チャネル:0
//---------------------------
Ret = aio.SingleAi( Id , 0 , out AiData );
if( Ret != 0 )
{
aio.GetErrorString( Ret , out ErrorString );
System.Diagnostics.Trace.WriteLine( "aio.SingleAi : " +
ErrorString );
Ret = aio.Exit( Id );
return;
}
System.Diagnostics.Trace.WriteLine( "チャネル0:" + AiData.ToString()
);
//---------------------------
// デバイスの終了
//---------------------------
Ret = aio.Exit( Id );
if( Ret != 0 )
{
aio.GetErrorString( Ret , out ErrorString );
System.Diagnostics.Trace.WriteLine( "aio.Exit : " + ErrorString
);
Ret = aio.Exit( Id );
return;
}
AioMultiAiを使用したプログラム例
//---------------------------
// 変数宣言
//---------------------------
int Ret; //関数の戻り値
short Id; //ID
string ErrorString; //エラー文字列格納用配列
int[] AiData = new int[8]; //変換データ
short i;
//---------------------------
// デバイスの初期化
// デバイス名:Aio000
//---------------------------
Ret = aio.Init( "Aio000" , out Id );
if( Ret != 0 )
{
aio.GetErrorString( Ret , out ErrorString );
System.Diagnostics.Trace.WriteLine( "aio.Init : " + ErrorString
);
return;
}
//---------------------------
// アナログ入力方式の設定
// 入力方式:シングルエンド入力
//---------------------------
Ret = aio.SetAiInputMethod( Id , 0 );
if( Ret != 0 )
{
aio.GetErrorString( Ret , out ErrorString );
System.Diagnostics.Trace.WriteLine( "aio.SetAiInputMethod :
" + ErrorString );
Ret = aio.Exit( Id );
return;
}
//---------------------------
// アナログ入力レンジの設定
// レンジ:±10V
//---------------------------
Ret = aio.SetAiRangeAll( Id , (short)CaioConst.PM10 );
if( Ret != 0 )
{
aio.GetErrorString( Ret , out ErrorString );
System.Diagnostics.Trace.WriteLine( "aio.SetAiRangeAll : "
+ ErrorString );
Ret = aio.Exit( Id );
return;
}
//---------------------------
// 複数チャネルを1回アナログ入力
// 入力チャネル数:8
//---------------------------
Ret = aio.MultiAi( Id , 8 , out AiData );
if( Ret != 0 )
{
aio.GetErrorString( Ret , out ErrorString );
System.Diagnostics.Trace.WriteLine( "aio.MultiAi : " +
ErrorString );
Ret = aio.Exit( Id );
return;
}
for( i = 0 ; i < 8 ; i++ )
{
System.Diagnostics.Trace.WriteLine( "チャネル" + i.ToString()
+ ":" + AiData[i] );
}
//---------------------------
// デバイスの終了
//---------------------------
Ret = aio.Exit( Id );
if( Ret != 0 )
{
aio.GetErrorString( Ret , out ErrorString );
System.Diagnostics.Trace.WriteLine( "aio.Exit : " + ErrorString );
return;
}