ラベル 古い計算機 の投稿を表示しています。 すべての投稿を表示
ラベル 古い計算機 の投稿を表示しています。 すべての投稿を表示

2011年4月29日金曜日

古い計算機

今回はPascalが発明したといわれる計算機, パスカリーヌの繰上げ処理のことを書きたい.

Pascalは1623年生まれ. 計算機を考えたのが1642年から45年だから, 20歳くらいのことになる.

そんなに高級なことが出来たわけではなく, 例によって歯車にスタイラスを指してぐるーっと回すと, その分だけ加算出来, 結果が表数車に現れるという代物である. 減算は補数を足して実現したようだ. つまり歯車類は, 一方向にだけ回転する構造であった.


ウェブページ
にあった図を一つ借用すると, 計算機構は下のようになっていたらしい.



図の 0 と 1 は表数車で, パスカリーヌは十進法以外にも対応していたらしいが, 一応は外側に0から9と, 内側にその補数が書いてあった. 2 は歯止めである. 歯車といっても, 精密な工作は出来ぬ時代なので, 円周から棒がたっている程度のもので, むかしのからくりでよく見かけるものがあり, 歯止めはそれを上から重力で押さえている.

図の 3 はベベルギアの片割れである. 下の方の図にも 3 はあるが, 表面の歯車をスタイラスで回すと, このベベルギアで水平面の軸の回転に変わる. この軸が1段の歯車を介して表数車を回す.

ところで繰上げは, 下の桁の水平軸の用意した2本のピン 4 が主役である. 軸が図でみて時計方向に回ると, このピンは, 上の桁の水平軸で回転する 5 のフォーク状のフックを押し上げ始める. やがて 4 は 5 の下から抜けるが, それがちょうど表数車が9から0になる時で, フックが重力で墜落することにより, 上の桁のピン 6 が押されて, 繰上げを生じる仕掛けである.

繰上げ処理には, 力がいるのが普通だが, パスカリーヌでは重力を利用するのが面白い. 表数車が5, 6, 7, 8と回るにつれ, ポテンシャルを高めていき, 9を過ぎると一気に落ちるのである.

私はこの仕掛けをみると, 昔のテレタイプを思い出す. テレタイプは1文字ずつ受信, 印字しながら, 印字位置が次第に右に移動し, 復帰信号を受信すると印字位置を左端へ戻すのだが, このエネルギーは, 印字位置を右に移動するときにためていく. 復帰でフックがはずれ, 蓄えたエネルギーで左端へ飛んで戻るが, 最後にダッシュポットがあって, ブレーキをかけ, 静止する. 従って, 左からほんの数文字を印字した後の復帰では, 力が弱く, 左端まで充分戻れないこともあった.

これは, 手動のタイプライタとは, 全く反対のエネルギーの使い方であった. 手動のタイプライタでは, 手でプラテンを右に寄せると, その時にエネルギーを蓄えるのであった. 1文字打つたびに, そのエネルギーにより, プラテンが左へ送られるのである.

パスカリーヌのこの動きを, いつものようにポストスクリプトで描いたのが次の紙芝居である. 4 あたりから, ピンがフックを押し上げ始め, 9 で最高点に達する. その直後にフックは墜落し, 上の桁のピンを回す.



いかにもうまく行きそうだが, 繰上げが続くと, 2, 3段で駄目になったという説明を読んだようにも思う. なお上の図の動画がhttp://playground.iijlab.net/~ew/pascalinecarry/pascalinecarry.htmlにある.

2011年4月4日月曜日

古い計算機

前回のブログのDial-A-Maticの計算機の特許の図で, その上方にある歯止めの機能を理解したいと思い, ひがな一日PostScritpで描いた図をこねくりまわした.

すなわち, ダイアルと伝達歯車と歯止めを表示し, パラメータを変えて, ダイアルを少しずつ回転しながら, この点とこの点が接しているはずと, 伝達歯車や歯止めの回転角度を繰り返し調整した.

ダイアルが加算方向に右回転し, 状態が9から0になって繰上げが出る過程の最初が0番の図で, それから以下の紙芝居, あるいはパラパラ漫画は始まる. それぞれの図の右上の番号nは, ダイアルの0番からの回転角が3n度であることを示す.

鳥のようにも見える歯止めには, 左と右に下向きの三角がある. 左のをストッパー, 右のをフォロワーといおう.



最初の0番では, 歯止めは伝達歯車の2本のピンの間をしっかり押さえている. 1番の図に向って, ダイアルの右回転を始めると, ダイアルの突起が伝達歯車のピンを押し, 伝達歯車が左回転し始める. それにより歯止めのストッパーの斜辺が, ピンで上に押され, 歯止めは右に傾く. 1番以降, 赤線は0番の位置を示す.


2番と3番では, ダイアル, 伝達歯車, 歯止めの回転が継続中.



4番. 伝達歯車のピンによるストッパーの押し上げはここまで. つまり歯止めの右回転は終り. この後しばらく, フォロワーはダイアルの0の数字の上の谷の部分を移動する.



6番. 18度回転したので, 状態9と0との中間点に来た.



9番から10番にかけて, フォロワーは0の数字の左の斜面に当り, 押し上げられ, 左回転を始める. 同時にストッパーが, 次のピンの間に下がり始める.





12番でダイアルは36度回転し, 状態0になる. しかし, ストッパーはピンの間に充分には下がっていない.



13, 14, 15番で, 状態が0からさらに1へと変る時, 数字1の方にある高い山の斜面でフォロワーが押し上げられ, ストッパーが伝達歯車のピンの間にしっかり止る.

フォロワーを押し上げる斜面が, なぜ2つに分かれているかは, 残念ながら未解決である. また, 歯止めは, ダイアルの急回転により, 繰上げが2回生じるのを防ぐのが目的なのだが, 8番の図で, ストッパーが上がっている間に, もう1本のピンもストッパーの下を通過しそうにも思える. その辺りも解明出来ていない.

前回も引用した, 繰上げ処理に詳しいウェブ の最後の方に, この計算機の内部の写真が2つある. 特許の図の上の写真は, 蓋を取ったものであり, 最後のは, 教育用に蓋を透明にしたものだ. これ, 欲しいなぁ.

2011年4月2日土曜日

古い計算機

このブログに何回か書いた昔の計算機は, タイガー計算器のような乗除算は出来ないが, 簡単な加減算ならお手の物だ. そういう計算機をウェブページで探していたら, Sterling Dial-A-Maticというのを見つけた. これが理科大の近代科学資料館にあったかどうかは分からぬ.

John Wolffさんのウェブページには, 1950年代かとある.



この画像を頂いたもとのURLが思い出せないのが申し訳ない.

プラスティック製だから, 古いとはいえない. 古いのと同じく簡単なのである. 簡単なので, 筆箱に蓋に組込める. この計算機を使うにはスタイラスがいるが, スタイラスが筆箱に仕舞えるのも都合がいい.

この計算機は十進4桁. 右からunits(一の桁), tens(十の桁), hundreds(百の桁), thousands(千の桁)である. それぞれの桁にnを足すには, 周囲に書いてある外側の大きい数字のnのところの穴にスタイラスを差し, 馬蹄形の最後まで右に回す.

nを引くには, 内側に書いてある小さい数字のnの穴にスタイラスを差し, 左に回す.

すると上の穴にその桁の答が現れる.

予想されるように, 繰上げ, 繰下げは正しく反映される.

2桁だけを書き出すと次の図だ.



中が気になるが, 繰上げ処理に詳しいウェブ にこの計算機の説明があり, そこからUS Patent 2,797,047に辿り着ける. するとこういう図を始めいろいろ見つかる.



特許の図だからごちゃごちゃしているし, 説明も回りくどい. 今回はそれを私なりに説明したい. 十進歯車の相当する円盤の上方にカムのような切り込みがあり, それに噛み合う上側の歯止めや下側のバネみたいなものは, 回転しすぎ防止と位置の調整用のものなので省略し, 特許の図の繰上げに本質的な部分を描くとこうなる.



この赤で示した蓋を外すと



になる. 右が一の桁のダイアル, 左が十の桁のダイアルで, その状態が真上にある数字で読めるように, 数字は放射状に書いてある.

中央に繰上げ用の伝達歯車があり, 歯は十の桁のダイアルの下の歯車と噛み合っている. 伝達歯車には, 緑で示す10本のピンが立っていて, またダイアルの2の数字の下あたりに, これも緑で示す突起とぶつかる高さになっている.

ダイアルが36度左回転して, 0から9の状態に変ると, 突起はピンに当って, 伝達歯車を36度右回転させる仕掛けである.

ここが繰上げ機構の微妙なところで, 一の桁のダイアルの繰上げは, 伝達歯車に伝わるが, 伝達歯車の回転は一の桁の突起に当ってはいけないのである. 従って, 突起はピンの外側の包絡円のすぐ外側に控えている.

この構造で伝達歯車と十の桁のダイアルを36度ピッタリに回すのはむずかしく, 従って, 特許の図では, 針金のバネでダイアルの下の歯車を, 定位置に止めようとする.

もう一つ微妙なのは, 一の桁のダイアルを, 勢い良く回転して, 繰上げを伝えた場合である. 突起がピンを急に押すと, 36度どころか, 72度まで回転してしまうかも知れない. これを防ぐのが, ダイアルの上の切り込みと歯止めである.

歯止めの動きはまだよく理解してはいないが, そういう機能である.

私がProcessingで描いたシミュレータが,
http://playground.iijlab.net/~ew/dialamatic/dialamatic.html
にある.

起動時には, 0 0 の状態である. 一の桁に1を足すには, 一のダイアルの大きい数字の横の円をクリックすると, 青色に変る. 右下の + の箱をクリックすると1が足される仕掛けだ. 引くには左下の - の箱をクリックする.

クリアの機能はない.

2011年3月18日金曜日

古い計算機

東京理科大学の近代科学資料館で見かけた古い計算機に以下のようなのがあった.




白状するとどのように使うのかさっぱり分からなかった. 仕方なく, あとからウェブでいろいろ探し, やっとChadwick Magic Brain Calculatorの使用法というページを見つけた. そのページのと形は多少違うが, 同じシリーズである. Chadwickという会社製だが, 生産は日本と書くページもあった.

繰上げは人間オペレータに依存する, 実に簡単な仕掛けであった. いわばpoorman's calculatorである. 今回も私流の図で説明しよう. その前に, 最初の写真で, 左端にある針金は, 引き抜くとすべての桁を0にクリアする仕掛けである.




基本は, スタイラスを使ってAのような滑り板を, Bの青枠の操作窓の中で上下に動かす. Bの上右側の緑枠は結果窓である. 左側の結果枠は1桁上のもので, もっと左にあるべきだ. 操作窓の左の1から9は, 黒数字が加算用, 赤数字が減算用である.

十進歯車の役目を果たす滑り板には, 両側にスタイラスを掛ける窪みがある. 左側のが加減算用. 右側のが繰上げ, 繰下げ用である.

ある桁の操作窓には, Cのように, その桁の滑り板(の加減算用の窪み)が右に, その上の桁の滑り板(の繰上げ, 繰下げ用の窪み)が左に現れる. (今は見えないはずの滑り板も描いてある.) それぞれの反対側の窪みは関係ないから, 以後はDのように表わすことにする.

これからの説明は次の図による.




Aは, 緑枠に見るように, この桁と, すぐ上の桁がともに0の状態である. 加算の規則は, 操作窓の左の黒数字に対応する右の窪みにスタイラスを差し, そこが赤なら, 操作窓の下までスタイラスを押し下げる.

BはAの黒字1の窪みのスタイラスを下まで押し下げたところで, 状態1になり, 右の緑窓に1が見える.

CはBにさらに4を足したところだ. (状態は5)

スタイラスを差した場所か白なら, スタイラスの操作窓の上まで押し上げ, さらに左に押して, 上の桁の繰上げ, 繰下げ用の窪みに差し, 操作窓の左縁に沿い, 1段下げる. 操作窓の構造上, 1段しか下がらない. 従って, Cに5を足そうとすると, Cの黒5のところは白だから, 5の窪みを上まで押し上げ, (この桁は0になる.) さらにスタイラスを左に回し, 上の桁を1段下げて1にする. (Dになる.)

なにをやったかを算盤で説明しよう.



Aのように, ある桁が8とする. 1を足すには, 下の1を押し上げる. (Bになる.) Cのように, 8に3を足そうとすると, 11になり, この桁だけでは処理出来ず, この桁から(10に対する3の補数の)7を払って, 上の桁に1を足す. (Dになる.) これが滑り板の白部分に相当する. 上の図で, Cの5に5を足すのに, 補数の5を払って(上に押し上げて)上の桁に1を足したのである.

算盤の図のEは, 99に1を足すところで, 最も右の桁の9を払って, 次の桁に1を足そうとするが, その桁も9なので, 再び9を払い, さらに次の桁に1を足す.

残念ながら, Chadwick Brain Calculatorはそこまでは出来ない. 上の図のEが状態99で, 1を足すべく, スタイラスを上まで押し上げても, 左に繰上げの窪みがない. すぐ上の桁で繰上げが処理出来るところまでしか, この計算機は対応していない. 前記の使用法によると, こういう場合は, 上の桁にいき, そこは状態9のはずだから, 1の窪み(白)にスタイラスをいれ, 押し上げ, 左へ回して繰上げをせよと書いてある. 9への繰上げはひと様を使うのである.

減算の方法は説明するまでもないであろう. この計算機は1960年代まで売られていたらしい. ウェブを探すと, 類似の計算機はいろいろある.

2011年3月15日火曜日

古い計算機

東京理科大学の近代科学資料館で見せて頂いた, もう1つの古い計算機はADALLというものだ. 丸いので変な向きに置いてあるが, 以下のである.



これは英国バーミンガムのTemple Courts, Temple RawにあるThe ADALL Co.製らしい. いうなれば百進法の計算機である. 気宇壮大だ.

いつものように自分で描き直したのが以下だ.



灰色の背景の手前にある白い歯車状なのが, 百進歯車である. その少し内側に00から99まで十進2桁の数字(内数字)が書いてあり, 中央右の窓の内側に見える数字が歯車の状態を示す. この図の状態は00である.

さて, これに0≤n<100を足すには, 外側の数字(外数字)のnのところにある, 歯車の窪みにスタイラス(最初の写真の箱の蓋に見える)を差し, 真横にあるストッパーまで右回転する. そうするとnステップだけ百進歯車が回転し, 状態がnだけ進む. 上の図で, 窪みの説明が差している先は, 11に対応するそれである. 0に対応する窪みはストッパーに接していて, もう回せない.

A足すBの計算には, 最初, 図のように状態を00にしておき, 外数字のAのところから, Aだけ回転; 次に外数字のBのところから, Bだけ回転すると, 窓に現れる内数字がA足すBになる. AもBも99まではOKだが, 足した結果が100を超えると, 状態はA+B mod 100 になる.

この計算機の秀逸なのは, 内側にある渦巻きである. レコードの溝状というか, 蚊取り線香状というか, 1本の溝の線で出来ている. 歯車を右回転すると, 渦巻きは順に内側に入るようになっている.

長窓の中で, この溝には, 3mmφくらいのボールが載っている. 加算の結果が増えると, ボールは徐々に内側に移動する. 長窓の上に, 右から1, 2, ..., 11 と書いてあり, ボールが1と2の間の下にあれば, 加算の結果の百の桁は1ということになる. だから, 2桁の数を何回も足しても, 総和が約1100になるまでは, この計算機は正確な答を示す. もちろん, 下の2桁が丁度00以外では, ボールは百の桁の数字の真下にはないが, 時計の短針が, 1時と2時の中間にあっても, 1時台の時刻が分かるように, この計算機でも百の桁は読み取れるはずである.

この計算機はいうなれば, 離散的円形計算尺である. 計算尺は普通は直線で, A尺とB尺が並び, A尺のa点にB尺の0を合わせると, B尺のbに対応するA尺はA尺の0からa足すbの距離になる. 従って, A尺とB尺を対数目盛にするとa掛けるbが計算できる.

ところで, 普通の計算尺では, A尺のaにB尺の左端を合わせるか右端を合わせるかが, 悩ましいところである.



上の計算尺は3掛ける2で, B尺は左の1をA尺の3に合わせ, B尺2のA尺には6がある. 下は3掛ける4で, 12になるので, B尺の右の10をA尺の3に合わせている.

この面倒を省いたのが下の円形計算尺である. ADALLの計算機は, 対数目盛の代りに等間隔に目盛をつけた加算用の計算尺である.

John Wolffさんのウェブページにも, この計算機の簡単な説明がある. 同ページによると, 理科大でこの計算機の箱に入っていた数表の説明もあった. 要は1シリングが12ペンスなので, sシリングpペンスを十進法にし, 12*s+pペンスに換算する表だったらしい.

2011年3月14日月曜日

古い計算機

東京理科大学の近代科学資料館には古い計算機の貴重な収集がある. なんども訪れて眺めているが, その中に使い方がわからない計算機があった.

先日お願いして, それをよく見せて頂き, 使用法が確認できた. 今回はそれを説明したい.

下の写真は, Calculatorという, なんの変哲もないない名前の計算機である. 会社もCalculator Corporationといい, 銘板からすると, ミシガン州のGrand Rapidsという町にあったらしい.



真ん中辺を拡大すると, ピントは甘いが,



のようだ. この4桁分を説明用にPostScriptで描いたのが次である. この方で話を進める.



まず1桁分を取り出したものを2個並べる.



こういう計算機の基本構造は, 10の状態を取りうる十進歯車を必要な桁数分用意し, 各桁の歯車を加算する数だけ回転し, 繰上げを次の桁に伝えることである.

この計算機の十進歯車は, 中央の灰色の部分で, これが回転する. ラチェットがあるのか, 離散的な位置に止るみたいである. 周囲に白い窪みが10個見えるが, その内1つが他より大きく窪み, 下に書いてある赤字の数字が読める. その数字がその桁の歯車の状態である. 左は0, 右は5を示している.

この調子で, 上の4桁の状態を読んだのが, それぞれの右下の0000, 1234, 6912である.

次は加算の仕方. タイガー計算機などでは, 十進歯車に噛み合う出入りピンの数を調整して, 0から9までの数を足す. この計算機ははるかに簡単で, ひと様がスタイラスという棒を窪みに差し込み, 昔の電話器のダイアルのように, 右下に飛び出したフックに当るまで, 右回転をするのである. 加算すべき数は外側に白抜きで書いてある.

白い窪みにある, 青い点は, スタイラスを差す場所で, 一番上は左から順に1, 2, 3, 4である. それぞれ回転すると, 最初0, 0, 0, 0であった歯車は, その数だけ状態が進み, 中央の図のようになる.

中央の図になったところで, 再び5, 6, 7, 8にスタイラスを差し込み, 回転すると, 下のように, 加算が出来て, 6, 9, 1, 2になるのである.

極めて簡単だ. 加算では歯車は電話のダイアルのように右にしか回さない. このままでは減算には対応していない.

そうそう, 加算の前に, 各桁を0にリセットしておく必要がある. それには大きい窪みにスタイラスを差して, フックまで左回転する. (と書いたウェブページがあるが, 左に回転出来るのだろうか.)

問題は繰上げだ. 最初のズームの写真を見ると, 下の桁の7と8の間から, 上の桁の0と9の間にかけて, 盛り上がっている形がある. ここに繰上げの仕掛けが隠れているらしい. いろいろ想像しているが, こんなに簡単な仕掛けはまだ思いつかない.

なお, 古い計算機を収集している, オーストラリアのJohn Wolffさんのウェブページにも, この計算機の簡単な説明があった.