NCVCサポート掲示板(仮)

切削場所が移動する度にzプローブするスクリプト / 2

4 コメント
views
0 フォロー
2
はじめに 2023/09/07 (木) 09:36:18 b50c3@f6211

こんにちは
返信いただきありがとうございます。
簡単に絵を書いてみました。
十字がx0,y0開始点、青が移動線、オレンジ丸が切削開始点とします。
オレンジ丸の開始点に移動し、切削開始前にZ軸のプローブ
G31 Z-100 F1000
G92 Z0
G0 Z5.0
G92 Z0
を挿入したいです。
画像1

Python気になっているのですが昔、C言語を勉強しようと
初心者向けの本を何冊か購入しましたが訳わからず挫折しました。
実際にプログラミング出来る方から紹介していただくのが賢明だと思いましたので
Pythonで超初心者でもなんとかなりそうな書籍の紹介お願いいたします。

通報 ...
  • 3
    まがら 2023/09/07 (木) 13:54:41 >> 2

    それならば,インストーラ付属の change_for_laser.pl が参考になりますよ.
    末尾に変更点のみを示しています.
    残念ながらPythonではなくPerlで書かれています.実行方法は著書を参考に.
    ただし実行環境が変わっています.
    https://zawazawa.jp/b5almsd0ra1jvhw3/topic/6

    言語の本は紹介できません.
    PerlやPythonはネット情報だけでも簡単に書ける言語(個人の感想)なので,参考書を買ったことがないからです.
    参考となるスクリプトをたくさん用意しているので,これをベースに自分でカスタマイズすれば,言語をマスターしていなくてもある程度のことはできると思います.
    https://k-magara.github.io/download/scripts.html
    全部インストーラに含まれているので,標準フォルダにインストールしていれば
    C:\Program Files\NCVC\scripts
    にあります.

    では健闘を祈ります.

    # Z軸が下降するときに埋め込むコード
    $ON_Code = "G31Z-100F1000\nG92Z0\nG00Z5.0\nG92Z0\n"; ## ''だと\n効かないので""で
    #$OFF_Code = 'M05'; ## こちらは使わず
    
    #   s/(S[\d\.]+)//; ## S置換はしない
    
        if($G0X == 1 && $Zn < $Zp){
            $_ = $ON_Code . $_;  ## 現在行の前に $ON_Code を挿入 ←ココがポイント
    
    #   elsif(($G0X == 0 or $G0X == 1) && $Zn > $Zp){ ## このif文(上昇用)はコメントアウト
    #       $_ = $OFF_Code . "\n";
    #       $Zp = $Zn;
    #       $GCF = 1;
    #       $preG0X = $G0X;
    #   }