2015年7月24日金曜日

突発! 技術実証アクリルケースジオラマを作る!(11)熱戦!トランジスタアレイの応用!


はーい、このジオラマ作ってますー。


前回はプログラムから建物照明を自動点滅させることに成功。

一応GUIから操作できるようにもしました。

で、そこで問題が。

ラズパイからの出力電力には限界がある、らしい。

いくらLEDとはいえ、抵抗かまして点灯させてるので、あんまり安心できない。


そこで、どうするか。

とある方より、トランジスタアレイなるものの存在を教わった。

それを使えば、別の電源からもらった電気で、LEDを直接ではなく間接点灯させられる!

すげえ!


というわけで、早速購入。


これがその様子。

真ん中のICみたいのなのがトランジスタアレイ。1個に7回路分入っている。





ついでにGPIO延長キットなるものも購入。基板にナンバーが予め書いてある。

これで楽にGPIOのテストが出来る。


で、無事点灯に成功。以前よりパワフルかな。

(実はトランジスタアレイの配線間違えて過熱しそうになったのはヒミツだ……
電子回路はつなぎ方大事!(あたりまえである))



というわけで、こんな建物があと3軒あるのである。

となると、LEDを制御するGPIOピンが足りなくなってくる気がしてきた。


割り当てを考えると、

40ピンのGPIOなのだが、

5vと3.3vの電源、GND、そしてTFTタッチパネル用のピンは使えないので、

合計で20ピンしか使えない。

まあ、それでも多いのだけど、

でも、用途的にはギリギリ。


では、どうすべえかと思うと、

なんと、ラズパイにはi2cというものがあるのです。

i2cエクスパンダというのが使えそうです。


でも、果たしてその鳥使えるものか?

それは次回!

2015年7月17日金曜日

突発! 技術実証アクリルケースジオラマを作る!(10)ラズパイアプリ、めどが立った?



というわけで、しばらくプログラミングしてました。


この鎗田区内ジオラマ続報。

まずラズパイのX-Windowからの制御を検討。

とりあえず、ゴリゴリGTKとCでプログラミング。

インターフェースの画面はGTKというもので簡単に作れる。



恥ずかしい私のソースコード。

作りながら実験してるので、かなりあっちゃこっちゃ雑い。


これがメインウインドウ。

スイッチが増えたら、画面をさらに考えます。

スクロールウインドウ使えばいいかな。

GTKにはこういうチェックボックスとかボタンとスケールとかのパーツが

予め用意されているので、あとはおいてあげる設定をすればいいので便利。


スライダ(スケール)を動かすと、時間が進んで、室内灯が点灯・消灯。

逆に動かすと逆順で点灯消灯します。


自動モード。

24時間を1分50ミリ秒で進む。

ちょっとタイムラプスっぽくて慌ただしい。


夕暮れモード。

15時から翌3時までを、1分250ミリ秒で進む。

模型的にはこっちかな。

ただ、昼間営業する他の建物との兼ね合いをどうするか。

非妻営業する建物はまだLED仕掛けてないけどね。

で、制御している時の風景。


iPhoneだけで撮影・編集・テロップ入れ・書き出し・アップロードまでやってみました。

音量が途中で変わっちゃうのが私が未熟なところ。


というわけで、建物1軒分の制御にめどが付きました。


次は、これをあと4軒やるのですが、

1)4軒分の出力の負荷をなんとかラズパイだけにかけないように、別電源を使う。
(トランジスタ使う?)

2)配線の取り回しをどう効率よくするか。
(これは愚直にやっていくしかないか?)

3)4軒分+アルファのスイッチを同画面に収めるか。
(別ウインドウにするか、スクロールウインドウに入れるか?)

なんてチャレンジが残ってます。


2年前までまともにLED点灯させられなかった私ですよ?

追い詰められれば、人間はなんでもやれるのかも。


追い詰まりつつあるので、がんばるしか。

2015年7月14日火曜日

おしらせ:群雛レビュー誌「雛の四季報」出しましたー。


標題のとおり、出しましたー。



『雛の四季報:2015年版』 米田淳一著




楽しく書きました。やっぱり一番楽しかったのが、

「群雛」の1年間が、少し日本文学史の一部の相似形に思えてきたようなところ。

やっぱり進化して行く姿ってのは、見てると楽しいよね。



ステマ(笑)と言いながら撮ってきた旅先での読書の写真がこんな時に使えるとは。


というわけで、

ほんと、このところの暑い盛りですが、

ぜひ冷たい飲み物とともにお楽しみいただければと。


特典読み切り短編「魔総研の女」もよろしく。(川井憲次さんのBGMで楽しむのがおすすめ)


追って他の電子書籍ストアでの配信も始まると思いますが、BCCKSで先行販売中。

では、よろしくですー。

2015年7月13日月曜日

突発! 技術実証アクリルケースジオラマを作る!(9)ラズパイ編・楽しいこともある。


ただ点灯させても楽しいけど、



ちょっと蛍光灯っぽい、グロー球みたいにちらつきながら点灯させるのをやってみました。

ちょっとこうやって凝ると、すごく楽しいのね。

突発! 技術実証アクリルケースジオラマを作る!(8)ラズパイ熱闘編・プログラムがんばる。

 鎗田区内ジオラマともいう「技術実証ジオラマ」。

 こんなのできますよー、というのを実証したくて作ってます。



 実際には私にはこれまでできないことばっかりだったんですが、

 できるようになっていくのが嬉しいという。


こんな幅280mmの小さなジオラマですが、

ギュッと色々詰め込みます。


目下灯りのギミック作成中。

スイッチめちゃめちゃ多くなりそうなので、

できれば小さな液晶パネルを見ながら、

GUIで制御して、

なおかつスケジュールを組んでの演出もしたいなと。


で、どんな具合に進んでいるかというと。


まず、GPIOというRaspberryPIの出力を制御するために、

wiringPiを導入。

これでgpioコマンドで楽にGPIOというポートに繋いだLEDが簡単に制御できます。

プログラムも組みます。C言語で組みます。

はじめはNetBeansという開発ソフトを、

Windowsの母艦PCでつかってプログラミング、

それをRaspberry Piに転送して、そこでビルドして動かしてました。




動くことは動きますが、

コマンドラインからコマンドで起動してました。

なおかつ、


TFTパネルを使おうとしたら、GPIOのじゃまになってそれが使えず、




なんとかTFTパネルに必要な7ピン分だけの入出力を配線したら、

こんどはメスーオスケーブルが足りない。


しかし!

そこで思った。

GPIOをまとめて延長しちゃえば良くね? と。


で、GPIOは40ピン。

40ピンメスコネクタ付きフラットケーブルを使えば、

今のGPIOみたいにメスーオスケーブルでなくても、

普通のオスーオスケーブルでブレッドボードと配線できるはず。

と思った。


すると、我が家のジャンク箱に、それっぽいケーブルが。

だが。


おしい! さし間違え防ぐために1ピン埋まってる39ピンだった。


というわけで、秋月に40ピンケーブルを発注。


で、とどいた。

ちょっとコネクタの一部が干渉するけど、

そこを削る。こういう工作は慣れたもの。


で、


無事、ブレッドボードとTFTを共存させることが出来ました。


うむ、ラズパイBからは40ピンケーブルは必須だな。教訓であった。


とりあえず、LEDをテスト用のものから、実際に使う建物模型に繋ぎ変えた。



ドリフみたいになった。



で、次は、TFTパネルの活用です。

せっかくのTFTパネルも、

コマンドラインから入力してるんじゃもったいない。

というわけで、X-Window上からGUIで操作できるようにします。


途方に暮れましたが、

GTKというのを使えば何とかできそうです。


もうこうなるとNetBeansのオプションにwiringPiだけでなく、

GTKも設定せねばならず、

オプション設定が複雑で、なおかつ全然うまく行かない。


そこで、結局色々考えたけど、

もともとRaspberryPI上でビルドしてるんだから、

デバッグもRaspberryPIでやっちゃえばいいんだし、

それだったらプログラムソースだけ書ければいいよね。

あとは、Tera Termの画面にソースファイルを突っ込んで転送して、

ビルドかければ、一緒にデバッグもしてくれるよねと。

ただ、単純なミスはいやだけど、

gPadというテキストエディタでけっこうミスを拾ってくれる。

それに、おかしいところをRaspberryPIが何行目の何文字目、って教えてくれるし。


なんだ、これでいいじゃん……。


これで困るようになってから、次のことを考えよう、っと。


というわけで、GTKを使ってみます。

とりあえずラズパイをいじるなら、

「こじ研」さんと「うしこlog」さんをメインにみてればなんとかなると思う。

とりあえず今回もまた「こじ研」さんを見て、勉強。


まあ、仕組みは以前作ったフォームアプリと同じ。

ただ、フォームを事前にGUIでデザインできないのがしんどいけど、

負けるもんかである。

Windowのデザインをなんとか理解しようとして、



結局こんなかんじに。

標準出力に出す処理のところに、

GPIOコマンドを書き加えて、実行。


おおー、なんとか動く。





せっかくのTFTパネルのタッチ機能も使ってみます。

無事、タッチペンで操作出来ました。




で、いろいろ操作しながら考える。


だいたい、こんな順序で点灯させたいのね。


ちなみにバーの灯りはPWM制御になってじわっと点滅するようにしてある。


あとはスケジュールを作って点灯させるのと、

スケジュールを巻き戻したり任意のステップから入り込んだりできたらいいなと。


そんなことを考えつつ、灯りと戯れるのでありました。案外この時点ですでに面白い。



そんな暑い一日でした。ネコたちは今日もぐっすりでした。

2015年7月8日水曜日

突発! 技術実証アクリルケースジオラマを作る!(7)ラズパイ死闘編・電子配線は計画的に。




このミニジオラマを作るにあたって、

建物4軒×6~7LEDをシナリオに合わせて点灯させるたり、

灯りの強度を変えたりという計画を立てていた。

当然20~30個の灯りを、それぞれスイッチやボリュームを使って制御するのは至難。


というわけで、


こんなものを買っていた。RaspberryPI。

これを使えば明滅制御がC++でできる。


プログラミングなんて殆どやったことがないのに泥縄で勉強。





で、基礎的な制御に成功。


しかし、野望はこんなものに。


ただタイマーで進むんじゃ面白くないということで

小さな液晶パネルを買いました。

あと、RaspberryPI(ラズパイ)のケースも。

基板むき出しはちょっと怖い。



で、ケースを付けた。

おおー、ちゃんといろんなI/Oポートにピッタリ。


ところが。


液晶つけるとこんなかんじ。

ぎゃあ。ケースと干渉してしまうし、

大事なI/Oピンもかなり占有する。

ヤラレター、と思った。


しかも、この届いた液晶ユニット、

添付文書が名刺の大きさのカード一枚。

で、そこに記されたURLのページを見ると、

説明がものすごくざっくり。


とりあえずそれに従って設定をしていく。

ラズパイのOSはapt-getでザクザクインストールできるから楽やね。

インターネットにつながってるというのはすごい。

この前のWiringPIもそうだったもんね。


ところが。


エラー。


更にエラー。

調べると、どうやってもファイルがいくつか足りない。


一応、グラフィカルインターフェール(GUI)のX-Windowは表示できたけど、

これじゃ意味が無い。

ショボーン。


ところが。

このユニットの製造元のページを見てみると、

「このユニットがつかうピンは5ピンだけです」

とある。


ええっ、ということで、


ジャンパケーブルでそのピンだけつないでみる。

GNDと+5Vもあわせて7ピン使うのかな。



おおー、点灯した。


表示も出る!

でもエラーはおかしいな~と思っていると、


メーカーのページに、輸入会社さんのページにない設定2行を発見。

adafruit-pitft-helper というのを入れろとあった。


入れてみたら、




おおー。エラー無しに動く!


しかもこの液晶パネル、タッチ操作ができたりする。




動画なんかも表示できるらしい。

(まだ実験ではあんま成功してないので、理解が足りない)


で、なんとか動きそうです。


他にも、電子工作で建物の灯りをどう配線するか、研究中です。



だんだん、自分がジオラマを作っているのか、

電子製品を作っているのか、

訳が分かんなくなってきました……。


ああああ、崖とか山とかの地形とかを石膏とかモデリングペーストとかで

水面とかをレジンとかで作りたい……。


電子工作は嫌いではないけど、

だんだん自分を見失いそうです。

私、ガチガチの文系なんだよ……ホントは。


でも、まだ続くのです。

というか、ここで終わるわけにはイカンのだ!


あ、そだ。







こんな電子書籍出してます。(リンクはAmazonだけど、他の電子書店でも売ってます)

女の子だらけの鉄道研究部が、旅行に模型にとおもいっきりテツな活動をする話です。

よろしく。


2015年7月6日月曜日

突発! 技術実証アクリルケースジオラマを作る!(6)穴あけと中継信号機設 置台工作

はーい。ケースジオラマ「鎗田区内」の続きですー。


ラズパイをある程度いじれるようになったので、再びジオラマ本体の工作に戻ります。

まず、とにかく穴あけ。


大きさ的にはこんなもん。幅280mm。


40ピンフラットケーブルをつなげるように穴を作ります。

ベースには穴を、カバーには欠き取りを作ります。

ベースに下手に穴を開けて割れたら悲惨なので、慎重に。


建物や信号機用にも穴を開けます。



建物用の穴は6ピンコネクタが通れる大きさにしておきます。


そして信号機の設置。



架線柱に取り付けるべきケースなんですが、この架線柱、結構破損しやすそうなので、

ベースを作ってみます。


設置位置はこんなかんじかな。


設置台の床をメッシュにします。

でないと水とか雪がたまって大変そうだから。




こんなかんじ。



台の下にはステーを。

あんまり圧迫感ないようにしたいのですが……。

ここには車が突っ込んでステーと信号機を壊せないように

バリケードと高さ制限表示を作りたいですね。



でも、欄干がごつすぎるという意見をいただき、


エッチングフェンス投入。


昔、お金あるとき買ってたやつです。こんなところで役に立ちました。


橋とかはエッチングではバランスが取れないので、もとのワイドレール用柵を使います。

信号機の垂直出すのが地味に大変。



下から見上げるとこんなかんじ。

まだ色々加工が残ってます。




エッチングメッシュなんて滅多に使わない貧乏人なので、

使うとビビります。そして泣きます(笑)たけーよ、って。


まあ、でも効果的には適正価格なんですけどね。


もうすぐ追加の白のLEDチップが届くので、

どんどん明るくしていく予定。


つづく!