公差計算の基礎(1)
![]() | 教授。誤差は伝搬するんですか?? | |
![]() | そうですね。これは表現の問題ですが、例えば100mmの長さのレールAと200mmの長さのレールBを足すことを考えてみましょう。 | |
![]() | 300mmですよね。 | |
![]() | はい。ところが、100mmの長さのレールをたくさん製造したとして、そのすべてが100mmでできたら、それは奇跡です。 | |
![]() | 加工誤差がありますもんね。 | |
![]() | 仮に、レールAの標準偏差が±1mm、レールBの標準偏差が±2mmだったとしましょう。それぞれの長さのレールを無作為に抽出し、レールどうしを足したら、どんな標準偏差になるか。これが問題です。 | |
![]() | どうせ、教授の出す問題だから、足し合わせたレールの標準偏差は、単純に±3mmにはならないんでしょ?? | |
![]() | 分かってますねぇ。そうはなりません。今、\(z\)が2つの変数\(x\)、\(y\)について―。 | |
![]() | え??もしかして数学ですか?? | |
![]() | そうですよ。 | |
![]() | え〜。面倒だから結果だけ教えてくださいよ〜。 | |
![]() | でも、一度くらいは流しておいた方がいいでしょう。 | |
![]() | じゃぁ、一度くらいは付き合います。 | |
![]() | 今、\(z\)が2つの変数\(x\)、\(y\)について、\(z \ =\ f\left(x\,,\ y\right)\)と書けるとしましょう。 | |
![]() | \(z\)を決める変数は、2つとは限りませんよ。 | |
![]() | ですが、2つだけのケースをやっておけば、それを3つ以上に展開するのは同じ議論で済むんですよ。それとも、もっと一般化して説明しましょうか?? | |
![]() | いいえ、結構です。続けてください。 | |
![]() | それぞれの変数が、\(dx\)、\(dy\)だけ微小変化したとすると、\(z+dz \ =\ f\left(x+dx\,,\ y+dy\right)\)となります。 | |
![]() | そこまでは大丈夫です。 | |
![]() | では、これをTaylor展開してください。 | |
![]() | Taylor展開??もう忘れました。 | |
![]() |
では、次の結果だけ受け入れてください。 \[ \begin{align*} f\left(x+dx\,,\ y+dy\right) \ =\ f(x\,,\ y) \ &+\ \left( dx \frac{\partial}{\partial x} + dy \frac{\partial}{\partial y} \right)f\left(x\,,\ y\right) \\ & +\ \frac{1}{2\,!} \left( dx \frac{\partial}{\partial x} + dy \frac{\partial}{\partial y} \right)^2 f\left(x\,,\ y\right) \\ & +\ \frac{1}{3\,!} \left( dx \frac{\partial}{\partial x} + dy \frac{\partial}{\partial y} \right)^3 f\left(x\,,\ y\right) \\ & +\ \cdots \end{align*} \] |
|
![]() | 教授。これはもう、拷問です。 | |
![]() |
しかし、2行目以降は、微小量が2度以上掛け算されるので、無視できます。つまり、 \[ \begin{align*} f\left(x+dx\,,\ y+dy\right) \ &=\ f\left(x\,,\ y\right) \ +\ \left( \frac{\partial{f}}{\partial{x}}\right) dx \ +\ \left( \frac{\partial{f}}{\partial{y}}\right) dy \\ \end{align*} \] です。 |
|
![]() | これなら、我慢できそうです。 | |
![]() |
そうすると、\(z+dz \ =\ f\left(x+dx\,,\ y+dy\right)\)でしたから、 \[ \begin{align*} dz = \left( \frac{\partial{f}}{\partial{x}}\right) dx \ +\ \left( \frac{\partial{f}}{\partial{y}}\right) dy \\ \end{align*} \] と書けます。 |
|
![]() | かなりすっきりしましたね。 | |
![]() | これを2乗します。 | |
![]() | え〜。せっかく簡単になったのに、また面倒なことになっちゃうじゃないですか。 | |
![]() | 確率論においては、標準偏差よりも分散の方が本質だから、しょうがないです。でも、2乗するくらい、Taylor展開に比べたら、どうってことないでしょう?? | |
![]() | Taylor展開に比べたら、ですけど…。 | |
![]() |
結果は、 \[ \begin{align*} \left( dz \right)^2 = \left( \frac{\partial{f}}{\partial{x}}\right)^2 \left( dx \right)^2 \ +\ \left( \frac{\partial{f}}{\partial{y}}\right)^2 \left( dy \right)^2 \ + 2\left( \frac{\partial{f}}{\partial{x}}\right)\left( \frac{\partial{f}}{\partial{y}}\right) dxdy \\ \end{align*} \] となります。こうすると、「分散とは、誤差を2乗した値の期待値である」という定義が使えるようにます。 |
|
![]() | \(E\left[\left(dx\right)^2\right]\equiv{\sigma_x}^2\)、\(E\left[\left(dy\right)^2\right]\equiv{\sigma_y}^2\)、\(E\left[\left(dz\right)^2\right]\equiv{\sigma_z}^2\)ということですか?? | |
![]() |
はい。つまり、 \[ \begin{align*} {\sigma_z}^2 = \left( \frac{\partial{f}}{\partial{x}}\right)^2 {\sigma_x}^2 \ +\ \left( \frac{\partial{f}}{\partial{y}}\right)^2 {\sigma_y}^2 \ + 2\left( \frac{\partial{f}}{\partial{x}}\right)\left( \frac{\partial{f}}{\partial{y}}\right) \sigma_{xy} \\ \end{align*} \] ということです。これが誤差伝搬の公式と呼ばれているものです。それぞれの標準偏差が、足し合わせたレールの標準偏差に影響をもたらすんですが、これを「誤差が伝搬する」と表現するわけです。 |
|
![]() | \(\sigma_{xy}\)という記号が見えますけど?? | |
![]() | これは、\(dxdy\)の期待値\(E\left[dxdy\right]\)のことで、共分散と言います。\(x\)の変化が\(y\)にも影響を及ぼす場合などでは無視できません。 | |
![]() | ということは、逆に、\(x\)と\(y\)が独立なら、\(\sigma_{xy} \ =\ 0\)としていいんですか?? | |
![]() |
構いません。たいていの公差計算では、それぞれのパラメータは独立な確率変数として取り扱うでしょうから、 \[ \begin{align*} {\sigma_z}^2 = \left( \frac{\partial{f}}{\partial{x}}\right)^2 {\sigma_x}^2 \ +\ \left( \frac{\partial{f}}{\partial{y}}\right)^2 {\sigma_y}^2 \\ \end{align*} \] を使えば充分だと思います。 |
|
![]() | これが、最初の問題の正解ですか?? | |
![]() | そうです。 | |
![]() | ということは、レールの問題に当てはめると、(全レール)=(レールA)+(レールB)だから、偏微分のところは\(1\)になって、 \[ \begin{align*} \sigma^2 = 1^2 + 2^2 = 5 \end{align*} \] つまり、標準偏差は、その平方根で±2.24mmですね。 | |
![]() | そういうことになります。 |
![]() | 教授。こんな面倒なことを、実際の公差計算で使うんですか?? | |
![]() | Case by caseでしょうね。しかし、製造現場で誤差伝搬の法則を使って公差計算している例は、ほぼないでしょう。 | |
![]() | え〜。どうしてですか?? | |
![]() | 誤差伝搬の法則は、\(z\)がどんな分布に支配されているか、教えてくれないからです。 | |
![]() | ムム。確かに、上の議論では、確率分布については何も触れられてませんね。 | |
![]() | 平均や標準偏差は、確かに重要な情報なんですが、そもそもどんな確率分布に支配されているかが分からないと、工程管理は非常にやりにくいです。 | |
![]() | だったら、誤差伝搬の法則の出番はないんですね。 | |
![]() | 平たく言ってしまえばそうなんですが、でも、光伝達効率の公差計算なんかは、この公式を使うと、お手軽に処理できますね。 | |
![]() | 光伝達効率というと、透過率とか反射率の話ですか?? | |
![]() | はい。3個の光学素子が配列されていて、それぞれのエネルギー伝達効率を\(a\)、\(b\)、\(c\)とすると、全体の光伝達効率\(\eta\)は―。 | |
![]() | \(\eta \ =\ a\times b\times c\)です。 | |
![]() | でも、エネルギー伝達効率だって、加工誤差を持ってますよね。 | |
![]() | 確かに。 | |
![]() | そのとき、全体の光伝達効率のばらつきは、どうなっているでしょうか?? | |
![]() | う〜ん。掛け算だから、一筋縄ではいかないですね。 | |
![]() | しかし、先ほどの公式を使えば、厳密に解くことができます。 | |
![]() |
えっと、1番目の光学素子に着目すると、まず\(a\)で偏微分すればいいわけですね。そうすると、 \[ \begin{align*} \frac{\partial{\eta}}{\partial{a}} = b \times c \end{align*} \] ですね。 |
|
![]() |
それでもいいんですが、見通しをよくするため、 \[ \begin{align*} \frac{\partial{\eta}}{\partial{a}} = \frac{\eta}{a} \end{align*} \] としておきましょう。 |
|
![]() |
そうすると、2番目の光学素子の場合、 \[ \begin{align*} \frac{\partial{\eta}}{\partial{b}} = \frac{\eta}{b} \end{align*} \] ですね。 |
|
![]() |
そんな感じで進めていくと、全体の光伝達効率のばらつきは、 \[ \begin{align*} \sigma ^2 &= \left( \frac{\eta}{a} \right)^2 {\sigma _a} ^2 \ + \left( \frac{\eta}{b} \right)^2 {\sigma _b} ^2 \ + \left( \frac{\eta}{c} \right)^2 {\sigma _c} ^2 \\ &= \eta ^2 \left[ \left( \frac{\sigma _a}{a} \right)^2 + \left( \frac{\sigma _b}{b} \right)^2 + \left( \frac{\sigma _c}{c} \right)^2 \right] \\ \end{align*} \] となります。 |
|
![]() | へ〜。各パラメータの標準偏差を中央値で割るという一手間が必要になるんですね。 | |
![]() | そうなんです。それと、この結果から1つ面白いことが分かります。 | |
![]() | どんなことですか?? | |
![]() | 標準偏差の意味が、中央値によって異なるということです。例えば、90%の透過率を持つ光学素子の標準偏差が±5%のときと、20%の透過率を持つ光学素子の標準偏差が±5%のときで、どっちの方が難しい加工だと思いますか?? | |
![]() | そうか。90%の光学素子の方は5/90=0.056なのに対して、20%の光学素子の方は5/20=0.25だから、透過率が低くなればなるほど、同じ公差を与えた場合、加工は緩くなるわけですね。 | |
![]() | はい。もし、20%の光学素子に要求している加工誤差と同じことを90%の光学素子に適用すると、±22.5%の標準偏差を許容することになってしまいます。 | |
![]() | なるほど。NDフィルターなどに公差を割り付けるときは、気を付けないといけませんね。 |
戻る | 次頁へ |