Fusion360歯車スクリプト/はすば歯車 の履歴(No.3)

更新


工作/Fusion360歯車スクリプト

概容

Fusion360歯車スクリプト を使ってはすば車・やまば歯車を作り、組み合わせて動かしてみます。

スクリプトのダウンロード、インストール、基本的な使い方は上のリンクをたどって下さい。

目次

2つの歯車を生成する

1つ目:

  • Thickness = 20 mm
  • Helix Angle = 45 deg
  • Backlash = -0.01 mm

2つ目:

  • Num. Teeth = 6
  • Thickness = 20 mm
  • Helix Angle = -45 deg
  • Backlash = -0.01 mm

とした。他はデフォルトのまま。

このとき基準円の直径は、

  • 1つ目 67.882 mm
  • 2つ目 33.941 mm

となるので、2つ目を

  • (67.882 mm + 33.941 mm)/2 = 50.9115 mm だけX方向に移動
  • 中心軸に対して 30 deg 回転

して噛み合い位置に置く。

helical1.jpg

はすば歯車のメリット

はすば歯車は歯車の厚さ方向に、異なる回転方向を持つ平歯車が重なっているとみなせるため、厚さ方向に見て一部の噛み合いが取れていない時点でも他の部分で噛み合いが取れることが多く、また、歯が当たったり、離れたりするタイミングも厚さ方向で分散するため、安定した噛み合いと低騒音を実現できるそうだ。

上ではバックラッシュにマイナスを設定したため、かみ合わせた状態で歯車間の干渉を見ると歯当たり位置を確認できる。

LANG: p5js_live
// =============== ここが設定
const gif_url = 'https://dora.bk.tsukuba.ac.jp/~takeuchi/?plugin=attach&refer=%E5%B7%A5%E4%BD%9C%2FFusion360%E6%AD%AF%E8%BB%8A%E3%82%B9%E3%82%AF%E3%83%AA%E3%83%97%E3%83%88%2F%E3%81%AF%E3%81%99%E3%81%B0%E6%AD%AF%E8%BB%8A&openfile=helical3.gif';
const multi = 10;     // スライダーは multi 回ループで最大値になる
const fps = 5;       // 描画頻度 (frame per second)
const maxWidth = 600; // 横幅最大値 
// ================ ここから下は汎用コード

let gif = null;
let frameSlider = null;
let w, h;

p.preload = () => gif = p.loadImage(gif_url);

const draw = () => {
  let index = frameSlider.value();
  gif.setFrame(index % gif.numFrames()); // フレームを選択して
  p.image(gif, 0, 0, w, h);              // 描画
}

p.setup = () => {
  p.frameRate(fps);
  w = Math.min(maxWidth, gif.width);
  h = gif.height * w / gif.width;
  p.createCanvas(w, h + 20);

  frameSlider = p.createSlider(0, gif.numFrames() * multi - 1);
  frameSlider.value(0);
  frameSlider.position(0, h);
  frameSlider.size(w);
  frameSlider.input(draw);
  draw();
}

p.draw = () => {
  if(p.mouseIsPressed) return;
  frameSlider.value((frameSlider.value() + 1) % (gif.numFrames() * multi));
  draw();
}

ここでは手前側の歯車が小さくて噛み合い率が低いのであるが、それでも歯車の回転に伴い歯当たり位置が歯の厚さ方向に移動しながら、どこかしらが噛み合う状況が続いていることを確認できる。また、歯当たりは一気に増えたり減ったりせず徐々に面積が増えたり減ったりしていて、低騒音になりそうな感じも見て取れる。 (この動画は「干渉」検査の結果を1枚1枚繋ぎ合わせて作ったもので、残念ながら自動的に動画にする機能はないのだと思います???)

同じことを すぐば歯車で試すと、

LANG: p5js_live
// =============== ここが設定
const gif_url = 'https://dora.bk.tsukuba.ac.jp/~takeuchi/?plugin=attach&refer=%E5%B7%A5%E4%BD%9C%2FFusion360%E6%AD%AF%E8%BB%8A%E3%82%B9%E3%82%AF%E3%83%AA%E3%83%97%E3%83%88%2F%E3%81%AF%E3%81%99%E3%81%B0%E6%AD%AF%E8%BB%8A&openfile=spur-gear3.gif';
const multi = 10;     // スライダーは multi 回ループで最大値になる
const fps = 5;       // 描画頻度 (frame per second)
const maxWidth = 600; // 横幅最大値 
// ================ ここから下は汎用コード

let gif = null;
let frameSlider = null;
let w, h;

p.preload = () => gif = p.loadImage(gif_url);

const draw = () => {
  let index = frameSlider.value();
  gif.setFrame(index % gif.numFrames()); // フレームを選択して
  p.image(gif, 0, 0, w, h);              // 描画
}

p.setup = () => {
  p.frameRate(fps);
  w = Math.min(maxWidth, gif.width);
  h = gif.height * w / gif.width;
  p.createCanvas(w, h + 20);

  frameSlider = p.createSlider(0, gif.numFrames() * multi - 1);
  frameSlider.value(0);
  frameSlider.position(0, h);
  frameSlider.size(w);
  frameSlider.input(draw);
  draw();
}

p.draw = () => {
  if(p.mouseIsPressed) return;
  frameSlider.value((frameSlider.value() + 1) % (gif.numFrames() * multi));
  draw();
}

このように途中で歯当たりの得られない時刻が生じてしまい、また、歯の接触も瞬間的に増えたり減ったりしてしまう。

正面モジュールを基準にした方が使いやすいのでは???

2つの歯車を組み合わせるような場合、歯垂直モジュールではなく正面モジュールで記述した方がずっと分かりやすい気がしてきた。

そうしまえば上述の歯当たりの不具合も解消しそう。

はすば歯車のデメリット → やまば歯車

はすば歯車はメリットが多いのですが、回転軸平行方向の荷重(アキシャル荷重・スラスト荷重)を生んでしまうというデメリットがあります。

そこで反対方向にねじれたはすば歯車を2枚重ねることでスラスト荷重をなくしたのがやまば歯車です。

double-helical.gif

これははすば歯車を鏡面対称に複製してやれば良いだけなので、 「作成」「ミラー」でオブジェクトとして歯車ボディを選び、対称面として歯車の上面を選び、操作を「結合」にすれば簡単に作れます。

mirror.jpg

コメント・質問





Counter: 200 (from 2010/06/03), today: 2, yesterday: 3