XYプロッターで中抜き文字を描く

中抜き文字を描く

 下記の通り、輪郭を描いた文字を“中抜き文字”と呼びます。今回は中抜き文字のデータ作成方法確認と描画速度改善目的でパソコン(エクセルVBA)から、ARDUINOへのデータ送信を見直しました。

 実際の描画状況です。

データ作成(DXF)

 先回に引き続き、下記サイトに基づき行います。

【参考】CNCで文字加工:      http://yusa.c.ooco.jp/mini_cnc/moji.html

 [Sai Draw] と [GetGlyph]を使う方法が紹介されています。

 キャラクターの様な図形を扱うには [Sai Draw] が必要の様ですが、古いソフトで少なくとも Windows バージョンが対応していないことと、手軽さから[GetGlyph] で処理することにしました。対応 Winバージョンは判りませんが、とりあえず動きました。

 Zip形式圧縮ソフトをダウンロード・解凍します。
 “getglyph.exe” をダブルクリックし、ソフトを起動します。

 文字高さ・フォント等設定後、最下部に文字入力し「作成」ボタンを押すと “getglyph.exe” と同フォルダーの “ getglyph.dxf” が更新されます。

JW-CAD データ編集

 作成 dxfファイルをJW-CADに読み込ます。(下図)

 詳細は省きますが、NCVCに対応するレイヤー構成変更、基準位置を示す円追加、XYプロッター描画領域に収まる様にサイズ変更等を行います。
 XYプロッター構造上 横幅が長くなると、ペンヘッド部重さでプロッター全体が傾きますので、2段に変更しています。可動範囲はW200XH100ですが、転倒のリスクがあるので、人が離れる場合は、W150XH100に収める様にしています。
 編集後、 “jww” 形式で保存します。

 

NCデータ作成(NCVC)

 jww 形式ファイルを読み込み、NCデータ生成します。
 外観上の曲線も細かい直線補間で加工するデータが作成されることを認識しました。

grblController による動作確認

 ペン部の上下制御は出来ませんが、 grblController による動作パスを確認しました。NCVCで作成したデータ修正は必要なく、順調に対象パス部分は動作しました。
 最後原点に戻る時の“G00”早送り実行時にALARM発生しました。恐らく早送り速度等のパラメータ設定等が悪いのだと推測しますが、とりあえず調査保留とします。

Excel VBA NCデータ送信による制御

 描画にはペンプロッター昇降制御が必要なので、これまで同様にエクセルVBAからNCデータを送信します。grblControllerと比較し速度が課題です。 シリアル通信(RS-232C)の受信待ち時間を短くし、 “ ? ” コマンドでのステータス確認をやめることで、速度はかなり改善しました。
 しかし、ステータス確認をしていないので、grbl 処理状況によって受信バッファーが一杯になり、PC送信データを受信できないケースも発生します。今回はデータ送信時間間隔で調整しましたが、形状によっては調整出来ないものもあると思います。
  grblController では、データ送信・処理完了が順に表示されるので、連続動作に並行し、通信で状況確認する方法があるのだと思いますが、現時点では判りませんでした。今後の課題です。

まとめ

 NCデータ(Gコード)送信回数とGRBL側から返信される “OK”回数の差分により、過送信を抑制することを考えましたが、VBAで送信と受信を独立して実施する方法が判りませんでした。C#,VB.netでは、データ受信時に発生するイベント処理で対応出来るかもしれません。
 GRBL側では、“?”コマンドステータス確認で、滞留?(“ Queue: Motion(s) are queued in the planner buffer”)を確認出来る様ですが、こちらも方法が判りませんでした。
 消化不良ですが、時間も無いので一旦保留します。
  

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です