Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

rcairoでものづくり

1,199 views

Published on

2013/03/01 沖縄ruby会議01の発表資料です

Published in: Self Improvement
  • Be the first to comment

  • Be the first to like this

rcairoでものづくり

  1. 1. rcairoでものづくり gFab @mgwsuzuki gFab @mgwsuzuki
  2. 2. rcairoとは • cairo: 2Dグラフィックス用のCライブラリ • それをrubyにバインディングしたのがrcairo • PDF, SVGほか多数のフォーマット出力が可能 gFab @mgwsuzuki
  3. 3. 基板をハコに入れたい • ほこりかぶるし • ショートさせそうだし • 見た目悪いし収納性も良くないし gFab @mgwsuzuki
  4. 4. 道具はある • gFabやってます • レーザーカッターでアクリル板カットも簡単 • 入力データとしてSVGが使用可能 → rcairo gFab @mgwsuzuki
  5. 5. ハコの展開図といえば • 簡単だけど組み立てに接着剤が必要で面倒 • 接着したらばらせない • 基板のメンテナンスができない gFab @mgwsuzuki
  6. 6. Box Jointとねじ接合 • Box Joint: ずれない ねじ接合: はずれない • レーザーカッターだけで加工できる • ねじだから組み立て後にばらすこともできる gFab @mgwsuzuki
  7. 7. 設計が面倒… • 物体を組み上げるから0.2mmもずれたらダメ • 6面をイメージしながら作るのが大変 • 凸凹が多いから設計変更が面倒 gFab @mgwsuzuki
  8. 8. 自動設計しよう! #### パラメータ # 箱内形 Box = { :x => Board_x + 4.0, :y => Board_y + 2.0, :h => 26.0, :t => 2.0 } ... # 箱内側横 # 箱内側縦 # 箱内側高さ # 材料厚さ • ポイント絞ってパラメータを設計 • ねじ位置やコネクタの穴だって簡単に指定できる • 設計変更も楽々 gFab @mgwsuzuki
  9. 9. パラメータ設定例 # ねじ穴形状 Screw = { :nw => 6.5, :nh => 2.0, :sl => 10.5, :sw => 3.0 } #### 基板外形 Board_x = 85.0 Board_y = 56.0 Space_b = 7.5 #### パラメータ # 箱内形 Box = { :x => Board_x + 4.0, :y => Board_y + 2.0, :h => 26.0, :t => 2.0 } # ジョイント Joint = { :yj => 15.0, :nyj => 2, :xj => 60.0, :hj => 15.0 } # 箱内側横 # 箱内側縦 # 箱内側高さ # 材料厚さ # 正面のねじ位置 ScrewPosFront = { :top => [], :bottom => [], :left => [0.5], :right => [0.5] } # 縦ジョイント部の長さ # 縦ジョイントの数 # 横ジョイント部の長さ # 高さジョイント部の長さ # 背面のねじ位置 ScrewPosBack = { :top => [0.5], :bottom => [0.5], :left => [], :right => [] } gFab @mgwsuzuki # ナット穴幅 # ナット穴高さ # ねじ長 # ねじ幅
  10. 10. ハコ生成 ruby boxgen.rb raspi.rb gFab @mgwsuzuki
  11. 11. Inkscapeで追加修正など • Inkscape: フリーのドローイングツール • 配置を変えたり、ロゴを追加したり • 材料を無駄なくカットできる! gFab @mgwsuzuki
  12. 12. 切り出す • 原点あわせてピントあわせてカット開始 • あとは待つだけ (15~20分) • 臭い!! gFab @mgwsuzuki
  13. 13. 切り出し完了 gFab @mgwsuzuki
  14. 14. 完成 • ジョイントをあわせてねじ止めして完成 • 3分あれば組み立てられる gFab @mgwsuzuki
  15. 15. この方法のメリット • CAD不要 • 現物の採寸・数値入力→生成→確認が早い • 変数が使えるのでパラメタライズ設計ができる • テキストファイルのみ gFab @mgwsuzuki
  16. 16. github • githubにあげる予定 • パラメータファイルをpull-request • ハコ作りたい方はgFabへ gFab @mgwsuzuki
  17. 17. 本当に早く作れるか? • arduino用ケースを作ってみた • 構想、基板外形情報探し、実機から採寸: 1時間 • カット+組み立て: 20分 gFab @mgwsuzuki
  18. 18. ギヤ設計 • ギヤは数値計算で作図できる • これもrcairo gFab @mgwsuzuki
  19. 19. まとめ • 一度ツールを作れば自動設計は手軽で便利 • エンジニア視点のものづくり • ruby便利!! gFab @mgwsuzuki

×