2009年3月18日水曜日

TinyでDRO!(概要)

以前このブログでデジタルスケールをフライスに装着した話を載せました。その中で、「そのうちLEDの表示器作ろっと」と書いたとおり作ってしまいました。

まずは先例の調査から。ググるためにはまずキーワードが必要です。「デジタルスケール」ちゅう言葉は実は「デジタル式の秤」--つまりキッチンスケール--の意味のほうが(英語でも)一般的らしい。いろいろ探し回ったところ、こういうのは「DRO (Digital Read-Out) 」と言うのだということが分かりました。NCフライスなどを使ったことのある人にとっては当たり前のことかもしれませんが、知らなかったなぁ…。あと、まったく同じメカニズムを持つ「デジタルノギス」「Digital Caliper」なども検索キーワードとしては役に立ちました。

果たして信号の解説をしているサイト(ここここ)や製作例を掲げるいくつかのサイト(ここここ)が見つかりました。信号の解説をしているサイトによれば、また、自身で測定してみたところこのデジタルスケールの信号は以下の特徴があることが分かります。
  • クロック線と1本のデータ線を持つ同期式シリアルである。
  • 電源はGNDと-1.5V。GNDはフレームに落ちている。
  • データは24ビットの2の補数で、最下位ビット(LSB)から送られてくる。
  • 1回のデータ送信で2つのデータ--先に絶対座標、後に相対座標--がつながって送られる。
  • データの送信間隔は約0.3秒。
  • クロックの周波数は約80kHz。データ送信していない間は-1.5Vに固定されている。
  • データの取り込みはクロックの立下りエッジで行うのが妥当。
  • 外からクロック線をGNDレベルに落とすことでゼロクリア信号入力となる。つまりZEROボタンを押したのと同じ。
  • 外からデータ線をGNDレベルに落とすことでモード切換え入力となる。これ相当のボタンは本体にはない。
  • スケール本体の電源がOFFでも信号だけは出力され続ける(液晶画面は消えている)。
負電圧になっているのが嫌だなあと思いつつ、ここは挑戦です。以下の目標を掲げて突進です。
  • とにかく安い部品を使って仕上げる。そのためATTiny2313を使う。できれば部品箱に眠っているAT90S2313でも動くようにする。
  • 軸ごとの独立とする。つまり、X・Y・Z軸それぞれに1基板を使う。
  • ボタンはゼロクリアとミリ/インチ切り替えのみ。
  • 枚数の少ない試作基板では一番安価と思われるブルガリアのOLIMEXに基板を発注する。
  • 最近になって秋月で販売し始めたプラスチックケース(195×110×76mm)に収める。これは500円で非常に安価だ。
  • スケール本体から出すケーブルにはUSBケーブルのデバイス側をちょん切って使う。切ったところに2mmピッチ×4ピンのコネクタをつける。
  • スケール本体から出るケーブルとDROの接続はUSB(A-Type=ホスト側)を使う。安く上げるため。A-Typeメスのパネル取り付け用ケーブルが2本入りで280円(@千石)。
  • 基板以外は1軸あたり1,000円程度に抑える。
写真は完成して動作させているところです。上からX軸、Y軸、Z軸なのですが、Z軸にはスケールそのものがついていない(まだ買ってない…)ので消えたままになっています。次回はハードウェアの説明をします。

0 件のコメント: