投稿

2月, 2018の投稿を表示しています

WindowsのIMEの状態をLEDで表示するガジェット

イメージ
動機 WindowsのIMEは半角/全角キーを押すたびにOn/Offがトグルするようになっており、今どちらの状態なのかが分かりにくくなっています。特定のキーでOn/Offする設定にしたり、カーソルの近くにマークを表示してくれるツールを試したりしましたが、どの方法もしっくり来ませんでした。
LEDに表示してみる モニタのそばにLEDを置いてその色で状態を表せば、画面を注視していても視界の端にうつるLEDの光で認識できて分かりやすいのではと考えて、試してみることにしました。LEDを点灯/消灯するだけなので今回はRS232CのDTR/RTS信号で制御することにしました。
ハードウェア 小さなLEDを1個ずつ駆動するだけなら、シリアルモジュール、LED、抵抗を用意して👇のように接続すれば制御できます。ただし、シリアルモジュールはDTRとRTS信号が引き出せるものを用意する必要があります。今回は 秋月電子さんのFT232RL搭載のモジュール を使用しました。
明るさが必要な場合 今回はちょっとシャレオツな感じにしたくてモニタの裏側から広い範囲を照らすことにしたので、高輝度なLEDを5個並列にしてパワーMOS-FETで駆動する👇のような回路を構成しました。VCCも5Vに設定。パワーMOS-FETは部品箱に余っていたものから適当に選びました。

RTS信号が使えない場合 シリアルモジュールには、DTR信号しか引き出せないものが多いです。一応、👇のような接続でも似たような動きはできると思いますが、この場合は常にどちらか一方のLEDが点灯した状態になります。サスペンド状態などでUSBの電源供給が止まらない場合でも点きっぱなしになってしまうので、そういう場面でちょっと格好悪くなります。

ソフトウェア IMEの状態を読み取りDTS/RTS端子に反映するWindows用の常駐アプリを組みました。上記以外の接続以外にも対応できるよう、割り当てを変更できるようにしました。

2018/9/23 : LEDの点滅機能を追加しました。

IMEの状態をCOMポートに出力する奴 ver.0.1.1.0

完成 👇のような動作風景になりました。慣れればなかなか使えるのではないでしょうか。シリアルモジュールとLEDと抵抗があればすぐに作れるので試してみてはどうでしょう。
IMEの状態をLEDに表示するやつ…

ボリュームの端子を曲げてはならない

イメージ
そもそも曲げんなよというのは置いといて…


ボリュームを狭い空間に押し込むために端子をこのように内側に曲げたところ、真ん中の端子が接触不良を起こして壊れてしまった。2個試したが、全く同じ壊れ方をした。端子の根元に力がかからないように、端子だけをつまんで曲げてみたつもりだったがダメだった。全てのボリュームに該当するのかは分からないが、端子は曲げてはいけないようなので注意されたい。

曲げて壊してからこの記事を読むことになる人のほうが多そうな気がするが…。

ペルチェ素子 + DC/DC + ATiny13Aでラーメンタイマー(試作)

イメージ
ペルチェ効果、ゼーベック効果、ペルチェ素子 2種類の金属の境界に電流を流すと片方の金属からもう片方の金属へ熱が移動する。これを「ペルチェ効果」と呼び、それを利用した素子を「ペルチェ素子」という。この板状の素子に電流を流すと片方の面は熱を奪われて冷え、もう片方はその熱が移動して温まる。

Amazonで適当に買ったペルチェ素子
そして面白いのは、逆にこの素子に温度差を与えると、「ゼーベック効果」により起電力が生じるということだ。つまり、温度差で発電ができる。
以前からこのペルチェ素子を使ってラーメンタイマーが作れないかと思っていた。カップ麺のフタの熱と室温の温度差で発電し、3分測ってアラームを鳴らすというものだ。ニコニコ動画には既に作例もあったが、自分でも作ってみることにした。
マグカップの上で動かすことには成功 上記「Amazonで適当に買ったペルチェ素子」の片面にヒートシンクとファンを取り付け、もう片面に手を置いてみると、140mVほどの電圧が得られた。
体温発電 #にゃむpic.twitter.com/R4pxVmI1oM — シャポコ🍐 (@shapoco) 2018年2月6日 これではタイマー回路は動かせないので、部品箱から出てきたHT7733AでステップアップDC/DCコンバータを組んだ。時間の計測と3分経過のアラーム演奏には1.8Vから動作可能なATtiny13Aを使用した。試行錯誤の末、カップラーメンに見立てたマグカップにお湯を張り、その上に装置を置いて、乗せてから3分後にアラームを鳴らすことができた(下記ツイートでは「10秒」と言っているが、後に3分でも成功している)。
とりあえずペルチェ素子の起電力だけでAVR起動→10秒計測→チャルメラ演奏できた🍣 #にゃむpic.twitter.com/6jGGtat7qu — シャポコ🍐 (@shapoco) 2018年2月7日 ポイントとしては、マグカップの上に乗せた直後にいかに素早くマイコンを立ち上げられるか、というところのようだ。乗せた直後は大きな温度差が得られるものの、しばらくするとヒートシンクを含めた装置全体が温まってしまい、十分な起電力が得られなくなる。したがって、電圧を安定させようとして大きなコンデンサを付けたりすると、コンデンサを充電している間にヒートシンクが温まってしまう。一度起動で…

ESP32 DevKitCをブレッドボードで扱いやすくする

イメージ
ESP32 DevKitCはボードそのものは使いやすいが、幅が広く、ピンヘッダが太いためブレッドボードでのプロトタイピングには向かないようだ。そこで、2列のピンソケットを使ってブレッドボードと簡単に接続できるようにしてみた。手順は以下の通り。
2列のピンソケットをESP32 DevKitCのピンヘッダと同じ長さだけ切り出す。

ピンを短く切る。

内側に折り曲げてはんだ付けし、2列の隣り合うピンをショートさせる。

ESP32 DevKitCのピンヘッダに取り付ける。

ブレッドボードとジャンパ線を使って繋げられるようになった。ブレッドボードに直接挿した場合と違い、必要なポートのみ引き出せるため、配線自由度が高い。