読者です 読者をやめる 読者になる 読者になる

日記とか、工作記録とか

自分に書けることを何でも書いてゆきます。作った物、買ったもの、コンピュータ系の話題が多くなるかもしれません。

のんきな動画(エタノールの蒸発する様子をタイムラプスで)

Windowsで使用できるMicrosoft Hyperlapseというソフトがあることを知ったので、身の回りで何か試せるものは…… と考え、消毒用エタノールが蒸発する様子を記録してみました。


エタノールの蒸発 Time Lapse

涼しい気温のせいかあんまり蒸発せず、Windows 10に標準のCameraアプリは3時間までしか動画が撮れずということで最後まで蒸発させることはできませんでした。3時間の動画をやっぱり3時間くらいかけて変換し(Surface Pro使用)こんな動画になりました。

もう一回HyperLapseにかけないとアルコールが減って見えないかも。タイムラプスはアイディア勝負ですね。

サイキョウ・ファーマ 消毒用エタノールIP「SP」 500mL [指定医薬部外品]

サイキョウ・ファーマ 消毒用エタノールIP「SP」 500mL [指定医薬部外品]

【メモ】すっかり忘れられてた超音波距離センサー HC-SR04

未開封のまま忘れてました。これをなんとかしなくちゃ……
f:id:WindVoice:20161030155707j:plain

Surface Pro 4にTensorFlowをインストールしました

コンピュータ TensorFlow

Surface買いました

この5年ほどのあいだ、サブマシンとしてMacbook Air 2011midを使っていたのですが、そろそろPCとしては古いと言ってよい状況になってきましたし、iPhone7はMacbook Air 2013並みに性能がよいなんてニュースがでてきたこともあり、買い替えを検討することにしました。持ち歩く用途なので、安いほうのモデルで。

Surfaceは、初代が出たばかりのころ私の身の回りでは評判が悪く、とても検討の俎上に載せるようなものではなかったのですが、そこはマイクロソフトですので3くらいからは評判も改善してきました。個人的には高精細な画面と意外にも音がよいことが気に入っています。軽いところもいいですね。画面が大きいので、外で使うには人目が気になりますが…… 目隠しフィルタを買うべきかちょっと迷っています。

TensorFlowインストール(簡単10分クッキング編)

ともあれ、今日はここにTensorFlow(以下TF)を入れましたので書き残しておきます。以前もメインPCにインストールしたことがあるのですが、それでもいくつか乗り越えるべき壁があったりして。きっとあとから来る人もつまづくに違いない? のでメモを残します。

まず、Qiitaのこちらのサイトで紹介されていた方法が簡単にできそうだったので飛びつきました。Dockerは使ったことがないのですが、10分でTFが使えるとか書いてあるしこれは試すしかないだろう、ということです。

  • Docker Toolboxのダウンロード、インストール
  • docker runコマンドでイメージを実行

ざっくりいうと下のコマンド一発です。Google Cloud Platformに置かれているイメージをダウンロードしてきて実行する感じでしょうか(感覚的にしかわかってない)。Docker Toolboxのインストールのとき、OracleVirtualBoxがインストールされたので、その仮想環境下で動作している、ということのようです。

$ docker run -it b.gcr.io/tensorflow/tensorflow:latest-devel

しかし、起動は簡単だったものの、どうしたわけかファイルの変更 / 保存ができません。一時的にはできるのですが、再びdocker runすると最初の状態に戻ってしまいます。そういうものなんですか? あるいは私の工夫がたりないのか? TFが動いても、環境が保存できなかったらどうしていいかわかりません。ほかにもキーボードが106jpにできない(というか/etc/sysconfig/keyboardファイルがない?)などよくわからないことも多く、この環境がどこから来たどういうLinuxなのかもわからず(というか調べるの面倒になった)、やっぱり自分で作り直すか、ということになりました。

CentOSで作り直し

VirtualBox + CentOS(Everything版)をインストールして、GUIを追加してpython 2.7 + pipでTensorFlowをインストール。TensorFlowはUbuntu向けのCPUのみバージョンをインストールすれば動きます。SurfaceIntelのCPUなのでRaspberry piなどと違ってアーキテクチャを心配する必要がないところがいいですね。

ようやくここまで来ました。TensorFlowのチュートリアルにあるMNISTの例です。なんだかんだで長かった……

f:id:WindVoice:20161002205403p:plain

さぁこれから、というところではあるのですが、今日はここまでです。先日六本木ヒルズGoogleの食堂で開かれたTensorFlow勉強会に参加したこともあり、何かしたい!という機運が高まっています(単純)。手段のために目的を考えるいつものスタイルで試そうと思います。


TensorFlow勉強会(5)ライブ配信

Logicool G602マウスの修理(ゾンビのように復活編)

やっぱり諦めきれずなんとかしたい

Logicool G602マウスのチャタリングノイズの修理ですが、既設のスイッチがうまく外せず、強引にニッパで脚を切断したら脚だけ残ってしまい…… という惨状になっておりました。基板には1mmくらいの厚みがあり、その中に短い脚が残り、ハンダと一緒に穴をふさいでいる状態です。

惨状(脚とハンダが穴をふさいだ状態)

f:id:WindVoice:20160904141632j:plain

ベンチで控え状態のスイッチ

f:id:WindVoice:20160831222755j:plain

しかし何とかしないとせっかく買ったスイッチに出番がありません。方法は無いものかと試行錯誤しました。

迎え塩、ならぬ迎えハンダ

ハンダ吸い取り線が穴の中までは届かないため、吸い取る力が働かないのだと想像し、ここまできたらだめで元々、ということで、いったん穴をハンダで埋め、もう一度吸い取る作戦にしました。こんなんでうまくいくものかなぁ……

結果

f:id:WindVoice:20160904142153j:plain

f:id:WindVoice:20160904142302j:plain

こんなにうまくいくとは思いませんでした。あっさり抜けました。やっぱり技術力ってのはWebを読んでも身につきませんね。いろいろ試してみないとね。

復活のマウス

ここまで来たら後は簡単、かというとそうは問屋が卸しません。このスイッチはすぐ隣に別のパーツが並んでおり、ちゃんとぴったり基盤にくっつけないと、クリックするときに間合いがしっくりきません。

完成図(分解前に撮影したもの)

f:id:WindVoice:20160827225723j:plain

1mm浮いても致命的です。実は最初少しだけ浮いた状態でくっつけてしまい、組み立て後に左クリックができない状態になりました。もう一度ハンダを吸い取り、しっかり差し込んでスイッチを押さえてからハンダ付けをしなおしました(ハンダ付けのときは腕が3~4本欲しくなるのですがみんなどうしているのでしょう)。

光学マウスなのでプリズムが入っているのですが、この位置がぴったりとは固定されておらずあそびがある状態でした。これが微妙ですが、新しく購入した方のG602を見ながらプリズムの位置合わせをしたところ、マウスカーソルが動くようになりました。

まとめ

単純に小さなスイッチを一つ交換するだけ、と思ったのですがやってみると難しいものです。見るのとやるのでは大違いですね。7000円くらいする結構高いマウスなのでやった甲斐がありました。ハンダごてと台、吸い取り線、ハンダを買うと安いマウスが充分買えてしまいますが、ノウハウも身についたし、充分見合った価値がありました。

LOGICOOL ワイヤレス ゲーミングマウス G602

LOGICOOL ワイヤレス ゲーミングマウス G602

Logicool G602マウスの修理(挫折編)

(あとからつけた)目次

  1. Logicool G602マウスのチャタリングの修理(解析編) - 日記とか、工作記録とか
  2. (今回)Logicool G602マウスの修理(挫折編) - 日記とか、工作記録とか
  3. Logicool G602マウスの修理(ゾンビのように復活編) - 日記とか、工作記録とか

前回のつづきです。

windvoice.hatenablog.jp

マウスのスイッチの種類が判別できましたので、スイッチを購入しました。ばら売りされていたのでそちらを選択。

既設のスイッチを取り除くための半田ごてと半田吸い取り線も購入。YouTubeなど眺めていると、半田ごては温度調整ができるものがよいようなのでそちらを選びました。

白光 ダイヤル式温度制御はんだこて FX600

白光 ダイヤル式温度制御はんだこて FX600

ホーザン ハンダ吸取線 NO.3738

ホーザン ハンダ吸取線 NO.3738

しかし、半田吸い取り線を当てて半田ごてをあてても、スイッチを取り外せず…… 吸い取り線はちょっとだけハンダを吸い取ったのですが、しかし穴の中に残ってしまったようです。30分くらい悪戦苦闘したのですがやっぱりだめ。基板が熱で焦げてしまったりしています。

作業前

f:id:WindVoice:20160831223229j:plain

作業後

f:id:WindVoice:20160831223931j:plain

どうにもならず、だんだんやけになってきてニッパで脚を切ってから半田ごてを当てて取り除いてみたところ、3本のうち2本までは抜けたのですが、最後の1本がどうしても抜けず。iPhoneにつけたマクロレンズで写真を撮ると惨状がよくわかります(肉眼で見るとそこまでひどくは見えないのですが)。

強引に抜いた脚

f:id:WindVoice:20160901203458j:plain

最後の1本がダメなのは、おそらくニッパをあてたときに脚が変形して穴から抜けなくなってしまっているからですかね。どうにかなるものなら修理を続けたいのですが。方法がわからずいったん放置となっています。

Logicool G602マウスのチャタリングの修理(解析編)

(あとからつけた)目次

  1. (今回)Logicool G602マウスのチャタリングの修理(解析編) - 日記とか、工作記録とか
  2. Logicool G602マウスの修理(挫折編) - 日記とか、工作記録とか
  3. Logicool G602マウスの修理(ゾンビのように復活編) - 日記とか、工作記録とか

自宅のPCではいわゆるゲーミングマウスを長いこと使っています。ゲームをそれほどするわけではないのですが、補助ボタンがたくさん付いていると、ブラウザの進む戻るとか、ウインドウを閉じるなどよく使う操作をショートカットできて便利です。今使っているのがLogicool G602です。無線マウス、適度な重さ、大き目のボディは掴みやすいなど気に入っています。

が、マウスは消耗品です。何年使ったか覚えていませんが、左クリックの調子がおかしくなってきました。普通にクリックしたはずなのにダブルクリックとして扱われます。いわゆるチャタリングノイズです。以前Raspberry piの回路にスイッチを設置した時にはプログラム側からこれを防止しました。

windvoice.hatenablog.jp

マウスは消耗品ということで、このマウスを買い換えました。同じものがまだ販売していたので再度注文。めでたしめでたし…… だったのですが、よく考えたらもしかして直せるのではないかと思いつきました。今回はマウスの分解です。マウスは裏のツルツルしたソールを剥がすと、固定ネジが出てきます。これを外すと、本体が上下に分かれて基盤が出てきます。

f:id:WindVoice:20160827224956j:plain

クリック部分のスイッチはこんな配置です。

f:id:WindVoice:20160827225354j:plain

左右のクリックは同じ型番のスイッチでした。ここのWebサイトを参考に分解しましたが、部品変わっていませんね。数字の刻印が違うのはシリアル番号でしょうか。

f:id:WindVoice:20160827225657j:plain

分解する前は、ホコリなどでスイッチの接触がおかしくなっているのでは、と想像していたのですが、本体の中は綺麗なものでホコリが原因とは考えられませんでした。となるとスイッチの摩耗などを疑うことになるのでしょうか。スイッチを交換できるか型番で探してみたところ、なんとAmazonにこんなものまで置いてあるんですね…… 驚きです。

代わりのマウスは買ってしまいましたが、それほど高い部品でもないので交換にチャレンジすることにします。現在部品の到着待ちです。もしうまくいかなかったら、次はレーザ発信器を使って何か遊びを考えることにします。

Javascriptでチェスクロック(対局時計)を作成しました

コンピュータ

今回はRaspberry piからは離れてJavascriptなど……

前置き

趣味で少し将棋をやるのですが(もっぱら見る将ですが。最近はアゲアゲさんのチャンネルなど……)、将棋やチェスでは持ち時間があり、この時間内に対局を終わらせることが求められます。例えば持ち時間10分であれば、一局100手あまりの対局の時間配分を考えて、あまり悩まずに指し続けなければなりません。時間切れになったらそこで「切れ負け」です。

ルール的には持ち時間が尽きたらその後は一手30秒、などの方法がとられることもありますが、いずれにせよこれを管理する対局時計というものが必要になります。例えばこんなの。

これはよく使われている一般的なもので「お願いします」なんて自動音声がでたり、秒読みをしてくれたりもする高機能な製品です。便利ですしおそらくボタンも丈夫に作ってあることでしょう(※自分の手を指したら対局時計の上部にあるボタンをパン、とたたくと相手方の時間が減り始める仕組み。けっこうぞんざいに扱われる宿命のボタン)。そして結構いいお値段もします。きっと大量生産できないので単価が高かったり、そもそもネット将棋ならこれは必要なかったりで、そんなに売れないのかと思います。

それでも作ってみる?

仕組みはそれほど難しいものではないので、jQuery + Javascriptでごりっと作ってみました。Amazon Web Services(AWS)にある自分のサーバに置いてあります。安易ですが「ちぇくろ」と名前をつけました。

ちぇくろ

画面表示はこんな感じです。シンプル・イズ・ベター。

f:id:WindVoice:20160809132309p:plain

最初の設定画面だけAmazonのバナーがでますが、対局中は非表示ですのでご容赦を…… だって遊び用のインスタンスとはいえ、料金も少しかかっていますからね。ナニトゾナニトゾ。

特にiPhone / iPadなどのモバイルで便利と思います。将棋盤の隣にこれを置いておいて、一手さしたら画面をタップ、という感じで使います。タップするときは落ち着いてやらないと、スワイプと判断されてうまく動かなかったりしますのでご注意ください。今後気が向いたらアップデートをしようとおもいます。

スペシャルサンクス

プログラムは自前で書けるのですが、音とかフォントはふぉんとにどうにもならないのでお借りしています。
些細なリンクで済みませんがせめてもの感謝ということで……

秒読みの効果音はこちらから
 ⇒ select02.mp3 / select07.mp3 / blip01.mp3

タップしたときの効果音は効果音ラボさんから
 ⇒ cursor8.mp3

残り時間表示のための7セグフォントは消し缶詰-keshikan.netさんから
 ⇒ DSEG7Classic-Bold.ttf

追記

Android端末をお持ちの方は動作確認して頂けると助かります。私は持っていなくて確認がとれていません。iPhoneSafariでも動いていますし、jQueryは互換性も考えられているはずで、たぶん大丈夫とは思うのですが。