NCVCサポート掲示板(仮)

バグレポート

15 コメント
views
0 フォロー

ご無沙汰しております。
最近、GRBLを始めまして、GコードをGRBLに対応させる事をしています。
その過程でGRBLのバグを発見したので対応をお願いします。

1.円の切削において、XY位置(G17平面の場合)を片方でも入れると切削しません。
※以前のNCVCでは大丈夫でした。

これはOK
G00X0Y0Z0
G02I1.0F30

これはダメ
G00X0Y0Z0
G02X0Y0I1.0F30

※GRBLでは逆に必ずXかYの1つは入れなくてはならない、というローカルルールがあります。
なので、どちらでも通用するように円を書く事が出来ません。(動作を確認できません)

2.サブプログラム部のコメント部のエラー
↓のようにOナンバーの後のコメントにスペースを入れるとエラーになります。
※JISかなんかで「スペースは入れるな」と書いてあった気もしますけど、昔のNCVCは大丈夫でした。

例1)
M98 P0002
M30

O0002 (←にスペースを入れるとエラー)
(以下略)

例2)
O0002(スペース無しでコメントだとOK)

3.G92やG54…に関するもの
↓の例(ある形状を複数切削)だと2回目の(意味のない)G54が付くとエラーになるようです。
※エラーといっても「1つしか書かれない」、という事です。
このあたりは、『表示の仕様』ともいえる事かもしれないですけど、
出来るだけ『現実の切削位置関係』に表示して貰いたいです。

例)

G54(元々G54だよ、という意味合い)
G00X0Y0Z1.0
G01 Z-2.0 F30.
G01 X5. F50
Y5.
X0
Y0
G00Z1.0

G92 X-10.

G54(ここにG54を書くと表示がおかしくなる)
G00X0Y0Z1.0 (上のコピペ)
G01 Z-2.0 F30.
G01 X5. F50
Y5.
X0
Y0
G00Z1.0

M30

猛牛ロック
作成: 2024/05/15 (水) 09:46:07
通報 ...
1
まがら 2024/05/15 (水) 11:00:41

こんにちは

え~っと...話がイマイチ見えないんですが,表現の問題?

その過程でGRBLのバグを発見したので対応をお願いします。

Arduinoで動くアレのバグ?
GRBLのバグなら,その作者へ報告すべきだと思いますが...
揚げ足取りですねwww

1.円の切削において、XY位置(G17平面の場合)を片方でも入れると切削しません。
※以前のNCVCでは大丈夫でした。

切削ではなくシミュレーション上での話ということで

なので、どちらでも通用するように円を書く事が出来ません。(動作を確認できません)

なるほどNCVC上で確認しました.

※GRBLでは逆に必ずXかYの1つは入れなくてはならない、というローカルルールがあります。

ローカルルールに合わせる気はないのですが,以前のNCVCでは大丈夫だったということなので少し考えます.
以前あった微細円の問題の副反応だと思いますが,これ難しいんだよな~

2.サブプログラム部のコメント部のエラー

(この辺からやっとNCVCのバグ報告だと気づきましたよ...ww)
確認しました.がエラーが出てるのはM98の方ですやんwww
これは明確に対応します.

3.G92やG54…に関するもの

こちらはおかしい感じはなかったです.
画像1

2
まがら 2024/05/15 (水) 11:32:33

※GRBLでは逆に必ずXかYの1つは入れなくてはならない、というローカルルールがあります。

投稿後に思い出したのですが,XYよりもIJが省略不可ではなかったですか?
昔の掲示板で同様の質問があって以下のオプションを追加したような記憶があります.
G02I1.0J0F30
でGRBLが動くかどうか一度確認してもらえますか?
画像1

3
猛牛ロック 2024/05/15 (水) 12:42:17 86770@c4509

間違いました。NCVCの方のバグです。

3番目は、ある切削(↑では□です。)をG92でずらして切削しています。
つまり、
G92 X-10.
とずらしているので本来、異なる位置に□が2つできる筈です。

G54(ここにG54を書くと表示がおかしくなる)

を消去すればちゃんと描画されます。

5
まがら 2024/05/15 (水) 15:32:40 >> 3

理解しました.
座標系はかなり横着してたかも...
なるべくご希望に添えるように善処します.

4
猛牛ロック 2024/05/15 (水) 13:35:05 86770@c4509

XYよりもIJが省略不可ではなかったですか?
GRBLでは、そういった事は無いです。
(元がX0、Y0、Z0の位置にいる&G17がモーダルとして)

G02I1.0 ←動かない、という以前に、センダーがエラーとして送信しない。
G02X0I1.0 ←OK
G02Y0I1.0 ←OK
G02X0Y0I1.0 ←OK
G02Z0I1.2 ←ダメ

という感じです。もちろん
G02X0I1.0J0F30
ならOKです。

6
まがら 2024/05/15 (水) 15:38:19 修正 >> 4

他にもGRBLユーザさんはいらっしゃると思いますがこの報告は初めて.にわかには信じがたい.
列挙されたコードになかったのでもう一度書きますが
G02I1.0J0F30
で試してみてください.XYなしのIJ指定です.

これで失敗するようなら
[全円は2分割]にチェックして強制的にXYどちらかが発生するコードを吐く方法でお願いします.

7
まがら 2024/05/15 (水) 16:36:22 >> 6

にわかには信じがたい.

モータは接続していませんがGrbl1.1hを書き込んだArduinoが眠っていたので,これで確認できました.

すると...
error:26 で停止しましたわ.うそ~~ん
[全円は2分割]にチェックを入れるとうまくいくのでこちらでお願いします.
ちなみにこのスクショはGrblと通信できるNCVCアドインです.
(エラーリカバリがイマイチなのであまりオススメしていない)画像1
画像2
画像3

8
猛牛ロック 2024/05/15 (水) 17:00:41 86770@c4509

前提として、『NCVCが作り出すコードがおかしい』、と言っているわけではありません。
NCVCの『ビュワー機能』についての事です。

本来、
G02X0Y0I1.0
とXYを書き込んでも大丈夫な筈?なのにちゃんと表示されない、という事です。
GRBLの仕様とは別の問題としておかしいのでは?

で、GRBLでは、
G02I1.0J0F30
だと、軸指定が無いのでダメです。
GRBLのエラーコードの26に相当します。
https://github.com/gnea/grbl/blob/master/doc/csv/error_codes_en_US.csv より

26 Invalid gcode ID:26 No axis words found in block for g-code command or current modal state which requires them.

[全円は2分割]にチェック、は実際に使用しています。=OKです。

9
まがら 2024/05/16 (木) 07:45:46 >> 8

現場スタッフに確認したところ,実機(FUNAC)でも問題ないということなので対応がむばります.
(実習でもよく学生が書くそうです)

10
まがら 2024/05/21 (火) 13:24:48

こんにちは

本日Ver4.14aをリリースしました.
上記1~3はこれでなおっていると思います.ご賞味ください.

特定ビデオカード上での不具合はまだ調査中です.
やっと環境が整いつつあります.

11
猛牛ロック 2024/05/21 (火) 16:44:22 86770@c4509

早速テストしてみました。

円(ヘリカル)で表示がおかしいようですけど、
真柄さんの環境では正常でしょうか?
※XYは付けても大丈夫になりました。他の2件も大丈夫だと思います。

G00X0Y0Z0
G02I1.0Z-0.5F30(X0Y0を入れても同じ)

12
猛牛ロック 2024/05/21 (火) 16:51:27 86770@c4509 >> 11

画像を付けそこないました。「アップロード」を押さないとダメなんですね。
※始点、終点がおかしい、という事です。

因みに64ビット版です。画像1

13
まがら 2024/05/21 (火) 16:58:15 >> 12

確認しました.直します.
Issue#24 再オープンです.

14
まがら 2024/05/22 (水) 15:23:47 >> 11

こんにちは

本日Ver4.14bをリリースしました.
翌日リリースで少し気が引けましたが,次が立て込んでいるので...

バグレポートありがとうございました😄

15
猛牛ロック 2024/06/06 (木) 14:15:49 86770@c4509

返信が遅れて申し訳ありません。
忙しくて自分のプログラムの方に手が付かずに確認が遅れてしまいました。

問題無く表示されています。
有難うございます。画像1