コメを噛め

コメを噛め

rerofumi の電子工作メモ

hatena bookmark

これまで作成してきたプリント基板作成用のガーバーデータを G-Code に変換するスクリプトに GUI を追加してアプリケーションとしてまとめ上げました。
GUI 製作にも IronRuby を使っており、全て ruby で書かれています。

実行には IronRuby 1.0 が必要です、インストールして準備しておいてください。
IronRuby は Mono でも動作しますので、Mono を使って MacOSX 等といった Windows 以外の環境で動作させる事ができます。

Download: gynostemma-20150228b.zip (1.30MB) 最新版
Download: gynostemma-20150128a.zip (1.30MB) 1つ前
Download: gynostemma-20140615.zip (1.34MB) ワンカッターオペレーション対応版:
Download: gynostemma-20120802.zip (1.34MB) マルチスレッド、ポリゴン対応版
Download: gynostemma-20110910b.zip(1.33MB) シングルスレッド、旧安定版

以前から書いている様に、個人で CNCフライスを使ってプリント基板作成をしたい場合は Eagle とユーザースクリプトを使って G-Code を出力させるのがおすすめです。
それ以外の CAD を使って行いたいというニーズがどれくらいあるのかはわかりませんが、これがなんらかのお役にたてたらと思います。

– 更新履歴
Feb.28.2015 – ドリルデータで全て読み込まれないパターンがあるものを修正
Jan.28.2015 – 線が密集しているところでアウトライン抽出が欠けやすい不具合を改善
Jan.17.2015 – 左右反転機能の追加、アパーチャマクロ型のパッドに対応
Jul.15.2014 – 1本のエンドミルで穴開け、パターン彫り、くり抜きを連続する Export を追加
Aug.02.2012 – 20120721 で入れてしまった2パス目以降が膨らんでいかないバグを修正
Jul.21.2012 – ガーバーのポリゴンフィル(G36/G37)に暫定対応
Jul.09.2012 – パスビルド時の演算をマルチスレッド化
Sep.10.2011 – データによってはパターンの内側に掘削パスがゴミとして残ってしまう場面がまれにあったバグを修正、内側に残る系は無くなったと思う
Aug.07.2011 – 計算ミスで必要な掘削パスが消えてとぎれてしまったり、いらないパスが残ったりしていたのを改善(※まだ起こり得ます)
Aug.04.2011 – パターン処理するデータによっては無限再起ループに陥りクラッシュ終了することがあったので、その不具合を修正
Jul.31.2011 – インチ対応が不十分でアパーチャグリルサイズに適用できていあんかった不具合を修正。横長のアパーチャグリル(パッドなど)に対応
Jul.27.2011 – MBE対応、読み込み時インチデータの判別改善、ドリルデータ読み込みオプションとドゥエル指定の追加
May.14.2011 – ドリルの掘り下げ深さを別個に指定できるようにした
May.06.2011 – 公開開始

24 Comments to “Gynostemma / Gerber to G-Code コンバータ”

  1. どかべんたろう Says:

    こんにちは。
    Gynostemmaをさっそくインストールして使用してみました。
    ガーバーとエッジはうまく表示されてますが、ドリルは
    おかしな表示になってしまいます。
    CADはMBEで**.DRDファイルを指定しました。
    単位がインチを使っているようです。
    K2CADはミリ単位でしょうか。
    ドリルの赤い点がとんでもない方向に表示されます。
    なにか解決方法はありませんか?

    では。

  2. rerofumi Says:

    To: どかべんたろうさん
    リポートありがとうございます。
    MBEの出力を眺めて見ましたが、インチとミリの判別方法やデータの有効桁数などずいぶんと差があることがわかりました。従来のガーバーとエッジもサイズが狂っていたはずです。
    それらを改善し、MBEの出力する gerber に対応させた 20110727 を用意しました。
    これで試してみてもらえますでしょうか。

  3. どかべんたろう Says:

    早速の修正ありがとうございます。
    GCODEを作成してNCVCで軌跡を見てみました。
    ドリルと外形はうまくいってるようです。
    ガーバーですが、ポリゴンのベタアースでたくさんの横線が出ています。
    それとPADが表示されません。
    以上レポートでした。

  4. rerofumi Says:

    To: どかべんたろうさん
    再度のリポートありがとうございました。感謝します。
    べた塗りの抜けは計算誤差かと思っていたら大バグで、アパーチャグリル(線の太さなど)のサイズでインチ対応が抜けていました。申し訳ありません。
    7/27 版は MBE で使い物にならないものとなっていますので早急に対応した 7/31 を用意しました。
    再度お付き合いいただけると幸いです。

    パッドが表示されない問題は、以前から気になりつつもK2CADで使われていなかった横長アパーチャグリルを使っているためでした。(K2CADだと丸または正四角形のラインで代替する)
    ちょうど近い部分の修正だったため併せて対応しておきました。

    7/31版をお試しください。

  5. どかべんたろう Says:

    修正ありがとうございます。
    さっそくやってみましたがBUILDの1/2PAS
    の60%経過したあたりでハングしてしまいました。
    2回やってみましたが同じところでハングしました。
    以上レポートでした。

  6. rerofumi Says:

    停止しちゃいましたか… (´・ω・`)
    流石にそのような現象だと該当のファイルを頂かないと追跡できませんですねぇ。

  7. どかべんたろう Says:

    rerofumiさま

    基板のソースファイルを
    送付致しました。

    ご検討くださいませ。

  8. rerofumi Says:

    To: どかべんたろうさん
    再現ファイルをいただきありがとうございました。
    おかげで問題箇所がわかり修正することができました。
    修正版の Ver.20110804 をおいておきますお試しください。

    ただ、いただいたサンプルだといい感じに計算ミスを誘ってくれるようで、一部パターン切削線に切れ目や余計な残りが混ざるようです。
    これは以前から認識していた不具合というか計算ミスによるものですが、追々修正していきたいと思います。
    preference の Round Resolution 値を減らして調整してみたり、配線をできるだけ直角o r 45度にまとめたりするといった運用で改善されますので実用なさる場合は今のところそういった運用で回避していただけると幸いです。

  9. どかべんたろう Says:

    修正ありがとうございます。
    早速G-CODEを作成してNCVCでみてみました。
    すこし不明点があります。
    切削ライン上とベタアース上にあたかもノイズのごとくドリルがアップするのが
    たくさんあるのですが、これはなぜ発生するのでしょうか。
    外形線上には発生していません。

    KiCADでもやってみたいと思います。
    以上レポートでした。

  10. rerofumi Says:

    毎度おつきあいくださり本当にありがとうございます。
    一発でベターなものを提供できなくてすみません。

    いちいちドリルが上がってしまうのは見た目つながっているようでも内部座標的には途切れているためです。パターンの部分が消えて途切れる現象が微少な精度で起こっているケースと、浮動小数点演算によりちょいずれるケースがあるようです。
    ベタがラインの集合なのはガーバーの常套ですが、MBEのラインは角がなく丸シャッターのラインのみでなおかつポリゴンの外周をライン取ってくれないのでベタ縦線部分が丸終端の集合になり、かまぼこ状の波打ちになります。その谷の部分では線が密集するので計算を誤って隙間が空いている様です。

    わたしも K2CAD でこなしていくうちに似たような状況に度々であうため気にはなっていました。

    ある程度近い場合は丸めこんでドリルが上がらないようにする仕掛けはしているのですが、カッターの経も大きいのでそれ未満だったら積極的につないでいってしまっても良いのかもしれませんね。

    色々と検討してみます。

  11. どかべんたろう Says:

    そういう計算をしているのですね。
    納得しました。
    もう少しで完成ですね。
    がんばってください。

    話は変わりますがCNCフライスはなにを使ってますか。
    当方はまだ持ってませんが、オリジナルマインドのHAKU2030を
    購入予定です。
    使用目的はほとんどが基板切削とケースの穴あけになるような気がします。

    QFP0.5ミリピッチの切削は魅力がありますね。

    では。

  12. rerofumi Says:

    計算式を見直し、途切れなどの不具合を低減した新版を公開しました。
    これでも完璧ではなく、まだ若干意図せぬ所が残ったり消えたりしますが試作レベルでは許容できる範囲になったのでは無いかと思います。試作できないほど大きな欠落をするパターンに出会った時はご連絡いただけると幸いです。

    私が使っている CNCフライスはオリジナルマインドの BlackII1510 です。
    なのでHAKUなら私がやっていることと同等の精度が出せるはずですよ。

  13. どかべんたろう Says:

    ありがとうございます。
    いろいろなCADでやってみます。

  14. ramen Says:

    マルチスレッド版をリリースしていただいたみたいで、早速試してみました。
    確かにCPUは指定した数だけ動作しているようです。
    処理も気持ち速くなったような気もします。
    ただやはり、気長に待つレベルではありますね(^^ゞ
    ありがとうございました。m(__)m

  15. rerofumi Says:

    まあ、20分のものが倍速で10分になったからといって待つことには変わりありませんからね。

  16. やまねこ Says:

    gynostemma-20110910b使わせて頂いております。
    質問なのですが、ゾーンは未対応でしょうか?
    KiCADで出力したガーバを変換してみたのですが、ゾーンの輪郭が「線」として出来てしまいます。
    説明難しいのですが・・・例えば四角形のゾーンがあると、あたかも、塗りつぶされていない四角形のようになります。
    また、ゾーンの中に配線が埋もれていると、配線の輪郭も掘られてしまって、配線とゾーンが絶縁されてしまいます。

  17. rerofumi Says:

    ゾーン(ベタfill)の塗りつぶしってハッチじゃないのかなあ?と思い KiCAD の出力するガーバーを見てみました。
    なるほど、拡張ガーバーの G36/G37 (多角形ポリゴン)で fill を出力するモードがあるのですね。
    残念ながらこのような形式は想定していませんでした。というか使われている所を初めて見ました。

    KiCAD では「ゾーン パラメータ編集」にて fill の形式を指定できます。ここの塗りつぶしモードを「ポリゴン」ではなく「セグメント」にするとハッチ出力となり Gynostemma で期待通り読み込めるようになります。

    セグメント(ハッチ)での出力はたくさんのラインで塗りつぶしていますので、残念ながら処理時間がべらぼうにかかるようになります。

  18. やまねこ Says:

    セグメントに設定してうまくいきました!しかし、たしかに物凄く時間かかりますね(^^;
    アドバイスありがとうございます!m(_ _)m

  19. やまねこ Says:

    ポリゴンベタの対応ありがとうございますm(_ _)m
    そこで早速マルチスレッド版をダウンロードして試してみたのですが、結果がちょっと違うのに気づきました。
    https://dl.dropbox.com/u/68437054/gynostemma-test.png
    上が安定版、下がマルチスレッド版です。
    安定版では輪郭を少し膨らませて2回彫っていたようですが、マルチスレッド版では1回になったのでしょうか?
    安定版と同じような設定は出来ますか?

  20. rerofumi Says:

    ご指摘ありがとうございます。
    ポリゴン対応の時にうっかり入れ込んでしまったバグでした。

    ここしばらくプリント基板を作っていなかったので気づいていませんでした(^^;

    修正した版を 20120802 としてリリースしますので、こちらをお試しいただけますでしょうか。

  21. 青。 Says:

    超初心者です。フリーソフトのPCBEを使って基板図を作成し、ガーバー出力をして、 gynostemma-20120802のソフトを使わせていただきました。外形とパターンはきちんとした場所に表示されていますが、穴の位置が離れているところに表示されています。
    ガーバー出力した後のファイルの拡張子は.grbです。
    パターンと穴の位置があうようにしていただけると非常に助かります!

  22. rerofumi Says:

    PCBE の出力ってそんなに変なのだっけ?と思って最新版で確認しましたが、特に問題ないように思います。
    ドリル穴の出力は、PCBE からの出力時に有効小数点数の設定があります。これが gynostemma の Preference での有効少数点設定とあっていないとずれてしまいます。
    “Drill imput fix point” というのがその設定なのですが、PCBE 出力時の数字と gynostemma の数字を合わせてみてください。

  23. 青。 Says:

    >>rerofumi さん 
    ありがとうございました。早速試してみます。

  24. 青。 Says:

    Drill imput fix pointの値を変えると穴の点がきちんとパターンの上に乗っていました!本当にありがとうございました。

Leave a Reply