Arduino + Nanogage

Nゲージのモーターは大体12V駆動。一方、ナノゲージに搭載する予定のマイコン、ATTiny85は5V駆動。今回はレールから受け取った12Vの電圧を三端子レギュレーターを介して5Vへの変換してマイコンに流し込む方向で検討を進めております。

 

f:id:nubata001:20140601131835j:plain

ブレッドボードの上にある3つのワニ口をつないであるのが今回作成した電圧変換回路。左のトランジスターみたいなのが三端子レギュレーターで右の二つが電圧を安定させるコンデンサー、赤端子から12Vを流し込むと黄色端子から安定化された5Vが出力されます。左側のブレッドボードにはテスト用にLチカのプログラムを書き込んだATTiny85が刺してあり、右側のブレットボードは12V AC電源をつないであります。

 

f:id:nubata001:20140601131932j:plain

これを車体に積み込むとこんな感じ。電解コンデンサーの高さが邪魔なので、将来的には別の部品にするか横に寝かせるかもしれません。

 

f:id:nubata001:20140601143007j:plain

f:id:nubata001:20140601143017j:plain

f:id:nubata001:20140601143024j:plain

一方、別の車体に載せるつもりのマイコンとモータードライバーの方はこんな感じ。結構ギリギリです。あと、ICを交換可能なソケットを収める隙間が足りなかったので、ICは直付け。プログラムを書き込む際にはICの足を細いクリップで挟んで通信する必要があります。

 

さてはて、はたしてちゃんと完成するかしら?(´・ω・`)

犬の散歩

f:id:nubata001:20140531163905p:plain

カニに行き会ってしまった少女とカニ缶を御す少年の出会いからは何も始まらない。という作品を作るつもりでしたが、途中で飽きてきてだいぶ趣が違う作品になってきました。さてはて、どうなることやら。

 

モダンタイムズの絵は特注の額縁に飾ることにしました。横長でマットは白、外側は黒の木フレーム。もしかしたら微妙な感じになるかとも思いましたが、実物を見てみると結構いい感じです。とある作品展示会に数日飾られる予定なので、もし見つけたらこっそり感想教えてください。

大人げない電車ごっこ

とある事情により、プラレールマイコンを組み込んで、駅ごとに止まったり、アナウンスが流れたりするようにしようという計画をやることになりました。要するに『大人げない電車ごっこ』です。

 

という訳で、オモチャ屋にプラレールなるもの(実は遊んだことがない)を視察に行った所、帰ってきたらナノゲージなるものを購入しておりました。不思議です。因みにナノゲージとは大人のプラレール、ことNゲージの車両をナノブロックで作るというコンセプトの商品で、最近新しくでてきたばかりのものようです。

ナノゲージ|nanoblock

 

で、問題はこの小さい車体の中に必要な部品が収まるかです。

f:id:nubata001:20140525104820j:plain

f:id:nubata001:20140525105100j:plain

 

・・・格闘すること数十分、全部ではないですが大体収まりそうだということが判明しました。まだ、細かいことは決まっておりませんが、しばらく頑張ってみます。

f:id:nubata001:20140525105345j:plain

モダン・タイムズ

最近はNHKのCG教室に通っておりまして、ShadeでCG作成に挑戦してみております。Shadeは以前は自由曲線という特殊なモデリング方法にしか対応していなかったそうですが、最近のバージョンはポリゴンモデリングもついていい感じになっております。

 

初めの内はいかにもCGっぽいCGを描いていたのですが、自分らしさを追求するうちに『CGらしいCGはだれにでも描ける』という結論にたどり着いて、行き着く先まで行き着いた結果は『白黒・影なしのトゥーンシェーディング』でした。かつて透明効果一つ入れるにも一晩の計算時間を覚悟したCGが、今やこうした特殊効果コミコミでもノートPCで一時間以内で計算できてしまうのだから驚きです。技術の進歩とは恐ろしいものです。

 

f:id:nubata001:20140525135713p:plain

 

かつて、とある喜劇王は『モダンタイムズ』という映画を通して、技術の進歩が人々の幸せにつながらないという悲しい現実をコミカルなタッチで描き出したものですが、今はどうでしょうか?実は、あの当時機械は個々のニーズの違いに対応するほど性能が高くなく、人々は画一された生産計画に組み込まれる以外の選択肢を与えられておりませんでした。所が、そうした技術の進歩によって社会が豊かになってくると今度は物余りの時代が幕を開け、画一化された生産物はむしろ売れ残るようになり、今度は商品の差別化が盛んに叫ばれるようになりました。技術力が劇的に向上した結果、むしろ技術力の無駄遣いこそが喜ばれる、そんな奇妙な時代こそが我々が暮らしているこの時代なのだと思います。

 

さて、ところで去年の終わり当たりから、こうした時代の変化を更に加速させる事件が起こりました。3DプリンターやCNCといった工作機械、Raspberry PiやArduinoといったマイコンボード、Internet of Things(IoT)やユビキタスといったキーワードで渦巻く、いわゆるMaker運動と呼ばれるものが本格的に動き出したということです。

 

MAKERS―21世紀の産業革命が始まる

MAKERS―21世紀の産業革命が始まる

 

 

FabLife ―デジタルファブリケーションから生まれる「つくりかたの未来」 (Make: Japan Books)

FabLife ―デジタルファブリケーションから生まれる「つくりかたの未来」 (Make: Japan Books)

 

 

かつて、モノづくりは職人の手の中で完結するものでした。しかし技術の進化の結果、機械や技術者に対して掛かるコストは莫大なものとなり、結果としてモノづくりは巨大な資本によって支えられる存在となってしまいました。その結果が先にあげた『モダン・タイムズ』に描かれたような『画一商品の大量生産』に代表される『没個性』の時代です。そうした時代を憂い、かつて何人もの人々は、時にボランティア集団として、時に科学者集団として、時に芸術家集団として、時に教育集団として、様々な活動を通じて人々の手の本にモノづくりを取り戻そうとしました。ところが、そうした活動の多くは長くは続きませんでした。なぜなら産業として成立しえなかったからです。

 

OSS運動。これは、画一化されたソフトウェア生産の手段の一部を人々の手に取り戻したと意味では珍しく成功した活動例の一つです。彼らがその次に着手した運動はソフトウェアではなくハードウェアのオープンソース化の活動でした。しかし、それは先に述べたようにすぐに頓挫します。なぜならソフトウェアとは異なり、ハードウェアの生産には巨大な資本によって支えられる生産施設が必要になったからです。しかし、彼らは諦めませんでした。しつこく諦めませんでした。そして、今時代が変わりました。

 

半導体の生産力が有り余るようになり、一昔前のパソコンのCPUに匹敵するマイコンが千円程度で買えるようになってしまい、3DプリンターやCNCといった機械が個人でも買えるようになったことで個人の需要に合わせた機械部品を少数生産することが可能になりました。そして、もう一つこうした活動を推し進めている要素として挙げるべきものはクラウドファンディングです。こうした時代にあわせて少量ロット、ニッチな需要に特化した生産ビジネスを始めるため、個人から小口の投資を集める仕掛けが整ってきたことにより、これまでは生産活動に手を出せなかった層が生産現場に参入してくることで、『没個性』の時代は終わりを告げ『脱・没個性』の時代が幕を開けつつあります。

 

かつては、均一化された『大衆』という仮想の存在に向けて大量の商品を生産し、販売するというモデルは至る所で破綻を示し、一方では個人個人の需要に対応した少数特化モデルを生産し、販売するというモデルが新たなビジネスモデルとして確立するようになりました。そうした時代の生産現場はかつて喜劇王が描いた没個性の機械化された大量生産の現場ではなく、むしろ個々人の需要に合わせたオーダーメイド商品を一つ一つ生産していく、一見すると昔ながらの素朴な『手作り産業』の時代にも逆戻りしたかのような風景になっていくでしょう。『モダン・タイムズ』の時代よりはや80年、時代は廻るとはよく言ったものです。

バイオインフォマティストには高速回線の幸せを

遠くのサーバーから大量のデータをとってくるのは非常に時間が掛かる。例えばヒトゲノムのデータとか。最近は高速にダウンロードするためにAsperaやらBitTorrentやら専用のダウンローダー向けの配布をやっている場合も多いですが、そうでない場合はどうすればいいのでしょうか?

 

答え:複数接続で並列ダウンロードする

 

例えば、scpやwgetでダウンロードする場合は単一接続で繋ぐより、複数接続した方が全体としての速度が改善します。ただし接続数の上限を超えてしまうと拒絶される恐れもあるので、予め指定した上限以下の接続数で全部を落としてくる工夫が必要です。(因みに私はpythonのmultiprocessingで専用のダウンローダー組んでます。単一回線で順次落としたら一週間位掛かったファイルも上手くやれば数時間で全部下ろしてこれます。

 

ところでなぜこんな方法で速度が改善するかというと、距離が遠いサーバーからのダウンロード速度が回線速度ではなく遅延時間によって支配されているからだそうです。TCPではデータのやり取りの際に一々受信の可否の確認が入りますが、ここで遅延の影響が大きく出てしまうそうです。で、この待ち時間は回線・CPUが共に遊んでいる状態なので、ここで別の回線でダウンロードが実行されていればそっちに優先的に回線とCPUが割り振られるという算段のようです。面白いですね、ネットワーク。

 

ところで、TCPが問題というだけなら、もしかしたらUDPプロトコルでファイル転送ソフトを作れば速度が出たりするのかしら?ちょっと気になります。(´・ω・`)

Pythonでエンコーディングの推定

string.decode("エンコーディング名")で片っ端から試して、UnicodeDecodeErrorが放出されなければ多分そのエンコーディングで問題ない、と・・・。工エエェ(´Д`)ェエエ工。