このブログを検索

2013/05/31

クロウラー準備

 無限軌道のクロウラー。ホントは上にものをつかむギミックが乗るののだけど、そこは省いた形。

 今夜は2階建てにして、XBee、モータドライバと電池を載せて遊んでみた。動画は無し。
DSC_0447

 この週末お休みで、XBeeとモータドライバの間にATmega328Pを挟んだ感じでコマンドコントロール系に変更します。ついでに、加速度・地磁気センサの値を受信してログ保管。
 XBee&ATmega328Pは2011年12月のMake: Tokyo Meeting 07で仕入れてきたアルシオーノを組み立てて使ってみます。せっかく買ったので使わないと。制御系の電源は3.3Vで行くのでクリスタルは手持ちの8MHzに取り替えます。距離センサは手持ちに3.3V対応のVCNL4000が1つだけあるので搭載してみようかな。という感じです。
 コンデンサマイクを複数置いて、”手を叩いた方向へ進む”とかもやってみたいです。

 他は、多分自宅のリビングでは走行不可能な、ボールキャスターとタイヤ2つによるメカも仕入れました。でも、やはりキリムの床では進まないかも知れない。

2013/05/30

XBeeリモコンの寄り道

20130530_01
(コントローラが埃っててすみません。すっかり弾幕系STGをプレイしていないので。)

 こんな感じでPC用のUSBゲームコントローラのジョイスティック部分での操作も検討中。モータの回転をPWM調整すればアナログジョイスティックが有効活用できる。

 最初はPCにコントローラを接続して、DirectInput経由でC#あたりでなんとかという妄想をしてたけど。PC使うならkinectで操作するくらいでないと面白く無いなと。kinectも本格的にいじる前に次のfor Windowsが来年出そうですが。

LSM303DLHC正常動作しました。

 サンプルソースをちゃんと読んだら、ちゃんと書いてあるじゃん。


// Calibration values. Use the Calibrate example program to get the values for
// your compass.
compass.m_min.x = -364; compass.m_min.y = -291; compass.m_min.z = -336;
compass.m_max.x = +265; compass.m_max.y = +345; compass.m_max.z = 180;

 X,Y,Z軸のMAXとMINの値を表示させるスケッチをつかって、自分のLSM303DLHCの計測値の範囲を取得。ブレッドボード接続のままぐるんぐるん・くねんくねんとセンサーを手で動かすのは難しい。
 昨日作った360度方位をLCDに表示するスケッチに書き換えて、正常動作を確認できました。
 実は、二軸方位センサHMC6352も手に入れていて、こいつもやはりキャリブレーションがいる。こっちはセンサーをキャリブレーションモードにしてぐるぐる回せばOKみたい。二軸なのでくねんくねんは要らないw。で、この値がセンサ内に保存されるのかどうか?調べておこう。じゃないと毎回ぐるぐるしなくては。

2013/05/29

地磁気&加速度センサLSM303DLHCテスト

20130529_01

 ストロベリーリナックスの地磁気&加速度センサLSM303DLHCをテスト。
 簡単にArduinoUNOに液晶シールドを載っけたものに電源はエネループ。LSM303DLHCは電源2.16Vから3.6Vで、IOは1.71Vから電源+0.1V。5VのArduinoUNOのI2Cとは直結出来ないので、自宅に3つくらい在庫してある秋月電子のI2C専用レベルコンバータAE-PCA9306を介して接続。

 で、動かしてみるとなんかの影響を受けているのか、キャリブレーションしていない所為なのか値が偏る。地磁気による方位を表示させてても、グルっと回ると確かに360度分の数値が動いて戻ってくるのだけども、90度単位で動いても数値が90単位で変わるわけでもなく。原因を調べないと。ライブラリの問題なのか、キャリブレーションの問題なのか?ただ、決まった方向を向いてれば数値は同じなので地磁気はとれているはずだ。地磁気以外の磁気的要因だったりするとモータ使った機器に載せるのは無茶だろうか?

2013/05/26

結局のところ

 モータのオンオフとLEDのオンオフも似たようなもんに見られがちですが・・・。
扱う電流の量が違うので回路的に簡単なのはLED。モーターだと結構いろいろ面倒です。

 自律行動をさせるのにどんなセンサーをつけるか検討中。まずは、室内で自分の位置が把握できるように方位は必須。GPSは室内では使えないし、民間向けのデバイスではそれほど精度は出ないだろう。
 掃除をさせたいわけでもなく、適度にうろちょとしててくれればいいかな。それってAIBOだなぁ。ツレに踏まれないように近接センサだけは頑強にしておこう。

XBeeラジコンを基板で作成

 この週末はXBeeのシリーズ1を手に入れたので、こいつで先週作ったタミヤのインセクトのラジコンの本格化をしていた。

 シリーズ1なのでPWMでモータの速度調整も可能かと思っていたが、なんか使いづらい。PWMのタイマーは外しているのだが、微妙にほどける感じで。詳細は詰めていかないとわからん。

 こんな基板を作成して、
20130526_01

 こんなふうになりました。PWMはVCC直結とXBee出力を切り替えられるように3ピンでジャンパ。
20130526_02

 走行動画。撮影しているスマフォのmicroSDがぼろいのでカクカクするのは了承願います。

 キャタピラのこの子も待機中です。こいつはいろいろ載せられそうなので、マイコンと各種センサを投入して自律行動も可能にしたいですね。
20130526_04

 キャタピラに載せる、方位センサを試してました。3.3VのArduinoが死亡した様で5VのArduinoにて。地磁気センサ+加速度センサの本命モジュールは3.6Vまで5Vマシンとは繋げられないので待機中。3.3VのArduinoは自前で作れるのでそっちの方向かなと思いながら。いろいろ探してたら、SwitchScienceさん名義でAmazonでまだ売ってたので手に入れば楽と思って発注してみました。手に入ればラッキー。まぁ、ProMiniはI2Cのポートがピンに出てないので、引っ張る必要はあるものの小型で良いArudinoです。

2013/05/24

今週末の工作予定

 土曜はツレがお出かけなようなので、工作。

 キャタピラのクロウラーの作成と、秋月で買ったXBeeのシリーズ1でのラジコン化。更に、加速度センサと方位センサをのせて自律行動に向けてのセンサのログ取り。

 別案件として、垂直風車をペットボトルで作る件。ロータリーエンコーダで回転を計測できるようにして、風力計のベースとしたい。

 植物系は朝顔の植え替え。

 ロードバイクのメンテナンスもしたい。

 あと、仕事の下調べとしてC#でT4テンプレートをテストしておきたいかな。

 こんなトコロです。

 キャタピラのクロウラーとかなかなか進まないのはこれ↓
20130524_01
 子供の頃は、スイスイ作っていた記憶があるのだが、今ではタッピングビスとかあるとちょっと待ってしまうなぁ。年とったよ。否、昔はギアボックスは金属だったよ。素材の発達のお陰で自分で作るようになったかね。

 20130524_02

 とりあえず出来た。ボディに付けるのは明日。

pinMode(Pin, INPUT_PULLUP);

 朝、なにげにRSSリーダでチェックしていたら、スイッチサイエンスさんのブログにこんなエントリーが

 はい、知りませんでした。先週作ったXBeeラジコンの送信機も、同じような回路。内部プルアップ抵抗を使って、ボタンを押してないときはHIGH,ボタンを押すとGNDに直結してLOWという感じ。
 自分が書いたコード自体も、

pinMode(LeftUP, INPUT);
digitalWrite(LeftUP, HIGH);

昔からある手法の、ピンをINPUT指定しておきながらdigitalWriteでHIGH出力すると、内部プルアップ抵抗がオンになるというもの。
これが、

pinMode(LeftUP, INPUT_PULLUP);

の1行にまとめられるので、お得です(笑)

2013/05/23

システム修復完了

 帰宅後、マイPCのシステムドライブの修復。

 イベントログにSecurity-SPPのエラーが30秒おきに出ているのを修復してからと思ったが治らなかった。タスクスケジューラ周りを見ても該当なし。
 
 では、mSATA SSDを投入。mSATAのスロットはmini PCI Expressと共用なので、まずBIOSでmSATAでの利用に切り替え。そしてmSATA SSDをセット。誤挿入防止のためか六角ネジが入っているので一旦抜いてmSATA SSDのネジ止め位置に移動して差し込み。ネジ止めして終了。Windows 8が起動するのを確認してTODO BackupでSATA SSD→mSATA SSDへのディスククローン。SATAが3Gb/sのH61 Expressとは言え、SSD→SSDなので速い速い。さくっと終わって、BIOSで起動を入れ替えて無事起動。Windowsの認証も通って入る。壊れかけのSSDを抜いてHDDに入れ替え。今度はmSATA SSDからHDDへ現在のバックアップとしてパーティションクローン。サイズが違うのでディスククローンではないです。

 で、まだイベントログのエラーはでてたけど、試しにコンパネから認証でWindows8の認証キーを入れてみたら、キーが違います(MediaCenterも去年の年末大サービスの時に入れてるので)と表示されたものの、なんか認証済みに表示が変化。よくわからんが問題無くなった。イベントログのSecurity-SPPの30秒おきのエラーも出なくなった。・・と思ったらまだ出てるなぁ、なんだろう?

 ひとまずこれで様子見です。

[翌朝]別のディスクにバックアップしたシステムパーティションから、C:\Windows\System32\Tasks\Microsoft\Windows\SoftwareProtectionPlatformのSvcRestartTaskというファイルをタスクスケジューラにインポートしたら、治った感じです。

2013/05/22

またSSDがやられて

 朝PCを起動したら、no system drive boot toとか言いやがる。

 パーティションバックアップしてあるHDDをSATAに接続するととりあえず1ヶ月前の状態だが起動は可能であった。一安心。
 SkyDriveにArduinoなどのソースは保存してあるから大丈夫かな?と確認したら同期されてないじゃん。やっぱSugarSyncじゃないとダメだよ。ジャンクション張ってもダメみたいだなぁ。同期先のフォルダを任意に出来ないタイプのクラウドストレージはいちいち気を使ってデータをコピーしないといけないので使いにくいのだ。
 
 で、帰宅後、usb接続のHDDケースに今朝起動しなかったSSDを入れてつないでデータを休出。なんとかArduinoのソースフォルダはアクセスできて1ヶ月のソースを救出。試しにSSDをSATAにつないで起動してみたら一応立上がる。でも、まだDISKのエラーはEventlogに出るので再度HDDに戻してみて・・・とか試していたら、Windows認証の回数を超えたらしい。また、電話して長い番号を貰わないと。
 というか、移行準備として128GのMSATA SSDを昼休みにポチッとしたので、それが明日届いて、パーティションコピーしてから新しいキーを発行してもらったほうが良いかな。仕方ないとはいえ面倒ですね。起動HDDの構成が変わったからっていちいちカウントされるのもねぇ。

 その後Webを漁っていると、LANカードのMACアドレスの変更もアクティベーションが必要になるシステム構成の変更らしい。そういえばさっきLANケーブルの接続を変えたなと。今のPCははLANポートが2つあって、BIOSでそれぞれON/OFFできるし。試しにその辺を戻してみたら認証済みに戻ったように見える。でもライセンス認証の詳細を確認すると認証されてないとか表示される。なんじゃこれ?状態。

2013/05/21

ちょっと動かないとダメかな

 秋月とかにパーツ発注したあとなのでアレですが。

 ちょっと前のように、チャリとか山歩きとかしたほうが良いかなぁと思い始めた。
梅雨の前に、ロードをメンテナンスして朝練でもしようかな。ツレが部屋の中に置かせてくれないので駐輪場においたままなので。ちょっと今のままいきなり乗るのは怖い。

2日連続で帰りに雨

 昨日も、今日も会社帰りに雨が降っているパターン。
 でも、昨日は細かい霧雨。今日はポツポツとした雨。

 いずれにせよ帰宅時ピンポイントで雨が降るといやらしいですね

 チェーンが怪しいキュリキュリ音をたて始めてるし一部では赤サビも浮き始めてるので、先ほどフィニッシュラインのウェットタイプのルブをさしておきました。エアも入れたほうがいいけど、昨日の帰りにグレーチングの上で滑ったからなぁ。あえてエアパンパンにしないほうが良いかも。

2013/05/20

自律化計画

 インセクトの自律行動の計画。
 地磁気センサと加速度センサを積んで自分がどっちに動いているか把握したい。移動量は6脚だったりブラシモーターだったりで正確にはわからないけど。
 あとは、近接センサーで障害物避けとか。しかも超音波との近接センサでなく物理接触の触角スイッチで良いじゃんとか。ホーム地点として赤外線LEDででチカチカさせておいて、それを見つけて戻ってくるとか(AIBOっぽく)。

 今日はアイデア探しだけで、工作はもう一台のキャタピラ車のリモコン部分作ってたくらい。基板部分を上下逆にいれててハマリが悪いなあと10分くらい悩んでたよ。

2013/05/19

XBeeラジコンテスト2

20130519_01

 昨日の続き。まずリモコンのコントローラを作成。左上赤が左モータ正転、左下黒が左モータ逆転、右上赤が右モータ正転、右下黒が右モータ逆転。黄色は砲弾発射では無く、未定義。
 スイッチのチャタリングがあるかと思ったけれども、特に対策無しでOKだった。

20130519_02

 XBeeのデジタル出力のテスト。モータつけると五月蝿いので、まずはLEDで確認。

20130519_03

 モータをつけたテスト。デジタル回路側の電源に単四電池2本を想定していたのだけども、単四2本の電池ボックスが手持ちになかった。手持ちの在庫からCR123Aの電池ボックスが見つかったのでこれで仮に代用した。

20130519_04

 タミヤのインセクトに載せてみた感じ。

 ブレッドボードだとAVRマイコンを載せる余裕が無いので、C基板かスイッチサイエンスさんの基板で作り変えます。動画は操作しながらの撮影が出来ないのでまたいつか。ツレに手伝ってもらうかな。

コントローラのボタン割り付けは今は、
 [パターンA]
 左上
  押しているあいだ DIO1をオン、離したらDIO1をオフ
 左下
  押しているあいだ DIO2をオン、離したらDIO2をオフ
 右上
  押しているあいだ DIO3をオン、離したらDIO3をオフ
 右下
  押しているあいだ DIO4をオン、離したらDIO4をオフ

なのだけど、
 [パターンB]
 左上
  押したら DIO1をオン、DIO2をオフ
 左下
  押したら DIO2をオン、DIO1をオフ
 右上
  押したら DIO3をオン、DIO4をオフ
 右下
  押したら DIO4をオン、DIO3をオフ
 黄色
  押したら DIO1,DIO2、DIO3、DIO4をオフ

 こっちのほうが押しっぱなしにしなくていいから楽かしらん?と思っている。

 あと、キャタピラの方のタミヤのキットも作成しなければ。

2013/05/18

XBeeラジコンテスト1

XBeeでタミヤの紐コンをラジコン化するテスト
(今日は似非リアルタイム更新で書きます)

 昨日XBeeでのPWM出力を調べてましたが、ぜんぜん見つからない。で、今朝見つけました。そこにはPWM出力はXBeeのシリーズ1のみ。自分が持ってるシリーズ2では使えないとな。

 PWMはロボットのモーターの速度変更に使いたいだけなので、固定速度での動作なら必要はない。でも、なんか負けた気がするのでマイコンをはさもうと思う。

  1. XBeeシリアルにコマンド文字列を送ってマイコンが解釈して制御するパターン
  2. XbeeのDIOを使って数パターンのPWMデューティー比を渡しマイコンが解釈して制御するパターン

 1.だとXBeeのAPIフレームを解釈するのでメモリ大きめのマイコンが必要。ただ、今後の搭載センサによる自律行動のプログラミングは楽になる。
 2. だと左右のモータの制御につかう4つのDIO以外を使って数ビットのPWM値パターンを決めておいての制御。2ビットか3ビットなら、ATtiny45/85系の8ピンAVRとかでもできるし。

今回は敢えて、2.の方法を試してみたい。自律行動をさせる為のセンサーの接続も14ピンのATtiny84にすれば良い。ちょうどうちには在庫があるし。

 なんてことを書いたものの、プロトタイプ版はAVRはATmega328Pで、フレームワークもArduinoで。時間短縮の為です。あとでシュリンクしていけば良いのさ。

 さて洗濯物干しが完了したので、Fritzingでブレッドボードでの実体配線図を書きます。

ロボット側XBeeのピン選択
モーター1-正 DIO1(XBee Pin19)
モーター1-逆 DIO2(XBee Pin18)
モーター2-正 DIO3(XBee Pin17)
モーター2-逆 DIO6(XBee Pin16)
PWM値ビット0 DIO4(XBee Pin11)
PWM値ビット1 DIO8(XBee Pin9)
PWM値ビット2 DIO11(XBee Pin7)

 こんなかんじですかね。モータドライバTB6612のPWMは最初はデューティー比100%でテスト。デューティー比は3ビット表現の8値から選ぶ感じ。2つ使って現在値から上げる、下げるにする事もありですが、そんな細かい速度調整の操作は要らんからやめた。
20130518_01

 X-CTUでピンの設定をしようとしたら、DIGITAL OUTにHighとLowの二種類ある。どういう意味だ?デフォルト値の設定なのか?調べ中。よくわからんのでとりあえずHigh。
 さらに問題。DIOの8はX-CTUの設定項目に無いようで・・・。DIO12に変更しました。

ロボット側XBeeのピン選択
モーター1-正 DIO1(XBee Pin19)
モーター1-逆 DIO2(XBee Pin18)
モーター2-正 DIO3(XBee Pin17)
モーター2-逆 DIO6(XBee Pin16)
PWM値ビット0 DIO4(XBee Pin11)
PWM値ビット1 DIO12(XBee Pin4)
PWM値ビット2 DIO11(XBee Pin7)

20130518_02

 こうですかね?PWMは短期的には次の目標なので、まぁこのままで置いておく。

 さて、現実のブレッドボードでの配線をします。

 どうやら、X-CTUのDigitalOUTの HIGH LOWは初期状態の設定のようです。モータドライバの入力の片方をLOW・片方をHIGHにしたら、モータが回りましたから。あと、モータドライバはスタンバイピンをONにする必要があったようで追加配線しました
20130518_03
 次はリモート側からの制御テストです。

 一旦休憩。

 お古のXBeeの設定がうまく保存できなくて、ファーム焼き直してデフォルトから設定。
どうやらDIO6も使えなさそうなのでDIO10に移設するか、2bit4値にするか。

で、XBeeの設定ですったもんだ。設定したあとで読み直すと変わっているという状態が何度か。シリアルアダプタかUSBハブの問題か?どちらも電源容量かと。セルフパワーの7ポートUSBハブを2個使ってますので。
 とりあえず、デバイス側のXBeeからモータードライバを介してつながってるモータの制御は成功しました。
 なんかX-CTUも落ちるし、Windows8だから?自分の意識的には最新のOS最新のソフトを使ったほうがセキュリティ的には全然安心できると思うのですけどね。

 では、タクトスイッチを使った似非リモコンを作ります。

 20130518_11
 結局こんな感じかい(苦笑)

 続きは明日か、来週末か?

2013/05/17

今年の種まき

20130517_01

 朝顔のたねをジフィーセブンに蒔いていたのが発芽して来ました。朝顔は4つくらい。残りはツレのリクエストでコリアンダー。コリアンダーは食材として大事なのでこっちがメインかも。
 うちのベランダは奥まで光があたらないので、朝顔は結構微妙な成長になります。

 とは言っても今週はツレのバラがガンガン咲いてこんな感じ。
20130517_02
 あまり咲かせていると弱るので、今朝ツレが花を切り取って玄関に飾ってました。玄関に入るとナエマの良い香りです。

今週末の趣味工作の素材

20130517_03

 まな板の上の食材状態でブレッドボード上に並べてみた。

 XBeeでモーターをリモコン操作するのがこの週末の目標。最終目標は自律型行動とキネクトでのコントロールだけど。最終までやらないと思うw。
 とりあえず使っていないXBeeをパーツ棚から選別して、基地局側をXBee PRO S2B,デバイス側XBee S2のチップアンテナタイプ。このチップアンテナタイプってディスコンみたいでもう売ってない。うちには5,6個ある。で、X-CTUにてPAN IDを揃えてファームを入れ替える設定まではした。

 で、この2つのXBeeで通信ができるように、PCでの基地局コントロール側の環境を構築する。PCを変えてからProcessingを使っていないのでProcessing&XBeeな環境を構築予定。ただProcessingがjavaベースなので、環境とライブラリのバージョン違い関連でハマったら速攻でC++で書けるmbedのマイコン基地局作成に切り替える。

 通信ができたらPWMは使わない、ON/OFFでのモータ制御。正転、逆転、ストップ、ブレーキ。電流も目安的に測定。

 次はPWMを入れた回転速度調整ありの感じで実装。と思っていたけど、XBee単体でPWM出力はできないのかな?AVRをつなぐかね。

2013/05/16

TB6612モータードライバテスト

20130516_01

 帰りがちと遅くなったので軽くテスト。

 まずSparkfunのTB6612FNGのブレイクアウトにピンヘッダを半田付。モーターなので太ピン。「TB6612」&「3V」で検索して引っかかったこのサイトのままでテスト。
 電源3.3vでFA130はOK。plasma DASH MOTORは動こうと頑張ってるけどダメだな。電流が足りない感じ。
 マイコンばかりいじってたので加減がよくわからん。

 あとで単三電池3本の4.5Vをつないだらプラズマダッシュモーターも動いてはいました。でも、pwmでon部分が少ない状態だと回り始めないですね。理屈はなんとかなくわかる。

 ともあれFA130なら3VでもTB6612で動かせるのがわかったので大収穫。

2013/05/15

タミヤの紐コン模型の改造計画

 まずはラジコン化しようと思う。

 で、XBeeの出力レベルで動作するモータードライバをさがして東芝のTB6612FNGが見つかった。PWM入力もOK。即発注してみたものの、これモータ側電源が4.5V~13.5Vだとわかった。実際にモータードライブ側にどれくらいの電圧で出てくるかしだいだけど、タミヤの模型のモーターは1.5V~3Vが定格のFA130だぞな。現物合わせで試してみるしか無いかね。

 ただ、タミヤのこれ系の紐コン模型シリーズはモーターがFA130が基本みたいで、一斉を風靡したミニ四駆のカスタムモータもFA130と形は一緒。ということで、お試しにプラズマダッシュモーターを発注してみました。

 FA130とかRE260とかは小学校の頃お世話になりましたよ。寿命がきたらバラして中の磁石を取ったり。で、マブチのHPみてみたらFC-130SA(3V~4.5V)とかあったり。モーター系は知識が小学生で止まっているので色々発見ばかり。ギアボックスの歯車が金属製じゃなくなっていたりとかね。

2013/05/14

TAMIYAのリモコンインセクトを作成

20130514_01

 TAMIYAの6本脚歩行模型の「リモコンインセクト」を作成。ネジ止めorはめ込みなのでサクッと完成。動かしてみると実に面白い。本体上にはいくらか余裕があるので、電池ボックスとXbeeとマイコンとモータードライバを載せてラジコン化とか、マイコンと近接センサを載せて自律移動ロボットとかにしていきます。

 今までセンサタイプのマイコン工作しかしていないので、自分で操作するタイプとか動くタイプは新鮮です。

 で、その前に。同じくTAMIYAの「リモコンロボット製作 クローラータイプ」も入手してあるのでこいつも組み立てます。

2013/05/13

商用電源の計測

20130513_21

 商用電源の電圧やら周波数を測定しようと思ってます。で、まずは電圧測定用のトランスを手に入れました。興和電子工業の電圧検出トランス VT2401-A01。100Vが1.2Vくらい、(100Vxルート2)1.7Vくらいに変換。AVRのADCで余裕です。
 が、このトランスのピン。当然1/10インチなわけもなく、また一次側は100Vを扱うのでちょっとビビってます。電工二種免許をとったばかりとしては電気火災とか起こしたくないし。

 周波数に関しては、Arduinoのインタラプトのピンにアンテナとして数センチのワイヤを貼って電源線のノイズを取得するネタを発見しました。でも、ちゃんととったほうが良いかね。そもそも、日本の規則正しい電気でどれくらい変動があるのか、見てて面白いグラフが出るのかがちょっと難点。1分毎に取得して過去データは3日で捨てる感じで行けば良いかなと思ってる。

今20130513の金魚

20130513_10

 次々と☆になってしまい、今の住人はこんな感じ。
 右上から、更紗琉金(というか「丹頂もどき」と自分は呼んでる。琉金体型の丹頂模様)、桜東錦(コブがない)、キャリコ東錦。今のメンバーの皆さんは比較的泳げる体型なので元気です。

 そして、日が長くなってきたので金魚カメラの運用時間も伸ばしました。というか、水槽ライトのタイマー時間を変えただけです。カメラ画像をアップするArduinoに照度センサとしてCDSをつけてて、明るい時だけ動いてますので。たまに、ツレが夜中に部屋の水槽側の照明をつけてたりすると照度によっては画像がアップされます。

UVセンサ?を追加

 昨日の事ですが、ベランダのセンサにUVセンサ?を追加しました。

20130513_01 20130513_02

 手持ちの紫外線センサには浜松フォトニクスのG7189とG6262があったんですが、G7189だと値が出なくてG6262を使いました。オペアンプで増幅してArduinoで取れる範囲の電圧に変換。
 さすがに直射日光をあててみるとレンジオーバーになりますが、設置はベランダの壁にくっつけてるのでほぼ垂直状態。このG7189もG6262も青色の波長まで感度があるので厳密に紫外線センサーとはいえません。まぁ、感覚的な感じで傾向がわかれば良いかと。ホントはG5842が良いのでしょう。ま、手持ちの範囲で。

 このベランダセンサーで使っているSeeedStudioの「BeesShield」。XBeeが2つ載せられるので便利です。スイッチサイエンスさんで1個載せのタイプが出てた(かつ速攻売り切れ)のでちょっと書いてみた。SeeedStudioと言えば例のクワッドコプターが売りに出てたみたいだけど高級タイプは早速売り切れしてます。自分はタミヤのインセクトを買いつけましたので地上を走らせます。追ってXBeeラジコンにしようかと。

2013/05/08

ちょっとPICは放置してAVRやARMにもどるかと

 一時敗北宣言というか一時撤退。

 安いからって手を出したPICのUSB。開発環境は過渡期でコンパイラもごった煮で、情報はWebも書籍もごちゃごちゃ。時間がたくさんあればそれでも試していけば良いのだけども・・・。

 一旦放置して、元のコースに戻そう。キーコンバータはAVRで仮に使ってた奴のコードを最適化していく方向で。Device側はAT90USBやATmega32U4を使うのも良いね。HOST側が問題なんだよなぁ。

 というわけでAVR系にもどして

 ・ベランダセンサーに紫外線センサーを入れる。
 ・商用電源の電圧変動を記録するセンサーを入れる。
 ・うちのセンサーデータ集取&アップローダをsanguinoにする。
 ・Google Readerの替りを作成する。
 ・作りかけのドットマトリクス表示器を作成する。

 ・クリスマスの玄関リースイルミネーションのプロトタイプ設計。

 などなどタスクはあります。「Google Readerの替り」はマイコン系じゃなくてWebアプリですね。

2013/05/07

PIC版キーコンバータのプロトタイプ

20130507_01

 PIC18F14K50(device側)とPIC32MX250F128B(HOST側)のコラボによるキーコンバータのプロトタイプを構築。
device側は何とかなりそうなことは確認済み。HOST側はこれから挑戦。基本microchipのサンプルコードをベースにやっていきますが、PIC18の方はC18,PIC32の方はXC32と大変です。
 さらにPIC32のコードは
#define GetInstructionClock() (GetSystemClock() / 2) ???
という記述があったり。 ? って三項演算子かい?ちょっとサンプルを使うのが不安になってきた。で、コンパイルしてみたが、最初通らなくてプロジェクトのincludeパスの指定とかをなおしたら、
 BUILD SUCCESSFUL (total time: 2s)
ときたもんだ。自分の勉強不足なのかもしれない。コンパイルは通ったので試しにチップにicspで焼いてみたが、動くわけもなく。そもそもconfigがサンプルのままだからPIC32MX250F128Bにあってないよね。PORT Fとか無いし。

2013/05/05

アゲハチョウ

20130505_01

 昼間、ベランダのゼラニウムにアゲハチョウが来訪。スマフォを取りに部屋に戻っても余裕なくらい、超時間いらっしゃいました。

2013/05/04

ツレとチャリ散歩(国立ママ下)

 ツレとくにたち郷土文化館に行って来ました。
展示は「緑川東遺跡出土の大型石棒の謎に迫る」と「くにたち あの日、あの頃」。
 
 まず昼ごはんにアルカンジュ。犬連れOKの肉料理屋さん。今日も犬が沢山でした
自分は、「ポークステーキ ゴルゴンゾーラーバジルソース」。ツレはサラダの上に鳥ソテーが乗ってる奴。
ゴルゴンゾーラソース (゚д゚)ウマーでした。

 で、くにたち郷土文化館。自分は3回目です。ツレは初めて。天気も良いのでガラスで覆われた館内は暑い暑い。石棒はどーんと展示してありました。あの日あの頃は昔の民俗が伺えた。別に国立に限ったことでなく、もう、昭和も遠い昔になっているので当時の写真は楽しいです。この展示、基本昔の写真パネルと解説文なのですが、国立全域の地図とその写真が撮られたであろう場所に印があるのが素晴らしいです。

 文化館を出てツレが行ってみたいと言い出した古民家園へ。ここも自分は以前に来ているので場所はわかるが前の行き方で行けるのか?ヤクルトの研究所の横なんだけど。このあたりは田畑を潰しての宅地開発区画整理が入っていて、案の定ぐるっと廻ってたどり着きました。
 
 その後は、スーパーバリューで自分の目的の糸鋸とプラスチック用替刃を買って、帰路。ついでに晩御飯も食べて帰りました。

2013/05/03

金魚水槽のリセット

20130503_01

 短尾出目金がボックス病らしく、調子を落としていたので水槽をリセットしました。
水槽リセットの大先輩であるツレの協力を得て。残っている生体をバケツに退避して、水を全部抜いて、熱湯入れて底砂や器具を洗って、無事完了。
 短尾出目金は残念がら☆になってしまいましたが。

2013/05/02

水槽のモニター検討

 エーハイムのマイコン内蔵外部フィルターの運用を止めてしまったので、水槽のモニターが水温と画像だけになってしまった。
ちょっとさみしいので追加センシングを検討。以前コメントをくれたゆきさんのHPを訪れてみたら、ここが気になる。ORPセンサーを入れたいかなとか。で、センサーをつなぐモジュールも必要みたい。モジュールも売り物なので、オープンハードウエアではない。
 うーんちょと1万円超えは手を出したくない。それなら、国内で売っている交換用の安いセンサーでも良い。傾向が知りたいだけだし。で、このモジュール、PICが載ってるけど、センサー値をシリアルで渡す為だろう。TI(の様なロゴの)の0A P2262というチップがよくわからん。TIのページで検索してもズバリはなく、オペアンプが引っかかる。でも、8ピンなのでオペアンプの可能性が高い。センサーからは微小電圧で受けてて、オペアンプで増幅してPICのADCを使う感じかな? でも、もう少し他のものも調べてみよう。

Device - HID - Keyboard

 HardwareProfile – LPC USB Development Kit – PIC18F14K50でテスト。

 20130502_01

 ブレッドボードにてLPC USB Development Kitのサンプル基板もどきを作成。左端のタクトスイッチを押すと文字がaからabcdefghijklmnopqrstuvwxyz1234567890とUSB接続したPCへ入力されます。
 サンプルまんまなので無事に動作。今回使った秋月のAE-PIC18F14K50は、USBコネクタもついていて使いやすい。なので、PIC版のキーコンバータでもそのまま使う予定。続いて、UARTからHIDのreportの8byteを受け取ってそれをPC側に渡すようにします。動作確認はHarpyコンバータののTXに繋げればできるし。

2013/05/01

PICの開発環境めんどくさ

 USBを扱う事のできるチップが安いので、PICを始めてみたものの。

 今、開発環境の移行時期みたいで、いろいろ面倒。PICのメーカーであるMicrochip社はIDEはMPLAB X IDEに統一したがっている模様。旧版はMPLAB IDE。Xの方はjavaベースなのでWindows/Linux/ハゲOSを統合できるからだな。
 でも、そのチップメーカーが出してるframeworkのライブラリ。これがPIC18では旧コンパイラのC18前提だったり、PIC32MXだと新板のXC32だったりとぐちゃぐちゃです。新コンパイラのPIC18対応版のXC8に対応したframeworkライブラリを公開してほしい。

 というか、PICってマイコンチップ自体がごった煮状態で、種類は多いし、しかもアーキテクチャがまちまち。AVRの様に簡単には行きません。

 うーん、困った。PICは一時しのぎで、基本AVRで開発したいと思うなぁ。