スキップしてメイン コンテンツに移動

投稿

2011の投稿を表示しています

宇宙機お絵かき QFH NanoSatellite

QFHアンテナは半球状の領域でまんべんなく電波を捉えることが出来るので、衛星のように移動して偏波面の変化する電波源を捕えるには丁度よいとされる。( 自作してみた記事 )NOAA衛星の気象ファックス画像を受信するのに使われるけど、実はNOAA衛星本体にもこのアンテナが搭載されてたりする。 いつものように、衛星そのものに載せてみたらどうなるのかということで、モデリングしてみたものがこちら。 430M帯で設計するだと、ギリギリCubeSatにも搭載できそうな大きさになる。 螺旋状のエレメントが飛び出す形 びっくり箱方式 十分にかっこいいが、 (某衛星に似ているのと) 姿勢制御は面倒なので沿磁力線制御のみとしたい。このままではアンテナ側が地球指向するための制御が必要になるが、簡単さを求めると姿勢制御は永久磁石くらいに留めたい。となれば解決法は一つ・・・ DNA! かくして、上下面から飛び出したQFHアンテナにより、只者ではない外見と無指向性を手に入れた。残りのスペースで衛星の動作を行わなくてはならないけど、最近は1Uでも設計次第でかなり空間が余るというから大丈夫だろう。 そもそも、ほとんどのCubeSatはモノポールアンテナやダイポールで済ましている。こうした単純なアンテナは方向によって送受信感度が落ち込むポイントが生まれるのだが、そこは地上局側を高出力/高感度にすることで、感度が落ち込んでも十分通信可能な回線設計がなされている。 ちいさな衛星にとって、QFHは採用するほどの利点があまり無かった(完) (見た目以外に)無指向性を獲得して得られるメリットとしては、衛星の姿勢を考慮せずに済むことと、地上からほぼ一定の感度で電波が得られそうなことだろうか。 電波強度を測定するのに向いている気がする。 たとえば、世界中の430MHz帯の電波強度マップを作るといった業務が行えそう。それから気象ブイ等のテレメトリ収集だろうか。 アンテナそのものがミッションになるような用途だ。 以上お絵かきでした。

CMOSセンサ+FIFOカメラ

カメラを搭載する用途は結構いろいろ存在する。気づいたらそっち系にまで手を出していたので、最近調べた部品や、おもしろそうなパーツをまとめてみる。 用途は衛星(うぐっ)やローバーなどの小型ロボット機(1リットル以下)とする。 JPEGカメラは当然ながら取得できるのはJPEG圧縮画像だけで、撮影間隔も最短で数秒かかる。ほんとに撮影だけなので画像を処理するには向いてない。 http://www.electronics123.com/s.nl/sc.8/category.207684/.f CMOSセンサと処理系をつなげて作る 取り込み速度を落とすため、FIFOバッファが必要なことがある。今FIFOバッファメモリを売ってるところは少ないので、FPGAとRAMで同じ事を実現する例も多い。 FIFOメモリ付きCMOSカメラモジュールというのもあった。 http://csun.co.jp/SHOP/2011102801.html OV7670や7725などにAverLogic社のAL422Bがついている。380kBなので、解像度がVGAだったらRAWフォーマットで一枚収まるかどうかというところ。 FIFOさえ付けば、あとはゆっくり取り込んでいってね、ということで、無理のない所ではSTM32でfsmcバスを使うとか、撮影だけならCortex-M0で省電力にとか。 CMUcam3 FIFOバッファを使ったオープンソースの画像認識モジュールで有名なのがCMUcam3。(らしい) http://cmucam.org/ センサはちょっと古めだけど、ARM7TDMIコアのLPC2106(48ピン 64kRAM 60MHz)とAL440が付いている。色々と画像処理が行える様子。サーボ端子もあるので、このままボールを追うロボットが作れる。 ちょっと古いのと高いのが難点。 (ちなみにCMUcam1,2はSXマイコンをセンサに直結してクロックの力技で画像認識してるのでこれもまた面白い) Cortexになってからは足の数とクロックなどのCPU周りの規模がだいぶ住み分けが進んでいるけど、ARM7なLPC2106はこの用途に丁度よい規模&性能な気がした。  (LPC2000シリーズというと日本では09年の付属基板が有名だけど、あれはでかすぎ

MSP430LaunchPad

世の中色々なマイコンがありすぎて、ビビっているうちにArduino使いになってしまっていた人です(ロボットの機構に集中できたので許してください・・・) ・・・と言いつつなんだかんだでひと通りのMCUを 積んで 試してきたわけですが、そんな部品箱にとうとうMSP430が仲間入り。 500円ちょっとでこのボリューム TIが出す16ビット低消費電力マイコンとその開発キット。ちょっと前からArduinoも真っ青な低価格で売ってました。TIのボードはみな真っ赤なのか・・・。 http://processors.wiki.ti.com/index.php/MSP430_LaunchPad_(MSP-EXP430G2)/ja 本家ではピンヘッダを基板に取り付けるらしい?(某ボードの影響がここにも) 28ピンか、さもなければ100ピンなMCUばかり扱ってきた感覚で見ると、14ピンDIPの見た目はロジックICみたい。バリューラインとよばれる14/20ピンのラインナップはこのボードで開発可能とのこと。 性能的な対抗馬はPIC24で、RAMとROM容量はPIC16やATtiny2313を彷彿とさせる。特徴としては、温度センサ内蔵機種がある(キットの型番2231は温度センサ内蔵)ということ。消費電力はμアンペアオーダー。 買った段階ですでに電源をつなぐとLEDが点滅し、ボタンを押すと温度測定するプログラムが動作する。 恐ろしいことに5cm衛星用に作った太陽電池(5V5mA)を直結しただけでも動く。数百ルクスの室内でも動作していた。 開発情報も見やすい・・・ http://www.tij.co.jp/product/jp/msp430g2231 値段的におまけで買ってしまう範囲ではあるものの、試す気が起きたのは、海外のCubeSatではMSP430がけっこう採用されているという事実。PICと何が違うのだろう・・・という疑問が買うきっかけだったり。 パッケージにロケットが書いてあるし!(違 これはロケットに(ry 方向性としては、エナジーハーベスト電源と組み合わせた超低消費電力のデータロガーやロボットの制御向け・・・だろうか。 このコンセプトを突き詰めると、バリューラインではないものの、ROM/RAMを 総FRAM化した  フラ

FemtoCube動作動画

動作動画です。 パケットと音声合成を交互にやってます。間でトランスミッタをONOFF制御してたり。

FemtoCube解剖

MTMで 製作 完成したハードウェアのBBM。期間中に見てくれた方はありがとうございました。 ここではその全体像を紹介。 衛星システム 人工衛星として必要な機能は、3つの基板が担っている。 ・太陽電池基板(SAP) ・電源、バッテリ基板(PCU) ・通信機/マイコン/センサ基板(C&DH) そして、今回のミッション機器がこちら。 ATP3010F4基板 会場で販売されていたAquesTalk picoを組み込んだ音声合成基板。これによりボイステレメトリを実現。 平面に並べたところ 専用基板を作りたくなりますね。多分太陽電池を除けば、一枚に収まるはず。 FMトランスミッタとカラーセンサ部の接写。黒い配線がアンテナ。 電波出力は微弱無線となるように、0.5mW出力+アッテネータ回路なので、直ぐ圏外になります。 このサイズなので、今のところアップリンクは無し。 電力状況に応じて動作モードを変える方針。 トランスミッタは2chあるので、片方をAFSKパケット、もう片方をAquesTalk picoの出力に割り当て。 カオスな裏面  電源部分については、後ほど別記事としてまとめます。 LTづくし  次記事に動画を載せました。

MTM07出展

MTM07の出展に参加してます。 Artsat.jp 5cm角の模擬衛星が見たい方はぜひ。 場所は東工大の100年記念館(正門すぐの建物)です。 明日はちゃんと他も見てまわりたいなあ。

太陽電池を求めて

小さい工作で太陽電池を使いたい時に困ることは、小さいソーラーセルがあまり売ってない(入手性が悪い)ということ。  (ここで言う小さいとは、1~3センチ程度の幅を持つもの) PowerFilmもちょっと大きいので丁度よい大きさの物を探してみた。 千石電商で見つけたソーラーLEDライト。¥250だった。 販売元  http://www.henj.in/LED.html 最近は太陽電池を使った小さい携帯充電器や、ライトが結構出ている。それにしても安い。 かなり長い時間点灯する。ボタンは押すたびに点灯・点滅・消灯と切り替わるので、ICが入っているらしい。  光量は眩しすぎると思うほど。 でも光は次第に弱まるので、昇圧したり電圧管理などはしていないようだ。(値段を考えれば当然だが) お約束の分解。むしろ部品取りなので・・・ 見た感じ、 コイン型リチウム充電池とLED、ボタンと制御IC基板が付いている。 太陽電池は逆流防止ダイオードでバッテリにつながっていた。 部品調査 太陽電池はSC-3722-9 http://detail.china.alibaba.com/buyer/offerdetail/311771373.html  中国のVIMUN社の製品らしい。 けっこう種類がある。(けど大きさとかあまり書いてない) http://www.aliexpress.com/wholesale/wholesale-vimun.html リチウム二次電池はLIR-2032  http://jp.eemb.com/pdf/Li-ion/LIR2032.pdf コイン型セルのようだ。  ちなみに充電管理されてないので、買った半分は電圧が1V程度だった。 いつ充電できなくなってもおかしくはない。 ということで適度に過充電しつつ、使うときはあまり放電しないように気をつけよう (充電管理も人間の仕事です) 部品代考えても、LED3つにバッテリまで手に入るのでけっこうおいしい。 太陽電池の電流 一枚でリチウム電池を充電するので、おそらく最大電力点は5V程度と見ていたがそのとおりだった。 屋外では一枚で最大5mAとのこと。効率は、同じアモルファス系のPowerFilmより減るが、どっちも10%台で少ないという点では同じ

ストラップ模擬衛星 (5x5x5cm)

「人工衛星」というハードの規模は幅広いスペクトルがあり、その規模は無線付きワイヤレスセンサと呼べるものから、遠隔操作の重機までくらいの差がある。 CubeSatは間違いなく前者の領域に入る。それもアマチュア無線技術に基づく、CWなどの人間向きの信号をやり取りする。 ということで、この無線でのやり取りに焦点を当てた模擬衛星キットを作ってみた。できるだけ簡素化したので、電源部含めて5x5x5cmに収まる。 実はCubeSatにも5x5x5cmサイズの計画がちらほらあるようだ。 海外では10センチ角以下で100g以下の衛星はFemtoSatと呼ばれている。 (フェムト: 10のマイナス15乗) 重さでの分類によると、 Mini 10kg~100kg Nano 1kg~10kg Pico 100g~1000g Femto ~100g (ちなみに、CubeSat規格での0.5Uは10x10x5cm) 宇宙では大きさで発電電力が決まってしまうので、小さいということは積めるものにもいろいろと制限が大きい。 概要 主要部品 FMトランスミッター (新潟精密 NS73M) ATmega328P 8MHz外部水晶/Arduino用ブートローダー LM60   温度センサ 検証中 S9706       カラーセンサ(レンズはジャンクの組み込み用WebCamから) MMA7361 加速度センサ LTC3105  低電圧MPPC動作DCDCコンバーター LTC4071  低電圧起動Li-Po/ionチャージャー 太陽電池 SC-3722-9 Li-Poセル 100mAh スーパーキャパシタ(5V/1.5F~) 基板 UP-204GSR 二枚組のユニバーサル基板 10mmジュラコンスタッド 塩ビのキューブケース(50mm四方) ハンズにて発見。ぴったり。 通信系 この回路の目玉ははNS73M FMステレオトランスミッタ。カーステレオにDAPの音楽を飛ばすためによく使われるもの。 XBeeのようにモジュール同士での遮蔽された通信ではなく、普通のFMラジオを使って直接受信できる。 本当はCWを出して

SH-2A基板のボード製作

SH-2A基板を入手して1年半。人に貸すも埃をかぶって戻ってきたので、成仏させるために少しづつ組み立ててみた。毛虫計算機と名乗るからには計算機作らないとね・・・(木製PCケース製作からずいぶん遠くへ来たもんだ) 想定分野は、差動シリアルI/Fがメインのちょっとした産業向けOBC。 4つあるD-SUB9ピンは1つが上位システム(PC)との制御ポートで、あとの3つはRS422トランシーバを介した周辺機器制御ポートになる予定。 基板は秋月の DSUB基板(大) 必要に応じて増設っ 化粧板は0.5mmPET樹脂板2枚と、間にいろいろ印刷した厚紙をはさんでいます。 寸法設計、出力はEAGLEを使用。 DSUBのポートは基本的に独自ピンアサインで 開発環境はHEW+KPITのGCCコンパイラで整備中。

AR天体望遠鏡

八木アンテナにAR を導入してみたりしてきたけど、一発で分かる本命はこっちだろうか。 GoogleSkyMapを望遠鏡のガイドの代わりにしてみた。 ターゲットの望遠鏡はジャンク扱いで発見したMEADEの入門機DS-60 実は中学の頃、電動式で反射望遠鏡なDS-115ECを買ってもらったがために、もっと変なことしようとして専門用語のたくさんあるサイトを巡回するようになった気がする。   動かしてみると、HT-03Aではあまりポインティング精度が出ない。 しっかりした視野への導入はまだガイド望遠鏡が必要ですね。 広視界な双眼鏡と組み合わせたら最適だと思う。グリグリ好きな宙域を眺める事ができて、そこにある星座名や、明るい恒星名を一つ一つ覚えられたら良いなあ。  人工衛星と違って、星は逃げないのでじっくり観察しやすい。 時間と方角の予備知識だけで見つけた小さい彗星は未だに忘れられない。星と違ってエメラルドグリーンの薄い尾がコマのまわりを囲んでいた。写真とくらべたら肉眼で見られるものはごく一部の明るいところだけだけど、あの彗星はだいぶ意識に残っている。(マックホルツだったかなあ・・・     本物は見てみないとわからない。ハートレー第二彗星をフライバイしたエポキシ探査機ミッションの責任者が「バーチャルが流行ってるけど、(探査機のダウンリンクした画像ををみながら)これこそがリアルで、実際に起きたことです」とustで語っていたのが印象に残っている。   昔ならプラネタリウムソフトを動かしたノートPCをお供に抱えて運用していたわけだけど、それがおおまかな現在位置と姿勢追従を伴って小さな端末で出来るようになったのは面白い。  昔のオーバーレイは現実の環境とリンクするセンサが無かったけど、スマートフォンみたいな物理インターフェースを搭載したものでは、現実オーバーレイという呼び方のほうがしっくり来るような気もする。  個人的にはコンパスと六分儀をマスターしたい。これで旅も怖くないはず。

三軸磁気センサの搭載(SpinnerTwo)

ローバー向けキラーアプリであるコンパスを試してみたい。 とおもってお金をケチった結果、デジタルコンパスではなくデジタル3軸磁気センサを手に入れてしまった。 mag3110  http://www.freescale.com/webapp/sps/site/prod_summary.jsp?code=MAG3110 Breakout  http://www.sparkfun.com/products/10619 HMC6343のような傾き補正付きデジタルコンパスモジュールとして入手できるものは、3軸磁気だけでなく、加速度から得られる姿勢情報なども含めて色々と処理をしてから方位角を算出してくれる。そこら辺はユーザー側ではあまり気にせずに済む。 対して、この3軸磁気センサは3軸の磁界強度を得られるシンプルなモジュール。 シンプルなので色々と計算しないといけない・・・。 色々文献を漁って、回り道をしたけど、適当に本体を360°回しながらX,Y軸の磁界強度をグラフにプロットするとこういうモノができた。 mag3110でのXY磁界の強度変化グラフ(鉄製のテーブル上にて) おお・・・ちょっと計測点が少なすぎたけど、ちゃんと円を描いてる。 (X軸のスケールはスルーで・・・) まずは磁界強度で描かれた円の中心がわかれば水平での方位角を求めることができそうだ。(Sparkfunで見かけたソースでは、中心を出す計算が省かれており、方位は出てこない・・・) 調べる中で、地方磁気の角度とか、軟鉄/鋼鉄など、磁気を帯びた物体上での撹乱などについても文献を見つけたが、とりあえず中心点のキャリブレーションをしてから使うことになりそうだ。 このセンサを使うにあたって、いくつか注意点としては、磁界が近くにあると正常な値が出せないこと。 特に小型ローバーはモーターが近いので、センサ周辺は磁気遮蔽用のアルミテープを貼っている。 覆う前は5000近い値まで出ていたが、現在は安定して地磁気を拾えるところまで来ている。 3軸磁気センサと磁気遮蔽アルミテープ 横は加速度センサ もし路面付近に強い磁気を帯びた物体があったらと思うと、ナビゲーションには限定的な使い方しかできないのかなあ・・・。今度GPS走行さ

ATmega644P/1284P向けNewSoftSerialライブラリ(Wiring)

Wiring1.0上でターゲットMCUをATmega644P/1284Pに選択し、NewSoftSerialを使おうとした場合、うまく動かない。 個人的な事象として、JPEGカメラをローバー(ATmega1284P)で設定してみたところ動かなかったので、調べてみた。 ライブラリ内にあるNewSoftSerial.cppを見ると、ピン割り込み設定において、ピン割り当てが互換ボードの一つである、Reduino:LEDheadに設定されている。 このボードとWiringS/互換機ではピン割り当てがだいぶ違う。D7までのピンなら動作した理由は、ここだけ割り込みピンとの対応が共通であるからだった。 これをWiringS用に書き換えてみる。 \Wiring\cores\AVR8Bit\libraries\NewSoftSerial\NewSoftSerial.cppの中で、 644Pの該当箇所を以下のように書き換える。 変更点 ・ATmega1284P追加 ・Wiring用にピン割り込み関連のレジスタの番号とIDE上で扱うポート番号を対応させる作業) ---------------------------------------------------------------- #elif defined(__AVR_ATmega644P__) || defined(__AVR_ATmega1284P__) //for WiringS #define digitalPinToPCICR(p)    ( ((p) >= 0 && (p) <= 31) ? (&PCICR) : ((uint8_t *)NULL) ) //for Wiring S #define digitalPinToPCICRbit(p) ( ((p) <= 7) ? 3 : \ ( ((p) <= 15) ? 2 : \ ( ((p) <= 23) ? 1 : \ 0 ) ) )  #define digitalPinToPCMSK(p)    ( ((p) <= 7) ? (&PCMSK3) : \  

新JPEGカメラのライブラリ(VC0706)をLS-Y201で使ってみる

最近簡単に入手できるJPEGカメラとしてはLS-Y201がある http://www.sparkfun.com/products/10061 http://www.switch-science.com/products/detail.php?product_id=453 アナログビデオ出力(PAL)も付いていて、JPEGカメラとしても動作するという不思議な特徴をもったカメラ。 ( 以前の比較記事 ) 搭載しているDSP(VC0706)は、販売元の説明以外にもいろいろと隠された機能があるらしいということは知っていた。けど仕様がわからないとどうしようもないので、 ローバーに搭載したり 、 赤外線カットフィルタを内蔵しておかしな色相を直したり と、主に外側の改善ばかりしていたのだが・・・ さて、Adafruitで販売され始めた 新しいJPEGカメラ 。よく見てみると同じチップを搭載している。こちらは映像出力もちゃんと謳っている。(NTSC・・・だと・・・^^;) さらに、仕様書からライブラリも作ってくれたようで、GithubからVC0706用のライブラリが入手できる。 http://github.com/adafruit/VC0706-Serial-Camera-Library チップが同じなら、きっとこのライブラリも使えるはず・・・ ということでLS-Y201で使ってみた結果、 ちゃんと動きました。   問題なく撮影できてます。 (ソースがSDカードへの保存を要求するけれど、めんどくさいので画像データをシリアルに垂れ流すようにいじりました) 注目点としては ・スリープモード ・JPEG圧縮率の設定(高画質にしたい・・・) ・TV出力のON/OFF制御(OFFにすれば消費電流が減るよ!) ・映像の簡易制御(ミラーなど) ・動体検知撮影 ・OSD機能(機能しないらしいけど・・・) adafruitのチュートリアル ではうまく動かない機能も多いらしいが、 目玉機能である動体検知はちゃんと動いた。検知の感度などはライブラリ側でいじれる様子。 これでローバーも定点観測ができるように・・・ 眠っていたLS-Y201がある方もぜひ。 (以前は全然みつからなかったあのDSPの資料がちらほら観測できてる・・・?

Whipper

可変径車輪を有する一輪ローバーの開発3 小型ロケット、無人航空機などのサブペイロードとして搭載されることを想定した小型軽量、最小限の探査車として、一輪ローバーSpinnerを開発した。( 文献1 ) Spinnerは一輪と方向転換のための一自由度の腕を備えている。EMモデルは容積1Lで500g以下の重量を実現している。 この1輪モデルの試験走行を経て、設計の効率化を図り、可変径1輪車のコンセプトを提案した。( 文献2 「 SpinnerX 」 ) この文章では、SpinnerXの改良案を述べる。 論文のような序文はここまで。 また次世代Spinnerを思いついたので、その機構をまとめる。 SpinnerX (シーソー型?) SpinnerXで構想したシーソー型可変機構の場合、実は2つの手強い課題がある。 ・耐衝撃性 ・可変ゆえの不安定性  機構自体を試作してみて、折れない/たわまないことが証明できるものを作るのが難しかった。 また、角度調節用のサーボから伸びた軸が足につながっているのだが、そこに衝撃が集中して壊れてしまう可能性が高い。。 この機構にこだわって、衝撃を伝えない方法を考えるのもいいけれど、機構や調整方法が複雑化するのは避けたい。 スムーズな進路変更を犠牲にしても、今まで通り腕で済ませたほうがよっぽど信頼性を確保できる。 変えたいのは左右の接地面の高さだけである。 シーソー型の良いところをとりつつ、簡単で壊れにくい仕組みは無いだろうか・・・。  メカトロ以前のメカニクス的な機構を考えるのは楽しい。 SpinnerX以降、機構の検討は放置していたので、いい具合に思考がリセットされていた。 新しいスライド案も、友人のスライド式携帯の動作を見て思いついている。 < スライド式可変径機構の仕組み> 本体回転式の機体はSpinnerXを受け継ぎ、接地面をアーチ状のリボンに置き換える。リボンは柔軟な物質でできている。 リボンは片端を車体の端に固定され、もう片端はスライド可能な板材に固定する。 この板をスライドすることで、リボンのアーチはスライドした側に高さが偏る。板にサーボ機構を組み込むことで、可変車輪径が成り立つ。 この機構の場合、サーボの駆動軸は車体と水平で、接地面の

RFIDと惑星探査

空想宇宙機シリーズ。 とはいえ今回は少し現実路線から・・・ < 遠い道のり > 1輪探査ローバー "Spinner" を作って1年以上。手元においておくといろいろ思考が進んで楽しい。 "Rover" という語源からして、放浪する探査機械というものを夢想して製作してみたが、今のところ、この機械が運用できるのは何もないグラウンドや広場に限られる。 現実を見ると、XBeeは打ち上げ角の関係上、地上間では数十メートルしか交信できないし、バッテリは数時間しか持たない。 車輪に貼りつけた太陽電池は全電力を賄うには(数日の充電期間が許されないなら)足りないし、なによりもセンサ不足なのでちょっとした地形の変化に対応できない。そもそも探査してない。 これが現状。そもそも大きさとコストを限定した時点で、いろいろと物理的にできることが限られている。動画ではいいところばかり編集できるので、つい自分も騙してしまいがちだけれど。 色々あって実機の開発は中断状態だが、こうした単純なロボットを活かすための枠組みを幾つか考える中で、すこし面白そうな手法を思いついた。 < ヘンゼルとグレーテル > 何の変哲もない砂漠に降り立ち、GPSなどの航法システムも存在しないとき、周りを探検しろと言われたらどうするか。 人間なら(生命の危険を感じないとして)、まず降り立つ場所を基準として、道しるべを求めるだろう。周りに目立つものがなければ、何らかの目印を置くことにする。(天文学をかじっていれば、日時計と星座により方角と現在地もわかるがここでは省略)    この道しるべだが、人間でなくロボットが置くとすると、ロボット自身が迷いなく認識できるものが望ましい。 視覚では対象の環境が単純すぎたり、逆に特徴が多すぎたりすると使えないので、あくまでサブシステム。 < 一寸の虫にも五分の魂 > そのお手本となりそうなのが、蟻の行動。 行動生態学の領域や、知能ロボットの分野では、蟻の探索行動が研究、応用されている。その行動にはフェロモン、太陽の偏光、触覚などの知覚が関与しているらしい。 フェロモンだけと思っていたら、巣周辺の地表を荒らして初期化しても、蟻は他の様