PLMC-M3EX API 簡易説明¶
PLMC-M3EXのAPI一覧です.
詳細はAPIリファレンスをご確認下さい.
PLMC-M3EXとの通信開始&終了コマンド¶
PLMC-M3EXとの通信を開始&終了するコマンドです.
init_comm¶
説明: | 通信を開始します. |
---|---|
Args: | None |
Returns: | None |
quit_comm¶
説明: | 通信を終了します. |
---|---|
Args: | None |
Returns: | None |
プログラム読込&書込&編集コマンド¶
PLMC-M3EXプログラムの読込&書込を行うコマンドです.
read_program¶
説明: | プログラムを読み出します. |
---|---|
Args1: | task(int) -- タスク番号 |
Args2: | pno(int) -- プログラム番号 |
Returns: | プログラム文字列 |
save_program¶
説明: | プログラムを読出しファイルに保存します. |
---|---|
Args1: | task(int) -- タスク番号 |
Args2: | pno(int) -- プログラム番号 |
Args3: | filepath(str) -- ファイルパス |
Returns: | None |
read_onestepprogram¶
説明: | 選択中のプログラムのステップ命令を読み出します. |
---|---|
Args1: | task(int) -- タスク番号 |
Args2: | step(int) -- ステップ番号(0は現在実行中ステップ) |
Returns: | ステップ命令文字列 |
write_program_from_file¶
説明: | ファイルからプログラムを書き込みます. |
---|---|
Args1: | filepath(str) -- ファイルパス |
Args2: | task(int) -- タスク番号 |
Args3: | programblock(int) -- 書き込むプログラムブロック |
Args4: | code(str) -- コードタイプ("Tcode" or "Gcode") |
Returns: | なし |
write_program_from_str¶
説明: | プログラムを書き込みます. |
---|---|
Args1: | text(str) -- プログラム文字列 |
Args2: | task(int) -- タスク番号 |
Args3: | programblock(int) -- 書き込むプログラムブロック |
Args4: | code(str) -- コードタイプ("Tcode" or "Gcode") |
Returns: | なし |
write_dnc_program_from_str¶
説明: | DNC運転プログラムを書き込みます. |
---|---|
Args1: | text(str) -- プログラム文字列 |
Args2: | task(int) -- タスク番号 |
Args3: | code(str) -- コードタイプ("Tcode" or "Gcode") |
Args4: | cont(bool) -- 書込むDNCプログラムが継続プログラムの場合はTrue |
Returns: | なし |
write_dnc_program_from_file¶
説明: | DNC運転プログラムファイルを書き込みます. |
---|---|
Args1: | filepath(str) -- ファイル名 |
Args2: | task(int) -- タスク番号 |
Args3: | code(str) -- コードタイプ("Tcode" or "Gcode") |
Args4: | cont(bool) -- 書込むDNCプログラムが継続プログラムの場合はTrue |
Returns: | なし |
read_programblock_info¶
説明: | 現在の各プログラムブロック情報を読出します. |
---|---|
Args: | None |
Returns: | [[タスク番号(int), プログラム番号(int), ]...]で要素数が64のプログラムブロックデータリスト |
read_dnc_info¶
説明: | 現在のDNCバッファの状態を読出します. |
---|---|
Args1: | task(int) -- タスク番号 |
Returns: | (DNCバッファ使用容量(byte), DNCバッファ空き容量(byte)) |
move_programblock¶
説明: | 既にダウンロード済みのプログラムブロックを別ブロックに移動します. |
---|---|
Args1: | task(int) -- タスク番号 |
Args2: | pno(int) -- 移動するプログラム番号 |
Args3: | blockno(int) -- 移動先先頭ブロック番号 |
Returns: | None |
copy_programblock¶
説明: | 既にダウンロード済みのプログラムを指定し別ブロックにコピーします. |
---|---|
Args1: | task(int) -- タスク番号 |
Args2: | sourcepno(int) -- コピーするプログラム番号 |
Args3: | dsttask(int) -- コピーした後のタスク番号 |
Args4: | dstblckno(int) -- コピーした後の先頭ブロック番号 |
Args5: | dstpno(int) -- コピーした後のプログラム番号 |
Returns: | None |
delete_programblock¶
説明: | ダウンロード済みのプログラムを指定しそのプログラムを削除します. |
---|---|
Args1: | task(int) -- タスク番号 |
Args2: | pno(int) -- 削除するプログラム番号 |
Returns: | None |
プログラム実行コマンド¶
PLMC-M3EXプログラムの運転&停止&編集を行うコマンドです.
start_program¶
説明: | プログラム実行の開始/再開を行います. |
---|---|
Args1: | task(int) -- タスク番号 |
Returns: | None |
stop_program¶
説明: | プログラム実行/軸移動の一時停止を行います. |
---|---|
Args1: | task(int) -- タスク番号 |
Returns: | None |
select_program¶
説明: | 実行するプログラムを指定します. |
---|---|
Args1: | task(int) -- タスク番号 |
Args2: | program(int) -- 選択プログラム番号 |
Returns: | None |
タスク状態設定コマンド¶
タスクの状態をコントロールするタスク操作コマンドの説明をします.
set_mode¶
説明: | 動作モードを設定します. |
---|---|
Args1: | task(int) -- タスク番号 |
Args2: | mode(str) -- 動作モード("setting": セッティングモード, "manual": 手動運転モード, "auto": 自動運転モード, "ot_ignore": OT無視モード, "dnc": DNC運転モード) |
Returns: | None |
reset_task¶
説明: | タスクのリセットを行います. |
---|---|
Args1: | task(int) -- タスク番号 |
Returns: | None |
stop_task¶
説明: | プログラム実行や移動コマンド発行等によって移動中の軸を停止します. |
---|---|
Args1: | task(int) -- タスク番号 |
Returns: | None |
restart_task¶
説明: | 軸移動を再開します. |
---|---|
Args1: | task(int) -- タスク番号 |
Returns: | None |
change_override¶
説明: | 送りオーバーライドを0%~200%の範囲で1%刻みで設定します. |
---|---|
Args1: | task(int) -- タスク番号 |
Args2: | override(int) -- オーバーライド設定値(0~200%) |
Returns: | None |
change_interpolate_override¶
説明: | 直線補間/円弧補間動作時のオーバーライドを0%~200%の範囲で1%刻みで設定します. |
---|---|
Args1: | task(int) -- タスク番号 |
Args2: | override(int) -- 補間オーバーライド設定値(0~200%) |
Returns: | None |
change_spindle_override¶
説明: | 主軸/SPIN動作時のオーバーライドを変更します. |
---|---|
Args1: | task(int) -- タスク番号 |
Args2: | override(int) -- 主軸オーバーライド設定値(0~200%) |
Returns: | None |
set_singlestep_mode¶
説明: | シングルステップモードへの移行と解除を行います. |
---|---|
Args1: | task(int) -- タスク番号 |
Returns: | None |
set_cycle_mode¶
説明: | サイクルモードへの移行と解除を行います. |
---|---|
Args1: | task(int) -- タスク番号 |
Returns: | None |
軸状態設定&読出しコマンド¶
各軸の状態設定&読出しを行うコマンドの説明をします.
各軸状態設定コマンドへの引数kwargsは各軸への指令を辞書形式で与えます.
各軸のラベルはそれぞれ第1軸から9軸まで(X, Y, Z, A, B, C, R, Q, T)が割り振られており,
設定を行う軸にはTrueを与えてください.
また, 設定を解除する軸にはFalseを与えてください.
引数として与えなかった軸には何も行われません.
また, 引数としてALL=True又はFalseを与えた場合は全軸が設定又はします.
read_neglected_axis_info¶
説明: | 各軸の軸指令の有効/無効状態を読出します. |
---|---|
Args1: | task(int) -- タスク番号 |
Returns: | neglectaxislist (list[int]): 第n軸が軸指令の無効の場合, n番目の要素の値が1になります. 有効の場合は0になります. |
read_interlocked_axis_info¶
説明: | 各軸のインタロックの有効/無効状態を読出します. |
---|---|
Args1: | task(int) -- タスク番号 |
Returns: | interlockaxislist (list[int]): 第n軸がインタロックの場合, n番目の要素の値が1になります. インタロックでない場合は0になります. |
read_onoff_axis_info¶
説明: | 各軸のサーボのON/OFF状態を読出します/ |
---|---|
Args1: | task(int) -- タスク番号 |
Returns: | onoffaxislist (list[int]): 第n軸がONの場合, n番目の要素の値が1になります. OFFの場合は0になります. |
set_spindle_rev¶
説明: | 主軸の回転数を指定します |
---|---|
Args1: | task(int) -- タスク番号 |
Args2: | revolution(int) -- 回転数 |
Returns: | None |
set_neglected_axis¶
説明: | 各軸への軸指令の有効無効を設定します |
---|---|
Args1: | task(int) -- タスク番号 |
Args2: | kwargs(dict) -- 有効無効値dict (ex. X=True) |
Returns: | None |
例1: | 第1軸を有効にする場合 → set_neglected_axis(task, X=True) |
例2: | 第1軸を無効にする場合 → set_neglected_axis(task, X=False) |
例3: | 全軸を有効にする場合 → set_neglected_axis(task, ALL=True) |
例4: | 全軸を無効にする場合 → set_neglected_axis(task, ALL=False) |
set_interlock¶
説明: | 各軸のインタロックの有効無効を設定します |
---|---|
Args1: | task(int) -- タスク番号 |
Args2: | kwargs(dict) -- インタロック値dict (ex. X=True) |
Returns: | None |
例1: | 第1軸をLockする場合 → set_interlock(task, X=True) |
例2: | 第1軸をUnlockする場合 → set_interlock(task, X=False) |
例3: | 全軸をLockにする場合 → set_interlock(task, ALL=True) |
例4: | 全軸をUnlockにする場合 → set_interlock(task, ALL=False) |
set_onoff_servo¶
説明: | 各軸のサーボON/OFFを設定します |
---|---|
Args1: | task(int) -- タスク番号 |
Args2: | kwargs(dict) -- ON/OFFdict |
Returns: | None |
例1: | 第1軸をOnする場合 → set_onoff_servo(task, X=True) |
例2: | 第1軸をOffする場合 → set_onoff_servo(task, X=False) |
例3: | 全軸をOnにする場合 → set_onoff_servo(task, ALL=True) |
例4: | 全軸をOffにする場合 → set_onoff_servo(task, ALL=False) |
軸移動&軸動作コマンド¶
軸移動コマンドの説明をします.
軸移動コマンドへの引数kwargsは各軸への指令を辞書形式で与えます.
各軸のラベルはそれぞれ第1軸から9軸まで(X, Y, Z, A, B, C, R, Q, T)が割り振られており,
それぞれに必要な移動量又は位置(pls)を引数として与えてください.
引数として与えなかった軸は移動しません.
例: 第1軸, 第2軸への指令: X=1000, Y=-2000
exec_positioning¶
説明: | インクリメンタルモードの位置決め((G91 G00))を実行します. |
---|---|
Args1: | task(int) -- タスク番号 |
Args2: | kwargs(dict) -- インクリメント指令dict |
Returns: | None |
exec_abs_positioning¶
説明: | アブソリュートモードの位置決め(G90 G00)を実行します. |
---|---|
Args1: | task(int) -- タスク番号 |
Args2: | mode -- ("logical" or "mechanical"): logical"= 論理座標系アブソリュート指定, "mechanical" = 機械座標系アブソリュート指定 |
Args3: | kwargs(dict) -- PTP位置決め値dict |
Returns: | None |
exec_positioning_without_syc¶
説明: | 同期軸との同期を行わずにインクリメンタルモードの位置決め((G91 G00))を実行します. |
---|---|
Args1: | task(int) -- タスク番号 |
Args2: | kwargs(dict) -- インクリメント指令dict |
Returns: | None |
exec_abs_positioning_without_syc¶
説明: | 同期軸との同期を行わずにアブソリュートモードの位置決め(G90 G00)を実行します. |
---|---|
Args1: | task(int) -- タスク番号 |
Args2: | mode(str) -- ("logical" or "mechanical"): logical"= 論理座標系アブソリュート指定, "mechanical" = 機械座標系アブソリュート指定 |
Args3: | kwargs(dict) -- PTP位置決め値dict |
Returns: | None |
exec_linear_interpolation¶
説明: | インクリメンタルモードの(G91 G01)直線補間位置決めを行います. |
---|---|
Args1: | task(int) -- タスク番号 |
Args2: | feed(int) -- 補間送り速度 [pls/sec] |
Args3: | kwargs(dict) -- 直線補間位置決め値dict |
Returns: | None |
exec_abs_linear_interpolation¶
説明: | アブソリュートモード(G90 G01)の直線補間位置決めを行います. |
---|---|
Args1: | task(int) -- タスク番号 |
Args2: | feed(int) -- 補間送り速度 [pls/sec] |
Args3: | mode(str) -- ("logical" or "mechanical"): logical"= 論理座標系アブソリュート指定, "mechanical" = 機械座標系アブソリュート指定 |
Args4: | kwargs(dict) -- 直線補間位置決め値dict |
Returns: | None |
spin_axis¶
説明: | 回転軸を回転させます. |
---|---|
Args1: | task(int) -- タスク番号 |
Args2: | override(bool) -- オーバーライドフラグ |
Args3: | kwargs(dict) -- 回転数値dict (ex. X=100000) |
Returns: | None |
on_spindle¶
説明: | 主軸の回転を開始します. |
---|---|
Args1: | task(int) -- タスク番号 |
Returns: | None |
off_spindle¶
説明: | 主軸回転を停止します. |
---|---|
Args1: | task(int) -- タスク番号 |
Returns: | None |
reverse_spindle¶
説明: | 主軸を逆回転させます. |
---|---|
Args1: | task(int) -- タスク番号 |
Returns: | None |
start_jog¶
説明: | JOG移動を開始します. |
---|---|
Args1: | task(int) -- タスク番号 |
Args2: | kwargs(dict) -- JOG方向値dict |
Returns: | None |
追加説明: | kwargsには各軸の移動方向を設定します. +方向の場合1を, -方向の場合は-1を設定して下さい. |
例: | start_jog(task, X=1, Y=-1) |
stop_jog¶
説明: | JOG移動を停止します. |
---|---|
Args1: | task(int) -- タスク番号 |
Returns: | None |
start_generating_torque¶
説明: | 各軸のトルク制御を開始します |
---|---|
Args1: | task(int) -- タスク番号 |
Args2: | kwargs(dict) -- トルク値, 速度制限値dict |
Returns: | None |
追加説明: | kwargsにはトルク値("torque"), 速度制限値("limit_pps")のdictを与えます. 各軸に対してトルク値(-800 ~ 800%)と制限速度1~1000000000(pps)を設定してください. |
注意: | トルク値がマイナスの値の場合, マイナス方向のトルクを発生(-移動)します. また, 速度制限値はモータのエンコーダの一周パルス数に関係なくpls/sec単位で指定します. |
例: | start_generating_torque(task=0, X={"torque":10, "limit_pps":10000}) |
stop_generating_torque¶
説明: | 各軸のトルク制御を終了します. |
---|---|
Args1: | task(int) -- タスク番号 |
Args2: | kwargs(dict) -- トルク制御を終了する軸dict |
Returns: | None |
追加説明: | start_generating_torqueで開始した各軸のトルク制御を終了します. 終了する軸にTrueの引数を追加してください. |
例1: | stop_generating_torquestop_generating_torque(X=True) |
例2: | stop_generating_torquestop_generating_torque(ALL=True) |
exec_servo_positioning¶
説明: | メカトロリンクの位置決め命令を使用することにより各軸サーボのインクリメンタル独立位置決めを行います. |
---|---|
Args1: | task(int) -- タスク番号 |
Args2: | kwargs(dict) -- 各軸インクリメント独立位置決めdict |
Returns: | None |
追加説明: | kwargsには各軸インクリメント独立位置決めdictのkeyはpulse(移動量)とfeed(送り速度)です. |
注意: | PLMC-M3EXの移動/運転プログラム実行とは別に(非同期に)移動を行います |
例: | exec_servo_positioning(task=0, X={"pulse": 1000, "feed":1000}) |
exec_abs_servo_positioning¶
説明: | メカトロリンクの位置決め命令を使用することにより各軸サーボのアブソ独立位置決めを行います. |
---|---|
Args1: | task(int) -- タスク番号 |
Args2: | mode(str) -- ("logical" or "mechanical"): logical"= 論理座標系アブソリュート指定, "mechanical" = 機械座標系アブソリュート指定 |
Args3: | kwargs(dict) -- 各軸独立独立位置決めdict |
Returns: | None |
追加説明: | kwargsには各軸インクリメント独立位置決めdictのkeyはpulse(アブソ位置)とfeed(送り速度)です. |
注意: | PLMC-M3EXの移動/運転プログラム実行とは別に(非同期に)移動を行います |
例: | exec_abs_servo_positioning(task=0, mode="logical", X={"pulse": 1000, "feed":1000}) |
原点復帰コマンド¶
軸状態を設定するコマンドの説明をします.
原点復帰コマンドへの引数kwargsは各軸への指令を辞書形式で与えます.
各軸のラベルはそれぞれ第1軸から9軸まで(X, Y, Z, A, B, C, R, Q, T)が割り振られており,
原点復帰を行う軸にはTrueを与えてください
引数として与えなかった軸は移動しません.
また, 引数としてALL=Trueを加えた場合は全軸が原点復帰します.
例: 第1軸, 第2軸を原点復帰: X=True, Y=True
例: 全軸を原点復帰: ALL=True
return_to_reference¶
説明: | 全軸の原点復帰を行います. |
---|---|
Args1: | task(int) -- タスク番号 |
Returns: | None |
return_to_home¶
説明: | 設定されたホーム位置へ移動します. |
---|---|
Args1: | task(int) -- タスク番号 |
Returns: | None |
return_to_axisreference¶
説明: | 逃げ動作を行ってから指定した軸を自動原点復帰させます. |
---|---|
Args1: | task(int) -- タスク番号 |
Args2: | kwargs(dict)-- 各論理軸原点復帰指令dict |
Returns: | None |
例: | return_to_reference(task=0, X=True, Y=True) |
return_to_axisreference_manually¶
説明: | 逃げ動作を行わずに指定した軸を自動原点復帰させます. |
---|---|
Args1: | task(int) -- タスク番号 |
Args2: | kwargs(dict)-- 各論理軸原点復帰指令dict |
Returns: | None |
例: | return_to_axisreference_manually(task=0, X=True, Y=True) |
座標設定コマンド¶
座標を設定するコマンドの説明をします.
座標設定コマンドへの引数kwargsは各軸の座標指定を辞書形式で与えます.
各軸のラベルはそれぞれ第1軸から9軸まで(X, Y, Z, A, B, C, R, Q, T)が割り振られており,
それぞれの座標値(pls)を引数として与えてください.
引数として与えなかった軸は設定しません.
set_origin¶
説明: | 現在の軸指令位置を指令座標の原点として設定します. |
---|---|
Args1: | task(int) -- タスク番号 |
Returns: | None |
set_coordination¶
説明: | 各軸の現在位置を指定の論理座標値に設定します. |
---|---|
Args1: | task(int) -- タスク番号 |
Args2: | kwargs(dict) -- 各論理座標値dict |
Returns: | None |
set_abs_position¶
説明: | 各軸のアブソリュートポジション(機械座標系)を指定値に設定します. |
---|---|
Args1: | task(int) -- タスク番号 |
Args2: | kwargs(dict) -- アブソリュートポジション(機械座標系)値dict |
Returns: | None |
set_feedback_counters¶
説明: | FBカウンタ積算値を変更します(FBを割り当てている軸の座標には影響しません). |
---|---|
Args1: | kwargs(dict) -- FBカウンタ積算値値dict |
Returns: | None |
追加説明: | FBカウンタ積算値はFB1からFB10までFB1=XX, FB2=YY, FB10=ZZの形式で与えてください |
例: | set_feedback_counters(FB1=1000, FB2=-1000) |
バックアップ&初期化コマンド¶
全体操作コマンドの説明をします.
reflect_program¶
説明: | ダウンロード済みの全プログラムデータを保存領域に保存します. |
---|---|
Args: | None |
Returns: | None |
reflect_pointdata¶
説明: | ダウンロード済みの全ポイントデータを保存領域に保存します. |
---|---|
Args: | None |
Returns: | None |
erase_memory¶
説明: | バックアップメモリのデータを初期化します. |
---|---|
Args1: | param(bool) -- パラメーターを初期化するか? |
Args2: | abspos (bool): -- アブソリュートポジションを初期化するか? |
Args3: | macro (bool): -- マクロ変数を初期化するか? |
Args4: | pointtable (bool) -- ポイントテーブルを初期化するか? |
Args5: | all (bool): -- 全てのパラメータを初期化するか? |
Returns: | None |
マクロ変数情報読出し&書込みコマンド¶
マクロ変数の書込み&読込を行うコマンドの説明をします.
PLMC-M3EXのマクロ変数#1000~#1499は16bit範囲(-32768 ~ 32767)
それ以外は32bit範囲です.
read_macrovariable¶
説明: | 指定された番号のマクロ変数を読み出します. |
---|---|
Args1: | task(int) -- タスク番号 |
Args2: | macronum(int) -- マクロ変数番号 |
Returns: | マクロ変数値 |
read_macrovariables¶
説明: | マクロ変数を一括して読み出します. |
---|---|
Args1: | task(int) -- タスク番号 |
Args2: | startmacronum(int) -- 読み出しを開始するマクロ変数番号 |
Args3: | size(int) -- 読み込むマクロ変数数(最大200) |
Returns: | 長さがsizeで各要素がintのマクロ変数リスト |
write_macrovariable¶
説明: | 指定された番号のマクロ変数に対する書込みを行います. |
---|---|
Args1: | task(int) -- タスク番号 |
Args2: | macronum(int) -- マクロ変数番号 |
Args3: | value(int) -- マクロ変数値 |
Returns: | None |
write_macrovariables¶
説明: | マクロ変数値を一括で書き込みます. |
---|---|
Args1: | task(int) -- タスク番号 |
Args2: | startmacronum(int) -- 書込みを開始するマクロ変数番号 |
Args3: | size(int) -- 書き込むマクロ変数数(最大200) |
Args4: | macrovariables(int) -- 長さがsizeで各要素がintのマクロ変数リスト |
Returns: | None |
ポイントテーブル情報読出し&書込みコマンド¶
ポイントテーブルの書込み&読込を行うコマンドの説明をします.
read_pointtables¶
説明: | ポイントテーブルの読込を行います. |
---|---|
Args1: | task(int) -- タスク番号 |
Args2: | startpointnum(int) -- 読込開始ポイントテーブル番号(0~400) |
Args3: | size(int) -- 読み込むポイントデータ数(0~400) |
Returns: | pointtables([[int]]) -- 1~9軸までのポイントテーブルデータ*ポイントデータ数の二次元リスト.無効ポイントテーブルの値はNone |
write_pointtable¶
説明: | イントテーブルの書込みを行います. |
---|---|
Args1: | task(int) -- タスク番号 |
Args2: | pointnum(int) -- 書込みポイントテーブル番号 |
Args3: | kwargs(dict) -- 各軸ポイントデータdict (ex. X=1000). 引数として与えない軸のデータについては, 無効値となります. |
Returns: | None |
入出力情報読出し&設定コマンド¶
入出力の読込&設定を行うコマンドの説明をします.
入出力信号は入出力レジスタの指定ビットを操作することでONOFFします.
各入出力の割付については「ユーザーズマニュアル<機能編> 2-3 標準入出力チャンネル表」を参照してください.
read_io_status¶
説明: | PLMC-M3EXの汎用入出力の状態を読出します. |
---|---|
Args: | None |
Returns: | 汎用入力リスト要素数36 index=0がi#0000, index=35がi#0035, 汎用出力リスト要素数12 index=0がo#0000, index=3がo#0011 |
read_forcedio_status¶
説明: | PLMC-M3EXの強制入出力の状態を読出します. |
---|---|
Args: | None |
Returns: | 汎用入力リスト要素数36 index=0がi#0000, index=35がi#0035, 汎用出力リスト要素数12 index=0がo#0000, index=3がo#0011 |
out_mcode¶
説明: | 指定したMコードを出力します. |
---|---|
Args1: | mcode(int) -- 出力Mコード |
Returns: | None |
onoff_outputs¶
説明: | 出力を直接一括ON/OFFします. |
---|---|
Args1: | outputs (list[int])-- 要素数12のリスト |
Returns: | None |
追加説明: | このコマンドは引数が複雑です. 詳細APIをご確認下さい |
onoff_output¶
説明: | 出力を直接ON/OFFします. |
---|---|
Args1: | port(int) -- 出力するポート先(0~15). |
Args2: | bitnum(int) -- 操作するポートのビット番号(0~15) |
Args3: | flag(int) -- 操作する強制命令コマンド(0:無変更, 1:強制指定解除, 2:強制ON指定, 3:強制OFF指定) |
Returns: | None |
force_inputs¶
説明: | 任意の入力の強制的なON/OFFを一括して指定します. |
---|---|
Args1: | inputs(list[[list[int]]]) --要素がintの二次元リスト |
Returns: | None |
追加説明: | このコマンドは引数が複雑です. 詳細APIをご確認下さい |
force_outputs¶
説明: | 任意の出力の強制的なON/OFFを一括して指定します. |
---|---|
Args1: | outputs(list[[list[int]]]) --要素がintの二次元リスト |
Returns: | None |
追加説明: | このコマンドは引数が複雑です. 詳細APIをご確認下さい |
force_io¶
説明: | 任意の出力の強制的なON/OFFを一括して指定します. |
---|---|
Args1: | io(int) -- 強制入力, 強制出力どちらを操作するかのフラグ. 強制入力では"input", 強制出力では"output"を指定 |
Args2: | port(int) -- 出力するポート先です. inputは0~35, outputは0~14 |
Args3: | bitnum(int) -- 操作するポートのビット番号(0~15) |
Args4: | flag(int) -- 操作する強制命令コマンド(0:無変更, 1:強制指定解除, 2:強制ON指定, 3:強制OFF指定) |
Returns: | None |
内部情報読出し&設定コマンド説明¶
PLMC-M3EX内部の情報を読み出すコマンドの説明をします.
read_status¶
説明: | ステータスデータを読み出します. |
---|---|
Args: | None |
Returns: | PLMC-M3EXステータスクラス |
追加説明: | PLMC-M3EXステータスクラスの詳細はステータス確認コマンド説明をご確認下さい. |
read_servoparams¶
説明: | サーボパラメータの読み出しを行います. |
---|---|
Args: | None |
Returns: | ServoParam(物理軸サーボパラメータクラス) |
read_assigned_axis_info¶
説明: | 現在の各軸タスク割り付け情報を読出します. |
---|---|
Args: | None |
Returns: | (list[task, logicalaxis])要素n番目が第(n+1)番目の物理軸の割り当て. 各要素の0番目がタスク番号, 1番目が論理軸番号. 無効軸の場合両方の要素がNone. |
read_rtc_time¶
説明: | 内部にて実測した制御周期毎の内部処理時間を読出します. |
---|---|
Args: | None |
Returns: | (最大処理時間[us], 現在処理時間[us]) |
read_foreground_time¶
説明: | フォアグランドループの処理時間を読出します. |
---|---|
Args: | None |
Returns: | (最大処理時間[us], 現在処理時間[us]) |
read_version¶
説明: | システムのバージョン情報を読出します. |
---|---|
Args: | None |
Returns: | ROMバージョン情報dict |
reset_timer¶
説明: | 制御周期内処理時間最大値とフォアグランド周期計測最大値をクリアします. |
---|---|
Args: | None |
Returns: | None |
TPCロギング操作コマンド¶
TPCロギングの設定, 操作, データ取得を行うコマンドです.
TPCロギング項目を設定し, 実際にTPCロギングを開始する手順は
1. write_tpc_settingsでロギング項目を設定
2. Plm3exクラスのwrite_tpc_settingsでモーションコントローラーへロギング項目を通知
3. start_tpcでTPCロギングを開始
4. get_tpc_dataで適宜データ取得
5. stop_tpcでTPCロギングを終了
の流れで行います.
詳細はAPIリファレンスをご確認下さい.
なお, TPCロギングデータはPlm3exクラスに保存されていきます.
ロギングを短い周期で長時間行うと, メモリを使い切る可能性があるのでご注意下さい.
write_tpc_settings¶
説明: | TPCロギング設定を書込みます. |
---|---|
Args1: | tpcsettings(PLMC-M3EXTPCSettings) -- PLMC-M3EXTPCSettingsのインスタンス |
Args2: | task(int) -- ロギングするタスク番号 |
Args3: | frequency(int) -- ロギング周期(msec) 0の時は毎周期 |
Returns: | None |
注意: | PLMC-M3EXTPCSettingsクラスの説明もお読み下さい. |
start_tpc¶
説明: | TPCロギングを開始します. |
---|---|
Args1: | fetch_interval(float) -- データ読出し周期 |
Returns: | なし |
注意: | PLMC-M3EXクラスのTPCロギングデータは初期化されるのでご注意下さい. |
stop_tpc¶
説明: | TPCロギングを終了します. |
---|---|
Args: | None |
Returns: | 取得したTPCデータのDataFrame |
read_tpc_state¶
説明: | 現在のTPCロギング状態を取得します. |
---|---|
Args: | None |
Returns: | (flag -- TPCデータロギングフラグ(0:未実行,1:実行中), バッファ使用容量(Byte), バッファ空き容量(Byte)) |
get_tpc_data¶
説明: | ロギングデータを取得します. |
---|---|
Args: | None |
Returns: | 取得したTPCデータのpandas.DataFrame |
erase_tpc_data¶
説明: | PLMC-M3EXクラス内のTPCロギングデータを消去します. |
---|---|
Args: | None |
Returns: | 取得したTPCデータのpandas.DataFrame |
追加説明: | start_tpcからstop_tpcまでの間隔が長時間でPLMC-M3EX内のロギングデータが大量になり,メモリを使い切る可能性がある場合は適宜呼び出してください. |
補助コマンド¶
補助コマンドの説明をします.
set_feedunit¶
説明: | 補間移動時のF指定の単位を設定します. |
---|---|
Args1: | pulse(int) -- 単位時間あたりの移動量 1~200000パルス |
Args2: | timeflag(str) -- "minutes"=秒単位, "seconds"=分単位 |
Returns: | None |
set_positionunit¶
説明: | 座標/移動量指定, 円弧半径指定の小数点単位を指定します.("X1." や "R1."と記述時の倍率指定) |
---|---|
Args1: | pulse (int): 座標/移動量倍率[1, 10, 100, 1000, 10000, 100000]から選択 |
Returns: | None |
追加説明: | デフォルト値は1000倍です. |
change_axislabels¶
説明: | 軸指令コマンドに対する対象軸名を変更します. |
---|---|
Args1: | axislabels(list[str])-- 要素9の文字列リスト. [0]が第1論理軸ラベル,[8]が第9論理軸のラベル |
Returns: | None |
追加説明: | デフォルトの軸名は第1軸から["X", "Y", "Z", "A", "B", "C", "R", "Q", "T"]です. |
PLMC-M3EX ステータス確認コマンド説明¶
read_statusコマンドで得られるPlm3exstatusステータスクラスのコマンドを説明します.
全体ステータス, タスクごとのステータス, 各軸のステータスを確認できます.
また, タスクごとにタスクの情報とそのタスクに割り当てられている軸の情報をまとめて確認できます.
詳細はAPIリファレンスをご確認下さい.
ステータス一括確認¶
PLMC-M3EXのステータスを確認するコマンドです.
get_allinfo¶
説明: | 現在のPLMC-M3EXの状態と全タスクの状態を返します. タスクの状態にはそのタスクに割り付けられている軸の情報も含まれます. |
---|---|
Args: | None |
Returns: | 全情報のdict |
get_taskinfo¶
説明: | タスクの状態を返します. タスクの状態にはそのタスクに割り付けられている軸の情報も含まれます. |
---|---|
Args: | task(int) -- タスク番号 |
Returns: | 全情報のdict |
PLMC-M3EXのステータス確認¶
PLMC-M3EXの状態を確認するコマンドです.
PLMC-M3EXstatus.mcstatusでアクセスできます.
check_status¶
説明: | 現在のPLMC-M3EXの全体ステータスを文字列のリストで返します. |
---|---|
Args: | None |
Returns: | 全体ステータス文字列のリスト |
check_alarm¶
説明: | 現在発生しているPLMC-M3EXの全体アラームを文字列のリストで返します. |
---|---|
Args: | None |
Returns: | 全体アラーム文字列のリスト |
クラス変数一覧¶
説明: | 以下はメソッドではなくクラス変数です |
---|---|
is_alarm: | アラーム発生中(bool) |
is_all_task_setting_mode: | |
全タスクセッティングモード(bool) | |
is_sensor_latch_finished: | |
高速センサーラッチ完(bool) | |
is_program_changed: | |
運転プログラムデータ変更(bool) | |
is_rtc_time_warning: | |
制御周期負荷ワーニング(bool) | |
is_rtc_time_excess: | |
制御周期負荷過大(bool) | |
alarm_buckup_error: | |
バックアップエラー(bool) | |
alarm_parameter_unset: | |
パラメータ未設定エラー(bool) | |
alarm_rom_buckup_error: | |
ROMSWバックアップエラー(bool) | |
alarm_mechatrolink_initialize: | |
メカトロリンク初期化エラー(bool) | |
alarm_mechatrolink_comm: | |
メカトロリンク全体通信エラー(bool) | |
alarm_system_error: | |
システムエラー(bool) |
タスクのステータス確認¶
PLMC-M3EXの各タスクごとの情報を確認するコマンドです.
PLMC-M3EXstatus.taskstatus[タスク番号]でアクセスできます.
check_taskstatus¶
説明: | 現在のタスクステータスを文字列のリストで返します. |
---|---|
Args: | None |
Returns: | タスクステータス文字列のリスト |
check_taskalarm¶
説明: | 現在発生しているタスクアラームを文字列のリストで返します. |
---|---|
Args: | None |
Returns: | タスクアラーム文字列のリスト |
クラス変数一覧¶
説明: | 以下はメソッドではなくクラス変数です |
---|---|
override: | 送りオーバーライド設定(int) |
interpolateoverride: | |
補間オーバーライド設定(int) | |
spindleoverride: | |
主軸オーバーライド設定(int) | |
programno: | 選択・実行プログラム番号(int) |
stepno: | 実行ステップ番号(int) |
mode: | モード情報("setting", "manual", "auto", "ot_ignore", "dnc")(str) |
is_alarm_exist: | アラーム発生中(bool) |
is_programstep_finished: | |
FG完了(bool) | |
is_programstep_stopping: | |
FG中断中(bool) | |
is_programstep_analysing: | |
FG分配中(bool) | |
is_program_runnnig: | |
プログラム運転中(bool) | |
is_program_stopping: | |
プログラム停止中(bool) | |
is_program_paused: | |
ブロック途中停止(bool) | |
is_all_sequence_done: | |
各種シーケンス完了(bool) | |
is_singlestep_mode: | |
シングルステップモード(bool) | |
is_teaching_mode: | |
ティーチングモード(bool) | |
is_cycle_mode: | サイクル運転モード(bool) |
is_machined_locked: | |
マシンロック(bool) | |
is_servo_in_position: | |
割り当て軸 インポジション(bool) | |
is_servo_moving: | |
割り当て軸 加減速たまり有り(bool) | |
is_servo_on: | 割り当て軸 サーボON(bool) |
is_servo_returned_to_reference: | |
割り当て軸 原点復帰完了(bool) | |
is_servo_positioning: | |
割り当て軸 独立位置決め中(bool) | |
is_servo_positioning_stopped: | |
割り当て軸 独立位置決め停止中(bool) | |
is_sensor_latch_finished: | |
高速センサーラッチ完(bool) | |
is_tangent_control_on: | |
Z軸接線制御ON(bool) | |
is_final_widing_laryer_warning: | |
最終層巻数異常警告(bool) | |
is_point_table_changed: | |
ポイントテーブル変更フラグ(bool) | |
alarm_program_executin: | |
プログラム実行エラー(bool) | |
alarm_mcode_execution: | |
Mコード実行エラー(bool) | |
alarm_assignedaxis_error: | |
割り当て軸エラー(bool) | |
alarm_step_calculation_error: | |
FG内部演算エラー(bool) | |
alarm_servo_off: | |
サーボOFFエラー(bool) | |
alarm_exteral_a: | |
外部アラームAエラー(bool) | |
alarm_external_b: | |
外部アラームBエラー(bool) | |
alarm_external_c: | |
外部アラームCエラー(bool) | |
alarm_torque_exceed: | |
トルクチェックオーパーエラー(bool) | |
alarm_robot_spindle: | |
直交系ソフトリミット(bool) |
各軸のステータス確認¶
PLMC-M3EXの各軸ごとの情報を確認するコマンドです.
PLMC-M3EXstatus.axisstatus[物理軸番号]でアクセスできます.
check_axisstatus¶
説明: | 現在の各軸ステータスを文字列のリストで返します. |
---|---|
Args: | None |
Returns: | 各軸ステータス文字列のリスト |
check_axisalarm¶
説明: | 現在発生している各軸アラームを文字列のリストで返します. |
---|---|
Args: | None |
Returns: | 各軸アラーム文字列のリスト |
クラス変数一覧¶
説明: | 以下はメソッドではなくクラス変数です |
---|---|
demand_position: | |
指令位置(int) | |
actual_position: | |
機械位置(int) | |
postion_deviation: | |
偏差量(int) | |
latest_pulse: | 最新ブロック払い出し量(int) |
absolute_deviation: | |
絶対位置(int) | |
is_inposition: | インポジション(bool) |
is_moving: | 加減速たまり有り(bool) |
is_servo_on: | サーボON(bool) |
is_returned_to_reference: | |
原点復帰完了(bool) | |
is_servo_positioning: | |
独立位置決め中(bool) | |
is_servo_positioning_stopped: | |
独立位置決め停止中(bool) | |
is_spinning: | SPIN動作中(bool) |
is_spin_stopped: | |
SPIN停止中(bool) | |
is_torque_control: | |
トルク制御中(bool) | |
is_reference_found: | |
原点確定済み(bool) | |
alarm_deviation_excess_plus: | |
+方向偏差過大アラーム(bool) | |
alarm_deviation_excess_minus: | |
-方向偏差過大アラーム(bool) | |
alarm_servo_amp: | |
サーボアンプアラーム(bool) | |
alarm_softlimit_plus: | |
+方向ソフトリミットアラーム(bool) | |
alarm_softlimit_minus: | |
-方向ソフトリミットアラーム(bool) | |
alarm_hardlimit_plus: | |
+方向ハードリミットアラーム(bool) | |
alarm_hardlimit_minus: | |
-方向ハードリミットアラーム(bool) | |
alarm_pulse_excess_plus: | |
+方向パルス発生過大アラーム(bool) | |
alarm_pulse_excess_minus: | |
-方向パルス発生過大アラーム(bool) | |
alarm_servo_off: | |
サーボ主電源OFFアラーム(bool) | |
alarm_mechatrolink_comm: | |
メカトロリンク各軸通信エラーアラーム(bool) | |
alarm_mechatrolink_multcommand: | |
メカトロリンク多重コマンドアラーム(bool) |