Fusion360歯車スクリプト/内歯車 の履歴(No.6)

更新


工作/Fusion360歯車スクリプト

概容

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

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

目次

内歯車の生成

Internal Gear のチェックを付けて、
Hole/Outer Diameter に Reference Diameter より十分大きな値を入れると生成できます。

internal1.png internal2.jpg

内歯車にも回転軸やジョイントが生成されるため、他の歯車と連動させることが簡単にできます。

この例のように歯の数が少ない内歯車は基礎円が歯先円より小さくなってしまいます。 内歯車の歯形は基礎円より内側では生成できないため、そのような場合にはスクリプトは自動的に歯先円を基礎円まで大きく設定しなおして歯車を生成するようになっています。 結果的に Addendum に指定した値よりも歯末の丈の短いものが出来上がりますので注意してください。

例えば歯数 6 の平歯車を作って X 方向に 12 mm 動かしてかみ合わせたのがこちらです。

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%E5%86%85%E6%AD%AF%E8%BB%8A&openfile=internal3.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();
}

組み合わせによってはぶつかる

工作/歯車について勉強する3#ud5c339c で試すと分かるように、内歯車は相手の歯車との組み合わせによっては干渉を起こして回らない場合があります。

internal4.png internal5.png

  • 左は歯車のサイズが違いすぎるときに起きる、内歯車の歯先が平歯車の歯元に食い込むインボリュート干渉
  • 右は歯車のサイズが近すぎるときに起きる、内歯車の歯先と平歯車の歯先がぶつかるトロコイド干渉

と呼ばれるそうです。

工作/歯車について勉強する3#a6919964 こちらの計算機では指定の組み合わせで干渉が起きないことをチェックできるようになっているようないないような??? まだいろいろ試し中です。

というのも、文献などで見つかる「インボリュート干渉の条件式」は多くの場合に相手の歯車の切り下げを考慮していおらず、切り下げの行われた歯車を相手にした場合の判別を手軽に行う方法を探しきれていないというのが1つの理由です。

例えば上で作成した歯数12の内歯車と歯数6の外歯車の組み合わせをバックラッシュ 0 で作成して組み合わせてみた下図からは、この組み合わせでインボリュート干渉が起きないことを確認できます。これは歯数6の歯車に切り下げが発生している(歯元のトロコイド曲線が基礎円より上まで来ておりインボリュート領域が本来の長さまで到達していない)ためであり、切り下げを行わなければ小歯車のインボリュート曲線と内歯車の歯先が干渉します。判別式は小歯車の切り下げを考慮していないためにこの「仮想的な干渉」を検出してしまうのだと思います。

internal8.png

バックラッシュ

0.0 mm と 0.2 mm との比較で、片側当たり 0.1 mm だけ正しく歯が引っ込むことを確認した。
(間違っていたのを直した)

internal6.png

転位

中心間距離の調整を 工作/歯車について勉強する3#a6919964 でできることを確認。

https://www.khkgears.co.jp/gear_technology/pdf/gijutu.pdf#page=19 と同じパラメータで歯車を作って組み合わせてみた。

internal7.png

確かに正しく組み立てられている。

はすばの場合

はすばの場合はどうか?

KHK さんの資料でははすば内歯車の計算がなかったので 工作/歯車について勉強する3#a6919964 は外歯車の計算をまねて作ってみたのだけれど・・・ちゃんと計算は一致するのか?

internal_helical1.png internal_helical2.png internal_helical3.png

internal_helical4.png internal_helical5.png

よかったバッチリぴったり合っていた。


Counter: 113 (from 2010/06/03), today: 2, yesterday: 1