忍者ブログ

≪ 前の記事

[PR]

×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

▲TOP

Modela:RML-1覚書(MDX-40:不確定バージョン)

書き出すコードがアプリ(やプラグイン)によって微妙に違うので、覚書として記述。
ちなみにMDX-20/15とは違う部分(たとえば座標値の単位)がありますので、そのまま適用しないよう注意ください。

MP4の面だし工程を書き出したものです。


;;^IN;!MC0;
V50.0;^PR;Z0,0,10500;^PA;
!RC5;
!MC1;
Z-385,-385,10500;
Z-385,-385,100;
V4.0;
Z-385,-385,0;
V14.0;
Z4958,-385,0;
Z4958,7141,0;
Z-385,7141,0;
Z-385,-385,0;
~途中省略~
Z-385,5735,0;
Z-385,6095,0;
Z4958,6095,0;
Z4958,6455,0;
Z-385,6455,0;
Z-385,6815,0;
Z4958,6815,0;
Z4958,7141,0;
Z-385,7141,0;
Z-385,7141,0;
^PR;!ZO0;^PA;
!VZ50.0;!ZM0;
!MC0;^IN
;

最初の行から、、、

;; ←コードの開始??
面倒なので、
;;^IN;!MC0; ←これでヘッダーだと考えましょう。(^IN 初期化 !MC0モーター停止)
IN=Initialize MC=MoterCycle とでも覚えましょう。こじつけです。

V50.0;^PR;Z0,0,10500;^PA;はこう分解してみます。

V50.0; ←速度指定 単位はmm/sです。50.0はMDX-40の最大速度です。
V=velocityかな

^PR; ←座標指定を相対値モードに?? P=point R=relativeでしょう。きっと。

Z0,0,10500; ←座標指定 Zx,y,z 単位は1/100mm? 小数はない。たぶん。
この場合、Zを上限(リミット)まであげろ という感じ? 105mmはMDX-40のZ上限値です。たしか。 MDX-20/15は単位が1/40(0.025)mmっぽいです。不確かですが。

^PA; ←座標指定モードを絶対値モードに?? A=absolute

次は !RC5;!MC1; です。
!RCnはモーター回転数(n)を指定します。単位はRPMで整数値。 5っておかしいような。
普通は4500~15000(RPM)位の値のはずです。
MDX-20/15は6500rpm固定なので、このコマンドは使われません。

!MC1でモーター回転です。

ここから切削開始になりますが、今回はここまで。

注意点は V ^PA/^PR !MC0/!MC1 は「次に変更するまでその状態を保持します」
また、重ねがけは問題ありません。(例: ;^PA;Z0,0,1000;^PA;Z0,10,1000;)
なので、心配性の方は切削中のZxyzの前に^PA;を入れてもよいのです。
逆に2行目の^PAを抜いたりすると大変です。


---追記---
*本当の覚書きです。 気にしないでください。 明日からしばしテストできないので本人の記憶用です。*
工程開始の;;^IN;だけだとモーターは即座に回転する。
だから、;;^IN;!MC0;で始めるべき。
工程末の^in;があるとツールアップまでやって終了。ないとそこで終わり??

!PZm,n:m=Z下限 n=Z上限 ツールアップ/ツールダウン命令で使用するパラメータ設定。
!PZmの記述可。!PZ,nの記述は可能?
→数値は絶対値です。
このパラメータの寿命は? 先に!PZで数値指定しないとZの動作なし(だったと思う)。

^PUx,y:ツールアップ(!PZのn)のところまで)Z移動しながら完了後にx,yへ移動。Z方向の速度はVの値?→Vの値になります。
^PDx,y:ツールダウン(!PZのm)のところまで)Z移動しながら完了後にx,yへ移動。Z方向の速度は???やや遅い→!VZやVの値になります。
 
また、^PU/^PDともにx,yの値なしで使用できます。(XY移動速度はVの値です)
なので、一発開口型で配列状になっているドリル処理(←結構面倒)の場合非常にコンパクトな記述で済みます。

例:10ミリピッチで3つ穴あけ(深さ5mm)

;;IN;!MC0;V50;ZM0;^PA;初期化

!PZ-500,100;上限下限設定(^PD/^PUを使う前であればどこでも記述可能)

!MC1;モーターオン

Z1000,1000,100;移動
!VZ4;Z速度指定(4mm/s)
^PR;相対モード
^PD;!DW500;^PU1000,0;穴あけ(0.5秒停滞)+ツールアップ+右へ10mm移動
^PD;!DW500;^PU1000,0;穴あけ(0.5秒停滞)+ツールアップ+右へ10mm移動
^PD;!DW500;^PU;穴あけ(0.5秒停滞)+ツールアップ
!VZ50;一応Z速度復帰(今回は不要)
ZM0;!MC0;^IN;終了処理(最後に^INがある場合、ZM0は不要)

テストされると!PZの値が絶対値であること、ツールアップは!VZに依存しないことが分かるかと思います。
もしかすると!VZは降下方向のみのパラメータかもしれません。
また、今回は主要作業を相対モードで作業をしています。
このような作業の場合は相対モードがコードが読みやすいです。




ZM0;不明 →ZMn;  n=ステップ数 Z位置の一番上からnの値まで下がった位置まで移動(絶対値)
ZM0;の場合はツールヘッドは上限まで移動します。
→これならば、最初の行の ^PR;Z0,0,10500; は ZM0; でよいです。




!XOn:X原点をnの座標値にする。

!YOn:Y原点をnの座標値にする。

!ZOn:Z原点をnの座標値にする。

例: 現在の座標位置をXYZ原点とする場合。

^PR;!XO0;!YO0;!ZO0;^PA;
この辺はうまく使うといろいろと役に立ちそう。害は少ないし。

ならば、同じものが横に数個ある場合は、座標を移動するコマンドをはさんでファイルため込めば楽??
工程.prn 原点移動.prn 工程.prn といった具合。

---追記----

新たなコマンドを見つけたので記載します。

!DWn;   NCでいうドウェル(dwell)で、n(単位ms:整数)の値だけその場で停滞します。
!DW; とnを指定しない記述もあるのですが、これが何を意味するかは不明。

ドリルで使う機会が多いかと。
PR

Comment (0) | Trackback (0) | ▲TOP