rcairoでものづくり

958 views

Published on

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

Published in: Self Improvement
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
958
On SlideShare
0
From Embeds
0
Number of Embeds
40
Actions
Shares
0
Downloads
2
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

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

×