現在ローマです。
カフェ・グレコにいったけど、トイレに便座がないとかいうメッセージあり。
月・火でカプリ。水-土はフィレンツェの予定だそうです。
日本との時差は今だと7時間ですかね。
今のチームのネットワーク系の要の人が、欠員となった。
昨晩の帰り道に自転車で事故って顔面骨折で3週間入院。
自分ももらい事故の経験があるのでママチャリが怖い。でも、自転車のほうが公共交通機関で通勤するより半分の時間で済むので捨てられない。
問題は、道交法の「歩道走行可の場合、車道側を走る」とかいう場合によって逆になってわけわけらん法律。
「歩道を通行する場合はどちらの向きで通行しても構いませんが、歩道の中央から車道寄りの部分を徐行しなければならず、歩行者の進行を妨げることとなるときは一時停止しなければなりません」
って車道寄りってどっちの進行方向でもだったらぶつかるじゃないか。
dhcpdが存在するセグメントには配る必要がなく、外からdhcprelayで飛んできた奴に返答出来るかのテストをした。自宅環境で。
配る必要がないセグメントを設定に書かないとdhcpdが起動できなく、それを書くと上がったのでこれで良いのかの確認です。
今の自宅は、普段のPCが使ってるセグメントと、自分のcloudstack実験セグメントが別れている。この2つのセグメントはRouterBoardの多機能格安ルータで接続している。
で、cloudstackのCentOSにdhcpdを立ち上げてのテスト。静的NATで仮想OSのゲストネットワークと実験セグメントをつなぐ。普段のPCセグメントはブロードバンドルータのdhcpdを使っているので(っても自分のPCは固定にしてますが)、このブロードバンドルータのdhcpdを停止。普段セグとcloudmstackセグのルータで普段セグからのdhcpリレーを仮想dhcpサーバへ設定。
お試し台はあえてmbedのdhcp。
ちゃんと取れました。ブロードバンドルータが配ってたレンジとは別の、dhcpd.confに設定したレンジで。ひと安心。
さて変更した環境を戻そう。
Arduinoの無線でのスケッチアップロードのテスト。
対象はArduino Pro mini 3.3V。
Adafruit LadyAdaさんのここ参考。各所の通信bpsを合わせたら無事に書き込み完了。
Pro miniのリセット回路を使わず、自前の回路でのテストもOK。ただ、書き込みが終わって書き込んだアプリも無事に起動してるのに、IDE側で書き込み終了タイムアウトになることもある。
んで、これをボードに落とします。
実際はこんな感じですかね。
結局マイコンの種類によって通信速度を変更する必要もあるから、もうマイコン決め打ちで使うしか無いですかね。なが~いUSBケーブルを準備するほうが簡単で早いかもしれない。
あとXBeeのシリーズ2とか、BluetoothのSPPとかも試しましたが、シリアル通信自体は結構簡単にできるのです。しかし、Arduinoの特徴であるスケッチアップロード前のブートローダを起動する為のリセットを実現する方法がなかなか見つからない。
予定通り、ベランダセンサーを作り替えました。
今回、Luxの照度センサーは外しました。基板サイズ的に余裕が無かったので。詰めれば入るんですが、他のセンサ入れたくなるかもしれないので、照度センサーはNJL7502Lもついてますので。結果的には左下隅に1センサーいれられるかどうかの空きです。XBeeがはみ出してるので3階増設も難しいです。
ケースは死蔵していたArduinoUno&Mega系の純正クロージャー。ちょっと削った上に、Xbeeのお陰で蓋はしまらないので無しで。どのみちペットボトル容器を再利用したガワの中に設置だから問題なし。
今回基板が狭いこともあり、XBeeはアダプタの片側だけの配線。シリアルのみなのでコレでOKです。
XBeeのピンピッチ変換アダプタはスイッチサイエンスさんのもの。コレLEDが付けられるんですが、電源とAssociateなのですよね。XBeeの6番ピンにリード線を引いてRSSI表示用に変更してます(本当は抵抗の片方の脚を使えば良かった)。
電子工作の方はほぼ一発完成。1つだけ、右下のリセットボタンのGNDへの配線を忘れた事くらい。
最後に秋月の気圧センサの通電表示の青LEDがうざかったのでニッパで破壊しました。なんで余計なもの付けるかな。せめて使用の切り替えが出来るハンダジャンパとかがあれば良いのに。一応ショートする方向には壊していない模様。
ソフトもシリアルまわりの変更と、Luxセンサーを辞めたので、そこを外すくらい。wath dogタイマーも無しにして。
ArduinoMega系になってシリアルが増えたので、書き込み用のSerialも専用で使えますので、フル機能を生かしたままでSerial.printデバッグも出来ます。
さて、今度はためてるデータの表示方法を検討使用かねと。MRTGとかCactiみたいな感じに。
あ、cactiってRRDtoolのラッパーか。懐かしい。
そして・・・。
風センサーのキャリブレーションをするのだが、本日風が強くて。夜になって若干和らいでたので試してみたら良いタイミングで風がw。3回試してなんとか完了。旨くいった時にEEPROMに書き込んでしまえばいいのだけども、そのトリガーはどうするべ。いまのリセット用のリードスイッチと別にもう1つ反対側にリードスイッチを付けるかねぇ。
風センサーでSoftwareSerialを使っているからか、なんかハングする。watchdog timerを導入して行けるかなと思ったけどみたけどダメかも。ハングまでが数ヶ月ならまぁ我慢するが1日くらいでデータがとれなくなってしまうのでね。
というわけでHardwareSerialが4つあるArduinoMega系を投入予定。3.3VなSparkfunのMegaProで。
配線図は書いてみたので明日完了できると良いな。ソフトウエアはシリアルのオブジェクトだけ変更すれば、他は変更せずに動くでしょう。
本日届いたので、つなげてテスト。
タカギさんの商品だとワンタッチ水栓を元とする分岐水栓がなくて、仕方なくネジ止め。このネジ止めは気持ち的に安心できなくて嫌なんだよなぁ。
そこにホースリールをつないで散水。良い感じです。
リールのホースに余裕があるので、ちょっとぶった切って、入と出を反対にしたいです。うちの洗濯場は狭いのでリールを置く余裕がないのです。リールをベランダに置いておいて使うことを考えてます。
あ、洗濯機設置場所の水栓のスパウト。ワンタッチ水栓ではなかったですよ。たしか平成10年近い築のマンションなのにやっぱURって新しいことは何も考えてないなぁ。ネットもVDSLだし。人が来るバリューがないよな。
今住んでいるURのマンション。ベランダには水道の蛇口がない。「洗濯機を置く場所が部屋の中にあるから外にはいらない」と、このマンションの設計者が頭が回らなかったのだろう。ベランダに植物をおいた時の水やりとかが全く考えられていない。
ツレは毎日せっせこせっせこと水を運んで水やりをしている。まぁツレの植物なのでそれはそれでOKかも。
で、これを改善するために、部屋の中ほどの洗濯機の水栓からホースでベランダまで水を通したい。まず水栓のスパウトがワンタッチ式ではないみたいで、洗濯機のホースへは4箇所ネジ止めのスパウト経由でつながっている。まずはスパウトを止水弁付きのワンタッチタイプに取り替えたい。可能であればここで洗濯機とベランダへの経路とを分岐したい。(ここのネジ止めを外した時にスパウトが実はワンタッチタイプだったというオチが怖い)
とりあえず止水弁付きのスパウトとホース類を購入してみよう。
ツレはマジックホースというのが気なるようだけど、まずは安心して使えるもので試したい。まぁこの部屋は1Fなので階下への漏水は気にしなくて済むのではありますが。
ベランダのセンサー類のデータが早朝3:40からとれなくなっていた。ので、ベランダセンサのソフトウエアを変更してみた。
モニタリングが出来ないので、原因は想像で。風センサのデータ受信&送信部分でStringオブジェクトを使用したのだけどメモリ的に怪しいので変更。普通のcharの配列での対応に置き換えた。char *とか久々に使ったす。*hoge++ = moji;とか。
一応バッファオーバーランの対応も入れてましたが、マイコンなのでメモリ壊してもプログラム自体は書き換わらないですけどねw。プログラムはRAM上で動いてるわけでなくフラッシュメモリで動いてます。
あとは、風センサの吊り下げ位置を変更。手持ち在庫の「ライターで炙ってくっつけるフック」を取り付けてそちらに移動しました。
やはりベランダセンサーボードも動作状況をモニタリングできるように変更しようかなぁ。本当は、無線でのプログラム書き込みまで出来ると良いのですが。XBeeのシリーズ2だとあまり例が見つからない。とりあえず、無線モニタリングするには、スイッチを増設してこのスイッチの状態でXBeeの動作モードを変えれば良いだろうと。
普段は家の中のmbedとはAPIモードで通信をしている。付け足した増設スイッチを切り替えた時はATモードのシリアル垂れ流しモードに変更すれば良いだろう。
現状 #ifdef DEBUGMODE でコンパイル時に切り替えているシリアル出力のコードを if (debugmode) {} に書き換えて、普段からも有効にすればよいでしょう。
XBeeのシリーズ2だと難しそうとも書きましたが、こんな記事があったので試してますかね。APIモードからATモード、ATモードからAPIモードのプログラムからの変更方法も調べないと。今、APIモードで使ってるので。多分ATコマンドをプログラムから入れるだけだと思うけど。
上記の件。よくよく考えてみたら、うちにあるXBeeシリーズ1の1組を使ってUSB無線シリアルケーブルを作成すればよいかと。もともとUSB-シリアルで書き込み&モニタするようにUARTのピンのコネクタは付けてあるし、それのTX/RXとXBeeのDI/DOUTを接続切換するディップスイッチも付いているので。とりあえずArduinoPro miniを無線で書き込むテストをしてみます。
今朝は4:30頃に目がさめたので、風センサーの半田付作業を開始。7時位には完成していた。8ピンDIPのATiny85なのでスッキリ。その後、データを実測しつつ、ソフトウェアを調整。ここで一度ハマった。加速度センサの値が期待値より低い。ブレッドボードのプロトタイプでは期待値通り。なんだろう?と思ってたけど解決しました。加速度センサのVDDが未接触。しっかり半田付して予定通りの値になりました。今どきのICセンサだと他の端子から電源が廻ってある程度動いてしまうのですよね。
今回の基板も仮本番機的で、swichscienceさんのXBee片側変換基板を付けてます。デバッグ時にデータをモニタリングできるので。ソフトウエアが安定したら、ATtinyや加速度センサをソケット経由ではなく基板に直付してしまうともう少し薄く作成できるのです。
午後は風センサのデータをXBee中継する、ベランダの気象センサー機の変更。まずUSB端子を増設。USB規格では使わないですが。で、風センサとつないでみてもどうもデータが取れない。テスタで調べたらUSBケーブルのD-D+が導通してませんでした。USB充電用のケーブルだったのかも。取り替えてOK。
その後SanguinoでのSoftwareSerialでチョッとハマった。うちのsanguino用のpins_arduino.hに必要なマクロが書かれてなかったため。書き足してOK。
中継のSanguino機がOKになったので、mbedのアップローダを変更。まぁ、これは難なく終了。無事に風データがアップロードされ始めました。
さて、そろそろこの自宅データ類を分析して表示する様なページを作らないとなぁ。現在250万レコードくらい。
仕込んだ風センサのデータを見てましたが、そこそこ使えそう。風速何mとかそういうきっちりとした値は取れないのだけども、風が無かった、ちょっと風があった、だいぶ風があったみたいな感じのデータは取れそう。
今回作ったテスト機。XBee経由で、キャリブレーションモードに入れるように作ったのだけども、何故かコマンドが届かない。同じ回路をブレッドボードで作った奴はちゃんとコマンドが効いている。実機にタクトスイッチをつけてキャリブレーションモードに入れるようにもしてみたけど、そのスイッチを押すと揺れてしまってちゃんとキャリブレーション出来ない。
なので、本番機ではタクトスイッチではなく磁石でONになるリードスイッチを使います。
本番機ではデータを取りに行く側のベランダセンサーマイコンにも手を入れなくてはならないので、次の週末になんとか出来るかどうか。ちょっと月末までは仕事がおしているので平日は工作作業は無理っぽい。出来てもプログラムの修正かな。
昨晩ツレに明日の午前中にノルテに行ってきますと言ったら一緒に行くとの事。「ノルテ」というのは、立川で展開している書店であるオリオン書房。その店舗の一つ。アートアベニューに入っているので自転車置き場から近くて良い。そもそも、アートアベニュー利用者専用の自転車置き場を使うんだけどw。
他の立川駅近辺の本屋さんは自転車利用者にとって駐輪ストレスを感じるので行けない。雨が降って電車通勤なら可能だけど、ルミネは駅ビルの上のまで行かないと行けないし、そもそも専門書の品揃えはノルテに勝てないし。
で、今朝ちょいと予定より遅れ目の10:30くらいにツレと出発。アートアベニュー利用者の駐輪場に駐輪したけど、今までになく混んでいた。駐輪棚でない本来おいてはいけない場所においているちゃりがいくらか。そのどれもが電動アシストちゃりだった。なんだろ?
自分はトランジスタ技術の今月号が目的。買ったのはトラ技と日経Linuxと『観察する目が変わる植物学入門』。植物学入門はぱらぱらと見たら良さそうな系統分類だてた内容だったので悩んで(1700円なので)確保。ベッドで就寝前に読むのには良さそうなのです。図書館とかにあれば良さそうな本ですが。
で、ツレも本を買い終えたので(というか自分がレジに行ったら先にツレがちょうどお会計してた)、1Fのジョナサンでお昼ごはん。2組くらい待ったあと席に案内された。ハンバーグ食ってお腹パンパン。そのあとは高島屋でツレのウインドウショッピングというか現物確認というか(ネットで買うので現物の具合を見ておきたい系)に付き合って、帰宅。
今の自宅の自分PCは
・Windows8.1のGIGABYTE Brix
・ubuntu14.04でWindows7をVirtualBOXなDS61
BrixなんてCDケースサイズだから、天災の時は持ち出すのに便利かというと、データはNASにおいているのでPC持って逃げるよりNAS持って逃げますけどw。上記2台はOSとアプリは本体のSSDでデータはiSCSIのNASという設定をしてるのです。
さて、VirtualBOX環境のWindowsでも結構使えることはわかってきたのでWindows8.1化したい。BrixのWindows8.1と入れ替えたい。あと、Brixはツレに渡して、ツレの代替PCに渡したDS61を取り戻したい。
つまり、
・ubuntu14.04でWindows8.1をVirtualBOXなDS61
・Windows7なDS61(USB起動でcloudstackのホストにもなる)
・ツレの代替PCはBrix&Windows8.1。
こうなるとベスト。
Windows8.1をマシン乗り換えすると、日本語が旨いけど外国人の人との電話でのライセンス認証が待っているのだなぁ。いやライセンスはあるので堂々と行けるのだが面倒だよね。
ふと、shuttleのHPみたらHaswell対応のDS81が来てました。となると話が違いますね。ちょっと算段。
タイトルと中身が微妙に違う気もしますが。
ubuntuのkvm+qemuで動かしていたWindows7のVirtualBOXへの移行作業をしてました。
VirtualBOXはエリソン配下になってしまったのでアレですけども、USBのパススルーとかが楽ちんなのでWindowsマシンを仮想化するには便利。そしてUSBデバイスはことごとくうまく認識。
さてPCゲームののRockSmithが動くかどうかだけど、USBギターケーブルは難なく認識したのであとは仮想環境の速度次第かなぁ。
と思っていたが、いざ試してみたら「グラフィックシステムを初期化できません」で起動不能。まぁゲーム系は仕方ない。それでも、メインのWindows系でのマイコン開発環境はこっちに移し作業を継続中。画面やキーボーボード&マウスの切り替えボタンを押さなくても済むのはとても楽だし。
今日は秩父に行こうと予定していたけども、二人共寝坊して明日に延期。
で、ubuntuを13.10から14.04LTSにアップグレード。アップグレード自体は昨晩仕掛けたのだけど途中でダイアログが出てて止まっていた。ダイアログに答えて継続。/bootの空き容量がなくて空けたりとかやってたら、最後のほうで「アップグレードできません。巻き戻します。」とかメッセージがでて再起動。再起動したら14.04になっていた。何故。
デスクトップがcinnamonが選べなくなっていたので、nightlyのcinnamon2.2を入れた。unityの方だとマウスの設定画面に速度調整のスライダーが出てこないのだが、cinnamonだとちゃんと出るのは何故?
つづいて、こないだcloudstack-agentをいれて設定が変わってしまったlibvirt系の設定を直して、仮想マシンも使えるようになった。とりあえず使える状態までこぎつけた。
メイン環境にするかどうかはまだまだです。
このサイト、EC2で動かしてますが、OSをAmazon Linux AMIの最新版環境にして移行しました。
作業自体は1時間くらい。金魚水槽画像が大量にあるのでコピーに時間かかった。
新規インスタンスを立ち上げて、既存インスタンスのボリュームをスナップショット→ボリューム化してマウント。rsyncでコピーして、chown。
比較的サクッと完了しました。今までのインスタンスは止めてはあるので1ヶ月くらい様子見してterminateします。
EC2ってインスタンス作成時にしかセキュリティグループが設定できないですかね。最初、既存のセキュリティグループで作成してしまい、これじゃ設定中にport80でアクセスし放題ジャンと思ってterminateして再作成しましたです。
仕事から帰宅したら届いてました、認定電気工事従事者認定証。
これで一般用だけでなく、自家用の電線路除く・600V以下の電気工事も出来ます。
職場の施設管理がやってるような建物内の工事とかね。
部署が違いますので自分には具体的に仕事があるわけではありませんけども。実務経験もないしね。