(日々の記録)デジタルオシロを買った。(火)AquesTalkマルチメーター読み上げ機の実装に向けてAquesTalkを使ったマルチメーター(P-10)の読み上げ装置は、ブレッドボード上でほぼ想定どおりの動きをしてくれるようになった。次のステップはこれを適当なケースに入れ、実用品として動かすことだが、その前にやっておきたいことがある。電源は今のところ乾電池を考えている。プレーヤーなどのように連続して長時間使うものではないので、消費電流をそう心配することはない。言っても電池は長く持つ方が良いのに決まっている。参考にさせてもらったサイトの音声テスターは、クロックを1Mhzまで下げて消費電流を減らしておられるようだ。まあそこまでやることもないだろう。それでも少しは省電力化しておきたい。クロックを下げたり、スリープを入れることを考えてみることにする。消費電流は意外に少なくならない(1/18/2014)まず、とりあえずは現在のブレッドボード上の装置の電流を測る。テスターではなく、オシロに、このあいだのRaspberryPi電源装置開発で味をしめたシャント抵抗を使って電流を測定する。Vccは今5Vなので数十mAあたりを測定するなら10オームで数百mVになりオシロで十分測定可能な範囲だ。ミニブレッドボードに10オームを用意して、早速、電流を測る。おやあ、思ったより消費電流が多い。発声時には50mAを軽く超す。あ、そうか、スピーカーを駆動するトランジスターの電流を忘れていた。トランジスターの回路を分けて再度テスト。AquesTalkは同じMega328なので、2つのMPUの消費電流はデータシートによれば合わせて14~15mAぐらいのはずなのに、30mA近く流れている。ISPアダプターをはずすと、ほぼ想定どおりまで下がった。静止時で14mA、発声時には平均で20mA流れている。省電力化の手順はここからである。クロックを8Mhzから、手持ちで一番低いクリスタル4Mhzに換装する。ボーレートや、タイマーの定数を少し変更するだけで正常に動作した。おやあ、あんまり減らないなあ。AquesTalkはCRクロックで恐らく8Mhzで動いているので片側だけでは、2mA下げるのが精一杯だ。全体で消費電流は12mAとなった。次に、スリープ機能を入れた。スリープといってもメインループには1msのタイマー割り込みが常に起こっているので余り効果はないと思われるがどうだろう。うーん、やっぱり、たいしたことはない。12mAから9mAまで下がっただけである。それでも率から言えば30%近い削減効果なのだが今ひとつの効果だ。なるともっとやらないと気がすまなくなった。AquesTalkには本体をスリープにさせるピンが用意されている。データシートによればこれによりマイクロアンペアレベルまで下がると謳っている。これを試してみることにする。ブレッドボードなので、ハードの変更はあっと言う間である。ジャンパーでピンをつなぎプルアップ抵抗を追加する。喋ったあとAquesTalkはスリープに入り、喋る前にスリープを解除するロジックを追加する。理屈から言えば、現在の9mAから半分に下がるはずである。期待をこめてスタートする。これが意外や意外、殆ど消費電流節減には寄与しないのである。相変わらず消費電流は9mA前後を示すだけである。オシロで調べると、スリープピンが動いていることを波形で確認できるのだが、待機時でも電流値は殆ど変わらない。考えるが思い当たるところが見つからない。そのうち段々飽きてきた。何か原因があるのだろうが、この程度の電流で目くじらたてても余り得るものがない。長時間使う道具でもない。努力の割には報われることが少ないことに意地になるのはもうそろそろ止めよう。省電力化はこの程度にして先に進むことにする。切り忘れで電池を2度も換える失敗を避けるために脱線(1/20/201)ところが、またも脱線である。次に進もうとした矢先、思わぬ事故に遭遇してしまった。マルチメーター(P-10)が電源を入れても動かない。何と言うことだ、電池がすっかりなくなっている。P-10の電池は、LR44というボタン電池2つである(常用のP-16と同じ)。P-10のRS232Cを生かす改装をしたとき、RS232CをONにするとAutoPowerOffが効かなくなっていることには気がついていた。実験を終わる時は、あらゆる電源断をチェックする癖をつけてはいるのだが、前夜うっかりP-10の電源を切り忘れたようだ。このあいだ入れ替えたばかりの電池がすっかり空になっている。実はこれは2回目の失敗である。LR44は、最近は秋月で10個¥100で買えるようになったので経済的にはそう痛手ではないが、何の役にも立てずに消耗していった電池が不憫(ふびん)で申し訳がたたない。気分がすっかり落ち込む。現在のP-10は常時RS232CをONにしてあるので、電源の切り忘れは今後も起き得る。このONにしているピンにスイッチを入れれば解除されるが、このスイッチそのものの切り忘れを考えれば解決になっていない。電源スイッチを切ればすむ話である。読み上げ機を動かしているときだけRS232CがONになり、終わるとOFFになってAutoPowerOffが有効になるようなしかけはできないか。USBを通してPCでログをとる時も同じようになって欲しい。あれこれ考えているうち閃いたUSBのときも、読み上げ機につなぐときも、RS232Cのフォトカプラーの出力用に受け側のVccを使っている。これでRS232CをONするピン(ENTX)を逆にドライブすれば良いのではないか。フォトカプラーをもうひとつ追加して、このVccを入力にし出力をこのピンにすればよい。出力側のVccはP-10からもらえる。思いついてからの行動は我ながら早い。P-10につけたフォトカプラー基板をとりはずし、フォトカプラーを2つのせる基板を作り直す。P-10を久しぶりに分解し、RS232Cの送信ピンとグランド(Vss)の2本のピンヘッダーをはずして、Vcc(Vdd)とRS232CをONするピン(ENTX)を追加した4線のピンヘッダーに取り替える。ダブルフォトカプラーで自動的にAutoPowerOffに戻す(1/22/2014)細かい作業になるので、新規参入の実体顕微鏡が大活躍である。顕微鏡を覗くためにはメガネをはずさなければならない。最近は乱視が進んできてメガネをはずしたままだと、ものが二重に見えて全く仕事にならない。このためにメガネスタンドを買って、メガネの着脱が素早くできるようにしたのだが、とても面倒である。何か対策を考えたいところだ。それはともかく、大した配線量ではない。半日ですべて完成した。念のため、元のUSBアダプターにつけて確かめる。おやあ、データは出ているが、正しい値ではない。PCコンソールを16進表示のソフト(アクノリッチ)に換えて見る。うわあ、これは以前、UART-TTLからRS232Cに換えようとして失敗したデータそっくりだ。規則的なもっともらしいデータだが、全くのデタラメである。したものか、何か変えたところがあるか。いえば、P-10のRS232C出力を改装したとき、出力の片側がVdd(プラス側)になっていたので、グランドに戻した(極性は合わせた)ことを思い出した。念のためデータシートを見てみる。あっあっあ、データシートもVddにつながっているではないか。フォトカプラーのLEDをドライブするためにVddをつないでいるのだ。プルアップを省略しているのだろう。あわててアダプターの配線をやり直した。USBにつないでPCのソフトで確認する。はい、めでたく測定データは正しくRS232Cラインを通して出力された。AquesTalkにつなぐ。当然のように、ここでも正常に読み上げる。読み上げ機の電源を切る。よーし、P-10の表示画面からRS232Cの表示が消えた。P-10のAutoPowerOffは30分がタイムアウトなのでテストはしなかったが大丈夫だろう。これで電池の無駄な損失は避けられる。実装仕様をあれこれ考えている(1/23/2014)ケースの実装を本格的に始める。リニアPCMプレーヤーの一号機に使ったケースだ。価格もたったの¥100でしかも丈夫だ。ChaNさんは、これと殆ど同じ大きさのアクリルのSK-5を愛用されているようだ。こいつは¥80ともっと安いがアクリルなので傷がつきやすいということである。このケースは、秋月のCタイプ基板がぴったり入る、電池ホルダーを入れるために、その部分だけ切り取る。電池は単3ふたつの3Vで良いだろう。ブレッドボードでも3Vで動くことを確認してある。このケースには単3のホルダーがこれも測ったようにきれいに横置き出来る。LEDをどうするかが問題だ。当初、LEDの点滅をうまく使って、AquesTalkの動きを表現することを考えた。エラーまたはハングアップここまで考えたのだが、省電力化を考えているときに気がついた。LEDの消費電流も馬鹿にならない(数mA)。それに初期化は一瞬で終わるし、電源が入ったことは最初の音声メッセージでわかる。このLEDで役に立つのは、スピーカーの断線のときくらいである。意味がなくなってきた。するかは後から考えるとして、レイアウトを先に進める。スピーカーはケース上面の裏につけ、ケースに穴を開ければ音に影響ないだろう。外にはスイッチと、UARTケーブルが出るだけのシンプルな構造だ。スピーカーが安物なので、もう少しましなスピーカーを用意することにする。ケースの高さがないので、本格的なダイナミックスピーカーは無理だ。それより、こういう薄いスピーカーをどうやって固定するかが問題である。スピーカーを2つ買ってくる(1/24/2014)ウェブ情報を参考にして、久しぶりに秋葉原にでかけ、マルツパーツ本店でミニスピーカーを2つ買ってきた。ひとつはブランド品(東京コーン)、もうひとつはノーブランドで値段が5倍も違う(ブランドは¥619、ノーブラは¥126)。帰って、スピーカーにリード線をつけて早速聞き比べをする。うーん、確かにブランド品の方が、大きい音(高効率)でめりはりのある声になるが、所詮、5センチ以下のスピーカーだ、値段の差ほどの違いはない。秋月のキットの付属スピーカーは一応ブランド名がついているが、音はノーブランド並みであった。こんな小さいスピーカーでも、ちゃんとしたボックスに入れてやれば音が良くなるのだろうか。それにしても、スピーカーのつけかたが悩ましい。3つとも取り付け部がないのだ。ウェブでみていても参考になる情報は見つからなかった。重いものではないので、ケースの突起などに引っ掛けるなり接着するなりしているのだろうが、どうも良くわからない。スピーカーをケースにどうやって簡便に取り付けるかで、また脱線モードに入ってしまった。いうこともないことなのだが、結構、夢中になる。メモ用紙に何枚も略図を描いては、スマートな固定法がないか頭をひねる。こんなことで実装は先に進まない。思いついたスピーカーの固定方法を実装(1/26/2014)何枚かスケッチを描いているうちに、決め手となりそうな良さそうな方法を思いついた。パーツは2枚の細い板だけである。このあいだの焦電センサーの基板止めがヒントになった。写真を見てもらえば一目瞭然だが、板の片側にスピーカーの外縁に沿って弧を切り取り、スピーカーが当たる垂直面を斜めに削るところがミソである。この板を両側からはさんでスピーカーを固定する。着脱はパネル(ケース面)の剛性を利用して、スピーカーをはめてしまえば、斜めに削ってあるので、はずれない理屈だ。剛性が不足して、入らなかったりパネルを割ってしまうリスクはある。考えていても解決にはならない。実際に確かめてみるまでだ。これまでの工作で残ったアクリル板の端切れを取り出し適当な素材を探す。ライブカメラなどのフレームにした厚さ3ミリのアクリル板が良さそうだ。コッピングソーをとりだして、スピーカーの外縁の曲線を切り出す。このあいだは楽に切れたのだが、今度は少し難儀した。素材が違う(紙ベークとアクリル)のと、厚さが違う(1.5ミリと3ミリ)ためだろうと思うが、少し強く切ろうとすると熱で固着が始まる。だましだまし切り出し、やすりで切断面に角度をつける。形が少しづつ出来ていくこういう工作は楽しい。不揃いながら2つの固定辺ができた。