動作確認

掲載されている部分を入力して動かしてみました。
G93の時のG0でエラーが出ていたので、G93でG0がでてくる際にはG94を入れるようにしてみました。
以下が使ったNCプログラムです。

%
G21
G90
G00 X27.9 Z35 A360 S5000 M3
G0 Z32.5
G94
G1 Z27.5 F20
G93
 F0.1G01 A0.00
G94
G01 X28.17 Z24.5 F20
G93
 F0.1G01 A360
G94
G01 Z21.5 F20
G93
 F0.1G01 A0.00
G94
G00 Z33.000
G00 X29.000 A130.417
G00 Z32.5
G94
G01 Z21.5 F20
G93
 F10.7G01 X28.710 A135.417
 F6.4G01 X28.350 A143.750
 F92.0G01 A145.417
 F9.1G01 X28.710 A151.250
 F16.0G01 X29.000 A154.583
G94
G00 Z33.000
G00 A64.167
G00 Z32.500
G94
G01 Z18.500 F20
G01 X28.170

結果として、error:22がでなくなり完走できました。
kawadeさんが懸念されていた、27行目のエラーに関してもこちらでは表示されなかったので、これまではエラーが発生したことで、バッファがバグって以降のGコードを一部読み落とすみたいなことが発生していたのかもしれません。

もう関係ないかもしれませんが、エラー表示的に恐らくG4のみを入力しているかもしれないので、もしそうでしたらG4 P◯◯で指定しないと意味ないかもしれません。

たしかにA軸には原点復帰はいらないかと私も考えていましたが、なにかの理由で中断した加工を再度スタートする場合には原点復帰は必須になりますね。