〜 シンプル通信PLC For OMRON (.NET)のリファレンス 〜
名前空間
using Aoyama.Rs232.Omron;
プロパティ
プロパティ名 | 意味 | 型 | 設定値 | 説明 |
Password (PARAMで表記する場合は、"ライセンスキー") |
ライセンスキー |
string |
ライセンスキー |
ベクターにて、送金すると、ライセンスキーが得られます。
このプロパティに、そのライセンスキーを設定すると、制限が解除されます。 |
Port |
シリアルポートの番号 |
int |
1,2 |
その他、Windowsで対応するポートを設定できます。 |
Bps |
ボーレート |
BpsValue |
1200,2400,4800,9600,19200, 38400,57600,115200 |
シリアルポートのボーレートを設定します。 |
Bit |
ビット |
BitValue |
7,8 |
シリアルポートのビットを設定します。 |
Parity |
パリティ |
ParityValue |
0(none:ノンパリティ) 1(odd:奇数パリティ) 2(even:偶数パリティ) |
シリアルポートのパリティを設定します。 |
StopBit |
ストップビット |
StopBitValue |
0(one:1ビット) 2(two:2ビット) |
シリアルポートのストップビットを設定します。 |
MachineNo |
号機No |
int |
0〜99 |
号機Noを設定します。 ReadR、ReadDなどのメソッドを使って値を設定したり、取得する場合に、号機Noを指定できます。 |
Ready |
送信可能 |
bool |
- |
コマンドを送信できる状態の場合、trueを返します。
(注)
同期モードのみ使用している場合、送信命令に対する返信を待ってアプリケーションに制御を返すため、必要ではありません。
非同期モードの場合、正常終了、または、エラーイベントにより、状態を把握することをお勧めします。具体的には、送信メソッド(ReadR、WriteRなど)を実行した後、イベントが発生するまでは、次の送信メソッドを受け取ることはできません。この間に、次のメソッドを送らないように、フラグを立てるなど、アプリケーションで管理してください。 |
Ver |
バージョン |
string |
- |
コントロールのバージョンを取得します。 |
メソッド
基本メソッド
同期と非同期の違い
同期タイプは、メソッドを実行すると、シーケンサからの返信が得られるまで、制御が返りません。つまり、シーケンサからの返信があるまで、次のメソッドを実行できません。
非同期タイプは、メソッドを実行すると、すぐに制御が返ります。シーケンサからの返信を待たないため、シーケンサへの命令が実行できたか把握する前に、次のメソッドが実行されることに注意が必要です。
データの読み込み用メソッド
[ 非同期タイプのメソッド ]
Comイベントにより、値を取得します。
チャネル値やチャネル数などの引数に問題がある場合や、ポートが開かれていない場合には、例外が発生します。
受信データエラーが発生した場合やタイムアウトが発生した場合には、Errorイベントが発生します。
[ 同期タイプのメソッド ]
読み出した値を配列として得ることができます。エラーが発生した場合は、例外が発生します。
(例外)
・チャネルの値が指定できる範囲を超えている場合、ParamExceptionが発生します。
・ポートが開かれていない場合、NotOpenExceptionが発生します。
・データを送信できない状態であった場合、StatusExceptionが発生します。
・受信データに異常がある場合、RecDataExceptionが発生します。
データの書き込み関数
書き込むデータは、配列で指定します。配列の数を指定しない場合は、配列の全ての値が書き込まれます。
[ 非同期タイプのメソッド ]
シーケンサに書き込みコマンドを送信すると制御が戻ります。シーケンサとの通信に成功したわけではないことに注意してください。
シーケンサとの通信に成功した場合、Comイベントが発生します。
エラーが発生した場合、Errorイベントが発生します。
[ 同期タイプのメソッド ]
シーケンサに書き込みコマンドを送り、シーケンサから正常に書き込まれたとの返信を受けてから制御が戻ります。
(例外)
・チャネルの値が指定できる範囲を超えている場合、ParamExceptionが発生します。
・ポートが開かれていない場合、NotOpenExceptionが発生します。
・データを送信できない状態であった場合、StatusExceptionが発生します。
・受信データに異常がある場合、RecDataExceptionが発生します。
イベント
イベント | 説明 |
Com |
正常にデータが受信できた場合、イベントが発生します。
受信データは、RecEventArgsのRecValueに、long型の配列として入ります。
また、RecEventArgsのSendCmdには、送信コマンド(RR,WRなど)が入ります。
このイベントは、SendEx以外の非同期タイプのメソッドを実行し、正常に処理できたときに発生します。
|
ComEx |
正常にデータが受信できた場合、イベントが発生します。
受信データは、RecExEventArgsのRecValueに、文字列として入ります。
このイベントは、SendExを実行し、正常に処理できたときに発生します。
|
Error |
受信データに異常がある場合や、タイムアウトが発生した場合、イベントが発生します。 |
データの一括読み出し関数
この関数は、C#のライブラリとして提供しています。利用する場合は、mdlOmron.csファイルをコピーして、ご利用ください。
メソッドの詳細
ポートを開き、通信を開始します。
OpenSは、Openの特別なものです。ライセンスキー(Password)が設定されていない場合、Openを実行すると、シェアウェアの確認ダイアログが表示されますが、OpenSでは、この表示はありません。
しかし、ライセンスキーが設定されていない場合、使用期限が過ぎると使用できなくなるのは共通です。
OpenSは、試用期間中に、ダイアログ表示を行いたくない場合や、ASPでの利用の場合に、使います。
戻り値
関数の実行に成功した場合、trueを返す。失敗した場合、falseを返す。
ポートを閉じます
入出力リレー/内部補助リレー/特殊補助リレーエリア読み出し (非同期)
リレー読み出しコマンドを送信します。
正常にデータが受信できた場合、Comイベントが発生し、RecEventArgsのRecValueに、配列データとして、値が入ります。
引数に問題がある場合や、ポートが開かれていない場合には、例外が発生します。
タイムアウトや、受信データに異常がある場合には、Errorイベントが発生します。
引数 | 意味 | 説明 |
ch |
読出開始チャネル |
読み出し開始チャネルを整数で指定します |
dataNum |
読出チャネル数 |
チャネル数を整数で指定します。 |
イベント | 説明 |
Com |
正常にデータが受信できた場合、イベントが発生します。
受信データは、RecEventArgsのRecValueに、long型の配列として入ります。 |
Error |
受信データに異常がある場合や、タイムアウトが発生した場合、イベントが発生します。 |
例外 | 説明 |
ParamException |
チャネルの値が指定できる範囲を超えている場合、ParamExceptionが発生します。 |
NotOpenException |
ポートが開かれていない場合、NotOpenExceptionが発生します。 |
StatusException |
データを送信できない状態であった場合、StatusExceptionが発生します。 |
例:
private void button3_Click(object sender, System.EventArgs e)
{
try
{
// リレーの101チャネルから、1ch分を取得
omron1.ReadR(101, 1);
}
catch(Exception ex)
{
labelErr.Text = ex.Message;
}
}
// イベントにより、データを受信
private void omron1_Com(object sender, Aoyama.Rs232.Omron.RecEventArgs e)
{
if(e.SendCmd.Equals("RR")) // 受信データが、RRコマンドへの返信の場合
{
long[] data = e.RecValue; // 受信データ
// 受信データの表示
AddMessage add;
string s;
add = new AddMessage(ShowMessage);
s = data[0].ToString();
labelMsg.BeginInvoke(add, new Object[] {s});
}
}
// エラーイベントが発生
private void omron1_Error(object sender, Aoyama.Rs232.Omron.ComErrEventArgs e)
{
string msg = e.ErrMsg; //エラーメッセージ
// エラーメッセージの表示
AddErrMessage err = new AddErrMessage(ShowErrMessage);
labelErr.BeginInvoke(err, new Object[] {msg});
}
public delegate void AddMessage(string message);
public delegate void AddErrMessage(string message);
private void ShowErrMessage(string str)
{
labelErr.Text = str;
}
private void ShowMessage(string str)
{
labelMsg.Text = str;
}
入出力リレー/内部補助リレー/特殊補助リレーエリア読み出し (同期)
リレーの値を取得します。
データが取得できた場合、配列データとして返します。
引数に問題がある場合やポートが開かれていない場合、タイムアウトなどが発生した場合には、例外が発生します。
引数 | 意味 | 説明 |
ch |
読出開始チャネル |
読み出し開始チャネルを整数で指定します |
dataNum |
読出チャネル数 |
チャネル数を整数で指定します。 |
戻り値 | 説明 |
チャネルデータ |
関数の実行に成功した場合、long型データの入った配列を返す。
失敗した場合、例外が発生する。 |
例外 | 説明 |
ParamException |
チャネルの値が指定できる範囲を超えている場合、ParamExceptionが発生します。 |
NotOpenException |
ポートが開かれていない場合、NotOpenExceptionが発生します。 |
StatusException |
データを送信できない状態であった場合、StatusExceptionが発生します。 |
RecDataException |
受信データに異常がある場合、RecDataExceptionが発生します。 |
例:
try
{
// リレーの101チャネルから、1ch分を取得
long[] data = omron1.ReadRs(101, 1);
// データの表示
labelMsg.Text = data[0].ToString();
}
catch(Exception ex)
{
// エラーメッセージの表示
labelErr.Text = ex.Message;
}
LRリレーエリア読み出し (非同期)
LRリレー読み出しコマンドを送信します。
正常にデータが受信できた場合、Comイベントが発生し、RecEventArgsのRecValueに、配列データとして、値が入ります。
引数に問題がある場合や、ポートが開かれていない場合には、例外が発生します。
タイムアウトや、受信データに異常がある場合には、Errorイベントが発生します。
引数 | 意味 | 説明 |
ch |
読出開始チャネル |
読み出し開始チャネルを整数で指定します |
dataNum |
読出チャネル数 |
チャネル数を整数で指定します。 |
イベント | 説明 |
Com |
正常にデータが受信できた場合、イベントが発生します。
受信データは、RecEventArgsのRecValueに、long型の配列として入ります。 |
Error |
受信データに異常がある場合や、タイムアウトが発生した場合、イベントが発生します。 |
例外 | 説明 |
ParamException |
チャネルの値が指定できる範囲を超えている場合、ParamExceptionが発生します。 |
NotOpenException |
ポートが開かれていない場合、NotOpenExceptionが発生します。 |
StatusException |
データを送信できない状態であった場合、StatusExceptionが発生します。 |
LRリレーエリア読み出し (同期)
LRリレーの値を取得します。
データが取得できた場合、配列データとして返します。
引数に問題がある場合やポートが開かれていない場合、タイムアウトなどが発生した場合には、例外が発生します。
引数 | 意味 | 説明 |
ch |
読出開始チャネル |
読み出し開始チャネルを整数で指定します |
dataNum |
読出チャネル数 |
チャネル数を整数で指定します。 |
戻り値 | 説明 |
チャネルデータ |
関数の実行に成功した場合、long型データの入った配列を返す。
失敗した場合、例外が発生する。 |
例外 | 説明 |
ParamException |
チャネルの値が指定できる範囲を超えている場合、ParamExceptionが発生します。 |
NotOpenException |
ポートが開かれていない場合、NotOpenExceptionが発生します。 |
StatusException |
データを送信できない状態であった場合、StatusExceptionが発生します。 |
RecDataException |
受信データに異常がある場合、RecDataExceptionが発生します。 |
HRリレーエリア読み出し (非同期)
HRリレー読み出しコマンドを送信します。
正常にデータが受信できた場合、Comイベントが発生し、RecEventArgsのRecValueに、配列データとして、値が入ります。
引数に問題がある場合や、ポートが開かれていない場合には、例外が発生します。
タイムアウトや、受信データに異常がある場合には、Errorイベントが発生します。
引数 | 意味 | 説明 |
ch |
読出開始チャネル |
読み出し開始チャネルを整数で指定します |
dataNum |
読出チャネル数 |
チャネル数を整数で指定します。 |
イベント | 説明 |
Com |
正常にデータが受信できた場合、イベントが発生します。
受信データは、RecEventArgsのRecValueに、long型の配列として入ります。 |
Error |
受信データに異常がある場合や、タイムアウトが発生した場合、イベントが発生します。 |
例外 | 説明 |
ParamException |
チャネルの値が指定できる範囲を超えている場合、ParamExceptionが発生します。 |
NotOpenException |
ポートが開かれていない場合、NotOpenExceptionが発生します。 |
StatusException |
データを送信できない状態であった場合、StatusExceptionが発生します。 |
HRリレーエリア読み出し (同期)
HRリレーの値を取得します。
データが取得できた場合、配列データとして返します。
引数に問題がある場合やポートが開かれていない場合、タイムアウトなどが発生した場合には、例外が発生します。
引数 | 意味 | 説明 |
ch |
読出開始チャネル |
読み出し開始チャネルを整数で指定します |
dataNum |
読出チャネル数 |
チャネル数を整数で指定します。 |
戻り値 | 説明 |
チャネルデータ |
関数の実行に成功した場合、long型データの入った配列を返す。
失敗した場合、例外が発生する。 |
例外 | 説明 |
ParamException |
チャネルの値が指定できる範囲を超えている場合、ParamExceptionが発生します。 |
NotOpenException |
ポートが開かれていない場合、NotOpenExceptionが発生します。 |
StatusException |
データを送信できない状態であった場合、StatusExceptionが発生します。 |
RecDataException |
受信データに異常がある場合、RecDataExceptionが発生します。 |
タイマ/カウンタエリア読み出し (非同期)
タイマ/カウンタエリア読み出しコマンドを送信します。
正常にデータが受信できた場合、Comイベントが発生し、RecEventArgsのRecValueに、配列データとして、値が入ります。
引数に問題がある場合や、ポートが開かれていない場合には、例外が発生します。
タイムアウトや、受信データに異常がある場合には、Errorイベントが発生します。
引数 | 意味 | 説明 |
ch |
読出開始チャネル |
読み出し開始チャネルを整数で指定します |
dataNum |
読出チャネル数 |
チャネル数を整数で指定します。 |
イベント | 説明 |
Com |
正常にデータが受信できた場合、イベントが発生します。
受信データは、RecEventArgsのRecValueに、long型の配列として入ります。 |
Error |
受信データに異常がある場合や、タイムアウトが発生した場合、イベントが発生します。 |
例外 | 説明 |
ParamException |
チャネルの値が指定できる範囲を超えている場合、ParamExceptionが発生します。 |
NotOpenException |
ポートが開かれていない場合、NotOpenExceptionが発生します。 |
StatusException |
データを送信できない状態であった場合、StatusExceptionが発生します。 |
タイマ/カウンタエリア読み出し (同期)
タイマ/カウンタエリアの値を取得します。
データが取得できた場合、配列データとして返します。
引数に問題がある場合やポートが開かれていない場合、タイムアウトなどが発生した場合には、例外が発生します。
引数 | 意味 | 説明 |
ch |
読出開始チャネル |
読み出し開始チャネルを整数で指定します |
dataNum |
読出チャネル数 |
チャネル数を整数で指定します。 |
戻り値 | 説明 |
チャネルデータ |
関数の実行に成功した場合、long型データの入った配列を返す。
失敗した場合、例外が発生する。 |
例外 | 説明 |
ParamException |
チャネルの値が指定できる範囲を超えている場合、ParamExceptionが発生します。 |
NotOpenException |
ポートが開かれていない場合、NotOpenExceptionが発生します。 |
StatusException |
データを送信できない状態であった場合、StatusExceptionが発生します。 |
RecDataException |
受信データに異常がある場合、RecDataExceptionが発生します。 |
タイマ/カウンタアップデータ読み出し (非同期)
タイマ/カウンタアップデータ読み出しコマンドを送信します。
正常にデータが受信できた場合、Comイベントが発生し、RecEventArgsのRecValueに、配列データとして、値が入ります。
引数に問題がある場合や、ポートが開かれていない場合には、例外が発生します。
タイムアウトや、受信データに異常がある場合には、Errorイベントが発生します。
引数 | 意味 | 説明 |
ch |
読出開始チャネル |
読み出し開始チャネルを整数で指定します |
dataNum |
読出チャネル数 |
チャネル数を整数で指定します。 |
イベント | 説明 |
Com |
正常にデータが受信できた場合、イベントが発生します。
受信データは、RecEventArgsのRecValueに、long型の配列として入ります。 |
Error |
受信データに異常がある場合や、タイムアウトが発生した場合、イベントが発生します。 |
例外 | 説明 |
ParamException |
チャネルの値が指定できる範囲を超えている場合、ParamExceptionが発生します。 |
NotOpenException |
ポートが開かれていない場合、NotOpenExceptionが発生します。 |
StatusException |
データを送信できない状態であった場合、StatusExceptionが発生します。 |
タイマ/カウンタアップデータ読み出し (同期)
タイマ/カウンタアップデータの値を取得します。
データが取得できた場合、配列データとして返します。
引数に問題がある場合やポートが開かれていない場合、タイムアウトなどが発生した場合には、例外が発生します。
引数 | 意味 | 説明 |
ch |
読出開始チャネル |
読み出し開始チャネルを整数で指定します |
dataNum |
読出チャネル数 |
チャネル数を整数で指定します。 |
戻り値 | 説明 |
チャネルデータ |
関数の実行に成功した場合、long型データの入った配列を返す。
失敗した場合、例外が発生する。 |
例外 | 説明 |
ParamException |
チャネルの値が指定できる範囲を超えている場合、ParamExceptionが発生します。 |
NotOpenException |
ポートが開かれていない場合、NotOpenExceptionが発生します。 |
StatusException |
データを送信できない状態であった場合、StatusExceptionが発生します。 |
RecDataException |
受信データに異常がある場合、RecDataExceptionが発生します。 |
DMエリア読み出し (非同期)
DMエリア読み出しコマンドを送信します。
正常にデータが受信できた場合、Comイベントが発生し、RecEventArgsのRecValueに、配列データとして、値が入ります。
引数に問題がある場合や、ポートが開かれていない場合には、例外が発生します。
タイムアウトや、受信データに異常がある場合には、Errorイベントが発生します。
引数 | 意味 | 説明 |
ch |
読出開始チャネル |
読み出し開始チャネルを整数で指定します |
dataNum |
読出チャネル数 |
チャネル数を整数で指定します。 |
イベント | 説明 |
Com |
正常にデータが受信できた場合、イベントが発生します。
受信データは、RecEventArgsのRecValueに、long型の配列として入ります。 |
Error |
受信データに異常がある場合や、タイムアウトが発生した場合、イベントが発生します。 |
例外 | 説明 |
ParamException |
チャネルの値が指定できる範囲を超えている場合、ParamExceptionが発生します。 |
NotOpenException |
ポートが開かれていない場合、NotOpenExceptionが発生します。 |
StatusException |
データを送信できない状態であった場合、StatusExceptionが発生します。 |
DMエリア読み出し (同期)
DMエリアの値を取得します。
データが取得できた場合、配列データとして返します。
引数に問題がある場合やポートが開かれていない場合、タイムアウトなどが発生した場合には、例外が発生します。
引数 | 意味 | 説明 |
ch |
読出開始チャネル |
読み出し開始チャネルを整数で指定します |
dataNum |
読出チャネル数 |
チャネル数を整数で指定します。 |
戻り値 | 説明 |
チャネルデータ |
関数の実行に成功した場合、long型データの入った配列を返す。
失敗した場合、例外が発生する。 |
例外 | 説明 |
ParamException |
チャネルの値が指定できる範囲を超えている場合、ParamExceptionが発生します。 |
NotOpenException |
ポートが開かれていない場合、NotOpenExceptionが発生します。 |
StatusException |
データを送信できない状態であった場合、StatusExceptionが発生します。 |
RecDataException |
受信データに異常がある場合、RecDataExceptionが発生します。 |
ARエリア読み出し (非同期)
ARエリア読み出しコマンドを送信します。
正常にデータが受信できた場合、Comイベントが発生し、RecEventArgsのRecValueに、配列データとして、値が入ります。
引数に問題がある場合や、ポートが開かれていない場合には、例外が発生します。
タイムアウトや、受信データに異常がある場合には、Errorイベントが発生します。
引数 | 意味 | 説明 |
ch |
読出開始チャネル |
読み出し開始チャネルを整数で指定します |
dataNum |
読出チャネル数 |
チャネル数を整数で指定します。 |
イベント | 説明 |
Com |
正常にデータが受信できた場合、イベントが発生します。
受信データは、RecEventArgsのRecValueに、long型の配列として入ります。 |
Error |
受信データに異常がある場合や、タイムアウトが発生した場合、イベントが発生します。 |
例外 | 説明 |
ParamException |
チャネルの値が指定できる範囲を超えている場合、ParamExceptionが発生します。 |
NotOpenException |
ポートが開かれていない場合、NotOpenExceptionが発生します。 |
StatusException |
データを送信できない状態であった場合、StatusExceptionが発生します。 |
ARエリア読み出し (同期)
ARエリアの値を取得します。
データが取得できた場合、配列データとして返します。
引数に問題がある場合やポートが開かれていない場合、タイムアウトなどが発生した場合には、例外が発生します。
引数 | 意味 | 説明 |
ch |
読出開始チャネル |
読み出し開始チャネルを整数で指定します |
dataNum |
読出チャネル数 |
チャネル数を整数で指定します。 |
戻り値 | 説明 |
チャネルデータ |
関数の実行に成功した場合、long型データの入った配列を返す。
失敗した場合、例外が発生する。 |
例外 | 説明 |
ParamException |
チャネルの値が指定できる範囲を超えている場合、ParamExceptionが発生します。 |
NotOpenException |
ポートが開かれていない場合、NotOpenExceptionが発生します。 |
StatusException |
データを送信できない状態であった場合、StatusExceptionが発生します。 |
RecDataException |
受信データに異常がある場合、RecDataExceptionが発生します。 |
EMエリア読み出し (非同期)
使用できない機種があります
EMエリア読み出しコマンドを送信します。
正常にデータが受信できた場合、Comイベントが発生し、RecEventArgsのRecValueに、配列データとして、値が入ります。
引数に問題がある場合や、ポートが開かれていない場合には、例外が発生します。
タイムアウトや、受信データに異常がある場合には、Errorイベントが発生します。
引数 | 意味 | 説明 |
bk |
バンク |
-1:カレントバンク
0〜15:指定のバンク(16進数の00〜0Fに対応します) |
ch |
読出開始チャネル |
読み出し開始チャネルを整数で指定します |
dataNum |
読出チャネル数 |
チャネル数を整数で指定します。 |
イベント | 説明 |
Com |
正常にデータが受信できた場合、イベントが発生します。
受信データは、RecEventArgsのRecValueに、long型の配列として入ります。 |
Error |
受信データに異常がある場合や、タイムアウトが発生した場合、イベントが発生します。 |
例外 | 説明 |
ParamException |
チャネルの値が指定できる範囲を超えている場合、ParamExceptionが発生します。 |
NotOpenException |
ポートが開かれていない場合、NotOpenExceptionが発生します。 |
StatusException |
データを送信できない状態であった場合、StatusExceptionが発生します。 |
EMエリア読み出し (同期)
使用できない機種があります
EMエリアの値を取得します。
データが取得できた場合、配列データとして返します。
引数に問題がある場合やポートが開かれていない場合、タイムアウトなどが発生した場合には、例外が発生します。
引数 | 意味 | 説明 |
bk |
バンク |
-1:カレントバンク
0〜15:指定のバンク(16進数の00〜0Fに対応します) |
ch |
読出開始チャネル |
読み出し開始チャネルを整数で指定します |
dataNum |
読出チャネル数 |
チャネル数を整数で指定します。 |
戻り値 | 説明 |
チャネルデータ |
関数の実行に成功した場合、long型データの入った配列を返す。
失敗した場合、例外が発生する。 |
例外 | 説明 |
ParamException |
チャネルの値が指定できる範囲を超えている場合、ParamExceptionが発生します。 |
NotOpenException |
ポートが開かれていない場合、NotOpenExceptionが発生します。 |
StatusException |
データを送信できない状態であった場合、StatusExceptionが発生します。 |
RecDataException |
受信データに異常がある場合、RecDataExceptionが発生します。 |
入出力リレー/内部補助リレー/特殊補助リレーエリア書き込み (非同期)
リレー書き込みコマンドを送信します。
正常にデータが書き込めた場合、Comイベントが発生します。(RecEventArgsのRecValueに、1つ配列データとして、値0が入りますが意味はありません)
引数に問題がある場合や、ポートが開かれていない場合には、例外が発生します。
タイムアウトや、受信データに異常がある場合には、Errorイベントが発生します。
引数 | 意味 | 説明 |
ch |
書込開始チャネル |
読み出し開始チャネルを整数で指定します |
val |
書込データ |
書き込むデータを整数の配列で指定します |
dataNum (省略可) |
書込チャネル数 |
チャネル数を整数で指定します。
この指定がない場合、配列の全てのデータを書き込みます。
|
イベント | 説明 |
Com |
正常にデータが受信できた場合、イベントが発生します。
RecEventArgsのRecValue[0]に、0が入りますが、意味はありません。 |
Error |
受信データに異常がある場合や、タイムアウトが発生した場合、イベントが発生します。 |
例外 | 説明 |
ParamException |
チャネルの値が指定できる範囲を超えている場合、ParamExceptionが発生します。 |
NotOpenException |
ポートが開かれていない場合、NotOpenExceptionが発生します。 |
StatusException |
データを送信できない状態であった場合、StatusExceptionが発生します。 |
例:
private void button3_Click(object sender, System.EventArgs e)
{
try
{
// リレーの101チャネルに、2を設定
long[] data = new long[] {2};
omron1.WriteR(101, data);
}
catch(Exception ex)
{
labelErr.Text = ex.Message;
}
}
// イベントにより、データを受信
private void omron1_Com(object sender, Aoyama.Rs232.Omron.RecEventArgs e)
{
if(e.SendCmd.Equals("WR")) // 受信データが、WRコマンドへの返信の場合
{
// 正常完了の表示
AddMessage add;
string s;
add = new AddMessage(ShowMessage);
s = "正常完了";
labelMsg.BeginInvoke(add, new Object[] {s});
}
}
// エラーイベントが発生
private void omron1_Error(object sender, Aoyama.Rs232.Omron.ComErrEventArgs e)
{
string msg = e.ErrMsg; //エラーメッセージ
// エラーメッセージの表示
AddErrMessage err = new AddErrMessage(ShowErrMessage);
labelErr.BeginInvoke(err, new Object[] {msg});
}
public delegate void AddMessage(string message);
public delegate void AddErrMessage(string message);
private void ShowErrMessage(string str)
{
labelErr.Text = str;
}
private void ShowMessage(string str)
{
labelMsg.Text = str;
}
入出力リレー/内部補助リレー/特殊補助リレーエリア書き込み (同期)
リレーに値を書き込みます。
引数に問題がある場合やポートが開かれていない場合、タイムアウトなどが発生した場合には、例外が発生します。
引数 | 意味 | 説明 |
ch |
書込開始チャネル |
読み出し開始チャネルを整数で指定します |
val |
書込データ |
書き込むデータを整数の配列で指定します |
dataNum (省略可) |
書込チャネル数 |
チャネル数を整数で指定します。
この指定がない場合、配列の全てのデータを書き込みます。
|
例外 | 説明 |
ParamException |
チャネルの値が指定できる範囲を超えている場合、ParamExceptionが発生します。 |
NotOpenException |
ポートが開かれていない場合、NotOpenExceptionが発生します。 |
StatusException |
データを送信できない状態であった場合、StatusExceptionが発生します。 |
RecDataException |
受信データに異常がある場合、RecDataExceptionが発生します。 |
例:
try
{
// リレーの101チャネルに、3を設定
long[] data = new long[] {3};
omron1.WriteRs(101, data);
}
catch(Exception ex)
{
// エラーメッセージの表示
labelErr.Text = ex.Message;
}
LRリレーエリア書き込み (非同期)
LRリレーエリア書き込みコマンドを送信します。
正常にデータが書き込めた場合、Comイベントが発生します。(RecEventArgsのRecValueに、1つ配列データとして、値0が入りますが意味はありません)
引数に問題がある場合や、ポートが開かれていない場合には、例外が発生します。
タイムアウトや、受信データに異常がある場合には、Errorイベントが発生します。
引数 | 意味 | 説明 |
ch |
書込開始チャネル |
読み出し開始チャネルを整数で指定します |
val |
書込データ |
書き込むデータを整数の配列で指定します |
dataNum |
書込チャネル数 |
チャネル数を整数で指定します。
この指定がない場合、配列の全てのデータを書き込みます。
|
イベント | 説明 |
Com |
正常にデータが受信できた場合、イベントが発生します。
RecEventArgsのRecValue[0]に、0が入りますが、意味はありません。 |
Error |
受信データに異常がある場合や、タイムアウトが発生した場合、イベントが発生します。 |
例外 | 説明 |
ParamException |
チャネルの値が指定できる範囲を超えている場合、ParamExceptionが発生します。 |
NotOpenException |
ポートが開かれていない場合、NotOpenExceptionが発生します。 |
StatusException |
データを送信できない状態であった場合、StatusExceptionが発生します。 |
LRリレーエリア書き込み (同期)
LRリレーエリアに値を書き込みます。
引数に問題がある場合やポートが開かれていない場合、タイムアウトなどが発生した場合には、例外が発生します。
引数 | 意味 | 説明 |
ch |
書込開始チャネル |
読み出し開始チャネルを整数で指定します |
val |
書込データ |
書き込むデータを整数の配列で指定します |
dataNum (省略可) |
書込チャネル数 |
チャネル数を整数で指定します。
この指定がない場合、配列の全てのデータを書き込みます。
|
例外 | 説明 |
ParamException |
チャネルの値が指定できる範囲を超えている場合、ParamExceptionが発生します。 |
NotOpenException |
ポートが開かれていない場合、NotOpenExceptionが発生します。 |
StatusException |
データを送信できない状態であった場合、StatusExceptionが発生します。 |
RecDataException |
受信データに異常がある場合、RecDataExceptionが発生します。 |
HRリレーエリア書き込み (非同期)
HRリレーエリア書き込みコマンドを送信します。
正常にデータが書き込めた場合、Comイベントが発生します。(RecEventArgsのRecValueに、1つ配列データとして、値0が入りますが意味はありません)
引数に問題がある場合や、ポートが開かれていない場合には、例外が発生します。
タイムアウトや、受信データに異常がある場合には、Errorイベントが発生します。
引数 | 意味 | 説明 |
ch |
書込開始チャネル |
読み出し開始チャネルを整数で指定します |
val |
書込データ |
書き込むデータを整数の配列で指定します |
dataNum |
書込チャネル数 |
チャネル数を整数で指定します。
この指定がない場合、配列の全てのデータを書き込みます。
|
イベント | 説明 |
Com |
正常にデータが受信できた場合、イベントが発生します。
RecEventArgsのRecValue[0]に、0が入りますが、意味はありません。 |
Error |
受信データに異常がある場合や、タイムアウトが発生した場合、イベントが発生します。 |
例外 | 説明 |
ParamException |
チャネルの値が指定できる範囲を超えている場合、ParamExceptionが発生します。 |
NotOpenException |
ポートが開かれていない場合、NotOpenExceptionが発生します。 |
StatusException |
データを送信できない状態であった場合、StatusExceptionが発生します。 |
HRリレーエリア書き込み (同期)
HRリレーエリアに値を書き込みます。
引数に問題がある場合やポートが開かれていない場合、タイムアウトなどが発生した場合には、例外が発生します。
引数 | 意味 | 説明 |
ch |
書込開始チャネル |
読み出し開始チャネルを整数で指定します |
val |
書込データ |
書き込むデータを整数の配列で指定します |
dataNum (省略可) |
書込チャネル数 |
チャネル数を整数で指定します。
この指定がない場合、配列の全てのデータを書き込みます。
|
例外 | 説明 |
ParamException |
チャネルの値が指定できる範囲を超えている場合、ParamExceptionが発生します。 |
NotOpenException |
ポートが開かれていない場合、NotOpenExceptionが発生します。 |
StatusException |
データを送信できない状態であった場合、StatusExceptionが発生します。 |
RecDataException |
受信データに異常がある場合、RecDataExceptionが発生します。 |
タイマ/カウンタエリア書き込み (非同期)
タイマ/カウンタエリア書き込みコマンドを送信します。
正常にデータが書き込めた場合、Comイベントが発生します。(RecEventArgsのRecValueに、1つ配列データとして、値0が入りますが意味はありません)
引数に問題がある場合や、ポートが開かれていない場合には、例外が発生します。
タイムアウトや、受信データに異常がある場合には、Errorイベントが発生します。
引数 | 意味 | 説明 |
ch |
書込開始チャネル |
読み出し開始チャネルを整数で指定します |
val |
書込データ |
書き込むデータを整数の配列で指定します |
dataNum |
書込チャネル数 |
チャネル数を整数で指定します。
この指定がない場合、配列の全てのデータを書き込みます。
|
イベント | 説明 |
Com |
正常にデータが受信できた場合、イベントが発生します。
RecEventArgsのRecValue[0]に、0が入りますが、意味はありません。 |
Error |
受信データに異常がある場合や、タイムアウトが発生した場合、イベントが発生します。 |
例外 | 説明 |
ParamException |
チャネルの値が指定できる範囲を超えている場合、ParamExceptionが発生します。 |
NotOpenException |
ポートが開かれていない場合、NotOpenExceptionが発生します。 |
StatusException |
データを送信できない状態であった場合、StatusExceptionが発生します。 |
タイマ/カウンタエリア書き込み (同期)
タイマ/カウンタエリアに値を書き込みます。
引数に問題がある場合やポートが開かれていない場合、タイムアウトなどが発生した場合には、例外が発生します。
引数 | 意味 | 説明 |
ch |
書込開始チャネル |
読み出し開始チャネルを整数で指定します |
val |
書込データ |
書き込むデータを整数の配列で指定します |
dataNum (省略可) |
書込チャネル数 |
チャネル数を整数で指定します。
この指定がない場合、配列の全てのデータを書き込みます。
|
例外 | 説明 |
ParamException |
チャネルの値が指定できる範囲を超えている場合、ParamExceptionが発生します。 |
NotOpenException |
ポートが開かれていない場合、NotOpenExceptionが発生します。 |
StatusException |
データを送信できない状態であった場合、StatusExceptionが発生します。 |
RecDataException |
受信データに異常がある場合、RecDataExceptionが発生します。 |
タイマ/カウンタアップデータ書き込み (非同期)
タイマ/カウンタアップデータ書き込みコマンドを送信します。
正常にデータが書き込めた場合、Comイベントが発生します。(RecEventArgsのRecValueに、1つ配列データとして、値0が入りますが意味はありません)
引数に問題がある場合や、ポートが開かれていない場合には、例外が発生します。
タイムアウトや、受信データに異常がある場合には、Errorイベントが発生します。
引数 | 意味 | 説明 |
ch |
書込開始チャネル |
読み出し開始チャネルを整数で指定します |
val |
書込データ |
書き込むデータを整数の配列で指定します |
dataNum |
書込チャネル数 |
チャネル数を整数で指定します。
この指定がない場合、配列の全てのデータを書き込みます。
|
イベント | 説明 |
Com |
正常にデータが受信できた場合、イベントが発生します。
RecEventArgsのRecValue[0]に、0が入りますが、意味はありません。 |
Error |
受信データに異常がある場合や、タイムアウトが発生した場合、イベントが発生します。 |
例外 | 説明 |
ParamException |
チャネルの値が指定できる範囲を超えている場合、ParamExceptionが発生します。 |
NotOpenException |
ポートが開かれていない場合、NotOpenExceptionが発生します。 |
StatusException |
データを送信できない状態であった場合、StatusExceptionが発生します。 |
タイマ/カウンタアップデータ書き込み (同期)
タイマ/カウンタアップデータに値を書き込みます。
引数に問題がある場合やポートが開かれていない場合、タイムアウトなどが発生した場合には、例外が発生します。
引数 | 意味 | 説明 |
ch |
書込開始チャネル |
読み出し開始チャネルを整数で指定します |
val |
書込データ |
書き込むデータを整数の配列で指定します |
dataNum (省略可) |
書込チャネル数 |
チャネル数を整数で指定します。
この指定がない場合、配列の全てのデータを書き込みます。
|
例外 | 説明 |
ParamException |
チャネルの値が指定できる範囲を超えている場合、ParamExceptionが発生します。 |
NotOpenException |
ポートが開かれていない場合、NotOpenExceptionが発生します。 |
StatusException |
データを送信できない状態であった場合、StatusExceptionが発生します。 |
RecDataException |
受信データに異常がある場合、RecDataExceptionが発生します。 |
DMエリア書き込み (非同期)
DMエリア書き込みコマンドを送信します。
正常にデータが書き込めた場合、Comイベントが発生します。(RecEventArgsのRecValueに、1つ配列データとして、値0が入りますが意味はありません)
引数に問題がある場合や、ポートが開かれていない場合には、例外が発生します。
タイムアウトや、受信データに異常がある場合には、Errorイベントが発生します。
引数 | 意味 | 説明 |
ch |
書込開始チャネル |
読み出し開始チャネルを整数で指定します |
val |
書込データ |
書き込むデータを整数の配列で指定します |
dataNum |
書込チャネル数 |
チャネル数を整数で指定します。
この指定がない場合、配列の全てのデータを書き込みます。
|
イベント | 説明 |
Com |
正常にデータが受信できた場合、イベントが発生します。
RecEventArgsのRecValue[0]に、0が入りますが、意味はありません。 |
Error |
受信データに異常がある場合や、タイムアウトが発生した場合、イベントが発生します。 |
例外 | 説明 |
ParamException |
チャネルの値が指定できる範囲を超えている場合、ParamExceptionが発生します。 |
NotOpenException |
ポートが開かれていない場合、NotOpenExceptionが発生します。 |
StatusException |
データを送信できない状態であった場合、StatusExceptionが発生します。 |
DMエリア書き込み (同期)
DMエリアに値を書き込みます。
引数に問題がある場合やポートが開かれていない場合、タイムアウトなどが発生した場合には、例外が発生します。
引数 | 意味 | 説明 |
ch |
書込開始チャネル |
読み出し開始チャネルを整数で指定します |
val |
書込データ |
書き込むデータを整数の配列で指定します |
dataNum (省略可) |
書込チャネル数 |
チャネル数を整数で指定します。
この指定がない場合、配列の全てのデータを書き込みます。
|
例外 | 説明 |
ParamException |
チャネルの値が指定できる範囲を超えている場合、ParamExceptionが発生します。 |
NotOpenException |
ポートが開かれていない場合、NotOpenExceptionが発生します。 |
StatusException |
データを送信できない状態であった場合、StatusExceptionが発生します。 |
RecDataException |
受信データに異常がある場合、RecDataExceptionが発生します。 |
ARエリア書き込み (非同期)
ARエリア書き込みコマンドを送信します。
正常にデータが書き込めた場合、Comイベントが発生します。(RecEventArgsのRecValueに、1つ配列データとして、値0が入りますが意味はありません)
引数に問題がある場合や、ポートが開かれていない場合には、例外が発生します。
タイムアウトや、受信データに異常がある場合には、Errorイベントが発生します。
引数 | 意味 | 説明 |
ch |
書込開始チャネル |
読み出し開始チャネルを整数で指定します |
val |
書込データ |
書き込むデータを整数の配列で指定します |
dataNum |
書込チャネル数 |
チャネル数を整数で指定します。
この指定がない場合、配列の全てのデータを書き込みます。
|
イベント | 説明 |
Com |
正常にデータが受信できた場合、イベントが発生します。
RecEventArgsのRecValue[0]に、0が入りますが、意味はありません。 |
Error |
受信データに異常がある場合や、タイムアウトが発生した場合、イベントが発生します。 |
例外 | 説明 |
ParamException |
チャネルの値が指定できる範囲を超えている場合、ParamExceptionが発生します。 |
NotOpenException |
ポートが開かれていない場合、NotOpenExceptionが発生します。 |
StatusException |
データを送信できない状態であった場合、StatusExceptionが発生します。 |
ARエリア書き込み (同期)
ARエリアに値を書き込みます。
引数に問題がある場合やポートが開かれていない場合、タイムアウトなどが発生した場合には、例外が発生します。
引数 | 意味 | 説明 |
ch |
書込開始チャネル |
読み出し開始チャネルを整数で指定します |
val |
書込データ |
書き込むデータを整数の配列で指定します |
dataNum (省略可) |
書込チャネル数 |
チャネル数を整数で指定します。
この指定がない場合、配列の全てのデータを書き込みます。
|
例外 | 説明 |
ParamException |
チャネルの値が指定できる範囲を超えている場合、ParamExceptionが発生します。 |
NotOpenException |
ポートが開かれていない場合、NotOpenExceptionが発生します。 |
StatusException |
データを送信できない状態であった場合、StatusExceptionが発生します。 |
RecDataException |
受信データに異常がある場合、RecDataExceptionが発生します。 |
EMエリア書き込み (非同期)
使用できない機種があります
EMエリア書き込みコマンドを送信します。
正常にデータが書き込めた場合、Comイベントが発生します。(RecEventArgsのRecValueに、1つ配列データとして、値0が入りますが意味はありません)
引数に問題がある場合や、ポートが開かれていない場合には、例外が発生します。
タイムアウトや、受信データに異常がある場合には、Errorイベントが発生します。
引数 | 意味 | 説明 |
bk |
バンク |
-1:カレントバンク
0〜15:指定のバンク(16進数の00〜0Fに対応します) |
ch |
書込開始チャネル |
読み出し開始チャネルを整数で指定します |
val |
書込データ |
書き込むデータを整数の配列で指定します |
dataNum |
書込チャネル数 |
チャネル数を整数で指定します。
この指定がない場合、配列の全てのデータを書き込みます。
|
イベント | 説明 |
Com |
正常にデータが受信できた場合、イベントが発生します。
RecEventArgsのRecValue[0]に、0が入りますが、意味はありません。 |
Error |
受信データに異常がある場合や、タイムアウトが発生した場合、イベントが発生します。 |
例外 | 説明 |
ParamException |
チャネルの値が指定できる範囲を超えている場合、ParamExceptionが発生します。 |
NotOpenException |
ポートが開かれていない場合、NotOpenExceptionが発生します。 |
StatusException |
データを送信できない状態であった場合、StatusExceptionが発生します。 |
EMエリア書き込み (同期)
使用できない機種があります
EMエリアに値を書き込みます。
引数に問題がある場合やポートが開かれていない場合、タイムアウトなどが発生した場合には、例外が発生します。
引数 | 意味 | 説明 |
bk |
バンク |
-1:カレントバンク
0〜15:指定のバンク(16進数の00〜0Fに対応します) |
ch |
書込開始チャネル |
読み出し開始チャネルを整数で指定します |
val |
書込データ |
書き込むデータを整数の配列で指定します |
dataNum (省略可) |
書込チャネル数 |
チャネル数を整数で指定します。
この指定がない場合、配列の全てのデータを書き込みます。
|
例外 | 説明 |
ParamException |
チャネルの値が指定できる範囲を超えている場合、ParamExceptionが発生します。 |
NotOpenException |
ポートが開かれていない場合、NotOpenExceptionが発生します。 |
StatusException |
データを送信できない状態であった場合、StatusExceptionが発生します。 |
RecDataException |
受信データに異常がある場合、RecDataExceptionが発生します。 |
アボート関数
処理中の上位リンク機能を中断し、新しいコマンドを受け付け可能にします。
ポートが開かれていない場合、例外が発生します。
例外 | 説明 |
NotOpenException |
ポートが開かれていない場合、NotOpenExceptionが発生します。 |
ステータス読み出し
シーケンサのステータス情報を取得します。
引数 | 意味 | 説明 |
stData |
ステータスデータ |
16進数4桁の文字列が返ります |
stMsg |
ステータスメッセージ |
ステータスに関するメッセージ(文字列)が返ります |
戻り値 | 説明 |
終了コード |
関数の実行に成功した場合、終了コードを返します。正常終了は、"00"です。 |
例外 | 説明 |
NotOpenException |
ポートが開かれていない場合、NotOpenExceptionが発生します。 |
StatusException |
データを送信できない状態であった場合、StatusExceptionが発生します。 |
RecDataException |
受信データに異常がある場合、RecDataExceptionが発生します。 |
ステータス書き込み
シーケンサのステータスを設定します。
引数 | 意味 | 説明 |
stData |
ステータスデータ |
16進数2桁の文字列)を指定します
例:CQM1では、
00:プログラムモード
02:モニタモード
03:運転モード
のみ有効です。 |
戻り値 | 説明 |
終了コード |
関数の実行に成功した場合、終了コードを返します。正常終了は、"00"です。 |
例外 | 説明 |
NotOpenException |
ポートが開かれていない場合、NotOpenExceptionが発生します。 |
StatusException |
データを送信できない状態であった場合、StatusExceptionが発生します。 |
RecDataException |
受信データに異常がある場合、RecDataExceptionが発生します。 |
故障情報読み出し
シーケンサの故障情報を取得します。
引数 | 意味 | 説明 |
onOff |
異常解除 |
情報の読み出しと共に、異常を解除する場合、1を指定します。しない場合、0を指定します。 |
stData1 |
故障情報 1 |
16進数4桁の文字列が返ります |
stData2 |
故障情報 2 |
16進数4桁の文字列が返ります |
戻り値 | 説明 |
終了コード |
関数の実行に成功した場合、終了コードを返します。正常終了は、"00"です。 |
例外 | 説明 |
NotOpenException |
ポートが開かれていない場合、NotOpenExceptionが発生します。 |
StatusException |
データを送信できない状態であった場合、StatusExceptionが発生します。 |
RecDataException |
受信データに異常がある場合、RecDataExceptionが発生します。 |
機種コード読み出し
機種コード読み出しを取得します。
引数 | 意味 | 説明 |
plcCode |
機種コード |
16進数2桁の文字列が返ります |
戻り値 | 説明 |
終了コード |
関数の実行に成功した場合、終了コードを返します。正常終了は、"00"です。 |
例外 | 説明 |
NotOpenException |
ポートが開かれていない場合、NotOpenExceptionが発生します。 |
StatusException |
データを送信できない状態であった場合、StatusExceptionが発生します。 |
RecDataException |
受信データに異常がある場合、RecDataExceptionが発生します。 |
テスト関数
データを送信し、同じデータが返ってくるかを確認するために使用します。
引数 | 意味 | 説明 |
sendData |
送信データ |
任意の送信データ(文字列)を指定します。 |
戻り値 | 説明 |
受信データ |
関数の実行に成功した場合、受信データが返ります。 |
例外 | 説明 |
NotOpenException |
ポートが開かれていない場合、NotOpenExceptionが発生します。 |
StatusException |
データを送信できない状態であった場合、StatusExceptionが発生します。 |
RecDataException |
受信データに異常がある場合、RecDataExceptionが発生します。 |
任意のデータの送信(非同期)
任意のデータを送信します。
コントロールは、FCSとターミネータを自動的に付けて送信しますので、FCS以降の文字列をメソッドに与える必要はありません。
シーケンサのデータは、ComExイベントを使って受け取ります。
引数 | 意味 | 説明 |
val |
送信データ |
文字列を指定します |
type |
送信のタイプ (0,1,2のいずれかを指定) |
0:文字列に、FCSとターミネータを付けて送信します。
1:文字列に、FCSとデリミタを付けて送信します。
2:文字列のみを送信します。
通常は、0を指定します。
132文字以上のコマンドを送信する場合、一度に送信することができませんので、分割して、送信することになります。この場合、最後の文字列と、途中の文字列を区別するために途中の文字列は、デリミタを付加した文字列となります。
例えば、300文字を送信する場合、3分割して、送信しますが、1、2番目の分については、デリミタを、最後の分についてターミネータを付加する必要があります。 |
イベント | 説明 |
ComEx |
正常にデータが受信できた場合、イベントが発生します。
受信データは、RecExEventArgsのRecValueに、文字列として入ります。 |
Error |
受信データに異常がある場合や、タイムアウトが発生した場合、イベントが発生します。 |
例外 | 説明 |
ParamException |
指定の値が指定できる範囲を超えている場合、ParamExceptionが発生します。 |
NotOpenException |
ポートが開かれていない場合、NotOpenExceptionが発生します。 |
StatusException |
データを送信できない状態であった場合、StatusExceptionが発生します。 |
任意のデータの送信(同期)
任意のデータを送信し、返信を受け取ります。
コントロールは、FCSとターミネータを自動的に付けて送信しますので、FCS以降の文字列をメソッドに与える必要はありません。
引数 | 意味 | 説明 |
val |
送信データ |
文字列を指定します |
type |
送信のタイプ (0,1,2のいずれかを指定) |
0:文字列に、FCSとターミネータを付けて送信します。
1:文字列に、FCSとデリミタを付けて送信します。
2:文字列のみを送信します。
通常は、0を指定します。
132文字以上のコマンドを送信する場合、一度に送信することができませんので、分割して、送信することになります。この場合、最後の文字列と、途中の文字列を区別するために途中の文字列は、デリミタを付加した文字列となります。
例えば、300文字を送信する場合、3分割して、送信しますが、1、2番目の分については、デリミタを、最後の分についてターミネータを付加する必要があります。 |
戻り値 | 説明 |
受信データ |
関数の実行に成功した場合、受信データを返します。 |
例外 | 説明 |
ParamException |
指定の値が指定できる範囲を超えている場合、ParamExceptionが発生します。 |
NotOpenException |
ポートが開かれていない場合、NotOpenExceptionが発生します。 |
StatusException |
データを送信できない状態であった場合、StatusExceptionが発生します。 |
RecDataException |
受信データに異常がある場合、RecDataExceptionが発生します。 |